Nuprl Lemma : descending-chain-barred-implies-wellfounded

[T:Type]. ∀[<,B:T ⟶ T ⟶ ℙ].
  ((∀x,y,z:T.  ((x < y)  (y < z)  (x < z)))
   (∀x,y:T.  Dec(x y))
   (∀x,y:T.  ((x y)  (x < y))))
   (∀f:ℕ ⟶ T. (↓∃j:ℕ. ∃i:ℕj. ((f j) (f i))))
   WellFnd{i}(T;x,y.x < y))


Proof




Definitions occuring in Statement :  int_seg: {i..j-} nat: wellfounded: WellFnd{i}(A;x,y.R[x; y]) decidable: Dec(P) uall: [x:A]. B[x] prop: infix_ap: y all: x:A. B[x] exists: x:A. B[x] not: ¬A squash: T implies:  Q apply: a function: x:A ⟶ B[x] natural_number: $n universe: Type
Definitions unfolded in proof :  label: ...$L... t assert: b ifthenelse: if then else fi  bnot: ¬bb sq_type: SQType(T) bfalse: ff less_than: a < b btrue: tt it: unit: Unit bool: 𝔹 seq-append: seq-append(n;m;s1;s2) seq-adjoin: s++t sq_stable: SqStable(P) exists: x:A. B[x] squash: T true: True less_than': less_than'(a;b) top: Top subtype_rel: A ⊆B subtract: m uiff: uiff(P;Q) false: False rev_implies:  Q not: ¬A iff: ⇐⇒ Q or: P ∨ Q decidable: Dec(P) infix_ap: y so_apply: x[s1;s2] so_apply: x[s] all: x:A. B[x] uimplies: supposing a guard: {T} le: A ≤ B and: P ∧ Q lelt: i ≤ j < k prop: int_seg: {i..j-} so_lambda: λ2x.t[x] nat: so_lambda: λ2y.t[x; y] member: t ∈ T wellfounded: WellFnd{i}(A;x,y.R[x; y]) implies:  Q uall: [x:A]. B[x]
Lemmas referenced :  less_than_irreflexivity not-equal-2 le_antisymmetry_iff decidable__int_equal le-add-cancel2 assert_of_bnot iff_weakening_uiff bnot_wf assert_wf iff_transitivity bool_subtype_base subtype_base_sq bool_cases_sqequal eqff_to_assert top_wf assert_of_lt_int eqtt_to_assert bool_wf lt_int_wf le_reflexive sq_stable__le iff_weakening_equal decidable_wf not_wf int_seg_subtype_nat squash_wf seq-adjoin_wf int_subtype_base set_subtype_base add-is-int-iff decidable__exists_int_seg le-add-cancel-alt zero-mul add-mul-special not-lt-2 decidable__lt le-add-cancel add-zero add_functionality_wrt_le less-iff-le add-commutes add-swap add-associates minus-minus minus-add nat_wf minus-one-mul-top zero-add minus-one-mul condition-implies-le not-le-2 false_wf decidable__le subtract_wf less_than_transitivity1 equal_wf all_wf less_than_wf le_wf and_wf le_weakening2 less_than_transitivity2 infix_ap_wf int_seg_wf exists_wf basic_bar_induction
Rules used in proof :  multiplyEquality hyp_replacement impliesFunctionality promote_hyp dependent_pairFormation sqequalAxiom lessCases equalityElimination equalitySymmetry equalityTransitivity imageMemberEquality imageElimination baseClosed closedConclusion baseApply intEquality minusEquality voidEquality isect_memberEquality addEquality independent_functionElimination voidElimination unionElimination functionEquality dependent_functionElimination independent_isectElimination independent_pairFormation productElimination dependent_set_memberEquality applyEquality functionExtensionality universeEquality cumulativity instantiate hypothesis because_Cache rename setElimination natural_numberEquality lambdaEquality sqequalRule hypothesisEquality thin isectElimination sqequalHypSubstitution extract_by_obid introduction cut lambdaFormation isect_memberFormation sqequalReflexivity computationStep sqequalTransitivity sqequalSubstitution

Latex:
\mforall{}[T:Type].  \mforall{}[<,B:T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}].
    ((\mforall{}x,y,z:T.    ((x  <  y)  {}\mRightarrow{}  (y  <  z)  {}\mRightarrow{}  (x  <  z)))
    {}\mRightarrow{}  (\mforall{}x,y:T.    Dec(x  B  y))
    {}\mRightarrow{}  (\mforall{}x,y:T.    ((x  B  y)  {}\mRightarrow{}  (\mneg{}(x  <  y))))
    {}\mRightarrow{}  (\mforall{}f:\mBbbN{}  {}\mrightarrow{}  T.  (\mdownarrow{}\mexists{}j:\mBbbN{}.  \mexists{}i:\mBbbN{}j.  ((f  j)  B  (f  i))))
    {}\mRightarrow{}  WellFnd\{i\}(T;x,y.x  <  y))



Date html generated: 2017_09_29-PM-05_47_54
Last ObjectModification: 2017_09_22-AM-08_34_20

Theory : bar-induction


Home Index