coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Arnaud Spiwack <aspiwack AT lix.polytechnique.fr>
- To: coq-club AT inria.fr
- Cc: Michael Shulman <mshulman AT ucsd.edu>
- Subject: Re: [Coq-Club] transparent assert?
- Date: Wed, 4 May 2011 10:43:43 +0200
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; b=fzcdEKni8JKUd5upC7385TQMxLM9Pj2aucovhum7w97cu2B3DjN326nP1rOPcJ+x+T onXzXFIXlbUbH8PBjsvomLrcz3hcWDDmBwF0Z1JCzCR2j/1bXDpYitJQwYlBD6WAgMDr ZMLaBlwB1RqLYl+NsEn1TtoqDnJ/MbdpgrU68=
There is mostly no way around it. This was the main motivation for my re-engineering of the mechanism underlying proofs-by-tactics. In a future release it will be made possible.
Arnaud
On 3 May 2011 00:17, Michael Shulman <mshulman AT ucsd.edu> wrote:
Hi everyone,
Suppose I have a goal whose conclusion is of the form { x:X & P x }.
Is there a way to write a proof script that first constructs an
element x0:X via tactics, instantiates x with x0, and then constructs
an element of P x0? Saying
assert (x0:X).
...
exists x0.
doesn't work because x0 is then opaque, whereas I generally need to
know what it is in order to construct the desired element of P x0.
The only thing I have found to do when I run into this problem is to
copy all the hypotheses of the current goal into a separate lemma
whose conclusion is X, prove the lemma and finish it with "Defined"
to make the term transparent, then go back to the original proof and
say "exists (lemma ...)". This works, but it is somewhat tedious; is
there a better way?
Thanks!
Mike
- [Coq-Club] transparent assert?, Michael Shulman
- Re: [Coq-Club] transparent assert?,
AUGER Cedric
- Re: [Coq-Club] transparent assert?, Michael Shulman
- Re: [Coq-Club] transparent assert?, Arnaud Spiwack
- Re: [Coq-Club] transparent assert?,
AUGER Cedric
Archive powered by MhonArc 2.6.16.