Step
*
of Lemma
State-comb-invariant
∀[Info,A,S:Type]. ∀[init:Id ─→ bag(S)]. ∀[f:A ─→ S ─→ S]. ∀[X:EClass(A)]. ∀[es:EO+(Info)]. ∀[P:S ─→ ℙ]. ∀[e:E].
∀v:S
((∀s:S. SqStable(P[s]))
⇒ (∀s:S. (s ↓∈ init loc(e)
⇒ P[s]))
⇒ (∀a:A. ∀e':E. (e' ≤loc e
⇒ a ∈ X(e')
⇒ (∀s:S. (s ∈ Memory-class(f;init;X)(e')
⇒ P[s]
⇒ P[f a s]))))
⇒ v ∈ State-comb(init;f;X)(e)
⇒ P[v])
BY
{ ((UnivCD THENA Auto)
THEN (Unhide THENA Auto)
THEN InstLemma `iterated_classrel_invariant3` [⌈Info⌉;⌈A⌉;⌈S⌉;⌈init⌉;⌈f⌉;⌈X⌉;⌈es⌉;⌈P⌉;⌈e⌉;⌈v⌉]⋅
THEN Auto
THEN Try (Complete ((RWO "State-comb-classrel" (-1) THEN Auto)))
THEN InstHyp [⌈a⌉;⌈e'⌉;⌈s⌉] (-9)⋅
THEN Auto
THEN MaUseClassRel 0
THEN Try (Fold `prior_iterated_classrel` 0)
THEN Auto) }
Latex:
Latex:
\mforall{}[Info,A,S:Type]. \mforall{}[init:Id {}\mrightarrow{} bag(S)]. \mforall{}[f:A {}\mrightarrow{} S {}\mrightarrow{} S]. \mforall{}[X:EClass(A)]. \mforall{}[es:EO+(Info)].
\mforall{}[P:S {}\mrightarrow{} \mBbbP{}]. \mforall{}[e:E].
\mforall{}v:S
((\mforall{}s:S. SqStable(P[s]))
{}\mRightarrow{} (\mforall{}s:S. (s \mdownarrow{}\mmember{} init loc(e) {}\mRightarrow{} P[s]))
{}\mRightarrow{} (\mforall{}a:A. \mforall{}e':E.
(e' \mleq{}loc e {}\mRightarrow{} a \mmember{} X(e') {}\mRightarrow{} (\mforall{}s:S. (s \mmember{} Memory-class(f;init;X)(e') {}\mRightarrow{} P[s] {}\mRightarrow{} P[f a s]))))
{}\mRightarrow{} v \mmember{} State-comb(init;f;X)(e)
{}\mRightarrow{} P[v])
By
Latex:
((UnivCD THENA Auto)
THEN (Unhide THENA Auto)
THEN InstLemma `iterated\_classrel\_invariant3` [\mkleeneopen{}Info\mkleeneclose{};\mkleeneopen{}A\mkleeneclose{};\mkleeneopen{}S\mkleeneclose{};\mkleeneopen{}init\mkleeneclose{};\mkleeneopen{}f\mkleeneclose{};\mkleeneopen{}X\mkleeneclose{};\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}P\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{};\mkleeneopen{}v\mkleeneclose{}]\mcdot{}
THEN Auto
THEN Try (Complete ((RWO "State-comb-classrel" (-1) THEN Auto)))
THEN InstHyp [\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}e'\mkleeneclose{};\mkleeneopen{}s\mkleeneclose{}] (-9)\mcdot{}
THEN Auto
THEN MaUseClassRel 0
THEN Try (Fold `prior\_iterated\_classrel` 0)
THEN Auto)
Home
Index