Step
*
of Lemma
State-loc-comb-progress
∀[Info,B,A:Type].
∀R:B ─→ B ─→ ℙ. ∀P:A ─→ B ─→ ℙ. ∀f:Id ─→ A ─→ B ─→ B. ∀init:Id ─→ bag(B). ∀X:EClass(A). ∀es:EO+(Info). ∀e1,e2:E.
∀v1,v2:B.
((∀a:A. ∀s:B. Dec(P[a;s]))
⇒ Trans(B;x,y.R[x;y])
⇒ (∀a:A. ∀e:E. ∀s:B.
((e1 <loc e)
⇒ e ≤loc e2
⇒ a ∈ X(e)
⇒ s ∈ State-loc-comb(init;f;X)(pred(e))
⇒ ((P[a;s]
⇒ R[s;f loc(e) a s]) ∧ ((¬P[a;s])
⇒ (s = (f loc(e) a s) ∈ B)))))
⇒ single-valued-classrel(es;X;A)
⇒ single-valued-bag(init loc(e1);B)
⇒ v1 ∈ State-loc-comb(init;f;X)(e1)
⇒ v2 ∈ State-loc-comb(init;f;X)(e2)
⇒ (e1 <loc e2)
⇒ (∃e:E. ∃a:A. ∃s:B. ((e1 <loc e) ∧ e ≤loc e2 ∧ s ∈ State-loc-comb(init;f;X)(pred(e)) ∧ a ∈ X(e) ∧ P[a;s]))
⇒ R[v1;v2])
BY
{ ((UnivCD THENA Auto)
THEN (RWO "State-loc-comb-classrel-non-loc" (-3) THENA Auto)
THEN (RWO "State-loc-comb-classrel-non-loc" (-4) THENA Auto)
THEN InstLemma `State-comb-progress` [⌈Info⌉;⌈B⌉;⌈A⌉;⌈R⌉;⌈P⌉;⌈f loc(e1)⌉;⌈init⌉;⌈X⌉;⌈es⌉;⌈e1⌉;⌈e2⌉;⌈v1⌉;⌈v2⌉]⋅
THEN Auto
THEN Try (Complete ((ExRepD
THEN InstConcl [⌈e⌉;⌈a⌉;⌈s⌉]⋅
THEN MaAuto
THEN RWO "State-loc-comb-classrel-non-loc" (-5)
THEN Auto)))
THEN OnMaybeHyp 16 (\h. (InstHyp [⌈a⌉;⌈e⌉;⌈s⌉] h⋅
THEN Auto
THEN RWO "State-loc-comb-classrel-non-loc" 0
THEN Complete (Auto)))) }
Latex:
Latex:
\mforall{}[Info,B,A:Type].
\mforall{}R:B {}\mrightarrow{} B {}\mrightarrow{} \mBbbP{}. \mforall{}P:A {}\mrightarrow{} B {}\mrightarrow{} \mBbbP{}. \mforall{}f:Id {}\mrightarrow{} A {}\mrightarrow{} B {}\mrightarrow{} B. \mforall{}init:Id {}\mrightarrow{} bag(B). \mforall{}X:EClass(A).
\mforall{}es:EO+(Info). \mforall{}e1,e2:E. \mforall{}v1,v2:B.
((\mforall{}a:A. \mforall{}s:B. Dec(P[a;s]))
{}\mRightarrow{} Trans(B;x,y.R[x;y])
{}\mRightarrow{} (\mforall{}a:A. \mforall{}e:E. \mforall{}s:B.
((e1 <loc e)
{}\mRightarrow{} e \mleq{}loc e2
{}\mRightarrow{} a \mmember{} X(e)
{}\mRightarrow{} s \mmember{} State-loc-comb(init;f;X)(pred(e))
{}\mRightarrow{} ((P[a;s] {}\mRightarrow{} R[s;f loc(e) a s]) \mwedge{} ((\mneg{}P[a;s]) {}\mRightarrow{} (s = (f loc(e) a s))))))
{}\mRightarrow{} single-valued-classrel(es;X;A)
{}\mRightarrow{} single-valued-bag(init loc(e1);B)
{}\mRightarrow{} v1 \mmember{} State-loc-comb(init;f;X)(e1)
{}\mRightarrow{} v2 \mmember{} State-loc-comb(init;f;X)(e2)
{}\mRightarrow{} (e1 <loc e2)
{}\mRightarrow{} (\mexists{}e:E
\mexists{}a:A
\mexists{}s:B
((e1 <loc e) \mwedge{} e \mleq{}loc e2 \mwedge{} s \mmember{} State-loc-comb(init;f;X)(pred(e)) \mwedge{} a \mmember{} X(e) \mwedge{} P[a;s]))
{}\mRightarrow{} R[v1;v2])
By
Latex:
((UnivCD THENA Auto)
THEN (RWO "State-loc-comb-classrel-non-loc" (-3) THENA Auto)
THEN (RWO "State-loc-comb-classrel-non-loc" (-4) THENA Auto)
THEN InstLemma `State-comb-progress` [\mkleeneopen{}Info\mkleeneclose{};\mkleeneopen{}B\mkleeneclose{};\mkleeneopen{}A\mkleeneclose{};\mkleeneopen{}R\mkleeneclose{};\mkleeneopen{}P\mkleeneclose{};\mkleeneopen{}f loc(e1)\mkleeneclose{};\mkleeneopen{}init\mkleeneclose{};\mkleeneopen{}X\mkleeneclose{};\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e1\mkleeneclose{};\mkleeneopen{}e2\mkleeneclose{};
\mkleeneopen{}v1\mkleeneclose{};\mkleeneopen{}v2\mkleeneclose{}]\mcdot{}
THEN Auto
THEN Try (Complete ((ExRepD
THEN InstConcl [\mkleeneopen{}e\mkleeneclose{};\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}s\mkleeneclose{}]\mcdot{}
THEN MaAuto
THEN RWO "State-loc-comb-classrel-non-loc" (-5)
THEN Auto)))
THEN OnMaybeHyp 16 (\mbackslash{}h. (InstHyp [\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{};\mkleeneopen{}s\mkleeneclose{}] h\mcdot{}
THEN Auto
THEN RWO "State-loc-comb-classrel-non-loc" 0
THEN Complete (Auto))))
Home
Index