Step * 4 1 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. List List ∈ Type
5. ∀as,bs:X List List.  (dlattice-eq(X;as;bs) ∈ Type)
6. ∀as:X List List. dlattice-eq(X;as;as)
7. List List ∈ Type
8. ∀a1,b1:X List List.  (dlattice-eq(X;a1;b1) ∈ Type)
9. ∀a1:X List List. dlattice-eq(X;a1;a1)
10. as List List
11. bs List List
12. dlattice-eq(X;as;bs)
13. free-dl-type(X) free-dl-type(X) ∈ Type
14. a1 List List
15. b1 List List
16. dlattice-eq(X;a1;b1)
17. free-dl-type(X) free-dl-type(X) ∈ Type
⊢ dlattice-eq(X;as a1;b1 bs)
BY
(Thin (-1)
   THEN Lemmaize [12;-1]
   THEN Unfold `dlattice-eq` 0
   THEN RepeatFor (Intro)
   THEN RWO  "dlattice-order-iff" 0
   THEN Auto
   THEN (RWO "member_append" (-1) THENA Auto)
   THEN -1
   THEN OnMaybeHyp (\h. (FHyp [-1] THEN Complete (Auto)))) }


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.  X  List  List  \mmember{}  Type
5.  \mforall{}as,bs:X  List  List.    (dlattice-eq(X;as;bs)  \mmember{}  Type)
6.  \mforall{}as:X  List  List.  dlattice-eq(X;as;as)
7.  X  List  List  \mmember{}  Type
8.  \mforall{}a1,b1:X  List  List.    (dlattice-eq(X;a1;b1)  \mmember{}  Type)
9.  \mforall{}a1:X  List  List.  dlattice-eq(X;a1;a1)
10.  as  :  X  List  List
11.  bs  :  X  List  List
12.  dlattice-eq(X;as;bs)
13.  free-dl-type(X)  =  free-dl-type(X)
14.  a1  :  X  List  List
15.  b1  :  X  List  List
16.  dlattice-eq(X;a1;b1)
17.  free-dl-type(X)  =  free-dl-type(X)
\mvdash{}  dlattice-eq(X;as  @  a1;b1  @  bs)


By


Latex:
(Thin  (-1)
  THEN  Lemmaize  [12;-1]
  THEN  Unfold  `dlattice-eq`  0
  THEN  RepeatFor  5  (Intro)
  THEN  RWO    "dlattice-order-iff"  0
  THEN  Auto
  THEN  (RWO  "member\_append"  (-1)  THENA  Auto)
  THEN  D  -1
  THEN  OnMaybeHyp  6  (\mbackslash{}h.  (FHyp  h  [-1]  THEN  Complete  (Auto))))




Home Index