axiom R : sort →sort → CProp.
axiom S : sort →sort → CProp.
+(* assumiamo il terzo escluso *)
axiom EM : ∀A:CProp.A ∨ ¬A.
(* intuizionista *)
lemma ex1: ¬(∃x.P x) ⇒ ∀x.¬ P x.
apply rule (prove (¬(∃x.P x) ⇒ ∀x.¬ P x));
-apply rule (discharge [x]);
+(*BEGIN*)
+apply rule (⇒_i [h1] (∀x.¬ P x));
+apply rule (∀_i {l} (¬P l));
+apply rule (¬_i [h2] (⊥));
+apply rule (¬_e (¬(∃x.P x)) (∃x.P x));
+ [ apply rule (discharge [h1]);
+ | apply rule (∃_i {l} (P l));
+ apply rule (discharge [h2]);
+ ]
+(*END*)
qed.
(* classico *)
(* intuizionista *)
lemma ex3: ((∃x.P x) ⇒ Q c) ⇒ ∀x.P x ⇒ Q c.
apply rule (prove (((∃x.P x) ⇒ Q c) ⇒ ∀x.P x ⇒ Q c));
-apply rule (discharge [x]);
+(*BEGIN*)
+apply rule (⇒_i [h1] (∀x.P x ⇒ Q c));
+apply rule (∀_i {l} (P l ⇒ Q c));
+apply rule (⇒_i [h2] (Q c));
+apply rule (⇒_e ((∃x.P x) ⇒ Q c) (∃x.P x));
+ [ apply rule (discharge [h1]);
+ | apply rule (∃_i {l} (P l));
+ apply rule (discharge [h2]);
+ ]
+(*END*)
qed.
(* classico *)
]
(*END*)
qed.
-
-
-
-
-