src/HOL/Library/ContNotDenum.thy
changeset 62083 7582b39f51ed
parent 61975 b4b11391c676
child 63040 eb4ddd18d635
equal deleted inserted replaced
62082:614ef6d7a6b6 62083:7582b39f51ed
   157   hence "\<exists>x. x \<in> {a<..<b} - A \<inter> {a<..<b}"
   157   hence "\<exists>x. x \<in> {a<..<b} - A \<inter> {a<..<b}"
   158     by (rule psubset_imp_ex_mem)
   158     by (rule psubset_imp_ex_mem)
   159   thus ?thesis by auto
   159   thus ?thesis by auto
   160 qed
   160 qed
   161 
   161 
       
   162 lemma open_minus_countable:
       
   163   fixes S A :: "real set" assumes "countable A" "S \<noteq> {}" "open S"
       
   164   shows "\<exists>x\<in>S. x \<notin> A"
       
   165 proof -
       
   166   obtain x where "x \<in> S"
       
   167     using \<open>S \<noteq> {}\<close> by auto
       
   168   then obtain e where "0 < e" "{y. dist y x < e} \<subseteq> S"
       
   169     using \<open>open S\<close> by (auto simp: open_dist subset_eq)
       
   170   moreover have "{y. dist y x < e} = {x - e <..< x + e}"
       
   171     by (auto simp: dist_real_def)
       
   172   ultimately have "uncountable (S - A)"
       
   173     using uncountable_open_interval[of "x - e" "x + e"] \<open>countable A\<close>
       
   174     by (intro uncountable_minus_countable) (auto dest: countable_subset)
       
   175   then show ?thesis
       
   176     unfolding uncountable_def by auto
       
   177 qed
       
   178 
   162 end
   179 end