### Nuprl Lemma : fix_wf_corec_system

`∀[F:Type ⟶ Type]`
`  ∀[I:Type]. ∀[G:⋂T:{T:Type| (F[T] ⊆r T) ∧ (corec(T.F[T]) ⊆r T)} . ((I ⟶ T) ⟶ I ⟶ F[T])].`
`    (fix(G) ∈ I ⟶ corec(T.F[T])) `
`  supposing Monotone(T.F[T])`

Proof

Definitions occuring in Statement :  corec: `corec(T.F[T])` type-monotone: `Monotone(T.F[T])` uimplies: `b supposing a` subtype_rel: `A ⊆r B` uall: `∀[x:A]. B[x]` so_apply: `x[s]` and: `P ∧ Q` member: `t ∈ T` set: `{x:A| B[x]} ` fix: `fix(F)` isect: `⋂x:A. B[x]` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` uimplies: `b supposing a` so_lambda: `λ2x.t[x]` so_apply: `x[s]` and: `P ∧ Q` cand: `A c∧ B` strong-type-continuous: `Continuous+(T.F[T])` type-continuous: `Continuous(T.F[T])` isect2: `T1 ⋂ T2` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` ifthenelse: `if b then t else f fi ` prop: `ℙ` subtype_rel: `A ⊆r B` bfalse: `ff` top: `Top`
Lemmas referenced :  fix_wf_corec1 continuous-function continuous-constant continuous-id subtype_rel_self nat_wf subtype_rel_wf corec_wf set_wf top_wf bool_wf type-monotone_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality sqequalRule lambdaEquality functionEquality universeEquality independent_isectElimination hypothesis isectEquality applyEquality cumulativity independent_pairFormation isect_memberEquality unionElimination equalityElimination setElimination rename dependent_set_memberEquality productEquality equalityTransitivity equalitySymmetry instantiate functionExtensionality because_Cache voidElimination voidEquality axiomEquality setEquality

Latex:
\mforall{}[F:Type  {}\mrightarrow{}  Type]
\mforall{}[I:Type].  \mforall{}[G:\mcap{}T:\{T:Type|  (F[T]  \msubseteq{}r  T)  \mwedge{}  (corec(T.F[T])  \msubseteq{}r  T)\}  .  ((I  {}\mrightarrow{}  T)  {}\mrightarrow{}  I  {}\mrightarrow{}  F[T])].
(fix(G)  \mmember{}  I  {}\mrightarrow{}  corec(T.F[T]))
supposing  Monotone(T.F[T])

Date html generated: 2019_06_20-PM-00_36_53
Last ObjectModification: 2018_08_07-PM-05_28_48

Theory : co-recursion

Home Index