Step
*
2
1
of Lemma
coW-corec
.....upcase..... 
1. A : 𝕌'
2. B : A ⟶ Type
3. corec(T.a:A × (B[a] ⟶ T)) ∈ 𝕌'
4. x : corec(C.a:A × (B[a] ⟶ C))
5. n : ℤ
6. 0 < n
7. corec(C.a:A × (B[a] ⟶ C)) ⊆r (primrec(n - 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) o g)) (λp.Top) ⋅)
⊢ corec(C.a:A × (B[a] ⟶ C)) ⊆r (primrec(n;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) o g)) (λp.Top) ⋅)
BY
{ ((D 0 THENA Auto) THEN (RWO "primrec-unroll" 0 THENA Auto) THEN Reduce 0 THEN AutoSplit) }
1
1. A : 𝕌'
2. B : A ⟶ Type
3. corec(T.a:A × (B[a] ⟶ T)) ∈ 𝕌'
4. x : corec(C.a:A × (B[a] ⟶ C))
5. n : ℤ
6. ¬n < 1
7. 0 < n
8. corec(C.a:A × (B[a] ⟶ C)) ⊆r (primrec(n - 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) o g)) (λp.Top) ⋅)
9. x1 : corec(C.a:A × (B[a] ⟶ C))
⊢ x1 ∈ a:A × (b:B[a] ⟶ (primrec(n - 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) o g)) (λp.Top) ⋅))
Latex:
Latex:
.....upcase..... 
1.  A  :  \mBbbU{}'
2.  B  :  A  {}\mrightarrow{}  Type
3.  corec(T.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  T))  \mmember{}  \mBbbU{}'
4.  x  :  corec(C.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  C))
5.  n  :  \mBbbZ{}
6.  0  <  n
7.  corec(C.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  C))  \msubseteq{}r  (primrec(n  -  1;\mlambda{}x.x;\mlambda{}i,g.  ((\mlambda{}C,p.  (a:A  \mtimes{}  (b:B[a]  {}\mrightarrow{}  (C  \mcdot{}))))  o  g)) 
                                                                    (\mlambda{}p.Top) 
                                                                    \mcdot{})
\mvdash{}  corec(C.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  C))  \msubseteq{}r  (primrec(n;\mlambda{}x.x;\mlambda{}i,g.  ((\mlambda{}C,p.  (a:A  \mtimes{}  (b:B[a]  {}\mrightarrow{}  (C  \mcdot{}))))  o  g))  (\mlambda{}p.T\000Cop)  \mcdot{})
By
Latex:
((D  0  THENA  Auto)  THEN  (RWO  "primrec-unroll"  0  THENA  Auto)  THEN  Reduce  0  THEN  AutoSplit)
Home
Index