equal
deleted
inserted
replaced
18 and member :: "'a \<Rightarrow> 'a set \<Rightarrow> bool" \<comment> "membership" |
18 and member :: "'a \<Rightarrow> 'a set \<Rightarrow> bool" \<comment> "membership" |
19 where mem_Collect_eq [iff, code_unfold]: "member a (Collect P) = P a" |
19 where mem_Collect_eq [iff, code_unfold]: "member a (Collect P) = P a" |
20 and Collect_mem_eq [simp]: "Collect (\<lambda>x. member x A) = A" |
20 and Collect_mem_eq [simp]: "Collect (\<lambda>x. member x A) = A" |
21 |
21 |
22 notation |
22 notation |
23 member (infix "\<in>" 50) |
23 member ("'(\<in>')") and |
|
24 member ("(_/ \<in> _)" [51, 51] 50) |
24 |
25 |
25 abbreviation not_member |
26 abbreviation not_member |
26 where "not_member x A \<equiv> \<not> (x \<in> A)" \<comment> "non-membership" |
27 where "not_member x A \<equiv> \<not> (x \<in> A)" \<comment> "non-membership" |
27 notation |
28 notation |
28 not_member (infix "\<notin>" 50) |
29 not_member ("'(\<notin>')") and |
|
30 not_member ("(_/ \<notin> _)" [51, 51] 50) |
29 |
31 |
30 notation (ASCII) |
32 notation (ASCII) |
31 member (infix ":" 50) and |
33 member ("'(:')") and |
32 not_member (infix "~:" 50) |
34 member ("(_/ : _)" [51, 51] 50) and |
|
35 not_member ("'(~:')") and |
|
36 not_member ("(_/ ~: _)" [51, 51] 50) |
33 |
37 |
34 |
38 |
35 text \<open>Set comprehensions\<close> |
39 text \<open>Set comprehensions\<close> |
36 |
40 |
37 syntax |
41 syntax |