Step
*
1
of Lemma
fset-ac-le-distributive-constrained
1. T : Type
2. eq : EqDecider(T)
3. P : fset(T) ⟶ 𝔹
4. ∀x,y:fset(T).  (y ⊆ x 
⇒ (↑(P x)) 
⇒ (↑(P y)))
5. a : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
6. b : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
7. c : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
⊢ glb(P;a;lub(P;b;c)) = lub(P;glb(P;a;b);glb(P;a;c)) ∈ fset(fset(T))
BY
{ ((InstLemma`fset-constrained-ac-lub-is-lub` [⌜T⌝;⌜eq⌝;⌜P⌝;⌜glb(P;a;b)⌝;⌜glb(P;a;c)⌝]⋅ THENA Auto)
   THEN (InstLemma `least-upper-bound-unique`
         [{ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])}
         ⌜λ2ac1 ac2.fset-ac-le(eq;ac1;ac2)⌝; ⌜glb(P;a;b)⌝;⌜glb(P;a;c)⌝]⋅
         THENA Auto
         )
   THEN BHyp -1
   THEN Auto
   THEN RepeatFor 2 (Thin (-1))
   THEN D 0
   THEN Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. P : fset(T) ⟶ 𝔹
4. ∀x,y:fset(T).  (y ⊆ x 
⇒ (↑(P x)) 
⇒ (↑(P y)))
5. a : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
6. b : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
7. c : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
⊢ fset-ac-le(eq;glb(P;a;b);glb(P;a;lub(P;b;c)))
2
1. T : Type
2. eq : EqDecider(T)
3. P : fset(T) ⟶ 𝔹
4. ∀x,y:fset(T).  (y ⊆ x 
⇒ (↑(P x)) 
⇒ (↑(P y)))
5. a : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
6. b : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
7. c : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
⊢ fset-ac-le(eq;glb(P;a;c);glb(P;a;lub(P;b;c)))
3
1. T : Type
2. eq : EqDecider(T)
3. P : fset(T) ⟶ 𝔹
4. ∀x,y:fset(T).  (y ⊆ x 
⇒ (↑(P x)) 
⇒ (↑(P y)))
5. a : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
6. b : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
7. c : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
8. fset-ac-le(eq;glb(P;a;c);glb(P;a;lub(P;b;c)))
9. x : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.P[a])} 
10. fset-ac-le(eq;glb(P;a;b);x)
11. fset-ac-le(eq;glb(P;a;c);x)
⊢ fset-ac-le(eq;glb(P;a;lub(P;b;c));x)
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  P  :  fset(T)  {}\mrightarrow{}  \mBbbB{}
4.  \mforall{}x,y:fset(T).    (y  \msubseteq{}  x  {}\mRightarrow{}  (\muparrow{}(P  x))  {}\mRightarrow{}  (\muparrow{}(P  y)))
5.  a  :  \{ac:fset(fset(T))|  (\muparrow{}fset-antichain(eq;ac))  \mwedge{}  fset-all(ac;a.P[a])\} 
6.  b  :  \{ac:fset(fset(T))|  (\muparrow{}fset-antichain(eq;ac))  \mwedge{}  fset-all(ac;a.P[a])\} 
7.  c  :  \{ac:fset(fset(T))|  (\muparrow{}fset-antichain(eq;ac))  \mwedge{}  fset-all(ac;a.P[a])\} 
\mvdash{}  glb(P;a;lub(P;b;c))  =  lub(P;glb(P;a;b);glb(P;a;c))
By
Latex:
((InstLemma`fset-constrained-ac-lub-is-lub`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}P\mkleeneclose{};\mkleeneopen{}glb(P;a;b)\mkleeneclose{};\mkleeneopen{}glb(P;a;c)\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `least-upper-bound-unique`
              [\{ac:fset(fset(T))|  (\muparrow{}fset-antichain(eq;ac))  \mwedge{}  fset-all(ac;a.P[a])\}  ;
              \mkleeneopen{}\mlambda{}\msubtwo{}ac1  ac2.fset-ac-le(eq;ac1;ac2)\mkleeneclose{};  \mkleeneopen{}glb(P;a;b)\mkleeneclose{};\mkleeneopen{}glb(P;a;c)\mkleeneclose{}]\mcdot{}
              THENA  Auto
              )
  THEN  BHyp  -1
  THEN  Auto
  THEN  RepeatFor  2  (Thin  (-1))
  THEN  D  0
  THEN  Auto)
Home
Index