Step
*
of Lemma
rec-comb_wf
∀[Info:Type]. ∀[n:ℕ]. ∀[A:ℕn ─→ Type]. ∀[X:i:ℕn ─→ EClass(A i)]. ∀[T:Type]. ∀[f:Id
                                                                                ─→ (i:ℕn ─→ bag(A i))
                                                                                ─→ bag(T)
                                                                                ─→ bag(T)]. ∀[init:Id ─→ bag(T)].
  (rec-comb(X;f;init) ∈ EClass(T))
BY
{ (Auto
   THEN (All (Unfold `eclass`) THEN RepeatFor 2 ((BetterExt⋅ THEN Auto)))
   THEN (MoveToConcl (-1)
         THEN CausalInd'
         THEN RecUnfold `rec-comb` 0⋅
         THEN Reduce 0
         THEN Auto
         THEN (RepUR ``primed-class-opt local-pred-class`` 0
               THEN (GenConclAtAddr [2;1] THENA Reduce 0)
               THEN Try ((DVar `v' THEN Reduce 0 THEN Try (DVar `x') THEN Auto)⋅)
               THEN Try ((Auto THEN GenConclAtAddrType ⌈bag(T)⌉ [2;1]⋅ THEN Complete (Auto))))⋅)⋅) }
1
1. Info : Type
2. n : ℕ
3. A : ℕn ─→ Type
4. X : i:ℕn ─→ es:EO+(Info) ─→ e:E ─→ bag(A i)
5. T : Type
6. f : Id ─→ (i:ℕn ─→ bag(A i)) ─→ bag(T) ─→ bag(T)
7. init : Id ─→ bag(T)
8. es : EO+(Info)@i'
9. e : E@i
10. ∀e1:E. ((e1 < e) 
⇒ (rec-comb(X;f;init) es e1 ∈ bag(T)))
⊢ last(λe'.0 <z #(rec-comb(X;f;init) es e')) e ∈ (∃e':{E| ((e' <loc e)
                                                          ∧ (↑0 <z #(rec-comb(X;f;init) es e'))
                                                          ∧ (∀e'':E
                                                               ((e' <loc e'')
                                                               
⇒ (e'' <loc e)
                                                               
⇒ (¬↑0 <z #(rec-comb(X;f;init) es e'')))))})
  ∨ (¬(∃e':{E| ((e' <loc e) ∧ (↑0 <z #(rec-comb(X;f;init) es e')))}))
Latex:
Latex:
\mforall{}[Info:Type].  \mforall{}[n:\mBbbN{}].  \mforall{}[A:\mBbbN{}n  {}\mrightarrow{}  Type].  \mforall{}[X:i:\mBbbN{}n  {}\mrightarrow{}  EClass(A  i)].  \mforall{}[T:Type].  \mforall{}[f:Id
                                                                                                                                                                {}\mrightarrow{}  (i:\mBbbN{}n
                                                                                                                                                                      {}\mrightarrow{}  bag(A  i))
                                                                                                                                                                {}\mrightarrow{}  bag(T)
                                                                                                                                                                {}\mrightarrow{}  bag(T)].
\mforall{}[init:Id  {}\mrightarrow{}  bag(T)].
    (rec-comb(X;f;init)  \mmember{}  EClass(T))
By
Latex:
(Auto
  THEN  (All  (Unfold  `eclass`)  THEN  RepeatFor  2  ((BetterExt\mcdot{}  THEN  Auto)))
  THEN  (MoveToConcl  (-1)
              THEN  CausalInd'
              THEN  RecUnfold  `rec-comb`  0\mcdot{}
              THEN  Reduce  0
              THEN  Auto
              THEN  (RepUR  ``primed-class-opt  local-pred-class``  0
                          THEN  (GenConclAtAddr  [2;1]  THENA  Reduce  0)
                          THEN  Try  ((DVar  `v'  THEN  Reduce  0  THEN  Try  (DVar  `x')  THEN  Auto)\mcdot{})
                          THEN  Try  ((Auto  THEN  GenConclAtAddrType  \mkleeneopen{}bag(T)\mkleeneclose{}  [2;1]\mcdot{}  THEN  Complete  (Auto))))\mcdot{})\mcdot{})
Home
Index