src/HOL/Set_Interval.thy
changeset 51328 d63ec23c9125
parent 51152 b52cc015429a
child 51329 4a3c453f99a1
equal deleted inserted replaced
51327:62c033d7f3d8 51328:d63ec23c9125
   327 lemma atLeastLessThan_eq_iff:
   327 lemma atLeastLessThan_eq_iff:
   328   fixes a b c d :: "'a::linorder"
   328   fixes a b c d :: "'a::linorder"
   329   assumes "a < b" "c < d"
   329   assumes "a < b" "c < d"
   330   shows "{a ..< b} = {c ..< d} \<longleftrightarrow> a = c \<and> b = d"
   330   shows "{a ..< b} = {c ..< d} \<longleftrightarrow> a = c \<and> b = d"
   331   using atLeastLessThan_inj assms by auto
   331   using atLeastLessThan_inj assms by auto
       
   332 
       
   333 context complete_lattice
       
   334 begin
       
   335 
       
   336 lemma atLeast_eq_UNIV_iff: "{x..} = UNIV \<longleftrightarrow> x = bot"
       
   337   by (auto simp: set_eq_iff intro: le_bot)
       
   338 
       
   339 lemma atMost_eq_UNIV_iff: "{..x} = UNIV \<longleftrightarrow> x = top"
       
   340   by (auto simp: set_eq_iff intro: top_le)
       
   341 
       
   342 lemma atLeastAtMost_eq_UNIV_iff: "{x..y} = UNIV \<longleftrightarrow> (x = bot \<and> y = top)"
       
   343   by (auto simp: set_eq_iff intro: top_le le_bot)
       
   344 
       
   345 end
   332 
   346 
   333 subsubsection {* Intersection *}
   347 subsubsection {* Intersection *}
   334 
   348 
   335 context linorder
   349 context linorder
   336 begin
   350 begin