diff options
author | narboux <narboux@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2005-07-15 15:27:42 +0000 |
---|---|---|
committer | narboux <narboux@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2005-07-15 15:27:42 +0000 |
commit | 14e850d63d17d9a7094a23d2a59ca9f968b5976a (patch) | |
tree | ef42a82ffc32a67954935e89be217603d7669876 /theories | |
parent | 93b9b88d8c9b01b062948997ba627a404e52585f (diff) |
add a left and right tactic for classical logic
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@7234 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories')
-rwxr-xr-x | theories/Logic/Classical.v | 3 | ||||
-rwxr-xr-x | theories/Logic/Classical_Prop.v | 13 |
2 files changed, 14 insertions, 2 deletions
diff --git a/theories/Logic/Classical.v b/theories/Logic/Classical.v index 9dd9d4d91..1c2b97ce7 100755 --- a/theories/Logic/Classical.v +++ b/theories/Logic/Classical.v @@ -11,4 +11,5 @@ (** Classical Logic *) Require Export Classical_Prop. -Require Export Classical_Pred_Type.
\ No newline at end of file +Require Export Classical_Pred_Type. + diff --git a/theories/Logic/Classical_Prop.v b/theories/Logic/Classical_Prop.v index fa509a3c0..1df6a354b 100755 --- a/theories/Logic/Classical_Prop.v +++ b/theories/Logic/Classical_Prop.v @@ -82,4 +82,15 @@ simple induction 2; auto. Qed. Lemma proof_irrelevance : forall (P:Prop) (p1 p2:P), p1 = p2. -Proof proof_irrelevance_cci classic.
\ No newline at end of file +Proof proof_irrelevance_cci classic. + +(* classical_left transforms |- A \/ B into ~B |- A *) +(* classical_right transforms |- A \/ B into ~A |- B *) + +Ltac classical_right := match goal with + | _:_ |-?X1 \/ _ => (elim (classic X1);intro;[left;trivial|right]) +end. + +Ltac classical_left := match goal with +| _:_ |- _ \/?X1 => (elim (classic X1);intro;[right;trivial|left]) +end.
\ No newline at end of file |