src/HOL/List.thy
changeset 83061 9fbda8184ec7
parent 83018 e2cdcb656b24
equal deleted inserted replaced
83060:308127f582bc 83061:9fbda8184ec7
  8039 
  8039 
  8040 qualified lemma Collect_member [code_unfold, no_atp]: \<comment> \<open>make preprocessor setup confluent\<close>
  8040 qualified lemma Collect_member [code_unfold, no_atp]: \<comment> \<open>make preprocessor setup confluent\<close>
  8041   \<open>{x. List.member xs x \<and> P x} = Set.filter P (set xs)\<close>
  8041   \<open>{x. List.member xs x \<and> P x} = Set.filter P (set xs)\<close>
  8042   by simp
  8042   by simp
  8043 
  8043 
       
  8044 qualified lemma Collect_pair_member [code_unfold, no_atp]: \<comment> \<open>make preprocessor setup confluent\<close>
       
  8045   \<open>{(x, y). List.member xs (x, y) \<and> P x y} = Set.filter (\<lambda>(x, y). P x y) (set xs)\<close>
       
  8046   by auto
       
  8047 
       
  8048 qualified lemma Collect_triple_member [code_unfold, no_atp]: \<comment> \<open>make preprocessor setup confluent\<close>
       
  8049   \<open>{(x, y, z). List.member xs (x, y, z) \<and> P x y z} = Set.filter (\<lambda>(x, y, z). P x y z) (set xs)\<close>
       
  8050   by auto 
       
  8051 
  8044 end
  8052 end
  8045 
  8053 
  8046 lemma list_all_iff [code_abbrev]:
  8054 lemma list_all_iff [code_abbrev]:
  8047   \<open>list_all P xs \<longleftrightarrow> Ball (set xs) P\<close>
  8055   \<open>list_all P xs \<longleftrightarrow> Ball (set xs) P\<close>
  8048   by (simp add: list.pred_set)
  8056   by (simp add: list.pred_set)