Step
*
2
1
of Lemma
loop-class-state-fun-eq
1. Info : Type
2. B : Type
3. init : Id ─→ bag(B)
4. X : EClass(B ─→ B)
5. es : EO+(Info)
6. e : E
7. ¬↑first(e)
8. ¬False
9. ∀l:Id. (1 ≤ #(init l))
10. single-valued-classrel(es;X;B ─→ B)
11. ∀l:Id. single-valued-bag(init l;B)
12. ↑e ∈b X
13. ↑e ∈b X
14. 0 < #(loop-class-state(X;init) es pred(e))
⊢ sv-bag-only(∪f∈X es e.bag-map(f;loop-class-state(X;init) es pred(e)))
= (X@e sv-bag-only(loop-class-state(X;init) es pred(e)))
∈ B
BY
{ (GenConclAtAddr [3;2;1]
   THEN (RWO "sv-bag-only-combine" 0 THENA Auto)
   THEN Try ((BLemma `single-valued-classrel-implies-bag` THEN Auto))
   THEN Try ((BLemma `member-eclass-iff-size` THEN Auto))
   THEN Try ((BLemma `single-valued-bag-map` THEN Auto))
   THEN Try ((RWO "bag-size-map" 0 THENA CpltAuto))
   THEN Try (Complete ((InstHyp [⌈loc(e)⌉] 9⋅ THEN Auto)))
   THEN Try (Complete ((SimpleSubstVar `v' 0
                        THEN BLemma `single-valued-classrel-implies-bag`
                        THEN Auto
                        THEN BLemma `loop-class-state-single-val`
                        THEN Auto)))
   THEN Fold `classfun` 0
   THEN Fold `classfun-res` 0
   THEN BLemma `sv-bag-only-map2`
   THEN Auto
   THEN SimpleSubstVar `v' 0
   THEN BLemma `single-valued-classrel-implies-bag`
   THEN Auto
   THEN BLemma `loop-class-state-single-val`
   THEN Auto) }
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  init  :  Id  {}\mrightarrow{}  bag(B)
4.  X  :  EClass(B  {}\mrightarrow{}  B)
5.  es  :  EO+(Info)
6.  e  :  E
7.  \mneg{}\muparrow{}first(e)
8.  \mneg{}False
9.  \mforall{}l:Id.  (1  \mleq{}  \#(init  l))
10.  single-valued-classrel(es;X;B  {}\mrightarrow{}  B)
11.  \mforall{}l:Id.  single-valued-bag(init  l;B)
12.  \muparrow{}e  \mmember{}\msubb{}  X
13.  \muparrow{}e  \mmember{}\msubb{}  X
14.  0  <  \#(loop-class-state(X;init)  es  pred(e))
\mvdash{}  sv-bag-only(\mcup{}f\mmember{}X  es  e.bag-map(f;loop-class-state(X;init)  es  pred(e)))
=  (X@e  sv-bag-only(loop-class-state(X;init)  es  pred(e)))
By
Latex:
(GenConclAtAddr  [3;2;1]
  THEN  (RWO  "sv-bag-only-combine"  0  THENA  Auto)
  THEN  Try  ((BLemma  `single-valued-classrel-implies-bag`  THEN  Auto))
  THEN  Try  ((BLemma  `member-eclass-iff-size`  THEN  Auto))
  THEN  Try  ((BLemma  `single-valued-bag-map`  THEN  Auto))
  THEN  Try  ((RWO  "bag-size-map"  0  THENA  CpltAuto))
  THEN  Try  (Complete  ((InstHyp  [\mkleeneopen{}loc(e)\mkleeneclose{}]  9\mcdot{}  THEN  Auto)))
  THEN  Try  (Complete  ((SimpleSubstVar  `v'  0
                                            THEN  BLemma  `single-valued-classrel-implies-bag`
                                            THEN  Auto
                                            THEN  BLemma  `loop-class-state-single-val`
                                            THEN  Auto)))
  THEN  Fold  `classfun`  0
  THEN  Fold  `classfun-res`  0
  THEN  BLemma  `sv-bag-only-map2`
  THEN  Auto
  THEN  SimpleSubstVar  `v'  0
  THEN  BLemma  `single-valued-classrel-implies-bag`
  THEN  Auto
  THEN  BLemma  `loop-class-state-single-val`
  THEN  Auto)
Home
Index