Step * 5 of Lemma free-dl_wf


1. Type
2. EquivRel(X List List;as,bs.dlattice-eq(X;as;bs))
3. ∀[a,b:free-dl-type(X)].  (free-dl-meet(a;b) free-dl-meet(b;a) ∈ free-dl-type(X))
4. ∀[a,b:free-dl-type(X)].  (free-dl-join(a;b) free-dl-join(b;a) ∈ free-dl-type(X))
5. free-dl-type(X)
6. free-dl-type(X)
7. free-dl-type(X)
⊢ free-dl-meet(a;free-dl-meet(b;c)) free-dl-meet(free-dl-meet(a;b);c) ∈ free-dl-type(X)
BY
((OnVar `a' newQuotientElim THENA Auto)
   THEN (OnVar `b' newQuotientElim THENA Auto)
   THEN (OnVar `c' newQuotientElim THENA Auto)
   THEN EqTypeCD
   THEN Auto
   THEN RepUR ``dlattice-eq`` 0
   THEN (RWO "dlattice-order-iff" THENA Auto)
   THEN (RWW  "member-free-dl-meet" THENA Auto)
   THEN ∀h:hyp. (RepUR ``dlattice-eq`` THEN (RWO  "dlattice-order-iff" THENA Auto)) 
   THEN 0
   THEN (UnivCD THENA Auto)
   THEN ExRepD) }

1
1. Type
2. EquivRel(X List List;as,bs.(∀x:X List. ((x ∈ bs)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x)))))
∧ (∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ bs) ∧ l_subset(X;y;x))))))
3. ∀[a,b:free-dl-type(X)].  (free-dl-meet(a;b) free-dl-meet(b;a) ∈ free-dl-type(X))
4. ∀[a,b:free-dl-type(X)].  (free-dl-join(a;b) free-dl-join(b;a) ∈ free-dl-type(X))
5. List List ∈ Type
6. ∀as,bs:X List List.  (dlattice-eq(X;as;bs) ∈ Type)
7. ∀as:X List List
     ((∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x)))))
     ∧ (∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x))))))
8. List List ∈ Type
9. ∀a1,b1:X List List.  (dlattice-eq(X;a1;b1) ∈ Type)
10. ∀a1:X List List
      ((∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x)))))
      ∧ (∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x))))))
11. List List ∈ Type
12. ∀a2,b2:X List List.  (dlattice-eq(X;a2;b2) ∈ Type)
13. ∀a2:X List List
      ((∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x)))))
      ∧ (∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x))))))
14. as List List
15. bs List List
16. ∀x:X List. ((x ∈ bs)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x))))
17. ∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ bs) ∧ l_subset(X;y;x))))
18. free-dl-type(X) free-dl-type(X) ∈ Type
19. a1 List List
20. b1 List List
21. ∀x:X List. ((x ∈ b1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x))))
22. ∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ b1) ∧ l_subset(X;y;x))))
23. free-dl-type(X) free-dl-type(X) ∈ Type
24. a2 List List
25. b2 List List
26. ∀x:X List. ((x ∈ b2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x))))
27. ∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ b2) ∧ l_subset(X;y;x))))
28. free-dl-type(X) free-dl-type(X) ∈ Type
29. List
30. List
31. List
32. u1 List
33. v1 List
34. (u1 ∈ bs)
35. (v1 ∈ b1)
36. (u1 v1) ∈ (X List)
37. (v ∈ b2)
38. (u v) ∈ (X List)
⊢ ∃y:X List
   ((∃u,v:X List
      ((u ∈ as) ∧ (∃u,v1:X List. ((u ∈ a1) ∧ (v1 ∈ a2) ∧ (v (u v1) ∈ (X List)))) ∧ (y (u v) ∈ (X List))))
   ∧ l_subset(X;y;x))

2
1. Type
2. EquivRel(X List List;as,bs.(∀x:X List. ((x ∈ bs)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x)))))
∧ (∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ bs) ∧ l_subset(X;y;x))))))
3. ∀[a,b:free-dl-type(X)].  (free-dl-meet(a;b) free-dl-meet(b;a) ∈ free-dl-type(X))
4. ∀[a,b:free-dl-type(X)].  (free-dl-join(a;b) free-dl-join(b;a) ∈ free-dl-type(X))
5. List List ∈ Type
6. ∀as,bs:X List List.  (dlattice-eq(X;as;bs) ∈ Type)
7. ∀as:X List List
     ((∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x)))))
     ∧ (∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x))))))
8. List List ∈ Type
9. ∀a1,b1:X List List.  (dlattice-eq(X;a1;b1) ∈ Type)
10. ∀a1:X List List
      ((∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x)))))
      ∧ (∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x))))))
11. List List ∈ Type
12. ∀a2,b2:X List List.  (dlattice-eq(X;a2;b2) ∈ Type)
13. ∀a2:X List List
      ((∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x)))))
      ∧ (∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x))))))
14. as List List
15. bs List List
16. ∀x:X List. ((x ∈ bs)  (∃y:X List. ((y ∈ as) ∧ l_subset(X;y;x))))
17. ∀x:X List. ((x ∈ as)  (∃y:X List. ((y ∈ bs) ∧ l_subset(X;y;x))))
18. free-dl-type(X) free-dl-type(X) ∈ Type
19. a1 List List
20. b1 List List
21. ∀x:X List. ((x ∈ b1)  (∃y:X List. ((y ∈ a1) ∧ l_subset(X;y;x))))
22. ∀x:X List. ((x ∈ a1)  (∃y:X List. ((y ∈ b1) ∧ l_subset(X;y;x))))
23. free-dl-type(X) free-dl-type(X) ∈ Type
24. a2 List List
25. b2 List List
26. ∀x:X List. ((x ∈ b2)  (∃y:X List. ((y ∈ a2) ∧ l_subset(X;y;x))))
27. ∀x:X List. ((x ∈ a2)  (∃y:X List. ((y ∈ b2) ∧ l_subset(X;y;x))))
28. free-dl-type(X) free-dl-type(X) ∈ Type
29. List
30. List
31. List
32. (u ∈ as)
33. u1 List
34. v1 List
35. (u1 ∈ a1)
36. (v1 ∈ a2)
37. (u1 v1) ∈ (X List)
38. (u v) ∈ (X List)
⊢ ∃y:X List
   ((∃u,v:X List
      ((∃u1,v:X List. ((u1 ∈ bs) ∧ (v ∈ b1) ∧ (u (u1 v) ∈ (X List)))) ∧ (v ∈ b2) ∧ (y (u v) ∈ (X List))))
   ∧ l_subset(X;y;x))


Latex:


Latex:

1.  X  :  Type
2.  EquivRel(X  List  List;as,bs.dlattice-eq(X;as;bs))
3.  \mforall{}[a,b:free-dl-type(X)].    (free-dl-meet(a;b)  =  free-dl-meet(b;a))
4.  \mforall{}[a,b:free-dl-type(X)].    (free-dl-join(a;b)  =  free-dl-join(b;a))
5.  a  :  free-dl-type(X)
6.  b  :  free-dl-type(X)
7.  c  :  free-dl-type(X)
\mvdash{}  free-dl-meet(a;free-dl-meet(b;c))  =  free-dl-meet(free-dl-meet(a;b);c)


By


Latex:
((OnVar  `a'  newQuotientElim  THENA  Auto)
  THEN  (OnVar  `b'  newQuotientElim  THENA  Auto)
  THEN  (OnVar  `c'  newQuotientElim  THENA  Auto)
  THEN  EqTypeCD
  THEN  Auto
  THEN  RepUR  ``dlattice-eq``  0
  THEN  (RWO  "dlattice-order-iff"  0  THENA  Auto)
  THEN  (RWW    "member-free-dl-meet"  0  THENA  Auto)
  THEN  \mforall{}h:hyp.  (RepUR  ``dlattice-eq``  h  THEN  (RWO    "dlattice-order-iff"  h  THENA  Auto)) 
  THEN  D  0
  THEN  (UnivCD  THENA  Auto)
  THEN  ExRepD)




Home Index