src/HOL/Complete_Lattices.thy
changeset 57448 159e45728ceb
parent 57197 4cf607675df8
child 58889 5b7a9633cfa8
equal deleted inserted replaced
57447:87429bdecad5 57448:159e45728ceb
   412   shows "A k \<squnion> (\<Squnion>i\<in>I. A i) = (\<Squnion>i\<in>I. A i)"
   412   shows "A k \<squnion> (\<Squnion>i\<in>I. A i) = (\<Squnion>i\<in>I. A i)"
   413 proof -
   413 proof -
   414   from assms obtain J where "I = insert k J" by blast
   414   from assms obtain J where "I = insert k J" by blast
   415   then show ?thesis by simp
   415   then show ?thesis by simp
   416 qed
   416 qed
       
   417 
       
   418 lemma INF_inf_const1:
       
   419   "I \<noteq> {} \<Longrightarrow> (INF i:I. inf x (f i)) = inf x (INF i:I. f i)"
       
   420   by (intro antisym INF_greatest inf_mono order_refl INF_lower)
       
   421      (auto intro: INF_lower2 le_infI2 intro!: INF_mono)
       
   422 
       
   423 lemma INF_inf_const2:
       
   424   "I \<noteq> {} \<Longrightarrow> (INF i:I. inf (f i) x) = inf (INF i:I. f i) x"
       
   425   using INF_inf_const1[of I x f] by (simp add: inf_commute)
   417 
   426 
   418 lemma INF_constant:
   427 lemma INF_constant:
   419   "(\<Sqinter>y\<in>A. c) = (if A = {} then \<top> else c)"
   428   "(\<Sqinter>y\<in>A. c) = (if A = {} then \<top> else c)"
   420   by simp
   429   by simp
   421 
   430