coq-club AT inria.fr
Subject: The Coq mailing list
List archive
RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern
Chronological Thread
- From: "Soegtrop, Michael" <michael.soegtrop AT intel.com>
- To: "coq-club AT inria.fr" <coq-club AT inria.fr>
- Subject: RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern
- Date: Tue, 6 Sep 2016 17:05:12 +0000
- Accept-language: de-DE, en-US
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=michael.soegtrop AT intel.com; spf=Pass smtp.mailfrom=michael.soegtrop AT intel.com; spf=None smtp.helo=postmaster AT mga09.intel.com
- Ironport-phdr: 9a23:XD50mRZuuoea8s037XX6I+L/LSx+4OfEezUN459isYplN5qZpcy9bnLW6fgltlLVR4KTs6sC0LuP9f2xEjVZud7B6ClEK8McEUddyI0/pE8JPo2sMQXDNvnkbig3ToxpdWRO2DWFC3VTA9v0fFbIo3e/vnY4ExT7MhdpdKyuQtaBx5f/6+fnsZbUekBDgCe3SbJ0NhS/6wvL/IFCiox7b6011xHho31Seu0Qy3k+dnyJmBOprPy38ZF/6SNI/7oE9sVAWKj+NexsSL1TDD0rNyYu48DkqQPEVSOO4GcRViMdlR8eUFuN1w3zQpqk6niyjeF6wiTPZcA=
Dear Matthieu,
> plus_n_Sm 0 1 : S (0 + 1) = 0 + S 1 to eq_refl : 2 = 2
I see what you mean. But since proof irrelevance of equality for nat is provable in Coq, it should be possible to create a vector_rev function, which produces a proof which reduces by computation to eq_refl. Let me see …
Best regards,
Michael
Michael Soegtrop PRD PSE SBA SWR (Software Reliability) Phone: +49 (0)89 99 8853-60431
From: coq-club-request AT inria.fr [mailto:coq-club-request AT inria.fr]
On Behalf Of Matthieu Sozeau
Hi Michael, On Tue, Sep 6, 2016 at 6:01 PM Soegtrop, Michael <michael.soegtrop AT intel.com> wrote:
In effect, this would be what the definitional version of uniqueness of identity proofs (aka the K rule/axiom) would give you, i.e. it would use type information to convert plus_n_Sm 0 1 : S (0 + 1) = 0 + S 1 to eq_refl : 2 = 2. This rule is not part of Coq's type theory (and neither from standard Martin-Löf Type Theory).
Indeed, if plus_n_Sm were transparent, the proof would compute by itself to eq_refl (as it is a closed value of type S (0 + 1) = 0 + S 1 and there is only one of those), and you would get the expected result. Many of the arithmetic lemmas are Qed'ed though, so you'll have to make your own library for this purpose.
Apparently your obligations are transparent as you see the lemmas plus_n_Sm and so on that are used inside them. You can control Opacity/Transparency of Program Obligations using the Set Transparent Obligations option.
Best, -- Matthieu Intel Deutschland GmbH |
- [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/06/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Matthieu Sozeau, 09/06/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Jonathan Leivent, 09/06/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Jonathan Leivent, 09/06/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/06/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Jonathan Leivent, 09/06/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/06/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Jonathan Leivent, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Gaetan Gilbert, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- RE: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Soegtrop, Michael, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Guillaume Melquiond, 09/07/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Jonathan Leivent, 09/06/2016
- Re: [Coq-Club] Getting "computing" proof terms with dependent types / reduction of matches with single pattern, Matthieu Sozeau, 09/06/2016
Archive powered by MHonArc 2.6.18.