Step
*
of Lemma
iterated-classrel-Memory-classrel
∀[Info,B,A:Type]. ∀[f:A ─→ B ─→ B]. ∀[init:Id ─→ bag(B)].
  ∀X:EClass(A). ∀es:EO+(Info). ∀e:E.
    ∀[v:B]
      uiff(iterated_classrel(es;B;A;f;init;X;e;v);↓(∃a:A
                                                     ∃b:B
                                                      (a ∈ X(e) ∧ b ∈ Memory-class(f;init;X)(e) ∧ (v = (f a b) ∈ B)))
                                                   ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-class(f;init;X)(e)))
BY
{ ((UnivCD THENA (Auto THEN Unfold `label` 0 THEN Auto))
   THEN (Unhide THENA MaAuto)
   THEN RepeatFor 2 (MoveToConcl (-1))
   THEN CausalInd'
   THEN (D 0 THENA Auto)
   THEN RecUnfold `iterated_classrel` 0⋅
   THEN OldAutoSplit) }
1
1. Info : Type
2. B : Type
3. A : Type
4. f : A ─→ B ─→ B
5. init : Id ─→ bag(B)
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. e : E@i
9. ∀e1:E
     ((e1 < e)
     
⇒ (∀v:B
           uiff(iterated_classrel(es;B;A;f;init;X;e1;v);↓(∃a:A
                                                           ∃b:B
                                                            (a ∈ X(e1)
                                                            ∧ b ∈ Memory-class(f;init;X)(e1)
                                                            ∧ (v = (f a b) ∈ B)))
                                                         ∨ ((∀a:A. (¬a ∈ X(e1))) ∧ v ∈ Memory-class(f;init;X)(e1)))))
10. v : B@i
11. ↑first(e)
⊢ uiff(↓∃z:B
         (z ↓∈ init loc(e)
         ∧ ((∃a:A. (a ∈ X(e) ∧ (v = (f a z) ∈ B)))
           ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))));↓(∃a:A
                                                      ∃b:B
                                                       (a ∈ X(e) ∧ b ∈ Memory-class(f;init;X)(e) ∧ (v = (f a b) ∈ B)))
                                                    ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-class(f;init;X)(e)))
2
1. Info : Type
2. B : Type
3. A : Type
4. f : A ─→ B ─→ B
5. init : Id ─→ bag(B)
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. e : E@i
9. ∀e1:E
     ((e1 < e)
     
⇒ (∀v:B
           uiff(iterated_classrel(es;B;A;f;init;X;e1;v);↓(∃a:A
                                                           ∃b:B
                                                            (a ∈ X(e1)
                                                            ∧ b ∈ Memory-class(f;init;X)(e1)
                                                            ∧ (v = (f a b) ∈ B)))
                                                         ∨ ((∀a:A. (¬a ∈ X(e1))) ∧ v ∈ Memory-class(f;init;X)(e1)))))
10. v : B@i
11. ¬↑first(e)
⊢ uiff(↓∃z:B
         (iterated_classrel(es;B;A;f;init;X;pred(e);z)
         ∧ ((∃a:A. (a ∈ X(e) ∧ (v = (f a z) ∈ B)))
           ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))));↓(∃a:A
                                                      ∃b:B
                                                       (a ∈ X(e) ∧ b ∈ Memory-class(f;init;X)(e) ∧ (v = (f a b) ∈ B)))
                                                    ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-class(f;init;X)(e)))
Latex:
Latex:
\mforall{}[Info,B,A:Type].  \mforall{}[f:A  {}\mrightarrow{}  B  {}\mrightarrow{}  B].  \mforall{}[init:Id  {}\mrightarrow{}  bag(B)].
    \mforall{}X:EClass(A).  \mforall{}es:EO+(Info).  \mforall{}e:E.
        \mforall{}[v:B]
            uiff(iterated\_classrel(es;B;A;f;init;X;e;v);\mdownarrow{}(\mexists{}a:A
                                                                                                          \mexists{}b:B
                                                                                                            (a  \mmember{}  X(e)
                                                                                                            \mwedge{}  b  \mmember{}  Memory-class(f;init;X)(e)
                                                                                                            \mwedge{}  (v  =  (f  a  b))))
                                                                                                      \mvee{}  ((\mforall{}a:A.  (\mneg{}a  \mmember{}  X(e)))
                                                                                                          \mwedge{}  v  \mmember{}  Memory-class(f;init;X)(e)))
By
Latex:
((UnivCD  THENA  (Auto  THEN  Unfold  `label`  0  THEN  Auto))
  THEN  (Unhide  THENA  MaAuto)
  THEN  RepeatFor  2  (MoveToConcl  (-1))
  THEN  CausalInd'
  THEN  (D  0  THENA  Auto)
  THEN  RecUnfold  `iterated\_classrel`  0\mcdot{}
  THEN  OldAutoSplit)
Home
Index