Step * 2 of Lemma lattice-fset-join-union


1. BoundedLattice
2. eq EqDecider(Point(l))
3. s1 fset(Point(l))
4. Point(l)
5. ∀s2:fset(Point(l)). (\/(s1 ⋃ s2) \/(s1) ∨ \/(s2) ∈ Point(l))
6. ¬x ∈ s1
7. s2 fset(Point(l))
⊢ \/(fset-add(eq;x;s1) ⋃ s2) \/(fset-add(eq;x;s1)) ∨ \/(s2) ∈ Point(l)
BY
((RWO "fset-add-union" THENA Auto)
   THEN Unfold `lattice-fset-join` 0
   THEN Reduce 0
   THEN Fold `lattice-fset-join` 0
   THEN (RWO "5" THENA Auto)
   THEN (RWO "fset-add-as-cons" THENA Auto)
   THEN (Unfold `lattice-fset-join` THEN Reduce THEN Fold `lattice-fset-join` 0)
   THEN (Assert l ∈ BoundedLattice BY
               Auto)
   THEN 1
   THEN RepeatFor (D 2)
   THEN Auto) }


Latex:


Latex:

1.  l  :  BoundedLattice
2.  eq  :  EqDecider(Point(l))
3.  s1  :  fset(Point(l))
4.  x  :  Point(l)
5.  \mforall{}s2:fset(Point(l)).  (\mbackslash{}/(s1  \mcup{}  s2)  =  \mbackslash{}/(s1)  \mvee{}  \mbackslash{}/(s2))
6.  \mneg{}x  \mmember{}  s1
7.  s2  :  fset(Point(l))
\mvdash{}  \mbackslash{}/(fset-add(eq;x;s1)  \mcup{}  s2)  =  \mbackslash{}/(fset-add(eq;x;s1))  \mvee{}  \mbackslash{}/(s2)


By


Latex:
((RWO  "fset-add-union"  0  THENA  Auto)
  THEN  Unfold  `lattice-fset-join`  0
  THEN  Reduce  0
  THEN  Fold  `lattice-fset-join`  0
  THEN  (RWO  "5"  0  THENA  Auto)
  THEN  (RWO  "fset-add-as-cons"  0  THENA  Auto)
  THEN  (Unfold  `lattice-fset-join`  0  THEN  Reduce  0  THEN  Fold  `lattice-fset-join`  0)
  THEN  (Assert  l  \mmember{}  BoundedLattice  BY
                          Auto)
  THEN  D  1
  THEN  RepeatFor  2  (D  2)
  THEN  Auto)




Home Index