Step
*
of Lemma
iterated-classrel-Memory-loc-classrel
∀[Info,B,A:Type]. ∀[f:Id ─→ A ─→ B ─→ B]. ∀[init:Id ─→ bag(B)].
  ∀X:EClass(A). ∀es:EO+(Info). ∀e:E.
    ∀[v:B]
      uiff(iterated_classrel(es;B;A;f loc(e);init;X;e;v);↓(∃a:A
                                                            ∃b:B
                                                             (a ∈ X(e)
                                                             ∧ b ∈ Memory-loc-class(f;init;X)(e)
                                                             ∧ (v = (f loc(e) a b) ∈ B)))
                                                          ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-loc-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 : Id ─→ 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 loc(e1);init;X;e1;v);↓(∃a:A
                                                                   ∃b:B
                                                                    (a ∈ X(e1)
                                                                    ∧ b ∈ Memory-loc-class(f;init;X)(e1)
                                                                    ∧ (v = (f loc(e1) a b) ∈ B)))
                                                                 ∨ ((∀a:A. (¬a ∈ X(e1)))
                                                                   ∧ v ∈ Memory-loc-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 loc(e) a z) ∈ B)))
           ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))));↓(∃a:A
                                                      ∃b:B
                                                       (a ∈ X(e)
                                                       ∧ b ∈ Memory-loc-class(f;init;X)(e)
                                                       ∧ (v = (f loc(e) a b) ∈ B)))
                                                    ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-loc-class(f;init;X)(e)))
2
1. Info : Type
2. B : Type
3. A : Type
4. f : Id ─→ 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 loc(e1);init;X;e1;v);↓(∃a:A
                                                                   ∃b:B
                                                                    (a ∈ X(e1)
                                                                    ∧ b ∈ Memory-loc-class(f;init;X)(e1)
                                                                    ∧ (v = (f loc(e1) a b) ∈ B)))
                                                                 ∨ ((∀a:A. (¬a ∈ X(e1)))
                                                                   ∧ v ∈ Memory-loc-class(f;init;X)(e1)))))
10. v : B@i
11. ¬↑first(e)
⊢ uiff(↓∃z:B
         (iterated_classrel(es;B;A;f loc(e);init;X;pred(e);z)
         ∧ ((∃a:A. (a ∈ X(e) ∧ (v = (f loc(e) a z) ∈ B)))
           ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))));↓(∃a:A
                                                      ∃b:B
                                                       (a ∈ X(e)
                                                       ∧ b ∈ Memory-loc-class(f;init;X)(e)
                                                       ∧ (v = (f loc(e) a b) ∈ B)))
                                                    ∨ ((∀a:A. (¬a ∈ X(e))) ∧ v ∈ Memory-loc-class(f;init;X)(e)))
Latex:
Latex:
\mforall{}[Info,B,A:Type].  \mforall{}[f:Id  {}\mrightarrow{}  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  loc(e);init;X;e;v);\mdownarrow{}(\mexists{}a:A
                                                                                                                        \mexists{}b:B
                                                                                                                          (a  \mmember{}  X(e)
                                                                                                                          \mwedge{}  b  \mmember{}  Memory-loc-class(f;init;X)(e)
                                                                                                                          \mwedge{}  (v  =  (f  loc(e)  a  b))))
                                                                                                                    \mvee{}  ((\mforall{}a:A.  (\mneg{}a  \mmember{}  X(e)))
                                                                                                                        \mwedge{}  v  \mmember{}  Memory-loc-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