Step
*
2
of Lemma
dM-hom-basis
1. I : fset(ℕ)
2. x : fset(fset(names(I) + names(I)))
3. ↑fset-antichain(union-deq(names(I);names(I);NamesDeq;NamesDeq);x)
4. x = \/(λs./\(λx.free-dl-inc(x)"(s))"(x)) ∈ Point(dM(I))
5. l : BoundedLattice
6. eq : EqDecider(Point(l))
7. h : Hom(dM(I);l)
8. (h x) = (h \/(λs./\(λx.free-dl-inc(x)"(s))"(x))) ∈ Point(l)
9. h ∈ Hom(free-DeMorgan-lattice(names(I);NamesDeq);l)
⊢ \/(λs./\(λx.(h free-dl-inc(x))"(s))"(x)) = (h \/(λs./\(λx.free-dl-inc(x)"(s))"(x))) ∈ Point(l)
BY
{ ((InstLemma `lattice-hom-fset-join` [⌜free-DeMorgan-lattice(names(I);NamesDeq)⌝;⌜l⌝;⌜free-dml-deq(names(I);NamesDeq)⌝;
    ⌜eq⌝;⌜h⌝]⋅
    THENA Auto
    )
   THEN (InstLemma `lattice-hom-fset-meet` [⌜free-DeMorgan-lattice(names(I);NamesDeq)⌝;⌜l⌝;
         ⌜free-dml-deq(names(I);NamesDeq)⌝;⌜eq⌝;⌜h⌝]⋅
         THENA Auto
         )
   ) }
1
1. I : fset(ℕ)
2. x : fset(fset(names(I) + names(I)))
3. ↑fset-antichain(union-deq(names(I);names(I);NamesDeq;NamesDeq);x)
4. x = \/(λs./\(λx.free-dl-inc(x)"(s))"(x)) ∈ Point(dM(I))
5. l : BoundedLattice
6. eq : EqDecider(Point(l))
7. h : Hom(dM(I);l)
8. (h x) = (h \/(λs./\(λx.free-dl-inc(x)"(s))"(x))) ∈ Point(l)
9. h ∈ Hom(free-DeMorgan-lattice(names(I);NamesDeq);l)
10. ∀[s:fset(Point(free-DeMorgan-lattice(names(I);NamesDeq)))]. ((h \/(s)) = \/(h"(s)) ∈ Point(l))
11. ∀[s:fset(Point(free-DeMorgan-lattice(names(I);NamesDeq)))]. ((h /\(s)) = /\(h"(s)) ∈ Point(l))
⊢ \/(λs./\(λx.(h free-dl-inc(x))"(s))"(x)) = (h \/(λs./\(λx.free-dl-inc(x)"(s))"(x))) ∈ Point(l)
Latex:
Latex:
1.  I  :  fset(\mBbbN{})
2.  x  :  fset(fset(names(I)  +  names(I)))
3.  \muparrow{}fset-antichain(union-deq(names(I);names(I);NamesDeq;NamesDeq);x)
4.  x  =  \mbackslash{}/(\mlambda{}s./\mbackslash{}(\mlambda{}x.free-dl-inc(x)"(s))"(x))
5.  l  :  BoundedLattice
6.  eq  :  EqDecider(Point(l))
7.  h  :  Hom(dM(I);l)
8.  (h  x)  =  (h  \mbackslash{}/(\mlambda{}s./\mbackslash{}(\mlambda{}x.free-dl-inc(x)"(s))"(x)))
9.  h  \mmember{}  Hom(free-DeMorgan-lattice(names(I);NamesDeq);l)
\mvdash{}  \mbackslash{}/(\mlambda{}s./\mbackslash{}(\mlambda{}x.(h  free-dl-inc(x))"(s))"(x))  =  (h  \mbackslash{}/(\mlambda{}s./\mbackslash{}(\mlambda{}x.free-dl-inc(x)"(s))"(x)))
By
Latex:
((InstLemma  `lattice-hom-fset-join`  [\mkleeneopen{}free-DeMorgan-lattice(names(I);NamesDeq)\mkleeneclose{};\mkleeneopen{}l\mkleeneclose{};
    \mkleeneopen{}free-dml-deq(names(I);NamesDeq)\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}h\mkleeneclose{}]\mcdot{}
    THENA  Auto
    )
  THEN  (InstLemma  `lattice-hom-fset-meet`  [\mkleeneopen{}free-DeMorgan-lattice(names(I);NamesDeq)\mkleeneclose{};\mkleeneopen{}l\mkleeneclose{};
              \mkleeneopen{}free-dml-deq(names(I);NamesDeq)\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}h\mkleeneclose{}]\mcdot{}
              THENA  Auto
              )
  )
Home
Index