diff options
Diffstat (limited to 'theories/Logic/Classical_Pred_Set.v')
-rwxr-xr-x | theories/Logic/Classical_Pred_Set.v | 64 |
1 files changed, 35 insertions, 29 deletions
diff --git a/theories/Logic/Classical_Pred_Set.v b/theories/Logic/Classical_Pred_Set.v index 7ca160517..e308eff14 100755 --- a/theories/Logic/Classical_Pred_Set.v +++ b/theories/Logic/Classical_Pred_Set.v @@ -10,55 +10,61 @@ (** Classical Predicate Logic on Set*) -Require Classical_Prop. +Require Import Classical_Prop. Section Generic. -Variable U: Set. +Variable U : Set. (** de Morgan laws for quantifiers *) -Lemma not_all_ex_not : (P:U->Prop)(~(n:U)(P n)) -> (EX n:U | ~(P n)). +Lemma not_all_ex_not : + forall P:U -> Prop, ~ (forall n:U, P n) -> exists n : U | ~ P n. Proof. -Unfold not; Intros P notall. -Apply NNPP; Unfold not. -Intro abs. -Cut ((n:U)(P n)); Auto. -Intro n; Apply NNPP. -Unfold not; Intros. -Apply abs; Exists n; Trivial. +unfold not in |- *; intros P notall. +apply NNPP; unfold not in |- *. +intro abs. +cut (forall n:U, P n); auto. +intro n; apply NNPP. +unfold not in |- *; intros. +apply abs; exists n; trivial. Qed. -Lemma not_all_not_ex : (P:U->Prop)(~(n:U)~(P n)) -> (EX n:U |(P n)). +Lemma not_all_not_ex : + forall P:U -> Prop, ~ (forall n:U, ~ P n) -> exists n : U | P n. Proof. -Intros P H. -Elim (not_all_ex_not [n:U]~(P n) H); Intros n Pn; Exists n. -Apply NNPP; Trivial. +intros P H. +elim (not_all_ex_not (fun n:U => ~ P n) H); intros n Pn; exists n. +apply NNPP; trivial. Qed. -Lemma not_ex_all_not : (P:U->Prop) (~(EX n:U |(P n))) -> (n:U)~(P n). +Lemma not_ex_all_not : + forall P:U -> Prop, ~ ( exists n : U | P n) -> forall n:U, ~ P n. Proof. -Unfold not; Intros P notex n abs. -Apply notex. -Exists n; Trivial. +unfold not in |- *; intros P notex n abs. +apply notex. +exists n; trivial. Qed. -Lemma not_ex_not_all : (P:U->Prop)(~(EX n:U | ~(P n))) -> (n:U)(P n). +Lemma not_ex_not_all : + forall P:U -> Prop, ~ ( exists n : U | ~ P n) -> forall n:U, P n. Proof. -Intros P H n. -Apply NNPP. -Red; Intro K; Apply H; Exists n; Trivial. +intros P H n. +apply NNPP. +red in |- *; intro K; apply H; exists n; trivial. Qed. -Lemma ex_not_not_all : (P:U->Prop) (EX n:U | ~(P n)) -> ~(n:U)(P n). +Lemma ex_not_not_all : + forall P:U -> Prop, ( exists n : U | ~ P n) -> ~ (forall n:U, P n). Proof. -Unfold not; Intros P exnot allP. -Elim exnot; Auto. +unfold not in |- *; intros P exnot allP. +elim exnot; auto. Qed. -Lemma all_not_not_ex : (P:U->Prop) ((n:U)~(P n)) -> ~(EX n:U |(P n)). +Lemma all_not_not_ex : + forall P:U -> Prop, (forall n:U, ~ P n) -> ~ ( exists n : U | P n). Proof. -Unfold not; Intros P allnot exP; Elim exP; Intros n p. -Apply allnot with n; Auto. +unfold not in |- *; intros P allnot exP; elim exP; intros n p. +apply allnot with n; auto. Qed. -End Generic. +End Generic.
\ No newline at end of file |