Step
*
2
of Lemma
State-comb-classrel-mem2
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. v : B
10. if e ∈b X
then ↓∃w:B. ∃a:A. (w ∈ Memory-class(f;init;X)(e) ∧ (v = (f a w) ∈ B) ∧ a ∈ X(e))
else v ∈ Memory-class(f;init;X)(e)
fi @i
⊢ v ∈ State-comb(init;f;X)(e)
BY
{ (MaUseClassRel 0 THEN RecUnfold `iterated_classrel` 0 THEN (SplitOnHypITE (-1) THENA Auto) THEN SquashExRepD) }
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. v : B
10. w : B@i
11. a : A@i
12. w ∈ Memory-class(f;init;X)(e)@i
13. v = (f a w) ∈ B@i
14. a ∈ X(e)@i
15. ↑e ∈b X
⊢ ↓∃z:B
    (if first(e) then z ↓∈ init loc(e) else iterated_classrel(es;B;A;f;init;X;pred(e);z) fi 
    ∧ ((∃a:A. (a ∈ X(e) ∧ (v = (f a z) ∈ B))) ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))))
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. v : B
10. v ∈ Memory-class(f;init;X)(e)@i
11. ¬↑e ∈b X
⊢ ↓∃z:B
    (if first(e) then z ↓∈ init loc(e) else iterated_classrel(es;B;A;f;init;X;pred(e);z) fi 
    ∧ ((∃a:A. (a ∈ X(e) ∧ (v = (f a z) ∈ B))) ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ B))))
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  A  :  Type
4.  f  :  A  {}\mrightarrow{}  B  {}\mrightarrow{}  B
5.  init  :  Id  {}\mrightarrow{}  bag(B)
6.  X  :  EClass(A)@i'
7.  es  :  EO+(Info)@i'
8.  e  :  E@i
9.  v  :  B
10.  if  e  \mmember{}\msubb{}  X
then  \mdownarrow{}\mexists{}w:B.  \mexists{}a:A.  (w  \mmember{}  Memory-class(f;init;X)(e)  \mwedge{}  (v  =  (f  a  w))  \mwedge{}  a  \mmember{}  X(e))
else  v  \mmember{}  Memory-class(f;init;X)(e)
fi  @i
\mvdash{}  v  \mmember{}  State-comb(init;f;X)(e)
By
Latex:
(MaUseClassRel  0
  THEN  RecUnfold  `iterated\_classrel`  0
  THEN  (SplitOnHypITE  (-1)  THENA  Auto)
  THEN  SquashExRepD)
Home
Index