Nuprl Lemma : mset_for_when_dom_shift

s:DSet. ∀g:IAbMonoid. ∀f:|s| ⟶ |g|. ∀c:|s| ⟶ 𝔹. ∀p,q:MSet{s}.
  ((↑(p ⊆b q))
   (∀x:|s|. ((↑(x ∈b p))  (¬↑c[x])))
   ((msFor{g} x ∈ p. when c[x]. f[x]) (msFor{g} x ∈ q. when c[x]. f[x]) ∈ |g|))


Proof




Definitions occuring in Statement :  bsubmset: a ⊆b b mset_diff: b mset_for: mset_for mset_mem: mset_mem mset: MSet{s} assert: b bool: 𝔹 so_apply: x[s] all: x:A. B[x] not: ¬A implies:  Q function: x:A ⟶ B[x] equal: t ∈ T mon_when: when b. p iabmonoid: IAbMonoid grp_car: |g| dset: DSet set_car: |p|
Definitions unfolded in proof :  all: x:A. B[x] implies:  Q member: t ∈ T prop: uall: [x:A]. B[x] dset: DSet so_lambda: λ2x.t[x] so_apply: x[s] iabmonoid: IAbMonoid imon: IMonoid squash: T true: True subtype_rel: A ⊆B uimplies: supposing a guard: {T} iff: ⇐⇒ Q and: P ∧ Q rev_implies:  Q infix_ap: y
Lemmas referenced :  all_wf set_car_wf assert_wf mset_mem_wf mset_diff_wf not_wf bsubmset_wf mset_wf bool_wf grp_car_wf iabmonoid_wf dset_wf equal_wf squash_wf true_wf mset_for_wf mon_when_wf mset_for_functionality mset_sum_wf detach_msubset iff_weakening_equal mset_for_mset_sum grp_op_wf mset_for_when_none mon_ident
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation cut hypothesis introduction extract_by_obid sqequalHypSubstitution isectElimination thin setElimination rename hypothesisEquality sqequalRule lambdaEquality functionEquality dependent_functionElimination applyEquality functionExtensionality because_Cache imageElimination equalityTransitivity equalitySymmetry universeEquality independent_functionElimination natural_numberEquality imageMemberEquality baseClosed independent_isectElimination productElimination

Latex:
\mforall{}s:DSet.  \mforall{}g:IAbMonoid.  \mforall{}f:|s|  {}\mrightarrow{}  |g|.  \mforall{}c:|s|  {}\mrightarrow{}  \mBbbB{}.  \mforall{}p,q:MSet\{s\}.
    ((\muparrow{}(p  \msubseteq{}\msubb{}  q))
    {}\mRightarrow{}  (\mforall{}x:|s|.  ((\muparrow{}(x  \mmember{}\msubb{}  q  -  p))  {}\mRightarrow{}  (\mneg{}\muparrow{}c[x])))
    {}\mRightarrow{}  ((msFor\{g\}  x  \mmember{}  p.  when  c[x].  f[x])  =  (msFor\{g\}  x  \mmember{}  q.  when  c[x].  f[x])))



Date html generated: 2017_10_01-AM-10_00_46
Last ObjectModification: 2017_03_03-PM-01_02_05

Theory : mset


Home Index