Step
*
1
1
of Lemma
lattice-fset-meet-free-dlwc-inc
1. T : Type
2. eq : EqDecider(T)
3. Cs : T ⟶ fset(fset(T))
4. s : fset(T)
5. ↑fset-contains-none(eq;s;x.Cs[x])
6. deq-fset(deq-fset(eq)) ∈ EqDecider(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))
7. {s} ∈ Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))
8. ∀[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
   ∀[x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
     /\(s) ≤ x supposing x ∈ s
9. ∀[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
   ∀[v:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
     ((∀x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])). (x ∈ s 
⇒ v ≤ x)) 
⇒ v ≤ /\(s))
10. x : Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))
11. ↓∃x1:T
      (x1 ∈ s
      ∧ (x
        = if fset-null({c ∈ Cs[x1] | deq-f-subset(eq) c {x1}}) then {{x1}} else {} fi 
        ∈ Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))))
⊢ fset-ac-le(eq;{s};x)
BY
{ ((RWO "free-dlwc-point" (-2) THENA Auto)
   THEN Unfold `fset-ac-le` 0
   THEN Using [`eq',⌜deq-fset(eq)⌝] (BLemma `fset-all-iff`)⋅
   THEN Auto
   THEN (RWO "member-fset-singleton" (-1) THENA Auto)
   THEN (HypSubst' (-1) 0 THENA Auto)
   THEN RepeatFor 2 (Thin (-1))) }
1
1. T : Type
2. eq : EqDecider(T)
3. Cs : T ⟶ fset(fset(T))
4. s : fset(T)
5. ↑fset-contains-none(eq;s;x.Cs[x])
6. deq-fset(deq-fset(eq)) ∈ EqDecider(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))
7. {s} ∈ Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))
8. ∀[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
   ∀[x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
     /\(s) ≤ x supposing x ∈ s
9. ∀[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
   ∀[v:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
     ((∀x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])). (x ∈ s 
⇒ v ≤ x)) 
⇒ v ≤ /\(s))
10. x : {ac:fset(fset(T))| (↑fset-antichain(eq;ac)) ∧ fset-all(ac;a.fset-contains-none(eq;a;x.Cs[x]))} 
11. ∃x1:T
     (x1 ∈ s
     ∧ (x
       = if fset-null({c ∈ Cs[x1] | deq-f-subset(eq) c {x1}}) then {{x1}} else {} fi 
       ∈ Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))))
⊢ ¬↑fset-null({y ∈ x | deq-f-subset(eq) y s})
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  Cs  :  T  {}\mrightarrow{}  fset(fset(T))
4.  s  :  fset(T)
5.  \muparrow{}fset-contains-none(eq;s;x.Cs[x])
6.  deq-fset(deq-fset(eq))  \mmember{}  EqDecider(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))
7.  \{s\}  \mmember{}  Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))
8.  \mforall{}[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
      \mforall{}[x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
          /\mbackslash{}(s)  \mleq{}  x  supposing  x  \mmember{}  s
9.  \mforall{}[s:fset(Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])))].
      \mforall{}[v:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))].
          ((\mforall{}x:Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x])).  (x  \mmember{}  s  {}\mRightarrow{}  v  \mleq{}  x))  {}\mRightarrow{}  v  \mleq{}  /\mbackslash{}(s))
10.  x  :  Point(free-dist-lattice-with-constraints(T;eq;x.Cs[x]))
11.  \mdownarrow{}\mexists{}x1:T
            (x1  \mmember{}  s  \mwedge{}  (x  =  if  fset-null(\{c  \mmember{}  Cs[x1]  |  deq-f-subset(eq)  c  \{x1\}\})  then  \{\{x1\}\}  else  \{\}  fi  ))
\mvdash{}  fset-ac-le(eq;\{s\};x)
By
Latex:
((RWO  "free-dlwc-point"  (-2)  THENA  Auto)
  THEN  Unfold  `fset-ac-le`  0
  THEN  Using  [`eq',\mkleeneopen{}deq-fset(eq)\mkleeneclose{}]  (BLemma  `fset-all-iff`)\mcdot{}
  THEN  Auto
  THEN  (RWO  "member-fset-singleton"  (-1)  THENA  Auto)
  THEN  (HypSubst'  (-1)  0  THENA  Auto)
  THEN  RepeatFor  2  (Thin  (-1)))
Home
Index