Nuprl Lemma : stream-zip_wf2

∀[A,B,C:Type]. ∀[f:A ⟶ B ⟶ C]. ∀[n:ℕ]. ∀[as:primrec(n;Top;λ,T. (A × T))]. ∀[bs:primrec(n;Top;λ,T. (B × T))].
  (stream-zip(f;as;bs) ∈ primrec(n;Top;λ,T. (C × T)))


Proof




Definitions occuring in Statement :  stream-zip: stream-zip(f;as;bs),  primrec: primrec(n;b;c),  nat: ℕ,  uall: ∀[x:A]. B[x],  top: Top,  member: t ∈ T,  lambda: λx.A[x],  function: x:A ⟶ B[x],  product: x:A × B[x],  universe: Type
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  nat: ℕ,  implies: P ⇒ Q,  false: False,  ge: i ≥ j ,  guard: {T},  uimplies: b supposing a,  prop: ℙ,  le: A ≤ B,  and: P ∧ Q,  top: Top,  eq_int: (i =z j),  all: ∀x:A. B[x],  bool: 𝔹,  unit: Unit,  it: ⋅,  btrue: tt,  uiff: uiff(P;Q),  ifthenelse: if b then t else f fi ,  bfalse: ff,  exists: ∃x:A. B[x],  or: P ∨ Q,  sq_type: SQType(T),  bnot: ¬bb,  assert: ↑b,  subtract: n - m,  nequal: a ≠ b ∈ T ,  not: ¬A,  subtype_rel: A ⊆r B,  decidable: Dec(P),  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  less_than': less_than'(a;b),  true: True,  stream-zip: stream-zip(f;as;bs)
Lemmas referenced :  nat_properties,  less_than_transitivity1,  less_than_irreflexivity,  ge_wf,  less_than_wf,  primrec_wf,  top_wf,  int_seg_wf,  primrec-unroll,  btrue_wf,  bool_wf,  eqtt_to_assert,  assert_of_eq_int,  eqff_to_assert,  eq_int_wf,  equal_wf,  bool_cases_sqequal,  subtype_base_sq,  bool_subtype_base,  assert-bnot,  neg_assert_of_eq_int,  stream-zip_wf,  le_wf,  decidable__le,  subtract_wf,  false_wf,  not-ge-2,  less-iff-le,  condition-implies-le,  minus-one-mul,  zero-add,  minus-one-mul-top,  minus-add,  minus-minus,  add-associates,  add-swap,  add-commutes,  add_functionality_wrt_le,  add-zero,  le-add-cancel,  nat_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  introduction,  cut,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  hypothesisEquality,  hypothesis,  setElimination,  rename,  sqequalRule,  intWeakElimination,  lambdaFormation,  natural_numberEquality,  independent_isectElimination,  independent_functionElimination,  voidElimination,  lambdaEquality,  dependent_functionElimination,  isect_memberEquality,  axiomEquality,  equalityTransitivity,  equalitySymmetry,  instantiate,  universeEquality,  productEquality,  cumulativity,  because_Cache,  productElimination,  voidEquality,  unionElimination,  equalityElimination,  dependent_pairFormation,  promote_hyp,  functionExtensionality,  applyEquality,  minusEquality,  dependent_set_memberEquality,  independent_pairFormation,  addEquality,  intEquality,  independent_pairEquality,  functionEquality

Latex:
\mforall{}[A,B,C:Type].  \mforall{}[f:A  {}\mrightarrow{}  B  {}\mrightarrow{}  C].  \mforall{}[n:\mBbbN{}].  \mforall{}[as:primrec(n;Top;\mlambda{},T.  (A  \mtimes{}  T))].
\mforall{}[bs:primrec(n;Top;\mlambda{},T.  (B  \mtimes{}  T))].
    (stream-zip(f;as;bs)  \mmember{}  primrec(n;Top;\mlambda{},T.  (C  \mtimes{}  T)))



Date html generated: 2017_04_14-AM-07_47_38
Last ObjectModification: 2017_02_27-PM-03_17_57

Theory : co-recursion


Home Index