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