Step * 2 1 1 of Lemma coW-corec


1. : 𝕌'
2. A ⟶ Type
3. corec(T.a:A × (B[a] ⟶ T)) ∈ 𝕌'
4. corec(C.a:A × (B[a] ⟶ C))
5. : ℤ
6. ¬n < 1
7. 0 < n
8. corec(C.a:A × (B[a] ⟶ C)) ⊆(primrec(n 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) 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 ⋅)))) g)) p.Top) ⋅))
BY
(SubsumeHyp ⌜a:A × (B[a] ⟶ corec(T.a:A × (B[a] ⟶ T)))⌝ (-1)⋅
   THENA (InstLemma `corec-ext` [⌜parm{i'}⌝;⌜λ2C.a:A × (B[a] ⟶ C)⌝]⋅ THEN Auto THEN THEN Auto)
   }

1
1. : 𝕌'
2. A ⟶ Type
3. corec(T.a:A × (B[a] ⟶ T)) ∈ 𝕌'
4. corec(C.a:A × (B[a] ⟶ C))
5. : ℤ
6. ¬n < 1
7. 0 < n
8. corec(C.a:A × (B[a] ⟶ C)) ⊆(primrec(n 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) g)) p.Top) ⋅)
9. x1 a:A × (B[a] ⟶ corec(T.a:A × (B[a] ⟶ T)))
⊢ x1 ∈ a:A × (b:B[a] ⟶ (primrec(n 1;λx.x;λi,g. ((λC,p. (a:A × (b:B[a] ⟶ (C ⋅)))) g)) p.Top) ⋅))


Latex:


Latex:

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.  \mneg{}n  <  1
7.  0  <  n
8.  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{})
9.  x1  :  corec(C.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  C))
\mvdash{}  x1  \mmember{}  a:A  \mtimes{}  (b:B[a]  {}\mrightarrow{}  (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)  \000C\mcdot{}))


By


Latex:
(SubsumeHyp  \mkleeneopen{}a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  corec(T.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  T)))\mkleeneclose{}  (-1)\mcdot{}
  THENA  (InstLemma  `corec-ext`  [\mkleeneopen{}parm\{i'\}\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}C.a:A  \mtimes{}  (B[a]  {}\mrightarrow{}  C)\mkleeneclose{}]\mcdot{}  THEN  Auto  THEN  D  0  THEN  Auto)
  )




Home Index