equal
deleted
inserted
replaced
2767 fix S |
2767 fix S |
2768 assume "open S" and "x \<in> S" |
2768 assume "open S" and "x \<in> S" |
2769 then have "open (ereal -` S)" |
2769 then have "open (ereal -` S)" |
2770 unfolding open_ereal_def by auto |
2770 unfolding open_ereal_def by auto |
2771 with \<open>x \<in> S\<close> obtain r where "0 < r" and dist: "\<And>y. dist y rx < r \<Longrightarrow> ereal y \<in> S" |
2771 with \<open>x \<in> S\<close> obtain r where "0 < r" and dist: "\<And>y. dist y rx < r \<Longrightarrow> ereal y \<in> S" |
2772 unfolding open_real_def rx by auto |
2772 unfolding open_dist rx by auto |
2773 then obtain n where |
2773 then obtain n where |
2774 upper: "\<And>N. n \<le> N \<Longrightarrow> u N < x + ereal r" and |
2774 upper: "\<And>N. n \<le> N \<Longrightarrow> u N < x + ereal r" and |
2775 lower: "\<And>N. n \<le> N \<Longrightarrow> x < u N + ereal r" |
2775 lower: "\<And>N. n \<le> N \<Longrightarrow> x < u N + ereal r" |
2776 using assms(2)[of "ereal r"] by auto |
2776 using assms(2)[of "ereal r"] by auto |
2777 show "\<exists>N. \<forall>n\<ge>N. u n \<in> S" |
2777 show "\<exists>N. \<forall>n\<ge>N. u n \<in> S" |