src/HOL/Big_Operators.thy
changeset 44845 5e51075cbd97
parent 42986 11fd8c04ea24
child 44890 22f665a2e91c
equal deleted inserted replaced
44844:f74a4175a3a8 44845:5e51075cbd97
  1515 lemma ab_semigroup_idem_mult_max:
  1515 lemma ab_semigroup_idem_mult_max:
  1516   "class.ab_semigroup_idem_mult max"
  1516   "class.ab_semigroup_idem_mult max"
  1517   proof qed (auto simp add: max_def)
  1517   proof qed (auto simp add: max_def)
  1518 
  1518 
  1519 lemma max_lattice:
  1519 lemma max_lattice:
  1520   "class.semilattice_inf (op \<ge>) (op >) max"
  1520   "class.semilattice_inf max (op \<ge>) (op >)"
  1521   by (fact min_max.dual_semilattice)
  1521   by (fact min_max.dual_semilattice)
  1522 
  1522 
  1523 lemma dual_max:
  1523 lemma dual_max:
  1524   "ord.max (op \<ge>) = min"
  1524   "ord.max (op \<ge>) = min"
  1525   by (auto simp add: ord.max_def_raw min_def fun_eq_iff)
  1525   by (auto simp add: ord.max_def_raw min_def fun_eq_iff)
  1609 
  1609 
  1610 lemma Max_ge [simp]:
  1610 lemma Max_ge [simp]:
  1611   assumes "finite A" and "x \<in> A"
  1611   assumes "finite A" and "x \<in> A"
  1612   shows "x \<le> Max A"
  1612   shows "x \<le> Max A"
  1613 proof -
  1613 proof -
  1614   interpret semilattice_inf "op \<ge>" "op >" max
  1614   interpret semilattice_inf max "op \<ge>" "op >"
  1615     by (rule max_lattice)
  1615     by (rule max_lattice)
  1616   from assms show ?thesis by (simp add: Max_def fold1_belowI)
  1616   from assms show ?thesis by (simp add: Max_def fold1_belowI)
  1617 qed
  1617 qed
  1618 
  1618 
  1619 lemma Min_ge_iff [simp, no_atp]:
  1619 lemma Min_ge_iff [simp, no_atp]:
  1623 
  1623 
  1624 lemma Max_le_iff [simp, no_atp]:
  1624 lemma Max_le_iff [simp, no_atp]:
  1625   assumes "finite A" and "A \<noteq> {}"
  1625   assumes "finite A" and "A \<noteq> {}"
  1626   shows "Max A \<le> x \<longleftrightarrow> (\<forall>a\<in>A. a \<le> x)"
  1626   shows "Max A \<le> x \<longleftrightarrow> (\<forall>a\<in>A. a \<le> x)"
  1627 proof -
  1627 proof -
  1628   interpret semilattice_inf "op \<ge>" "op >" max
  1628   interpret semilattice_inf max "op \<ge>" "op >"
  1629     by (rule max_lattice)
  1629     by (rule max_lattice)
  1630   from assms show ?thesis by (simp add: Max_def below_fold1_iff)
  1630   from assms show ?thesis by (simp add: Max_def below_fold1_iff)
  1631 qed
  1631 qed
  1632 
  1632 
  1633 lemma Min_gr_iff [simp, no_atp]:
  1633 lemma Min_gr_iff [simp, no_atp]: