Nuprl Lemma : int-decr-map-remove-prop

[Value:Type]. ∀[m:int-decr-map-type(Value)]. ∀[k1,k2:ℤ].
  (int-decr-map-find(k1;int-decr-map-remove(k2;m))
  if (k1 =z k2) then inr ⋅  else int-decr-map-find(k1;m) fi 
  ∈ (Value?))


Proof




Definitions occuring in Statement :  int-decr-map-remove: int-decr-map-remove(k;m) int-decr-map-find: int-decr-map-find(k;m) int-decr-map-type: int-decr-map-type(Value) ifthenelse: if then else fi  eq_int: (i =z j) it: uall: [x:A]. B[x] unit: Unit inr: inr  union: left right int: universe: Type equal: t ∈ T
Lemmas :  nat_properties less_than_transitivity1 less_than_irreflexivity ge_wf less_than_wf l-ordered_wf gt_wf equal-wf-T-base colength_wf_list list-cases eq_int_wf bool_wf eqtt_to_assert assert_of_eq_int it_wf eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_int nil_wf product_subtype_list spread_cons_lemma sq_stable__le le_antisymmetry_iff add_functionality_wrt_le add-associates add-zero zero-add le-add-cancel nat_wf decidable__le false_wf not-le-2 condition-implies-le minus-add minus-one-mul add-commutes le_wf subtract_wf not-ge-2 less-iff-le minus-minus add-swap set_subtype_base int_subtype_base cons_wf int-decr-map-type_wf remove-combine-cons sqequal-tt-to-assert l-ordered-cons int-decr-map-find-not-in l_all_iff l_member_wf not_wf equal-wf-base-T sqequal-ff-to-assert find-combine-cons value-type-has-value int-value-type lt_int_wf assert_of_lt_int int-decr-map-find_wf cons_wf_listp subtype_rel_sets list_wf assert_wf length_wf subtype_rel_sum null_wf3 subtype_rel_list top_wf squash_wf l_all_wf2 unit_wf2 null_cons_lemma subtype_rel-equal
\mforall{}[Value:Type].  \mforall{}[m:int-decr-map-type(Value)].  \mforall{}[k1,k2:\mBbbZ{}].
    (int-decr-map-find(k1;int-decr-map-remove(k2;m))
    =  if  (k1  =\msubz{}  k2)  then  inr  \mcdot{}    else  int-decr-map-find(k1;m)  fi  )



Date html generated: 2015_07_17-AM-08_23_38
Last ObjectModification: 2015_04_02-PM-05_44_33

Home Index