Nuprl Lemma : bag-member-decomp

[T:Type]. ∀[bs:bag(T)]. ∀[x:T]. ∀[b:bag(T)].  uiff(<x, b> ↓∈ bag-decomp(bs);({x} b) bs ∈ bag(T))


Proof




Definitions occuring in Statement :  bag-decomp: bag-decomp(bs) bag-member: x ↓∈ bs bag-append: as bs single-bag: {x} bag: bag(T) uiff: uiff(P;Q) uall: [x:A]. B[x] pair: <a, b> product: x:A × B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  member: t ∈ T bag: bag(T) uall: [x:A]. B[x] all: x:A. B[x] uiff: uiff(P;Q) uimplies: supposing a and: P ∧ Q prop: quotient: x,y:A//B[x; y] implies:  Q subtype_rel: A ⊆B bag-member: x ↓∈ bs squash: T exists: x:A. B[x] bag-decomp: bag-decomp(bs) cand: c∧ B guard: {T} iff: ⇐⇒ Q so_lambda: λ2x.t[x] so_apply: x[s] remove-nth: remove-nth(n;L) pi1: fst(t) pi2: snd(t) single-bag: {x} bag-append: as bs append: as bs so_lambda: so_lambda(x,y,z.t[x; y; z]) top: Top so_apply: x[s1;s2;s3] so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] rev_implies:  Q int_seg: {i..j-} int_iseg: {i...j} lelt: i ≤ j < k decidable: Dec(P) or: P ∨ Q satisfiable_int_formula: satisfiable_int_formula(fmla) false: False not: ¬A subtract: m less_than: a < b le: A ≤ B nat: true: True ge: i ≥  l_member: (x ∈ l) less_than': less_than'(a;b) bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  bfalse: ff sq_type: SQType(T) bnot: ¬bb assert: b nth_tl: nth_tl(n;as) le_int: i ≤j lt_int: i <j tl: tl(l) cons: [a b]
Lemmas referenced :  uiff_wf bag-member_wf bag_wf bag-decomp_wf equal_wf bag-append_wf single-bag_wf list_wf list-subtype-bag permutation_wf equal-wf-base member-permutation member_map int_seg_wf length_wf upto_wf remove-nth_wf subtype_rel_product member_wf map_wf list_ind_cons_lemma list_ind_nil_lemma quotient-member-eq permutation-equiv cons_wf permutation-cons firstn_wf nth_tl_wf append_wf length-append length_firstn subtype_rel_sets lelt_wf le_wf length_of_cons_lemma int_seg_properties decidable__le satisfiable-full-omega-tt intformand_wf intformnot_wf intformle_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf exists_wf append_firstn_lastn_sq subtype_rel_list top_wf add-member-int_seg2 subtract_wf itermSubtract_wf itermConstant_wf int_term_value_subtract_lemma int_term_value_constant_lemma decidable__lt itermAdd_wf int_term_value_add_lemma firstn_decomp2 append_assoc_sq squash_wf true_wf add-associates add-swap add-commutes zero-add add-subtract-cancel iff_weakening_equal non_neg_length less_than_wf l_member_wf member_upto length_wf_nat nat_properties decidable__equal_int intformeq_wf int_formula_prop_eq_lemma select_wf and_wf nat_wf select_append_back select-cons-hd add_nat_wf false_wf lt_int_wf bool_wf eqtt_to_assert assert_of_lt_int eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot firstn_append nth_tl-append minus-one-mul add-mul-special zero-mul add-zero firstn_all permutation_weakening subtype_rel_self
Rules used in proof :  introduction sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity sqequalHypSubstitution pointwiseFunctionalityForEquality cut extract_by_obid isectElimination thin productEquality cumulativity hypothesisEquality hypothesis independent_pairEquality sqequalRule dependent_functionElimination pertypeElimination productElimination equalityTransitivity equalitySymmetry lambdaFormation because_Cache rename applyEquality independent_isectElimination lambdaEquality isect_memberEquality axiomEquality independent_functionElimination universeEquality isect_memberFormation imageElimination imageMemberEquality baseClosed natural_numberEquality independent_pairFormation applyLambdaEquality voidElimination voidEquality dependent_pairFormation setElimination addEquality intEquality setEquality unionElimination int_eqEquality computeAll dependent_set_memberEquality minusEquality hyp_replacement equalityElimination promote_hyp instantiate

Latex:
\mforall{}[T:Type].  \mforall{}[bs:bag(T)].  \mforall{}[x:T].  \mforall{}[b:bag(T)].    uiff(<x,  b>  \mdownarrow{}\mmember{}  bag-decomp(bs);(\{x\}  +  b)  =  bs)



Date html generated: 2017_10_01-AM-09_01_04
Last ObjectModification: 2017_07_26-PM-04_42_16

Theory : bags


Home Index