Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Example of terminating function that are not accepted by Coq

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Example of terminating function that are not accepted by Coq


Chronological Thread 
  • From: Jan Bessai <jan.bessai AT tu-dortmund.de>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Example of terminating function that are not accepted by Coq
  • Date: Wed, 19 Dec 2018 15:29:31 +0100
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jan.bessai AT tu-dortmund.de; spf=Pass smtp.mailfrom=jan.bessai AT tu-dortmund.de; spf=None smtp.helo=postmaster AT unimail.uni-dortmund.de
  • Autocrypt: addr=jan.bessai AT tu-dortmund.de; prefer-encrypt=mutual; keydata= xsBNBEuo400BCADHE9QPhcgvwt5SnpGIM+6jvqwSrDPewbrG6pXYTMX1NMBVjXbsvTgjsLPQ lnkE4+OfafMKybDqCZvs1T60p+7LS1M09qjorGEllM4XFYvSoW/tEm7jPh+dF/OQSmRiEZ7y m5hKlyYpkgEI/I/w17pp8ecr9KSitZRygtWOIv+b8T5E8ofb7ymE9Ts8wGbWUdoBZ9HG3Pxn EwfJvqaXZ1hq9tknB2YPQCtaO7RGPIDnDxkChnsBHdMUL5cFVxnXMCgokFMGocyjNK+MkoQq 23IzZW1kHrH9G7Dyve1IwXmEUW9qXdf01zLbdysy+Bu94Y/JfNb245RVghGUq3/XYPYVABEB AAHNJkphbiBCZXNzYWkgPEphbi5CZXNzYWlAdHUtZG9ydG11bmQuZGU+wsB4BBMBAgAiBQJL qONNAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRAjc0RRCV1tGB20B/9uUtH9ERZc oJvODEuugm+8kCrQrQAlJt5fqrrNNmb9E1DKISGgJZsKo0hxtokbbuoqrId1i6BjWlcZTW7Y SylS3+FmI2sUl/XoegJQC1wSKSUwedsxht9bXQYKw99K+RCEF+LPnpKEuDQDWQ+7zwgdJ+Mu LQ50Xwo+R1W+Vk54IVQbyXDI5K3IKaBp9Gzd6TU3v951tzSj8BrIjPVBx6tCXBkM6E7I/lwU Wgtf0WRNDm7VRabB6jL/aVz+Qs0Cu6Wh6Pw5IjzTmGX1i888Kw8RCFi9ZAVQYfJZKFBqh1AX kIag0nmrUC3nVJvWMBH9wIyc0TWZDHoANTy9lAnFfloSzsBNBEuo400BCAC9E2QVS95F7ZOS MK0hy5JSGYhr8ZafR/pkcr0ipjGaj/d6l6b0HJXj5qSLPZYHNS9+6pXk3mSNlFUnqJ+65tzk XDNmfhja/9f/HdDXsx87j7/ZqB/wHDi3IEHrPACxDkEHQ/800C83EsFawf6kYuWKCp/MoA84 u/50SJrFUNdrH9uwdhPSmzDzVYlzHKF4RsGG3/PmRpTGjcJwUjKomc9xMIp5kHOyIoqs88Sz zAn5k5UgpsX7V8Y2wkwGulZjo8mK3wSHtIKXTqM6SPEfMjANpKGiOG7RLaNOM3rIboM0o/ty T97IaxoAdZF7ufEh1APi1yAzITLUEGNd5pLE5k6NABEBAAHCwF8EGAECAAkFAkuo400CGwwA CgkQI3NEUQldbRjnlwf/fOxz1iUP4gGMNPO1NRxpJPLoLAVH7Maqm86I99pvusYU/iPAj4E9 hBCbQFK45R3a9JPrRgXlTytTX751t3nEdbvMJ7Qc9Xj+5k6CC7PCWVDVuQ6O6FEYT/5PK1/c +Wgz4GCGsaYU3wh6ZD72tUO6HHKUpixCkFyZi/6N07dSbFR2jCxzW2Nzm5Ya+J4Vtfce0CoY A1dpfEytKv1ySmQvb7QaEoLE6ZJgJHPF9p9NBGx/uN/e6PTJUE7zQaEJ8EJdHUS8bpiX9tN7 5IXKvCF4fCCuk3TUxaeY5EISHc4n63p3TZd1qCJLJVwptifIDyAmc08o+oXFGmB0BdPMu7gT bg==
  • Ironport-phdr: 9a23:yrqAvRWyQJtqY27+ZHOEivMHWYbV8LGtZVwlr6E/grcLSJyIuqrYYxCBt8tkgFKBZ4jH8fUM07OQ7/iwHzRYqb+681k6OKRWUBEEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRoLerpBIHSk9631+ev8JHPfglEnjWwba9xIRmssQndqtQdjJd/JKo21hbHuGZDdf5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2Ao/8LrrgXMTRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VDK/5KptVRTmijoINyQh/W/JhMx+jL9VrhGvqRNxzIHbYp2aOvVlc6PBft4XX3ZNUtpfWiFDBI63cosBD/AGPeZdt4Tzo0EBrR2jDgSxGuzv0SRIiWX33aYn1OkhExvJ3Ao6E90VrnvUt871O70TUe2u0KnI0CzPYO5R2Tfn9IjIdw0hofeRUr5qbMXe11AiGgXYhVuTsYzoJy6Z2voJvmSB8eZsSOCih3Q6pw1voTWj3MchhpTRio8Wyl3I7zt1zJgvKdGlVUJ3fcSoHZ9SuiycKoB4WNktQ3tytyY/0rAGuYC0fCwNyJk/2h7fbf2Hc42S7RLiUOadOyp4hHRkeL6mmhmy9lKgyvH5Vsmp1lZFszBJncTSuXwV1hzT7NaISudl80u8xzqC0xrf5v9ZLU02j6bXNoAtz70qmpcTrEjPBir2l1/3jK+SeEUk4O+o6+H/b7XkvJCcMZV4hRrgPaQ1gcywG+U4PxMSX2iG4Oizybrj/VflQLVPk/02lLTWvIrHKssFvqK5GRNa0p4/6xajCDeryMgXnX4eLF5cZB2Hi5XpNErVLfDjDfa/hkysny1xy/DHOL3hGJTNIWLZnLfvZ7Yuo3JbnQE01JVU449eIrAHOvP6HEHr5/LCCRpsEQWyi8zqE85018tKW2uJRKWUK7jbsHeU+6cjJPOQYZITtHDxJq52tLbVkXYllApFLuGS1pwNZSXgR6U0EwCieXPpx+w5PyIPtws6QvbtjQTcAyJOInq1Rb45+zc3To6rX96aGtKdxYeZ1SL+JaV4I3hcAwnSQ2v1MomDQesJdSSeZMNswGRdCOqRDrQ53BTrjzfUjrpqKu2Op38Fs5Pm3dlxofDVlFQ+8iZoCtmb3yeBQjMskw==
  • Openpgp: preference=signencrypt

There is also R as defined by Giannini and Ronchi Della Rocca in [1],
which is strongly normalizing, but does not have a type in System F:

let
I := lambda x . x
K := lambda x y . x
omega := lambda x . x x
in
(lambda x y . y (x I) (x K)) omega

I cannot see why the proof in [1] would not hold for Coq, but you'd of
course have to verify it.


[1]: Giannini, Paola, and Simona Ronchi Della Rocca. "Characterization
of typings in polymorphic type discipline." Proceedings Third Annual
Symposium on Logic in Computer Science. IEEE, 1988.

On 12/19/18 3:14 PM, Jan Bessai wrote:
> Would weakly normalizing lambda terms be good enough for your task? If so:
>
> let
> omega := lambda x. x x (terminating)
> Omega := omega omega (non temerminating)
> K := lambda x y. x
> in
> K omega Omega (ignores Omega, terminating)
>
> This is fine (and even typeable with intersection types) but cannot be
> expressed in Coq.
>
>
>
>
> On 12/19/18 2:40 PM, Siddharth Bhat wrote:
>> Is it not possible to provide conductive semantics to such an
>> interpreter, and thereby get coq to accept an interpreter? 
>>
>> Thanks,
>> Siddharth
>>
>> On Wed, 19 Dec, 2018, 18:45 Klaus Ostermann,
>> <klaus.ostermann AT uni-tuebingen.de
>> <mailto:klaus.ostermann AT uni-tuebingen.de>>
>> wrote:
>>
>> I assume an interpreter of Coq in Coq would be such a function.
>>
>> Klaus
>>
>>
>> Am 19.12.18 um 13:53 schrieb Vincent Siles:
>> > Hi !
>> > Today I've been asked if there are some examples of known terminating
>> > programs that can't be expressed at all in Coq. I know the usual
>> > 'fuel' encoding where one can add an integer to recurse on, and then
>> > prove that there always exists an integer big enough for the program
>> > to terminante. But are there examples that are not accepted by Coq
>> > even with such technics ?
>> >
>> > Best,
>> > V.
>>
>> --
>> Sending this from my phone, please excuse any typos!



Archive powered by MHonArc 2.6.18.

Top of Page