]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambda/xoa.ma
- new pointes can point to any subterm
[helm.git] / matita / matita / contribs / lambda / xoa.ma
index 5529e456071c3a75b9cfa9b18d9765cfac21f9a5..9d4ee880bfb12784259e0ac025e9fd5076210879 100644 (file)
 
 include "basics/pts.ma".
 
+(* multiple existental quantifier (2, 2) *)
+
+inductive ex2_2 (A0,A1:Type[0]) (P0,P1:A0→A1→Prop) : Prop ≝
+   | ex2_2_intro: ∀x0,x1. P0 x0 x1 → P1 x0 x1 → ex2_2 ? ? ? ?
+.
+
+interpretation "multiple existental quantifier (2, 2)" 'Ex P0 P1 = (ex2_2 ? ? P0 P1).
+
 (* multiple existental quantifier (3, 1) *)
 
 inductive ex3_1 (A0:Type[0]) (P0,P1,P2:A0→Prop) : Prop ≝
@@ -32,6 +40,14 @@ inductive ex3_2 (A0,A1:Type[0]) (P0,P1,P2:A0→A1→Prop) : Prop ≝
 
 interpretation "multiple existental quantifier (3, 2)" 'Ex P0 P1 P2 = (ex3_2 ? ? P0 P1 P2).
 
+(* multiple existental quantifier (3, 3) *)
+
+inductive ex3_3 (A0,A1,A2:Type[0]) (P0,P1,P2:A0→A1→A2→Prop) : Prop ≝
+   | ex3_3_intro: ∀x0,x1,x2. P0 x0 x1 x2 → P1 x0 x1 x2 → P2 x0 x1 x2 → ex3_3 ? ? ? ? ? ?
+.
+
+interpretation "multiple existental quantifier (3, 3)" 'Ex P0 P1 P2 = (ex3_3 ? ? ? P0 P1 P2).
+
 (* multiple existental quantifier (4, 3) *)
 
 inductive ex4_3 (A0,A1,A2:Type[0]) (P0,P1,P2,P3:A0→A1→A2→Prop) : Prop ≝