Step * 1 1 1 1 of Lemma bar_recursion_wf


1. Type
2. n:ℕ ⟶ (ℕn ⟶ T) ⟶ ℙ
3. n:ℕ ⟶ (ℕn ⟶ T) ⟶ ℙ
4. : ∀n:ℕ. ∀s:ℕn ⟶ T.  Dec(R s)
5. : ∀n:ℕ. ∀s:ℕn ⟶ T.  ((R s)  (A s))
6. : ∀n:ℕ. ∀s:ℕn ⟶ T.  ((∀t:T. (A (n 1) seq-append(n;1;s;λi.t)))  (A s))
7. : ℕ
8. : ℕn ⟶ T
9. ∀alpha:ℕ ⟶ T. (↓∃m:ℕ(R (n m) seq-append(n;m;s;alpha)))
10. n1 : ℕ
11. s1 : ℕn1 ⟶ T
12. ∀t:T
      (bar_recursion(d;
                     b;
                     i;
                     n1 1;seq-append(n;n1 1;s;λm.if m=n1 then else (s1 m))) ∈ (n n1 1) 
                                                                          seq-append(n;n1 1;s;λm.if m=n1
                                                                                                   then t
                                                                                                   else (s1 m)))
13. : ¬(R (n n1) seq-append(n;n1;s;s1))
14. (d (n n1) seq-append(n;n1;s;s1)) (inr ) ∈ Dec(R (n n1) seq-append(n;n1;s;s1))
15. T
16. bar_recursion(d;
                  b;
                  i;
                  n1 1;seq-append(n;n1 1;s;λm.if m=n1 then else (s1 m))) ∈ (n n1 1) 
                                                                       seq-append(n;n1 1;s;λm.if m=n1
                                                                                                then t
                                                                                                else (s1 m))
⊢ seq-append(n n1;1;seq-append(n;n1;s;s1);λi.t) seq-append(n;n1 1;s;λm.if m=n1 then else (s1 m))
BY
((RWO "seq-append-assoc<THENA Auto)
   THEN (RWO "seq-append1" THENA Auto)
   THEN RWO "seq-append-normalize" 0
   THEN Auto) }


Latex:


Latex:

1.  T  :  Type
2.  R  :  n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  T)  {}\mrightarrow{}  \mBbbP{}
3.  A  :  n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  T)  {}\mrightarrow{}  \mBbbP{}
4.  d  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  T.    Dec(R  n  s)
5.  b  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  T.    ((R  n  s)  {}\mRightarrow{}  (A  n  s))
6.  i  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  T.    ((\mforall{}t:T.  (A  (n  +  1)  seq-append(n;1;s;\mlambda{}i.t)))  {}\mRightarrow{}  (A  n  s))
7.  n  :  \mBbbN{}
8.  s  :  \mBbbN{}n  {}\mrightarrow{}  T
9.  \mforall{}alpha:\mBbbN{}  {}\mrightarrow{}  T.  (\mdownarrow{}\mexists{}m:\mBbbN{}.  (R  (n  +  m)  seq-append(n;m;s;alpha)))
10.  n1  :  \mBbbN{}
11.  s1  :  \mBbbN{}n1  {}\mrightarrow{}  T
12.  \mforall{}t:T
            (bar\_recursion(d;
                                          b;
                                          i;
                                          n  +  n1  +  1;seq-append(n;n1  +  1;s;\mlambda{}m.if  m=n1  then  t  else  (s1  m)))  \mmember{}  A  (n  +  n1  +  \000C1) 
                                                                                                                                                    seq-append(n;n1
                                                                                                                                                    +  1;s;\mlambda{}m.if  m=n1
                                                                                                                                                                      then  t
                                                                                                                                                                      else  (s1  m)))
13.  y  :  \mneg{}(R  (n  +  n1)  seq-append(n;n1;s;s1))
14.  (d  (n  +  n1)  seq-append(n;n1;s;s1))  =  (inr  y  )
15.  t  :  T
16.  bar\_recursion(d;
                                    b;
                                    i;
                                    n  +  n1  +  1;seq-append(n;n1  +  1;s;\mlambda{}m.if  m=n1  then  t  else  (s1  m)))  \mmember{}  A  (n  +  n1  +  1) 
                                                                                                                                              seq-append(n;n1
                                                                                                                                              +  1;s;\mlambda{}m.if  m=n1
                                                                                                                                                                then  t
                                                                                                                                                                else  (s1  m))
\mvdash{}  seq-append(n  +  n1;1;seq-append(n;n1;s;s1);\mlambda{}i.t)  \msim{}  seq-append(n;n1  +  1;s;\mlambda{}m.if  m=n1
                                                                                                                                                          then  t
                                                                                                                                                          else  (s1  m))


By


Latex:
((RWO  "seq-append-assoc<"  0  THENA  Auto)
  THEN  (RWO  "seq-append1"  0  THENA  Auto)
  THEN  RWO  "seq-append-normalize"  0
  THEN  Auto)




Home Index