src/HOL/Library/Poly_Mapping.thy
changeset 75455 91c16c5ad3e9
parent 73932 fd21b4a93043
child 76484 defaa0b17424
equal deleted inserted replaced
75454:295e1c9d2994 75455:91c16c5ad3e9
  1686   using finite_cmul_nonzero [of c a]
  1686   using finite_cmul_nonzero [of c a]
  1687   by (metis lookup_frag_cmul mult_zero_right not_in_keys_iff_lookup_eq_zero subsetI)
  1687   by (metis lookup_frag_cmul mult_zero_right not_in_keys_iff_lookup_eq_zero subsetI)
  1688   
  1688   
  1689 
  1689 
  1690 lemma keys_cmul_iff [iff]: "i \<in> Poly_Mapping.keys (frag_cmul c x) \<longleftrightarrow> i \<in> Poly_Mapping.keys x \<and> c \<noteq> 0"
  1690 lemma keys_cmul_iff [iff]: "i \<in> Poly_Mapping.keys (frag_cmul c x) \<longleftrightarrow> i \<in> Poly_Mapping.keys x \<and> c \<noteq> 0"
  1691   apply (auto simp: )
  1691   apply auto
  1692   apply (meson subsetD keys_cmul)
  1692   apply (meson subsetD keys_cmul)
  1693   by (metis in_keys_iff lookup_frag_cmul mult_eq_0_iff)
  1693   by (metis in_keys_iff lookup_frag_cmul mult_eq_0_iff)
  1694 
  1694 
  1695 lemma keys_minus [simp]: "Poly_Mapping.keys(-a) = Poly_Mapping.keys a"
  1695 lemma keys_minus [simp]: "Poly_Mapping.keys(-a) = Poly_Mapping.keys a"
  1696   by (metis (no_types, opaque_lifting) in_keys_iff lookup_uminus neg_equal_0_iff_equal subsetI subset_antisym)
  1696   by (metis (no_types, opaque_lifting) in_keys_iff lookup_uminus neg_equal_0_iff_equal subsetI subset_antisym)