### Nuprl Lemma : bag-maximal?-iff

`∀[T:Type]. ∀[b:bag(T)]. ∀[R:T ⟶ T ⟶ 𝔹]. ∀[x:T].  uiff(↑bag-maximal?(b;x;R);∀y:T. (y ↓∈ b `` (↑(R x y))))`

Proof

Definitions occuring in Statement :  bag-member: `x ↓∈ bs` bag-maximal?: `bag-maximal?(bg;x;R)` bag: `bag(T)` assert: `↑b` bool: `𝔹` uiff: `uiff(P;Q)` uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` implies: `P `` Q` apply: `f a` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  uiff: `uiff(P;Q)` and: `P ∧ Q` uimplies: `b supposing a` member: `t ∈ T` all: `∀x:A. B[x]` implies: `P `` Q` uall: `∀[x:A]. B[x]` prop: `ℙ` so_lambda: `λ2x.t[x]` so_apply: `x[s]` nat: `ℕ` false: `False` ge: `i ≥ j ` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` not: `¬A` top: `Top` subtype_rel: `A ⊆r B` guard: `{T}` or: `P ∨ Q` bag-maximal?: `bag-maximal?(bg;x;R)` bag-accum: `bag-accum(v,x.f[v; x];init;bs)` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s1;s2]` assert: `↑b` ifthenelse: `if b then t else f fi ` btrue: `tt` cons: `[a / b]` colength: `colength(L)` decidable: `Dec(P)` nil: `[]` it: `⋅` sq_type: `SQType(T)` less_than: `a < b` squash: `↓T` less_than': `less_than'(a;b)` band: `p ∧b q` true: `True` sq_stable: `SqStable(P)` cons-bag: `x.b` rev_uimplies: `rev_uimplies(P;Q)` cand: `A c∧ B` sq_or: `a ↓∨ b`
Lemmas referenced :  bag-maximal?-max bag-member_wf assert_witness assert_wf bag-maximal?_wf all_wf nat_properties satisfiable-full-omega-tt intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf less_than_wf list-subtype-bag intformeq_wf int_formula_prop_eq_lemma equal-wf-T-base nat_wf colength_wf_list less_than_transitivity1 less_than_irreflexivity list_wf list-cases list_accum_nil_lemma true_wf nil_wf product_subtype_list spread_cons_lemma itermAdd_wf int_term_value_add_lemma decidable__le intformnot_wf int_formula_prop_not_lemma le_wf equal_wf subtract_wf itermSubtract_wf int_term_value_subtract_lemma subtype_base_sq set_subtype_base int_subtype_base decidable__equal_int list_accum_cons_lemma list_accum_wf bool_wf band_wf cons_wf member_wf btrue_wf list_induction bag_wf bag_to_squash_list sq_stable_from_decidable decidable__assert bag-maximal?-cons bag-member-cons
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity independent_pairFormation isect_memberFormation introduction cut lambdaFormation extract_by_obid sqequalHypSubstitution isectElimination thin because_Cache hypothesisEquality independent_isectElimination hypothesis cumulativity sqequalRule lambdaEquality dependent_functionElimination independent_functionElimination functionExtensionality applyEquality functionEquality setElimination rename intWeakElimination natural_numberEquality dependent_pairFormation int_eqEquality intEquality isect_memberEquality voidElimination voidEquality computeAll axiomEquality equalityTransitivity equalitySymmetry applyLambdaEquality unionElimination promote_hyp hypothesis_subsumption productElimination dependent_set_memberEquality addEquality baseClosed instantiate imageElimination universeEquality independent_pairEquality hyp_replacement imageMemberEquality inrFormation inlFormation

Latex:
\mforall{}[T:Type].  \mforall{}[b:bag(T)].  \mforall{}[R:T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[x:T].
uiff(\muparrow{}bag-maximal?(b;x;R);\mforall{}y:T.  (y  \mdownarrow{}\mmember{}  b  {}\mRightarrow{}  (\muparrow{}(R  x  y))))

Date html generated: 2017_10_01-AM-08_58_57
Last ObjectModification: 2017_07_26-PM-04_40_49

Theory : bags

Home Index