Nuprl Lemma : b-almost-full-intersection

This is the main technical lemma from Veldman Bezem's proof
of the Intuitionistic Ramsey theorem.
We were able to closely follow their proof except that 
before carrying out some of the reasoning steps we have to
"unsquash" some of the hypotheses. 
The needed "unsquashing" is usually done using lemmas
implies-quotient-true or all-quotient-true
(making use of the fact that we can prove canonicalizable(StrictInc)).⋅

R,T:ℕ ⟶ ℕ ⟶ ℙ.  (b-almost-full(n,m.R[n;m])  b-almost-full(n,m.T[n;m])  ⇃(∃n:ℕ. ∃m:{n 1...}. (R[n;m] ∧ T[n;m])))


Proof




Definitions occuring in Statement :  b-almost-full: b-almost-full(n,m.R[n; m]) quotient: x,y:A//B[x; y] int_upper: {i...} nat: prop: so_apply: x[s1;s2] all: x:A. B[x] exists: x:A. B[x] implies:  Q and: P ∧ Q true: True function: x:A ⟶ B[x] add: m natural_number: $n
Definitions unfolded in proof :  all: x:A. B[x] implies:  Q so_lambda: λ2y.t[x; y] member: t ∈ T uall: [x:A]. B[x] so_apply: x[s1;s2] nat: subtype_rel: A ⊆B prop: exists: x:A. B[x] or: P ∨ Q ge: i ≥  decidable: Dec(P) uimplies: supposing a not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) false: False top: Top and: P ∧ Q strict-inc: StrictInc guard: {T} int_upper: {i...} iff: ⇐⇒ Q rev_implies:  Q uiff: uiff(P;Q) sq_stable: SqStable(P) squash: T subtract: m le: A ≤ B less_than': less_than'(a;b) true: True bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  bfalse: ff sq_type: SQType(T) bnot: ¬bb assert: b int_seg: {i..j-} lelt: i ≤ j < k strictly-increasing-seq: strictly-increasing-seq(n;s) seq-add: s.x@n nequal: a ≠ b ∈  less_than: a < b so_lambda: λ2x.t[x] so_apply: x[s] rev_uimplies: rev_uimplies(P;Q) cand: c∧ B nat_plus: + u-almost-full: u-almost-full(n.A[n]) compose: g isr: isr(x) outr: outr(x) isl: isl(x) baf-bar: baf-bar(n,m.R[n; m];n,m.T[n; m];l;a) pi1: fst(t)
Lemmas referenced :  monotone-bar-induction-strict3 baf-bar_wf int_seg_wf strictly-increasing-seq_wf istype-nat strict-inc_wf nat_wf nat_properties decidable__le full-omega-unsat intformand_wf intformnot_wf intformle_wf itermConstant_wf itermAdd_wf itermVar_wf istype-int int_formula_prop_and_lemma istype-void int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_add_lemma int_term_value_var_lemma int_formula_prop_wf istype-le seq-add_wf int_upper_wf upper_subtype_nat istype-false not-le-2 sq_stable__le condition-implies-le minus-add minus-one-mul zero-add minus-one-mul-top add-associates add-swap add-commutes add_functionality_wrt_le add-zero le-add-cancel subtype_rel_self b-almost-full_wf baf-bar-monotone le_wf trivial-quotient-true strict-inc-lower-bound eq_int_wf eqtt_to_assert assert_of_eq_int eqff_to_assert bool_cases_sqequal subtype_base_sq bool_wf bool_subtype_base assert-bnot neg_assert_of_eq_int nequal-le-implies subtract_wf int_upper_properties itermSubtract_wf int_term_value_subtract_lemma decidable__lt intformless_wf int_formula_prop_less_lemma istype-less_than add_nat_wf add-is-int-iff intformeq_wf int_formula_prop_eq_lemma false_wf sq_stable_from_decidable decidable__strictly-increasing-seq less_than_wf int_seg_properties set_subtype_base lelt_wf int_subtype_base decidable__equal_int less_than_functionality le_weakening quotient_wf all_wf exists_wf or_wf true_wf equiv_rel_true all-quotient-true subtype_rel_function int_seg_subtype add-mul-special zero-mul le-add-cancel2 canonicalizable_wf canonicalizable-set canonicalizable-base Ramsey-n-3 canonicalizable-nat-to-nat primrec-wf2 nat_plus_properties nat_plus_subtype_nat less_than_transitivity1 less_than_irreflexivity int_seg_subtype_nat implies-quotient-true2 u-almost-full-finite-intersection implies-quotient-true compose-strict-inc member-less_than equal-wf-T-base assert_wf bnot_wf not_wf uiff_transitivity iff_transitivity iff_weakening_uiff assert_of_bnot decidable__exists_int_seg isr_wf decidable__assert outl_wf isl_wf le_weakening2 equal_wf le_reflexive not_over_exists decidable__or strictly-increasing-seq-add2-implies intformor_wf int_formula_prop_or_lemma equal-wf-base decidable__and2 int_seg_subtype_special int_seg_cases lt_int_wf le_int_wf assert_of_lt_int assert_functionality_wrt_uiff bnot_of_lt_int assert_of_le_int squash_wf nat_plus_wf b-almost-full-intersection-lemma imax_wf subtype_rel_dep_function imax_strict_ub
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation_alt cut introduction extract_by_obid sqequalHypSubstitution dependent_functionElimination thin sqequalRule lambdaEquality_alt isectElimination applyEquality hypothesisEquality inhabitedIsType setElimination rename hypothesis setIsType functionIsType universeIsType natural_numberEquality functionExtensionality because_Cache closedConclusion functionEquality productEquality unionEquality dependent_set_memberEquality_alt addEquality unionElimination independent_isectElimination approximateComputation independent_functionElimination dependent_pairFormation_alt int_eqEquality isect_memberEquality_alt voidElimination independent_pairFormation productElimination imageMemberEquality baseClosed imageElimination minusEquality instantiate universeEquality intEquality equalityElimination equalityTransitivity equalitySymmetry equalityIstype promote_hyp cumulativity hypothesis_subsumption productIsType applyLambdaEquality pointwiseFunctionality baseApply int_eqReduceTrueSq equalityIsType1 int_eqReduceFalseSq inlFormation_alt unionIsType setEquality multiplyEquality equalityIsType4 inrFormation_alt equalityIsType3 hyp_replacement

Latex:
\mforall{}R,T:\mBbbN{}  {}\mrightarrow{}  \mBbbN{}  {}\mrightarrow{}  \mBbbP{}.
    (b-almost-full(n,m.R[n;m])
    {}\mRightarrow{}  b-almost-full(n,m.T[n;m])
    {}\mRightarrow{}  \00D9(\mexists{}n:\mBbbN{}.  \mexists{}m:\{n  +  1...\}.  (R[n;m]  \mwedge{}  T[n;m])))



Date html generated: 2020_05_19-PM-10_05_50
Last ObjectModification: 2019_10_29-PM-01_46_29

Theory : continuity


Home Index