equal
deleted
inserted
replaced
691 lemma inf_compl_bot_right [simp]: "inf x (inf y (- x)) = bot" |
691 lemma inf_compl_bot_right [simp]: "inf x (inf y (- x)) = bot" |
692 by (subst inf_left_commute) simp |
692 by (subst inf_left_commute) simp |
693 |
693 |
694 end |
694 end |
695 |
695 |
|
696 locale boolean_algebra_cancel |
|
697 begin |
|
698 |
|
699 lemma sup1: "(A::'a::semilattice_sup) \<equiv> sup k a \<Longrightarrow> sup A b \<equiv> sup k (sup a b)" |
|
700 by (simp only: ac_simps) |
|
701 |
|
702 lemma sup2: "(B::'a::semilattice_sup) \<equiv> sup k b \<Longrightarrow> sup a B \<equiv> sup k (sup a b)" |
|
703 by (simp only: ac_simps) |
|
704 |
|
705 lemma sup0: "(a::'a::bounded_semilattice_sup_bot) \<equiv> sup a bot" |
|
706 by simp |
|
707 |
|
708 lemma inf1: "(A::'a::semilattice_inf) \<equiv> inf k a \<Longrightarrow> inf A b \<equiv> inf k (inf a b)" |
|
709 by (simp only: ac_simps) |
|
710 |
|
711 lemma inf2: "(B::'a::semilattice_inf) \<equiv> inf k b \<Longrightarrow> inf a B \<equiv> inf k (inf a b)" |
|
712 by (simp only: ac_simps) |
|
713 |
|
714 lemma inf0: "(a::'a::bounded_semilattice_inf_top) \<equiv> inf a top" |
|
715 by simp |
|
716 |
|
717 end |
|
718 |
696 ML_file \<open>Tools/boolean_algebra_cancel.ML\<close> |
719 ML_file \<open>Tools/boolean_algebra_cancel.ML\<close> |
697 |
720 |
698 simproc_setup boolean_algebra_cancel_sup ("sup a b::'a::boolean_algebra") = |
721 simproc_setup boolean_algebra_cancel_sup ("sup a b::'a::boolean_algebra") = |
699 \<open>fn phi => fn ss => try Boolean_Algebra_Cancel.cancel_sup_conv\<close> |
722 \<open>fn phi => fn ss => try Boolean_Algebra_Cancel.cancel_sup_conv\<close> |
700 |
723 |