### Nuprl Lemma : param-W-rel_wf

`∀[P:Type]. ∀[A:P ⟶ Type]. ∀[B:p:P ⟶ A[p] ⟶ Type]. ∀[C:p:P ⟶ a:A[p] ⟶ B[p;a] ⟶ P]. ∀[par:P]. ∀[w:pW par].`
`  (param-W-rel(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b];par;w) ∈ n:ℕ`
`   ⟶ (ℕn ⟶ pcw-step(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b]))`
`   ⟶ pcw-step(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b])`
`   ⟶ ℙ)`

Proof

Definitions occuring in Statement :  param-W-rel: `param-W-rel(P;p.A[p];p,a.B[p; a];p,a,b.C[p; a; b];par;w)` param-W: `pW` pcw-step: `pcw-step(P;p.A[p];p,a.B[p; a];p,a,b.C[p; a; b])` int_seg: `{i..j-}` nat: `ℕ` uall: `∀[x:A]. B[x]` prop: `ℙ` so_apply: `x[s1;s2;s3]` so_apply: `x[s1;s2]` so_apply: `x[s]` member: `t ∈ T` apply: `f a` function: `x:A ⟶ B[x]` natural_number: `\$n` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` param-W-rel: `param-W-rel(P;p.A[p];p,a.B[p; a];p,a,b.C[p; a; b];par;w)` nat: `ℕ` all: `∀x:A. B[x]` implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` and: `P ∧ Q` uimplies: `b supposing a` less_than: `a < b` less_than': `less_than'(a;b)` top: `Top` true: `True` squash: `↓T` not: `¬A` false: `False` prop: `ℙ` int_seg: `{i..j-}` lelt: `i ≤ j < k` decidable: `Dec(P)` or: `P ∨ Q` iff: `P `⇐⇒` Q` rev_implies: `P `` Q` subtract: `n - m` subtype_rel: `A ⊆r B` le: `A ≤ B` pcw-step: `pcw-step(P;p.A[p];p,a.B[p; a];p,a,b.C[p; a; b])` pi2: `snd(t)` isl: `isl(x)` so_lambda: `λ2x.t[x]` so_apply: `x[s]` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s1;s2]` so_lambda: `so_lambda(x,y,z.t[x; y; z])` so_apply: `x[s1;s2;s3]` bfalse: `ff` exists: `∃x:A. B[x]` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` ifthenelse: `if b then t else f fi ` assert: `↑b` param-W: `pW`
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  introduction cut sqequalRule Error :lambdaEquality_alt,  natural_numberEquality sqequalHypSubstitution setElimination thin rename hypothesisEquality hypothesis extract_by_obid isectElimination because_Cache Error :inhabitedIsType,  Error :lambdaFormation_alt,  unionElimination equalityElimination productElimination independent_isectElimination lessCases axiomSqEquality Error :isect_memberEquality_alt,  independent_pairFormation voidElimination imageMemberEquality baseClosed imageElimination independent_functionElimination productEquality applyEquality Error :dependent_set_memberEquality_alt,  dependent_functionElimination addEquality Error :universeIsType,  minusEquality equalityTransitivity equalitySymmetry Error :productIsType,  Error :equalityIsType1,  Error :functionIsType,  Error :dependent_pairFormation_alt,  promote_hyp instantiate cumulativity axiomEquality universeEquality

Latex:
\mforall{}[P:Type].  \mforall{}[A:P  {}\mrightarrow{}  Type].  \mforall{}[B:p:P  {}\mrightarrow{}  A[p]  {}\mrightarrow{}  Type].  \mforall{}[C:p:P  {}\mrightarrow{}  a:A[p]  {}\mrightarrow{}  B[p;a]  {}\mrightarrow{}  P].  \mforall{}[par:P].
\mforall{}[w:pW  par].
(param-W-rel(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b];par;w)  \mmember{}  n:\mBbbN{}
{}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  pcw-step(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b]))
{}\mrightarrow{}  pcw-step(P;p.A[p];p,a.B[p;a];p,a,b.C[p;a;b])
{}\mrightarrow{}  \mBbbP{})

Date html generated: 2019_06_20-PM-00_35_53
Last ObjectModification: 2018_10_07-PM-09_42_48

Theory : co-recursion

Home Index