Step * 1 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@i
⊢ #(rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) es e') ∈ ℤ
BY
((DoSubsume THEN Try (Using [`C',⌜B⌝(BLemma `bag-size_wf`)⋅THEN Auto)
   THEN (Assert ⌜rec-comb(λn.[X][n];λi,w,s. if bag-null(w 0) then else lifting-2(f) (w 0) fi ;init) ∈ EClass(B)⌝⋅
   THENM (Unfold `eclass` (-1) THEN Auto)
   )
   THEN Using [`A',⌜λx.A⌝;`n',⌜1⌝(BLemma `rec-comb_wf`)⋅
   THEN MaAuto) }


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.  e'  :  E@i
\mvdash{}  \#(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')  \mmember{}  \000C\mBbbZ{}


By


Latex:
((DoSubsume  THEN  Try  (Using  [`C',\mkleeneopen{}B\mkleeneclose{}]  (BLemma  `bag-size\_wf`)\mcdot{})  THEN  Auto)
  THEN  (Assert  \mkleeneopen{}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\000C)
                              \mmember{}  EClass(B)\mkleeneclose{}\mcdot{}
  THENM  (Unfold  `eclass`  (-1)  THEN  Auto)
  )
  THEN  Using  [`A',\mkleeneopen{}\mlambda{}x.A\mkleeneclose{};`n',\mkleeneopen{}1\mkleeneclose{}]  (BLemma  `rec-comb\_wf`)\mcdot{}
  THEN  MaAuto)




Home Index