Step * 1 1 1 1 1 1 of Lemma indexed-coinduction-principle


1. Type
2. Type ⟶ Type
3. ContinuousMonotone(T.F[T])
4. (I ⟶ corec(T.F[T])) ⟶ (I ⟶ corec(T.F[T])) ⟶ ℙ
5. ∀T:Type
     (((F[T] ⊆T) ∧ (corec(T.F[T]) ⊆T))
      (∀x,y:I ⟶ corec(T.F[T]).  (R[x;y]  (x y ∈ (I ⟶ T))))
      (∀x,y:I ⟶ corec(T.F[T]).  (R[x;y]  (x y ∈ (I ⟶ F[T])))))
6. : ℤ
7. ¬n < 1
8. 0 < n
9. ∀[x,y:I ⟶ corec(T.F[T])].  y ∈ (I ⟶ primrec(n 1;Top;λ,T. F[T])) supposing R[x;y]
10. I ⟶ corec(T.F[T])
11. I ⟶ corec(T.F[T])
12. R[x;y]
13. I
14. : ℤ
15. 0 < m
16. (F[primrec(m 1;Top;λ,T. F[T])] ⊆primrec(m 1;Top;λ,T. F[T])) ∧ (corec(T.F[T]) ⊆primrec(m 1;Top;λ,T. F[T]))
⊢ F[primrec(m;Top;λ,T. F[T])] ⊆primrec(m;Top;λ,T. F[T])
BY
((RWO "primrec-unroll" THENA Auto) THEN AutoSplit)⋅ }


Latex:


Latex:

1.  I  :  Type
2.  F  :  Type  {}\mrightarrow{}  Type
3.  ContinuousMonotone(T.F[T])
4.  R  :  (I  {}\mrightarrow{}  corec(T.F[T]))  {}\mrightarrow{}  (I  {}\mrightarrow{}  corec(T.F[T]))  {}\mrightarrow{}  \mBbbP{}
5.  \mforall{}T:Type
          (((F[T]  \msubseteq{}r  T)  \mwedge{}  (corec(T.F[T])  \msubseteq{}r  T))
          {}\mRightarrow{}  (\mforall{}x,y:I  {}\mrightarrow{}  corec(T.F[T]).    (R[x;y]  {}\mRightarrow{}  (x  =  y)))
          {}\mRightarrow{}  (\mforall{}x,y:I  {}\mrightarrow{}  corec(T.F[T]).    (R[x;y]  {}\mRightarrow{}  (x  =  y))))
6.  n  :  \mBbbZ{}
7.  \mneg{}n  <  1
8.  0  <  n
9.  \mforall{}[x,y:I  {}\mrightarrow{}  corec(T.F[T])].    x  =  y  supposing  R[x;y]
10.  x  :  I  {}\mrightarrow{}  corec(T.F[T])
11.  y  :  I  {}\mrightarrow{}  corec(T.F[T])
12.  R[x;y]
13.  i  :  I
14.  m  :  \mBbbZ{}
15.  0  <  m
16.  (F[primrec(m  -  1;Top;\mlambda{},T.  F[T])]  \msubseteq{}r  primrec(m  -  1;Top;\mlambda{},T.  F[T]))
\mwedge{}  (corec(T.F[T])  \msubseteq{}r  primrec(m  -  1;Top;\mlambda{},T.  F[T]))
\mvdash{}  F[primrec(m;Top;\mlambda{},T.  F[T])]  \msubseteq{}r  primrec(m;Top;\mlambda{},T.  F[T])


By


Latex:
((RWO  "primrec-unroll"  0  THENA  Auto)  THEN  AutoSplit)\mcdot{}




Home Index