Step
*
1
1
1
2
of Lemma
State-loc-comb-classrel-non-loc
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. ∀e':E. ((e' < e)
⇒ (∀v:B. (v ∈ State-loc-comb(init;f;X)(e')
⇐⇒ v ∈ State-comb(init;f loc(e');X)(e'))))
10. v : B@i
11. e' : E
12. es-p-local-pred(es;λe'.(↓∃w:B
w ∈ λl,x,s. if bag-null(x) then s else lifting-loc-2(f) l x s fi |Loc, X, Prior(self)?init\000C|(
e')))
e
e'
13. v ∈ λl,x,s. if bag-null(x) then s else lifting-loc-2(f) l x s fi |Loc, X, Prior(self)?init|(e')
14. (X es e) = {} ∈ bag(A)
15. (X es e) = {} ∈ bag(A)
16. es-p-local-pred(es;λe'.(↓∃w:B
w ∈ λx,s. if bag-null(x) then s else lifting-2(f loc(e)) x s fi |X,Prior(self)?init|(e')))\000C
e
e'
⊢ v ∈ λx,s. if bag-null(x) then s else lifting-2(f loc(e)) x s fi |X,Prior(self)?init|(e')
BY
{ (Thin (-1)
THEN RepUR ``es-p-local-pred`` (-4)
THEN RepD
THEN (InstHyp [⌈e'⌉;⌈v⌉] (-9)⋅ THENA Auto)
THEN RepUR ``State-loc-comb State-comb lifting-loc-2 lifting-2 lifting2-loc lifting2`` (-1)
THEN RepUR ``lifting-loc-gen-rev lifting-gen-rev`` (-1)
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` (-1) THEN Reduce (-1)))
THEN D (-1)
THEN (D (-2)
THENA (Auto
THEN RepUR ``lifting-loc-2 lifting2-loc lifting-loc-gen-rev lifting-gen-rev`` (-4)
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` (-4) THEN Reduce (-4)))
THEN Auto)
)
THEN RepUR ``lifting-2 lifting2 lifting-gen-rev`` 0
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` 0 THEN Reduce 0))
THEN Subst ⌈loc(e) = loc(e') ∈ Id⌉ 0⋅
THEN MaAuto) }
Latex:
Latex:
1. Info : Type
2. B : Type
3. A : Type
4. f : Id {}\mrightarrow{} 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. \mforall{}e':E
((e' < e)
{}\mRightarrow{} (\mforall{}v:B. (v \mmember{} State-loc-comb(init;f;X)(e') \mLeftarrow{}{}\mRightarrow{} v \mmember{} State-comb(init;f loc(e');X)(e'))))
10. v : B@i
11. e' : E
12. es-p-local-pred(es;\mlambda{}e'.(\mdownarrow{}\mexists{}w:B
w \mmember{}
\mlambda{}l,x,s. if bag-null(x)
then s
else lifting-loc-2(f) l x s
fi |Loc, X, Prior(self)?init|(e')))
e
e'
13. v \mmember{} \mlambda{}l,x,s. if bag-null(x) then s else lifting-loc-2(f) l x s fi |Loc, X, Prior(self)?init|(e')
14. (X es e) = \{\}
15. (X es e) = \{\}
16. es-p-local-pred(es;\mlambda{}e'.(\mdownarrow{}\mexists{}w:B
w \mmember{} \mlambda{}x,s. if bag-null(x)
then s
else lifting-2(f loc(e)) x s
fi |X,Prior(self)?init|(e')))
e
e'
\mvdash{} v \mmember{} \mlambda{}x,s. if bag-null(x) then s else lifting-2(f loc(e)) x s fi |X,Prior(self)?init|(e')
By
Latex:
(Thin (-1)
THEN RepUR ``es-p-local-pred`` (-4)
THEN RepD
THEN (InstHyp [\mkleeneopen{}e'\mkleeneclose{};\mkleeneopen{}v\mkleeneclose{}] (-9)\mcdot{} THENA Auto)
THEN RepUR ``State-loc-comb State-comb lifting-loc-2 lifting-2 lifting2-loc lifting2`` (-1)
THEN RepUR ``lifting-loc-gen-rev lifting-gen-rev`` (-1)
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` (-1) THEN Reduce (-1)))
THEN D (-1)
THEN (D (-2)
THENA (Auto
THEN RepUR ``lifting-loc-2 lifting2-loc lifting-loc-gen-rev lifting-gen-rev`` (-4)
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` (-4) THEN Reduce (-4)))
THEN Auto)
)
THEN RepUR ``lifting-2 lifting2 lifting-gen-rev`` 0
THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` 0 THEN Reduce 0))
THEN Subst \mkleeneopen{}loc(e) = loc(e')\mkleeneclose{} 0\mcdot{}
THEN MaAuto)
Home
Index