Left : A → or A B
| Right : B → or A B.
-interpretation "classical or" 'or x y =
+interpretation "constructive or" 'or x y =
(cic:/matita/constructive_connectives/or.ind#xpointer(1/1) x y).
+inductive ex (A:Type) (P:A→Prop) : Type \def
+ ex_intro: ∀w:A. P w → ex A P.
+
+notation < "hvbox(Σ ident i opt (: ty) break . p)"
+ right associative with precedence 20
+for @{ 'sigma ${default
+ @{\lambda ${ident i} : $ty. $p)}
+ @{\lambda ${ident i} . $p}}}.
+
+interpretation "constructive exists" 'sigma \eta.x =
+ (cic:/matita/constructive_connectives/ex.ind#xpointer(1/1) _ x).
+
+alias id "False" = "cic:/matita/logic/connectives/False.ind#xpointer(1/1)".
+definition Not ≝ λx:Type.False.
+
+interpretation "constructive not" 'not x =
+ (cic:/matita/constructive_connectives/Not.con x).
\ No newline at end of file