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


1. Type ⟶ Type
2. ContinuousMonotone(T.F[T])
3. corec(T.F[T]) ⟶ corec(T.F[T]) ⟶ ℙ
4. ∀T:Type
     (((F[T] ⊆T) ∧ (corec(T.F[T]) ⊆T))
      (∀x,y:corec(T.F[T]).  (R[x;y]  (x y ∈ T)))
      (∀x,y:corec(T.F[T]).  (R[x;y]  (x y ∈ F[T]))))
5. : ℤ
6. n ≠ 0
7. 0 < n
8. ∀[x,y:corec(T.F[T])].  y ∈ primrec(n 1;Top;λ,T. F[T]) supposing R[x;y]
9. corec(T.F[T])
10. corec(T.F[T])
11. R[x;y]
12. : ℤ
13. 0 < m
14. (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.  F  :  Type  {}\mrightarrow{}  Type
2.  ContinuousMonotone(T.F[T])
3.  R  :  corec(T.F[T])  {}\mrightarrow{}  corec(T.F[T])  {}\mrightarrow{}  \mBbbP{}
4.  \mforall{}T:Type
          (((F[T]  \msubseteq{}r  T)  \mwedge{}  (corec(T.F[T])  \msubseteq{}r  T))
          {}\mRightarrow{}  (\mforall{}x,y:corec(T.F[T]).    (R[x;y]  {}\mRightarrow{}  (x  =  y)))
          {}\mRightarrow{}  (\mforall{}x,y:corec(T.F[T]).    (R[x;y]  {}\mRightarrow{}  (x  =  y))))
5.  n  :  \mBbbZ{}
6.  n  \mneq{}  0
7.  0  <  n
8.  \mforall{}[x,y:corec(T.F[T])].    x  =  y  supposing  R[x;y]
9.  x  :  corec(T.F[T])
10.  y  :  corec(T.F[T])
11.  R[x;y]
12.  m  :  \mBbbZ{}
13.  0  <  m
14.  (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