coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Edsko de Vries <Edsko.de.Vries AT cs.tcd.ie>
- To: Matej Kosik <kosik AT fiit.stuba.sk>
- Cc: coq-club AT pauillac.inria.fr
- Subject: Re: [Coq-Club] How can I make this reasoning step in Coq ?
- Date: Thu, 23 Apr 2009 13:02:33 +0100
- List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>
Hi,
In Coq, it is possible to make the following reasoning steps:
E |- ~p
E, p |- False
with the `intro' tactics. Both that lines above are meant to be
"sequents" where |- separates the antecedent and the succedent.
With what tactics can I perform the following reasoning step:
E |- p
E, ~p |- False
Remember that ~ is a function (~p is syntactic sugar for p -> False). Hence, you can do this reasoning step as follows:
Variable E p : Prop.
Lemma foo : (E -> p) -> (E /\ ~p -> False).
Proof.
intros H1 H2.
destruct H2 as (e, not_p).
apply not_p.
apply H1.
apply e.
Qed.
Edsko
- [Coq-Club] How can I make this reasoning step in Coq ?, Matej Kosik
- Re: [Coq-Club] How can I make this reasoning step in Coq ?, Edsko de Vries
- Re: [Coq-Club] How can I make this reasoning step in Coq ?, Yves Bertot
- Re: [Coq-Club] How can I make this reasoning step in Coq ?,
Matej Kosik
- Re: [Coq-Club] How can I make this reasoning step in Coq ?,
Edsko de Vries
- Re: [Coq-Club] How can I make this reasoning step in Coq ?,
Matej Kosik
- Re: [Coq-Club] How can I make this reasoning step in Coq ?, Tillmann Rendel
- Re: [Coq-Club] How can I make this reasoning step in Coq ?,
Matej Kosik
- Re: [Coq-Club] How can I make this reasoning step in Coq ?,
Edsko de Vries
- Re: [Coq-Club] How can I make this reasoning step in Coq ?, Ezra Cooper
- Re: [Coq-Club] How can I make this reasoning step in Coq ?, Edsko de Vries
Archive powered by MhonArc 2.6.16.