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:14:36 +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:6XdBdR8cp+CwHP9uRHKM819IXTAuvvDOBiVQ1KB41+wcTK2v8tzYMVDF4r011RmVBdWds6oMotGVmpioYXYH75eFvSJKW713fDhBt/8rmRc9CtWOE0zxIa2iRSU7GMNfSA0tpCnjYgBaF8nkelLdvGC54yIMFRXjLwp1Ifn+FpLPg8it2O2+557ebx9UiDahfLh/MAi4oQLNu8cMnIBsMLwxyhzHontJf+RZ22ZlLk+Nkhj/+8m94odt/zxftPw9+cFAV776f7kjQrxDEDsmKWE169b1uhTFUACC+2ETUmQSkhpPHgjF8BT3VYr/vyfmquZw3jSRMMvrRr42RDui9b9mRgHmiCkHKjA382/ZhcJ/g61ZvB2vqAdyw5LXbYyPKPZyYq3QcNEcSGFcXshRTStBAoakYoULFeUBO/tTopTjqFsVthuxHwisD/7oxz9KnHD227c23P8/HgHdxwwvBdMOvW/IrNXoLasdTOe1zLPUzTXGcvNW3yry5JLVfR8/uPyBW697f8nJyUQ3Cg/JkFGdpZb7Mz+I1OkBqXWX4/RjWO61i2Mrthl9rzuvy8s2lIXFmJgZxk3Z+Sll2oo4Id+1RUhmatC+CpRQrTuVN45uT8MiXW5ovCE6x6UbuZ69fSgKzY4oxx/ba/CdboiI5BPjWP+MLjd/nnJlZLe/hwu08Ue90OHzS9e73E5LripDjNbMqmgA2wHN5sWDUPdx4Fqt1DSV2wzO9O1JIlo4mKrGJ5I5x74/jJsTsUDNHi/sn0X2ibebdkc+9eiu8ejoeavppoSHN4BuiwHzKbgumtGmDeslNQgORXSb+eGh1L3l4EL1WqhFgeMunqnDrJ/aPdgbprK+AwJNzokj7A+/Ay6639QcgHkIN0lIeAmHjojsI1HBOur0Dfa5g1S2kTdk3erKPrP7AsaFEn+Wm7D4OL159kR0yQwpzNkZ6YgHJKsGJafRU0m5ntHDFRY4e1i2yuChAthmzYofcX6SR6OeKr/XrFmEoO4idbrfLLQJsSrwfqB2r8XlimU0zAdELPuZmKAPYXX9JcxIZkCQYH7imNAESDlYohd7QOvwlFifVzIVa3vgBvtgtAF+M5qvCML4fq7omKaIhXnpAoATamdcFlWRF3uue4jWA65ROhLXGddol3k/bZbkS4Il0kvz5hL8yr9uL+6S5ysZ8J7kzsRw+uvf0x0/p2R5
  • Openpgp: preference=signencrypt

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