Nuprl Lemma : simple_general_fan_theorem

[T:Type]
  (Bounded(T)
   (∀[X:n:ℕ ⟶ (ℕn ⟶ T) ⟶ ℙ]
        (∀n:ℕ. ∀s:ℕn ⟶ T.  Dec(X[n;s]))  (∃k:ℕ [(∀f:ℕ ⟶ T. ∃n:ℕk. X[n;f])]) supposing ∀f:ℕ ⟶ T. (↓∃n:ℕX[n;f])))


Proof




Definitions occuring in Statement :  bounded-type: Bounded(T) int_seg: {i..j-} nat: decidable: Dec(P) uimplies: supposing a uall: [x:A]. B[x] prop: so_apply: x[s1;s2] all: x:A. B[x] sq_exists: x:A [B[x]] exists: x:A. B[x] squash: T implies:  Q function: x:A ⟶ B[x] natural_number: $n universe: Type
Definitions unfolded in proof :  nat_plus: + ge: i ≥  seq-adjoin: s++t assert: b ifthenelse: if then else fi  bnot: ¬bb bfalse: ff cand: c∧ B btrue: tt it: unit: Unit bool: 𝔹 seq-append: seq-append(n;m;s1;s2) istype: istype(T) sq_type: SQType(T) less_than: a < b true: True top: Top subtract: m uiff: uiff(P;Q) rev_implies:  Q iff: ⇐⇒ Q or: P ∨ Q decidable: Dec(P) exists: x:A. B[x] sq_exists: x:A [B[x]] prop: so_apply: x[s] not: ¬A false: False less_than': less_than'(a;b) subtype_rel: A ⊆B le: A ≤ B and: P ∧ Q lelt: i ≤ j < k sq_stable: SqStable(P) guard: {T} int_seg: {i..j-} so_apply: x[s1;s2] nat: so_lambda: λ2x.t[x] so_lambda: λ2y.t[x; y] squash: T all: x:A. B[x] member: t ∈ T uimplies: supposing a implies:  Q uall: [x:A]. B[x] bounded-type: Bounded(T)
Lemmas referenced :  less_than_irreflexivity less_than_transitivity1 not-equal-2 decidable__int_equal nat_properties le-add-cancel-alt mul-commutes mul-associates mul-distributes omega-shadow mul-distributes-right two-mul zero-mul add-mul-special one-mul minus-zero le_reflexive and_wf add-is-int-iff istype-sqequal le_weakening2 minus-minus decidable__lt le-add-cancel2 subtract_wf add-member-int_seg2 decidable__exists_int_seg sq_stable_from_decidable sq_stable__all less-iff-le not-lt-2 istype-assert assert_of_bnot iff_weakening_uiff less_than_wf not_wf bnot_wf assert_wf iff_transitivity bool_subtype_base bool_wf bool_cases_sqequal eqff_to_assert istype-top assert_of_lt_int eqtt_to_assert lt_int_wf int_subtype_base istype-int le_wf set_subtype_base subtype_base_sq subtype_rel_dep_function istype-less_than istype-universe squash_wf decidable_wf istype-nat seq-adjoin_wf le-add-cancel add-zero add_functionality_wrt_le add-commutes add-swap add-associates minus-one-mul-top zero-add minus-one-mul minus-add condition-implies-le not-le-2 decidable__le istype-void subtype_rel_self subtype_rel_function istype-false int_seg_subtype_nat seq-append_wf istype-le sq_stable__le add_nat_wf int_seg_wf exists_wf all_wf nat_wf sq_exists_wf basic_bar_induction
Rules used in proof :  baseApply multiplyEquality functionExtensionality promote_hyp isectIsTypeImplies axiomSqEquality lessCases equalityElimination functionExtensionality_alt intEquality cumulativity hyp_replacement dependent_pairFormation_alt dependent_set_memberFormation_alt universeEquality productEquality minusEquality isect_memberEquality_alt unionElimination voidElimination productIsType setIsType instantiate functionIsType universeIsType independent_pairFormation independent_isectElimination equalitySymmetry equalityTransitivity equalityIstype productElimination independent_functionElimination addEquality dependent_set_memberEquality_alt applyEquality setElimination natural_numberEquality closedConclusion because_Cache functionEquality isectElimination extract_by_obid rename inhabitedIsType functionIsTypeImplies baseClosed imageMemberEquality hypothesis imageElimination hypothesisEquality thin dependent_functionElimination lambdaEquality_alt sqequalHypSubstitution introduction cut lambdaFormation_alt isect_memberFormation_alt computationStep sqequalTransitivity sqequalReflexivity sqequalRule sqequalSubstitution

Latex:
\mforall{}[T:Type]
    (Bounded(T)
    {}\mRightarrow{}  (\mforall{}[X:n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  T)  {}\mrightarrow{}  \mBbbP{}]
                (\mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  T.    Dec(X[n;s]))  {}\mRightarrow{}  (\mexists{}k:\mBbbN{}  [(\mforall{}f:\mBbbN{}  {}\mrightarrow{}  T.  \mexists{}n:\mBbbN{}k.  X[n;f])]) 
                supposing  \mforall{}f:\mBbbN{}  {}\mrightarrow{}  T.  (\mdownarrow{}\mexists{}n:\mBbbN{}.  X[n;f])))



Date html generated: 2019_10_15-AM-10_20_24
Last ObjectModification: 2019_10_07-PM-04_44_24

Theory : bar-induction


Home Index