]> matita.cs.unibo.it Git - helm.git/commitdiff
New definition of negation
authorAndrea Asperti <andrea.asperti@unibo.it>
Fri, 12 Mar 2010 12:23:31 +0000 (12:23 +0000)
committerAndrea Asperti <andrea.asperti@unibo.it>
Fri, 12 Mar 2010 12:23:31 +0000 (12:23 +0000)
helm/software/matita/nlibrary/Plogic/connectives.ma

index d840143e3835ca29080b6b51eb0542690a84762f..84bd36454064e90ba35f74df324a28cb8407f83f 100644 (file)
@@ -23,18 +23,27 @@ ninductive False: Prop ≝ .
 
 default "false" cic:/matita/basics/connectives/False.ind.
 
+(*
 ndefinition Not: Prop → Prop ≝
-λA. A → False.
+λA. A → False. *)
+
+ninductive Not (A:Prop): Prop ≝
+nmk: (A → False) → Not A.
+
+ncheck Not_ind.
 
 interpretation "logical not" 'not x = (Not x).
 
+ntheorem absurd : ∀ A:Prop. A → ¬A → False.
+#A; #H; #Hn; nelim Hn;/2/; nqed.
+
+(*
 ntheorem absurd : ∀ A,C:Prop. A → ¬A → C.
 #A; #C; #H; #Hn; nelim (Hn H).
-nqed.
+nqed. *)
 
 ntheorem not_to_not : ∀A,B:Prop. (A → B) → ¬B →¬A.
-/3/.
-nqed.
+/4/; nqed.
 
 ninductive And (A,B:Prop) : Prop ≝
     conj : A → B → And A B.