src/HOL/SetInterval.thy
changeset 42901 e35cf2b25f48
parent 42891 e2f473671937
child 43156 04aaac80183f
equal deleted inserted replaced
42896:d96e53d0c638 42901:e35cf2b25f48
   266   using dense[of a b] by (cases "a < b") auto
   266   using dense[of a b] by (cases "a < b") auto
   267 
   267 
   268 lemma greaterThanLessThan_empty_iff2[simp]:
   268 lemma greaterThanLessThan_empty_iff2[simp]:
   269   "{} = { a <..< b } \<longleftrightarrow> b \<le> a"
   269   "{} = { a <..< b } \<longleftrightarrow> b \<le> a"
   270   using dense[of a b] by (cases "a < b") auto
   270   using dense[of a b] by (cases "a < b") auto
       
   271 
       
   272 lemma atLeastLessThan_subseteq_atLeastAtMost_iff:
       
   273   "{a ..< b} \<subseteq> { c .. d } \<longleftrightarrow> (a < b \<longrightarrow> c \<le> a \<and> b \<le> d)"
       
   274   using dense[of "max a d" "b"]
       
   275   by (force simp: subset_eq Ball_def not_less[symmetric])
       
   276 
       
   277 lemma greaterThanAtMost_subseteq_atLeastAtMost_iff:
       
   278   "{a <.. b} \<subseteq> { c .. d } \<longleftrightarrow> (a < b \<longrightarrow> c \<le> a \<and> b \<le> d)"
       
   279   using dense[of "a" "min c b"]
       
   280   by (force simp: subset_eq Ball_def not_less[symmetric])
       
   281 
       
   282 lemma greaterThanLessThan_subseteq_atLeastAtMost_iff:
       
   283   "{a <..< b} \<subseteq> { c .. d } \<longleftrightarrow> (a < b \<longrightarrow> c \<le> a \<and> b \<le> d)"
       
   284   using dense[of "a" "min c b"] dense[of "max a d" "b"]
       
   285   by (force simp: subset_eq Ball_def not_less[symmetric])
   271 
   286 
   272 end
   287 end
   273 
   288 
   274 lemma (in linorder) atLeastLessThan_subset_iff:
   289 lemma (in linorder) atLeastLessThan_subset_iff:
   275   "{a..<b} <= {c..<d} \<Longrightarrow> b <= a | c<=a & b<=d"
   290   "{a..<b} <= {c..<d} \<Longrightarrow> b <= a | c<=a & b<=d"