X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fnlibrary%2Flogic%2Fconnectives.ma;h=026e9216951c9224737b6493953317effd635369;hb=6678a28314d8878bb46d5de7b1060628f4930242;hp=aca4af44980890a67df317318d6c653c240a652c;hpb=7a9b394943d524181128816a4b02152aa79929fe;p=helm.git diff --git a/helm/software/matita/nlibrary/logic/connectives.ma b/helm/software/matita/nlibrary/logic/connectives.ma index aca4af449..026e92169 100644 --- a/helm/software/matita/nlibrary/logic/connectives.ma +++ b/helm/software/matita/nlibrary/logic/connectives.ma @@ -35,8 +35,22 @@ ninductive Or (A,B:CProp) : CProp ≝ interpretation "logical or" 'or x y = (Or x y). -(* BUG HERE: WHY IS IT ACCEPTED??? *) -inductive Ex (A:Type[1]) (P:A \to CProp[1]) : CProp[0] \def - ex_intro: \forall x:A. P x \to Ex A P. +ninductive Ex (A:Type) (P:A → CProp) : CProp ≝ + ex_intro: ∀x:A. P x → Ex A P. -interpretation "exists" 'exists x = (Ex ? x). \ No newline at end of file +interpretation "exists" 'exists x = (Ex ? x). + +nrecord iff (A,B: CProp) : CProp ≝ + { if: A → B; + fi: B → A + }. + +notation > "hvbox(a break \liff b)" + left associative with precedence 25 +for @{ 'iff $a $b }. + +notation "hvbox(a break \leftrightarrow b)" + left associative with precedence 25 +for @{ 'iff $a $b }. + +interpretation "logical iff" 'iff x y = (iff x y).