Nuprl Lemma : bm_try_remove_wf

∀[T,Key:Type]. ∀[compare:bm_compare(Key)]. ∀[x:Key]. ∀[m:binary-map(T;Key)].
  (bm_try_remove(compare;m;x) ∈ binary-map(T;Key) × (T?))


Proof




Definitions occuring in Statement :  bm_try_remove: bm_try_remove(compare;m;x),  bm_compare: bm_compare(K),  binary-map: binary-map(T;Key),  uall: ∀[x:A]. B[x],  unit: Unit,  member: t ∈ T,  product: x:A × B[x],  union: left + right,  universe: Type
Lemmas :  nat_properties,  less_than_transitivity1,  less_than_irreflexivity,  ge_wf,  less_than_wf,  assert_wf,  bm_cnt_prop_wf,  le_wf,  binary_map_size_wf,  int_seg_wf,  decidable__le,  subtract_wf,  false_wf,  not-ge-2,  less-iff-le,  condition-implies-le,  minus-one-mul,  zero-add,  minus-add,  minus-minus,  add-associates,  add-swap,  add-commutes,  add_functionality_wrt_le,  add-zero,  le-add-cancel,  decidable__equal_int,  subtype_rel-int_seg,  le_weakening,  int_seg_properties,  binary_map-ext,  eq_atom_wf,  bool_wf,  eqtt_to_assert,  assert_of_eq_atom,  subtype_base_sq,  atom_subtype_base,  unit_wf2,  unit_subtype_base,  it_wf,  bm_cnt_prop_E,  bm_E_wf,  true_wf,  eqff_to_assert,  equal_wf,  bool_cases_sqequal,  bool_subtype_base,  assert-bnot,  neg_assert_of_eq_atom,  not-le-2,  subtract-is-less,  lelt_wf,  value-type-has-value,  int-value-type,  lt_int_wf,  assert_of_lt_int,  bm_T'_wf,  bm_delete'_wf,  equal-wf-base-T,  int_subtype_base,  bm_numItems_wf,  bm_cnt_prop_T,  bm_T_wf,  member_wf,  decidable__lt,  not-equal-2,  le-add-cancel-alt,  sq_stable__le,  add-mul-special,  zero-mul,  nat_wf,  binary_map_wf,  binary-map_wf,  bm_compare_wf
\mforall{}[T,Key:Type].  \mforall{}[compare:bm\_compare(Key)].  \mforall{}[x:Key].  \mforall{}[m:binary-map(T;Key)].
    (bm\_try\_remove(compare;m;x)  \mmember{}  binary-map(T;Key)  \mtimes{}  (T?))



Date html generated: 2015_07_17-AM-08_20_01
Last ObjectModification: 2015_01_27-PM-00_37_33

Home Index