Step
*
1
of Lemma
iterated-classrel-invariant2
.....truecase.....
1. [Info] : Type
2. [A] : Type
3. [S] : Type
4. [init] : Id ─→ bag(S)
5. [f] : A ─→ S ─→ S
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. [P] : E ─→ S ─→ ℙ
9. e : E@i
10. ∀e1:E
((e1 < e)
⇒ (∀v:S
((∀s:S. ∀e':E.
(e' ≤loc e1
⇒ if first(e')
then s ↓∈ init loc(e')
else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s]
fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi ))
⇒ iterated-classrel(es;S;A;f;init;X;e1;v)
⇒ P[e1;v])))
11. v : S@i
12. ∀s:S. ∀e':E.
(e' ≤loc e
⇒ if first(e') then s ↓∈ init loc(e') else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s] fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi )@i
13. z : S@i
14. z ↓∈ init loc(e)@i
15. (∃a:A. (a ∈ X(e) ∧ (v = (f a z) ∈ S))) ∨ ((∀a:A. (¬a ∈ X(e))) ∧ (v = z ∈ S))@i
16. ↑first(e)
⊢ P[e;v]
BY
{ (D (-2) THEN ExRepD) }
1
1. [Info] : Type
2. [A] : Type
3. [S] : Type
4. [init] : Id ─→ bag(S)
5. [f] : A ─→ S ─→ S
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. [P] : E ─→ S ─→ ℙ
9. e : E@i
10. ∀e1:E
((e1 < e)
⇒ (∀v:S
((∀s:S. ∀e':E.
(e' ≤loc e1
⇒ if first(e')
then s ↓∈ init loc(e')
else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s]
fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi ))
⇒ iterated-classrel(es;S;A;f;init;X;e1;v)
⇒ P[e1;v])))
11. v : S@i
12. ∀s:S. ∀e':E.
(e' ≤loc e
⇒ if first(e') then s ↓∈ init loc(e') else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s] fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi )@i
13. z : S@i
14. z ↓∈ init loc(e)@i
15. a : A@i
16. a ∈ X(e)@i
17. v = (f a z) ∈ S@i
18. ↑first(e)
⊢ P[e;v]
2
1. [Info] : Type
2. [A] : Type
3. [S] : Type
4. [init] : Id ─→ bag(S)
5. [f] : A ─→ S ─→ S
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. [P] : E ─→ S ─→ ℙ
9. e : E@i
10. ∀e1:E
((e1 < e)
⇒ (∀v:S
((∀s:S. ∀e':E.
(e' ≤loc e1
⇒ if first(e')
then s ↓∈ init loc(e')
else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s]
fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi ))
⇒ iterated-classrel(es;S;A;f;init;X;e1;v)
⇒ P[e1;v])))
11. v : S@i
12. ∀s:S. ∀e':E.
(e' ≤loc e
⇒ if first(e') then s ↓∈ init loc(e') else iterated-classrel(es;S;A;f;init;X;pred(e');s) ∧ P[pred(e');s] fi
⇒ if e' ∈b X then ∀a:A. (a ∈ X(e')
⇒ P[e';f a s]) else P[e';s] fi )@i
13. z : S@i
14. z ↓∈ init loc(e)@i
15. ∀a:A. (¬a ∈ X(e))@i
16. v = z ∈ S@i
17. ↑first(e)
⊢ P[e;v]
Latex:
.....truecase.....
1. [Info] : Type
2. [A] : Type
3. [S] : Type
4. [init] : Id {}\mrightarrow{} bag(S)
5. [f] : A {}\mrightarrow{} S {}\mrightarrow{} S
6. X : EClass(A)@i'
7. es : EO+(Info)@i'
8. [P] : E {}\mrightarrow{} S {}\mrightarrow{} \mBbbP{}
9. e : E@i
10. \mforall{}e1:E
((e1 < e)
{}\mRightarrow{} (\mforall{}v:S
((\mforall{}s:S. \mforall{}e':E.
(e' \mleq{}loc e1
{}\mRightarrow{} if first(e')
then s \mdownarrow{}\mmember{} init loc(e')
else iterated-classrel(es;S;A;f;init;X;pred(e');s) \mwedge{} P[pred(e');s]
fi
{}\mRightarrow{} if e' \mmember{}\msubb{} X then \mforall{}a:A. (a \mmember{} X(e') {}\mRightarrow{} P[e';f a s]) else P[e';s] fi ))
{}\mRightarrow{} iterated-classrel(es;S;A;f;init;X;e1;v)
{}\mRightarrow{} P[e1;v])))
11. v : S@i
12. \mforall{}s:S. \mforall{}e':E.
(e' \mleq{}loc e
{}\mRightarrow{} if first(e')
then s \mdownarrow{}\mmember{} init loc(e')
else iterated-classrel(es;S;A;f;init;X;pred(e');s) \mwedge{} P[pred(e');s]
fi
{}\mRightarrow{} if e' \mmember{}\msubb{} X then \mforall{}a:A. (a \mmember{} X(e') {}\mRightarrow{} P[e';f a s]) else P[e';s] fi )@i
13. z : S@i
14. z \mdownarrow{}\mmember{} init loc(e)@i
15. (\mexists{}a:A. (a \mmember{} X(e) \mwedge{} (v = (f a z)))) \mvee{} ((\mforall{}a:A. (\mneg{}a \mmember{} X(e))) \mwedge{} (v = z))@i
16. \muparrow{}first(e)
\mvdash{} P[e;v]
By
(D (-2) THEN ExRepD)
Home
Index