Theory DataRefinementIBP.Preliminaries
section ‹Preliminaries›
theory Preliminaries
imports Main LatticeProperties.Complete_Lattice_Prop
LatticeProperties.Conj_Disj
begin
notation
less_eq (infix ‹⊑› 50) and
less (infix ‹⊏› 50) and
inf (infixl ‹⊓› 70) and
sup (infixl ‹⊔› 65) and
top (‹⊤›) and
bot (‹⊥›) and
Inf (‹⨅_› [900] 900) and
Sup (‹⨆_› [900] 900)
subsection ‹Simplification Lemmas›
declare fun_upd_idem[simp]
lemma simp_eq_emptyset:
"(X = {}) = (∀ x. x ∉ X)"
by blast
lemma mono_comp: "mono f ⟹ mono g ⟹ mono (f o g)"
by (unfold mono_def) auto
text ‹Some lattice simplification rules›
lemma inf_bot_bot:
"(x::'a::{semilattice_inf,order_bot}) ⊓ ⊥ = ⊥"
apply (rule antisym)
by auto
end