Nuprl Lemma : oalist_fact

a:LOSet. ∀b:AbDMon. ∀ps:|oal(a;b)|.  (ps (msFor{oal_mon(a;b)} k' ∈ dom(ps). inj(k',ps[k'])) ∈ |oal(a;b)|)


Proof




Definitions occuring in Statement :  oal_inj: inj(k,v) oal_mon: oal_mon(a;b) lookup: as[k] oal_dom: dom(ps) oalist: oal(a;b) mset_for: mset_for all: x:A. B[x] equal: t ∈ T abdmonoid: AbDMon grp_id: e loset: LOSet set_car: |p|
Definitions unfolded in proof :  all: x:A. B[x] member: t ∈ T loset: LOSet poset: POSet{i} qoset: QOSet subtype_rel: A ⊆B so_lambda: λ2x.t[x] dset: DSet uall: [x:A]. B[x] abdmonoid: AbDMon dmon: DMon mon: Mon oalist: oal(a;b) dset_set: dset_set mk_dset: mk_dset(T, eq) set_car: |p| pi1: fst(t) dset_list: List set_prod: s × t dset_of_mon: g↓set so_apply: x[s] implies:  Q top: Top null_mset: 0{s} oal_dom: dom(ps) mk_mset: mk_mset(as) oal_mon: oal_mon(a;b) grp_id: e pi2: snd(t) mset_inj: mset_inj{s}(x) mset_sum: b append: as bs so_lambda: so_lambda(x,y,z.t[x; y; z]) so_apply: x[s1;s2;s3] grp_op: * infix_ap: y prop: guard: {T} oal_nil: 00 bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) and: P ∧ Q uimplies: supposing a ifthenelse: if then else fi  bfalse: ff iff: ⇐⇒ Q not: ¬A rev_implies:  Q false: False squash: T grp_car: |g| list: List exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) bnot: ¬bb assert: b true: True rev_uimplies: rev_uimplies(P;Q) mon_when: when b. p
Lemmas referenced :  lookups_same_a mset_for_wf oal_mon_wf oal_inj_wf lookup_wf grp_car_wf grp_id_wf set_car_wf oal_dom_wf abdmonoid_abmonoid oalist_wf abdmonoid_wf loset_wf oalist_ind_a equal_wf lookup_nil_lemma istype-void map_nil_lemma mset_for_null_lemma lookup_cons_pr_lemma list_ind_cons_lemma list_ind_nil_lemma map_cons_lemma mset_for_inj_lemma not_wf assert_wf before_wf map_wf set_prod_wf dset_of_mon_wf set_eq_wf uiff_transitivity equal-wf-T-base bool_wf member_wf eqtt_to_assert assert_of_dset_eq iff_transitivity bnot_wf iff_weakening_uiff eqff_to_assert assert_of_bnot squash_wf true_wf istype-universe ifthenelse_wf lookup_merge infix_ap_wf subtype_rel_self list_wf sd_ordered_wf mem_wf dset_of_mon_wf0 bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot grp_op_wf lookup_oal_inj iff_weakening_equal mon_when_wf iabmonoid_subtype_imon abmonoid_subtype_iabmonoid subtype_rel_transitivity abmonoid_wf iabmonoid_wf imon_wf poset_sig_wf mset_for_functionality ite_rw_false mon_subtype_grp_sig dmon_subtype_mon abdmonoid_dmon dmon_wf mon_wf grp_sig_wf mset_mem_wf lookup_non_zero lookup_before_start assert_functionality_wrt_uiff dset_wf mon_ident
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation_alt cut introduction extract_by_obid sqequalHypSubstitution dependent_functionElimination thin hypothesisEquality setElimination rename because_Cache hypothesis applyEquality sqequalRule lambdaEquality_alt isectElimination universeIsType independent_functionElimination inhabitedIsType equalityTransitivity equalitySymmetry isect_memberEquality_alt voidElimination productElimination equalityIsType1 unionElimination equalityElimination baseClosed independent_isectElimination independent_pairFormation imageElimination universeEquality setEquality productEquality productIsType dependent_pairFormation_alt promote_hyp instantiate cumulativity natural_numberEquality imageMemberEquality

Latex:
\mforall{}a:LOSet.  \mforall{}b:AbDMon.  \mforall{}ps:|oal(a;b)|.    (ps  =  (msFor\{oal\_mon(a;b)\}  k'  \mmember{}  dom(ps).  inj(k',ps[k'])))



Date html generated: 2019_10_16-PM-01_07_41
Last ObjectModification: 2018_10_08-PM-00_23_31

Theory : polynom_2


Home Index