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:  Q false: False ge: i ≥  guard: {T} uimplies: 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 then else fi  bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) bnot: ¬bb assert: b subtract: m nequal: a ≠ b ∈  not: ¬A subtype_rel: A ⊆B decidable: Dec(P) iff: ⇐⇒ Q rev_implies:  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