Nuprl Lemma : Coquand-fan-theorem

[T:Type]
  (finite-type(T)
   (∀p:wfd-tree(T). ∀A:n:ℕ ⟶ (ℕn ⟶ T) ⟶ ℙ.
        ((∀n:ℕ. ∀s:ℕn ⟶ T.  ((A s)  (∀m:{n...}. ∀t:ℕm ⟶ T.  ((t s ∈ (ℕn ⟶ T))  (A t)))))
         (p|A)
         (∃N:ℕ. ∀m:{N...}. ∀as:ℕm ⟶ T.  (A as)))))


Proof




Definitions occuring in Statement :  tree-bars: (p|A) finite-type: finite-type(T) wfd-tree: wfd-tree(T) int_upper: {i...} int_seg: {i..j-} nat: uall: [x:A]. B[x] prop: all: x:A. B[x] exists: x:A. B[x] implies:  Q apply: a function: x:A ⟶ B[x] natural_number: $n universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] implies:  Q wfd-tree: wfd-tree(T) member: t ∈ T so_lambda: λ2x.t[x] so_apply: x[s] subtype_rel: A ⊆B nat: prop: int_upper: {i...} uimplies: supposing a and: P ∧ Q le: A ≤ B less_than': less_than'(a;b) false: False not: ¬A guard: {T} ge: i ≥  all: x:A. B[x] decidable: Dec(P) or: P ∨ Q satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] top: Top bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  uiff: uiff(P;Q) bfalse: ff tree-bars: (p|A) Wsup: Wsup(a;b) int_seg: {i..j-} lelt: i ≤ j < k sq_type: SQType(T) bnot: ¬bb assert: b predicate-shift: A_x seq-append: seq-append(n;m;s1;s2) less_than: a < b true: True squash: T finite-type: finite-type(T) pi1: fst(t) iff: ⇐⇒ Q rev_implies:  Q l_exists: (∃x∈L. P[x]) nat_plus: + select: L[n] cons: [a b] surject: Surj(A;B;f) seq-single: seq-single(t) subtract: m nequal: a ≠ b ∈  cand: c∧ B
Lemmas referenced :  W-induction bool_wf ifthenelse_wf all_wf nat_wf int_seg_wf int_upper_wf equal_wf subtype_rel_dep_function int_seg_subtype false_wf int_upper_properties nat_properties decidable__le satisfiable-full-omega-tt intformand_wf intformnot_wf intformle_wf itermVar_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_var_lemma int_formula_prop_wf int_upper_subtype_nat tree-bars_wf exists_wf W_wf eqtt_to_assert le_wf int_seg_properties intformless_wf itermConstant_wf int_formula_prop_less_lemma int_term_value_constant_lemma predicate-shift_wf eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot finite-type_wf decidable__equal_int intformeq_wf int_formula_prop_eq_lemma itermAdd_wf int_term_value_add_lemma seq-append_wf seq-single_wf lt_int_wf assert_of_lt_int top_wf less_than_wf lelt_wf subtract_wf itermSubtract_wf int_term_value_subtract_lemma decidable__lt imax-list-ub cons_wf map_wf upto_wf length_of_cons_lemma non_neg_length map_length length_wf add_nat_plus length_wf_nat nat_plus_wf nat_plus_properties add-is-int-iff select_wf add-associates add-swap add-commutes zero-add not-le-2 condition-implies-le minus-add minus-one-mul minus-one-mul-top add_functionality_wrt_le le-add-cancel eq_int_wf assert_of_eq_int int_subtype_base neg_assert_of_eq_int add-member-int_seg2 l_exists_iff l_member_wf cons_member member_map equal-wf-T-base member_upto2 int_seg_subtype_nat
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation cut thin instantiate introduction extract_by_obid sqequalHypSubstitution isectElimination cumulativity hypothesis sqequalRule lambdaEquality hypothesisEquality universeEquality voidEquality functionEquality applyEquality natural_numberEquality setElimination rename because_Cache functionExtensionality independent_isectElimination independent_pairFormation dependent_functionElimination unionElimination dependent_pairFormation int_eqEquality intEquality isect_memberEquality voidElimination computeAll equalityElimination productElimination equalityTransitivity equalitySymmetry independent_functionElimination dependent_set_memberEquality applyLambdaEquality promote_hyp addLevel hyp_replacement levelHypothesis addEquality lessCases sqequalAxiom imageMemberEquality baseClosed imageElimination pointwiseFunctionality baseApply closedConclusion minusEquality int_eqReduceTrueSq int_eqReduceFalseSq setEquality productEquality inrFormation

Latex:
\mforall{}[T:Type]
    (finite-type(T)
    {}\mRightarrow{}  (\mforall{}p:wfd-tree(T).  \mforall{}A:n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  T)  {}\mrightarrow{}  \mBbbP{}.
                ((\mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  T.    ((A  n  s)  {}\mRightarrow{}  (\mforall{}m:\{n...\}.  \mforall{}t:\mBbbN{}m  {}\mrightarrow{}  T.    ((t  =  s)  {}\mRightarrow{}  (A  m  t)))))
                {}\mRightarrow{}  (p|A)
                {}\mRightarrow{}  (\mexists{}N:\mBbbN{}.  \mforall{}m:\{N...\}.  \mforall{}as:\mBbbN{}m  {}\mrightarrow{}  T.    (A  m  as)))))



Date html generated: 2017_04_17-AM-09_39_01
Last ObjectModification: 2017_02_27-PM-05_36_19

Theory : fan-theorem


Home Index