Step
*
of Lemma
free-dist-lattice_wf
No Annotations
∀[T:Type]. ∀[eq:EqDecider(T)].  (free-dist-lattice(T; eq) ∈ BoundedDistributiveLattice)
BY
{ (Auto
   THEN Unfold `free-dist-lattice` 0
   THEN Using [`R',⌜λ2ac1 ac2.fset-ac-le(eq;ac1;ac2)⌝] (BLemma `mk-bounded-distributive-lattice-from-order`)⋅
   THEN RepUR ``so_apply`` 0
   THEN Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. Order({ac:fset(fset(T))| ↑fset-antichain(eq;ac)} x,y.fset-ac-le(eq;x;y))
4. ∀[a,b:{ac:fset(fset(T))| ↑fset-antichain(eq;ac)} ].
     least-upper-bound({ac:fset(fset(T))| ↑fset-antichain(eq;ac)} x,y.fset-ac-le(eq;x;y);a;b;fset-ac-lub(eq;a;b))
5. ∀[a,b:{ac:fset(fset(T))| ↑fset-antichain(eq;ac)} ].
     greatest-lower-bound({ac:fset(fset(T))| ↑fset-antichain(eq;ac)} x,y.fset-ac-le(eq;x;y);a;b;fset-ac-glb(eq;a;b))
6. ∀[a:{ac:fset(fset(T))| ↑fset-antichain(eq;ac)} ]. fset-ac-le(eq;a;{{}})
7. a : {ac:fset(fset(T))| ↑fset-antichain(eq;ac)} 
⊢ fset-ac-le(eq;{};a)
Latex:
Latex:
No  Annotations
\mforall{}[T:Type].  \mforall{}[eq:EqDecider(T)].    (free-dist-lattice(T;  eq)  \mmember{}  BoundedDistributiveLattice)
By
Latex:
(Auto
  THEN  Unfold  `free-dist-lattice`  0
  THEN  Using  [`R',\mkleeneopen{}\mlambda{}\msubtwo{}ac1  ac2.fset-ac-le(eq;ac1;ac2)\mkleeneclose{}
  ]  (BLemma  `mk-bounded-distributive-lattice-from-order`)\mcdot{}
  THEN  RepUR  ``so\_apply``  0
  THEN  Auto)
Home
Index