coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Jonathan Leivent <jonikelee AT gmail.com>
- To: coq-club AT inria.fr, Klaus Ostermann <klaus.ostermann AT uni-tuebingen.de>
- Subject: Re: [Coq-Club] Certified insertion
- Date: Sat, 8 Dec 2018 18:12:33 -0500
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jonikelee AT gmail.com; spf=Pass smtp.mailfrom=jonikelee AT gmail.com; spf=None smtp.helo=postmaster AT mail-qt1-f172.google.com
- Ironport-phdr: 9a23:tBR6zR1/+SP+4Y3csmDT+DRfVm0co7zxezQtwd8ZseIQI/ad9pjvdHbS+e9qxAeQG9mDu7Qc06L/iOPJYSQ4+5GPsXQPItRndiQuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZvJuTyB4Xek9m72/q99pHPYAhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfMQA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7Vq4/Vyi84Kh3SR/okCYHOCA/8GHLkcx7kaZXrAu8qxBj34LYZYeYP+d8cKzAZ9MXXXdPUNhfVyJBAY2yYYUAAOUDMulEoIfwvEcOoBikCAWwGO/ixD1Fi3nr1qM6yeQhFgTG0RQkEdIJtnTbtsn1NKcIXuCz0aLGyyvMb/JI2Tjj7ojIbg0qrPaOXbJ3d8rRyEovGB3BjlqOt4PoJDyV1uEXvGia6+psT/6gi2kiqwxopDWk28kiio7Mho0Py1DE8z10wIk0Jd2kSE57fMWrHIFMuCGdMot7RN4pTWJwuCsi1LEKpZq2cDIJxZkn3RLTdv2Kf5SS7h7+VuudPy90iGxqdb6liRu//lKsxvDgWsS0ylpGsylInsfKu3sQzRLc8NKHReF4/kq52TaAyQTT6uZcLEAxj6XbKpohzqcplpoPrEjPByH2lFj0gaOIbEkk9e+o6+PoYrXiuJCQLZN7igb7Mqg2m8y/B/o3MhQWUmSF5eix0Kfv8E75TblQk/E7k7XVvIrHKckZuKK1GwpV3Zwi6xa7ATemytMYnXwfIVJHfxKHiYnpO1LQL/D8E/iwnU+hkDhux//cP73hBo/BIWTEkLfkZbp98VJTyBIvzdBD4JJZEq0OIPXqWkPoqNPYCgI5PBevzub8CNR905seVniVDq+YNqPSq16I6fg1L+mCfo9G8Ar6fvMi/rvliWIzsV4bZ6igm5UNLDibGv17OA2+embhmNIIF2FC6gk6RfHxzlqZTTNJYn+0WYoh4DB+FJ+rB4bFSY2rxrCMinSVBJpTM0JBDFmQEX7uP6GJWukBbj7ads1mlD0HWLysRqcu0BivsEnxzL8xfbmcwTERqZ+2jIs93ObUjxxnsGUsV53MgVHIdHl9myYzfxFz2al+pUJnzVLaiPp3hvVZEZpY4PYbC15mZ66Z9PRzDpXJYiyEZs2AEQ/0TdCvADV3RdU0kYdXPhRNXu66hxWG5BKERr8Yk7vRWs4x+6PYmmHtfoNzkimckqYmiFYiT41EMmj03qM=
Klaus,
If you want to see decent sized fully-dependent types experiments in certified code generation, you are welcome to examine my (somewhat out of date) github developments:
https://github.com/jonleivent/mindless-coding-phase2
https://github.com/jonleivent/mindless-coding
The point of these was to experiment with how to make dependent-type guided programming easy enough for non prover-experts.
They are based on the use of one somewhat controversial axiom that allows the dependent type residue to be more thoroughly erased from the certified code than is otherwise possible in Coq.
I abandoned these mostly due to Ltac causing me more pain than I could tolerate. I await Ltac 2's full implementation before considering whether or not to re-attempt.
-- Jonathan
On 12/8/18 2:57 PM, Klaus Ostermann wrote:
Hi Adam,
It actually isn't idiomatic to program with subset types in Coq! Ithanks for your advice. I actually guessed that much by now. However, my
recommend avoiding explicit dependently typed programming whenever
possible. There should be a high standard of justification for any
explicit dependent types (which are sometimes the right tool for a
job). It tends to be painful to define and reason about such
programs. Experts generally avoid it.
intention here was to experience and understand the nature of the pain :)
Klaus
- [Coq-Club] Certified insertion, Klaus Ostermann, 12/08/2018
- Re: [Coq-Club] Certified insertion, Jason -Zhong Sheng- Hu, 12/08/2018
- Re: [Coq-Club] Certified insertion, Xuanrui Qi, 12/08/2018
- Re: [Coq-Club] Certified insertion, Adam Chlipala, 12/08/2018
- Re: [Coq-Club] Certified insertion, Klaus Ostermann, 12/08/2018
- Re: [Coq-Club] Certified insertion, Xuanrui Qi, 12/08/2018
- Re: [Coq-Club] Certified insertion, Jonathan Leivent, 12/09/2018
- Re: [Coq-Club] Certified insertion, Klaus Ostermann, 12/08/2018
- Re: [Coq-Club] Certified insertion, David Holland, 12/19/2018
- Re: [Coq-Club] Certified insertion, Jason -Zhong Sheng- Hu, 12/08/2018
Archive powered by MHonArc 2.6.18.