Step * 1 2 2 1 of Lemma State-comb-fun-eq


1. Info Type
2. Type
3. Type
4. A ⟶ B ⟶ B
5. init Id ⟶ bag(B)
6. EClass(A)
7. es EO+(Info)
8. E
9. ¬((X es e) {} ∈ bag(A))
10. ∀l:Id. (1 ≤ #(init l))
11. ∀l:Id. single-valued-bag(init l;B)
12. single-valued-classrel(es;X;A)
13. ↑e ∈b X
14. ↑first(e)
15. : ¬(∃e':{E| ((e' <loc e)
                  ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                             e')))})@i
16. (last(λe'.0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es e')) e)
(inr )
∈ ((∃e':{E| ((e' <loc e)
            ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es e'))
            ∧ (∀e'':E
                 ((e' <loc e'')
                  (e'' <loc e)
                  (¬↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                              e'')))))})
  ∨ (∃e':{E| ((e' <loc e)
               ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                          e')))})))@i
⊢ sv-bag-only(lifting-2(f) (X es e) (init loc(e))) (f sv-bag-only(X es e) sv-bag-only(init loc(e))) ∈ B
BY
(RepUR ``lifting-2 lifting2 lifting-gen-rev`` 0
   THEN RepeatFor ((RecUnfold `lifting-gen-list-rev` THEN Reduce 0))
   }

1
1. Info Type
2. Type
3. Type
4. A ⟶ B ⟶ B
5. init Id ⟶ bag(B)
6. EClass(A)
7. es EO+(Info)
8. E
9. ¬((X es e) {} ∈ bag(A))
10. ∀l:Id. (1 ≤ #(init l))
11. ∀l:Id. single-valued-bag(init l;B)
12. single-valued-classrel(es;X;A)
13. ↑e ∈b X
14. ↑first(e)
15. : ¬(∃e':{E| ((e' <loc e)
                  ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                             e')))})@i
16. (last(λe'.0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es e')) e)
(inr )
∈ ((∃e':{E| ((e' <loc e)
            ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es e'))
            ∧ (∀e'':E
                 ((e' <loc e'')
                  (e'' <loc e)
                  (¬↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                              e'')))))})
  ∨ (∃e':{E| ((e' <loc e)
               ∧ (↑0 <#(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es 
                          e')))})))@i
⊢ sv-bag-only(⋃x∈es e.⋃x@0∈init loc(e).{f x@0}) (f sv-bag-only(X es e) sv-bag-only(init loc(e))) ∈ B


Latex:


Latex:

1.  Info  :  Type
2.  B  :  Type
3.  A  :  Type
4.  f  :  A  {}\mrightarrow{}  B  {}\mrightarrow{}  B
5.  init  :  Id  {}\mrightarrow{}  bag(B)
6.  X  :  EClass(A)
7.  es  :  EO+(Info)
8.  e  :  E
9.  \mneg{}((X  es  e)  =  \{\})
10.  \mforall{}l:Id.  (1  \mleq{}  \#(init  l))
11.  \mforall{}l:Id.  single-valued-bag(init  l;B)
12.  single-valued-classrel(es;X;A)
13.  \muparrow{}e  \mmember{}\msubb{}  X
14.  \muparrow{}first(e)
15.  y  :  \mneg{}(\mexists{}e':\{E|  ((e'  <loc  e)
                                    \mwedge{}  (\muparrow{}0  <z  \#(rec-comb(\mlambda{}n.[X][n];\mlambda{}i,w,s.  if  bag-null(w  0)
                                                                                                              then  s
                                                                                                              else  lifting-2(f)  (w  0)  s
                                                                                                              fi  ;init) 
                                                          es 
                                                          e')))\})@i
16.  (last(\mlambda{}e'.0  <z  \#(rec-comb(\mlambda{}n.[X][n];\mlambda{}i,w,s.  if  bag-null(w  0)
                                                                                              then  s
                                                                                              else  lifting-2(f)  (w  0)  s
                                                                                              fi  ;init) 
                                          es 
                                          e')) 
          e)
=  (inr  y  )@i
\mvdash{}  sv-bag-only(lifting-2(f)  (X  es  e)  (init  loc(e)))
=  (f  sv-bag-only(X  es  e)  sv-bag-only(init  loc(e)))


By


Latex:
(RepUR  ``lifting-2  lifting2  lifting-gen-rev``  0
  THEN  RepeatFor  3  ((RecUnfold  `lifting-gen-list-rev`  0  THEN  Reduce  0))
  )




Home Index