Step
*
1
of Lemma
loop-class-memory-eq
1. Info : Type
2. B : Type
3. X : EClass(B ─→ B)
4. init : Id ─→ bag(B)
5. es : EO+(Info)
6. e : E@i
7. ∀e1:E
     ((e1 < e)
     
⇒ (loop-class-memory(X;init)(e1)
        = if first(e1) then init loc(e1)
          if pred(e1) ∈b X then eclass3(X;loop-class-memory(X;init))(pred(e1))
          else loop-class-memory(X;init)(pred(e1))
          fi 
        ∈ bag(B)))
8. ↑first(e)
⊢ loop-class-memory(X;init)(e) = (init loc(e)) ∈ bag(B)
BY
{ (RecUnfold `loop-class-memory` 0
   THEN RepUR ``primed-class-opt class-ap`` 0
   THEN Fold `class-ap` 0
   THEN GenConclAtAddr [2;1]
   THEN AllReduce
   THEN DVar `v'
   THEN Reduce 0
   THEN Auto
   THEN DVar `x'
   THEN RepD
   THEN Auto) }
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  X  :  EClass(B  {}\mrightarrow{}  B)
4.  init  :  Id  {}\mrightarrow{}  bag(B)
5.  es  :  EO+(Info)
6.  e  :  E@i
7.  \mforall{}e1:E
          ((e1  <  e)
          {}\mRightarrow{}  (loop-class-memory(X;init)(e1)
                =  if  first(e1)  then  init  loc(e1)
                    if  pred(e1)  \mmember{}\msubb{}  X  then  eclass3(X;loop-class-memory(X;init))(pred(e1))
                    else  loop-class-memory(X;init)(pred(e1))
                    fi  ))
8.  \muparrow{}first(e)
\mvdash{}  loop-class-memory(X;init)(e)  =  (init  loc(e))
By
Latex:
(RecUnfold  `loop-class-memory`  0
  THEN  RepUR  ``primed-class-opt  class-ap``  0
  THEN  Fold  `class-ap`  0
  THEN  GenConclAtAddr  [2;1]
  THEN  AllReduce
  THEN  DVar  `v'
  THEN  Reduce  0
  THEN  Auto
  THEN  DVar  `x'
  THEN  RepD
  THEN  Auto)
Home
Index