equal
deleted
inserted
replaced
143 |
143 |
144 locale semilattice_neutr_order = semilattice_neutr + semilattice_order |
144 locale semilattice_neutr_order = semilattice_neutr + semilattice_order |
145 begin |
145 begin |
146 |
146 |
147 sublocale ordering_top less_eq less 1 |
147 sublocale ordering_top less_eq less 1 |
148 by default (simp add: order_iff) |
148 by standard (simp add: order_iff) |
149 |
149 |
150 end |
150 end |
151 |
151 |
152 notation times (infixl "*" 70) |
152 notation times (infixl "*" 70) |
153 notation Groups.one ("1") |
153 notation Groups.one ("1") |
281 show "a \<sqinter> a = a" |
281 show "a \<sqinter> a = a" |
282 by (rule antisym) (auto simp add: le_inf_iff) |
282 by (rule antisym) (auto simp add: le_inf_iff) |
283 qed |
283 qed |
284 |
284 |
285 sublocale inf!: semilattice_order inf less_eq less |
285 sublocale inf!: semilattice_order inf less_eq less |
286 by default (auto simp add: le_iff_inf less_le) |
286 by standard (auto simp add: le_iff_inf less_le) |
287 |
287 |
288 lemma inf_assoc: "(x \<sqinter> y) \<sqinter> z = x \<sqinter> (y \<sqinter> z)" |
288 lemma inf_assoc: "(x \<sqinter> y) \<sqinter> z = x \<sqinter> (y \<sqinter> z)" |
289 by (fact inf.assoc) |
289 by (fact inf.assoc) |
290 |
290 |
291 lemma inf_commute: "(x \<sqinter> y) = (y \<sqinter> x)" |
291 lemma inf_commute: "(x \<sqinter> y) = (y \<sqinter> x)" |
326 show "a \<squnion> a = a" |
326 show "a \<squnion> a = a" |
327 by (rule antisym) (auto simp add: le_sup_iff) |
327 by (rule antisym) (auto simp add: le_sup_iff) |
328 qed |
328 qed |
329 |
329 |
330 sublocale sup!: semilattice_order sup greater_eq greater |
330 sublocale sup!: semilattice_order sup greater_eq greater |
331 by default (auto simp add: le_iff_sup sup.commute less_le) |
331 by standard (auto simp add: le_iff_sup sup.commute less_le) |
332 |
332 |
333 lemma sup_assoc: "(x \<squnion> y) \<squnion> z = x \<squnion> (y \<squnion> z)" |
333 lemma sup_assoc: "(x \<squnion> y) \<squnion> z = x \<squnion> (y \<squnion> z)" |
334 by (fact sup.assoc) |
334 by (fact sup.assoc) |
335 |
335 |
336 lemma sup_commute: "(x \<squnion> y) = (y \<squnion> x)" |
336 lemma sup_commute: "(x \<squnion> y) = (y \<squnion> x)" |
715 context linorder |
715 context linorder |
716 begin |
716 begin |
717 |
717 |
718 sublocale min!: semilattice_order min less_eq less |
718 sublocale min!: semilattice_order min less_eq less |
719 + max!: semilattice_order max greater_eq greater |
719 + max!: semilattice_order max greater_eq greater |
720 by default (auto simp add: min_def max_def) |
720 by standard (auto simp add: min_def max_def) |
721 |
721 |
722 lemma min_le_iff_disj: |
722 lemma min_le_iff_disj: |
723 "min x y \<le> z \<longleftrightarrow> x \<le> z \<or> y \<le> z" |
723 "min x y \<le> z \<longleftrightarrow> x \<le> z \<or> y \<le> z" |
724 unfolding min_def using linear by (auto intro: order_trans) |
724 unfolding min_def using linear by (auto intro: order_trans) |
725 |
725 |