Nuprl Lemma : list-functionality-induction

T,A:Type. ∀F:Base.
  ((F[[]] ∈ A)
   (∀a1,a2,L1,L2:Base.  ((a1 a2 ∈ T)  (F[L1] F[L2] ∈ A)  (F[[a1 L1]] F[[a2 L2]] ∈ A)))
   (∀L:T List. (F[L] ∈ A)))


Proof




Definitions occuring in Statement :  cons: [a b] nil: [] list: List so_apply: x[s] all: x:A. B[x] implies:  Q member: t ∈ T base: Base universe: Type equal: t ∈ T
Definitions unfolded in proof :  all: x:A. B[x] implies:  Q member: t ∈ T uall: [x:A]. B[x] prop: so_lambda: λ2x.t[x] so_apply: x[s] nat: false: False ge: i ≥  guard: {T} uimplies: supposing a subtype_rel: A ⊆B decidable: Dec(P) or: P ∨ Q iff: ⇐⇒ Q and: P ∧ Q not: ¬A rev_implies:  Q uiff: uiff(P;Q) subtract: m top: Top le: A ≤ B less_than': less_than'(a;b) true: True squash: T cand: c∧ B b-union: A ⋃ B tunion: x:A.B[x] bool: 𝔹 unit: Unit ifthenelse: if then else fi  pi2: snd(t) colength: colength(L) less_than: a < b
Lemmas referenced :  list_wf all_wf base_wf equal-wf-base nat_properties less_than_transitivity1 less_than_irreflexivity ge_wf less_than_wf colength_wf_list equal_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 int_subtype_base nat_wf colength-zero subtype_rel_list top_wf colength-positive2 le_weakening2 le_wf and_wf pi1_wf le_weakening list-ext ext-eq_inversion b-union_wf unit_wf2 subtype_rel_weakening pi2_wf decidable__int_equal not-equal-2 le_antisymmetry_iff
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation cut pointwiseFunctionalityForEquality hypothesisEquality sqequalHypSubstitution hypothesis introduction extract_by_obid isectElimination thin cumulativity sqequalRule lambdaEquality functionEquality baseApply closedConclusion baseClosed because_Cache universeEquality setElimination rename intWeakElimination natural_numberEquality independent_isectElimination independent_functionElimination voidElimination dependent_functionElimination axiomEquality intEquality applyEquality applyLambdaEquality equalityTransitivity equalitySymmetry unionElimination independent_pairFormation productElimination addEquality isect_memberEquality voidEquality minusEquality imageMemberEquality dependent_set_memberEquality productEquality hypothesis_subsumption imageElimination equalityElimination setEquality

Latex:
\mforall{}T,A:Type.  \mforall{}F:Base.
    ((F[[]]  \mmember{}  A)
    {}\mRightarrow{}  (\mforall{}a1,a2,L1,L2:Base.    ((a1  =  a2)  {}\mRightarrow{}  (F[L1]  =  F[L2])  {}\mRightarrow{}  (F[[a1  /  L1]]  =  F[[a2  /  L2]])))
    {}\mRightarrow{}  (\mforall{}L:T  List.  (F[L]  \mmember{}  A)))



Date html generated: 2017_04_14-AM-07_54_33
Last ObjectModification: 2017_02_27-PM-03_22_02

Theory : list_0


Home Index