Step
*
1
1
1
1
1
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. (e' <loc e)
13. ∃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|(e')
14. ∀e'':E
      ((e'' <loc e)
      
⇒ (e' <loc 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|(e'')))
15. 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')
16. (X es e) = {} ∈ bag(A)
17. (X es e) = {} ∈ bag(A)
18. (e' <loc 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')
BY
{ (Thin (-1)
   THEN RepUR ``lifting-loc-2 lifting2-loc lifting-loc-gen-rev lifting-gen-rev`` (-3)
   THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` (-3) THEN Reduce (-3)))
   THEN RepUR ``lifting-2 lifting2 lifting-gen-rev`` 0
   THEN RepeatFor 3 ((RecUnfold `lifting-gen-list-rev` 0 THEN Reduce 0))
   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 D 0
   THEN (InstConcl [⌈v⌉]⋅ THENA Auto)
   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.  (e'  <loc  e)
13.  \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\000C|(e')
14.  \mforall{}e'':E
            ((e''  <loc  e)
            {}\mRightarrow{}  (e'  <loc  e'')
            {}\mRightarrow{}  (\mneg{}\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)?i\000Cnit|(
                                  e'')))
15.  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')
16.  (X  es  e)  =  \{\}
17.  (X  es  e)  =  \{\}
18.  (e'  <loc  e)
\mvdash{}  \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')
By
Latex:
(Thin  (-1)
  THEN  RepUR  ``lifting-loc-2  lifting2-loc  lifting-loc-gen-rev  lifting-gen-rev``  (-3)
  THEN  RepeatFor  3  ((RecUnfold  `lifting-gen-list-rev`  (-3)  THEN  Reduce  (-3)))
  THEN  RepUR  ``lifting-2  lifting2  lifting-gen-rev``  0
  THEN  RepeatFor  3  ((RecUnfold  `lifting-gen-list-rev`  0  THEN  Reduce  0))
  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  D  0
  THEN  (InstConcl  [\mkleeneopen{}v\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  Subst  \mkleeneopen{}loc(e)  =  loc(e')\mkleeneclose{}  0\mcdot{}
  THEN  MaAuto)
Home
Index