Step * 1 of Lemma loop-class-state-fun-eq


1. Info Type
2. Type
3. init Id ─→ bag(B)
4. EClass(B ─→ B)
5. es EO+(Info)
6. E
7. ∀l:Id. (1 ≤ #(init l))
8. single-valued-classrel(es;X;B ─→ B)
9. ∀l:Id. single-valued-bag(init l;B)
10. ↑e ∈b X
11. ↑first(e)
⊢ loop-class-state(X;init)(e) (X@e sv-bag-only(init loc(e))) ∈ B
BY
(RecUnfold `loop-class-state` 0
   THEN RepUR ``eclass-cond classfun`` 0
   THEN AutoSplit
   THEN RepUR ``eclass3 class-ap`` 0
   THEN (RWO "primed-class-opt-cases" THENA (Try (Complete (Auto)) THEN DoSubsume THEN Auto))
   THEN AutoSplit
   THEN (RWO "sv-bag-only-combine" 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" THENA CpltAuto))
   THEN Try (Complete ((InstHyp [⌈loc(e)⌉7⋅ THEN Auto)))
   THEN Fold `classfun` 0
   THEN Fold `classfun-res` 0
   THEN BLemma `sv-bag-only-map2`
   THEN Auto
   THEN InstHyp [⌈loc(e)⌉7⋅
   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.  \mforall{}l:Id.  (1  \mleq{}  \#(init  l))
8.  single-valued-classrel(es;X;B  {}\mrightarrow{}  B)
9.  \mforall{}l:Id.  single-valued-bag(init  l;B)
10.  \muparrow{}e  \mmember{}\msubb{}  X
11.  \muparrow{}first(e)
\mvdash{}  loop-class-state(X;init)(e)  =  (X@e  sv-bag-only(init  loc(e)))


By


Latex:
(RecUnfold  `loop-class-state`  0
  THEN  RepUR  ``eclass-cond  classfun``  0
  THEN  AutoSplit
  THEN  RepUR  ``eclass3  class-ap``  0
  THEN  (RWO  "primed-class-opt-cases"  0  THENA  (Try  (Complete  (Auto))  THEN  DoSubsume  THEN  Auto))
  THEN  AutoSplit
  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{}]  7\mcdot{}  THEN  Auto)))
  THEN  Fold  `classfun`  0
  THEN  Fold  `classfun-res`  0
  THEN  BLemma  `sv-bag-only-map2`
  THEN  Auto
  THEN  InstHyp  [\mkleeneopen{}loc(e)\mkleeneclose{}]  7\mcdot{}
  THEN  Auto)




Home Index