Theory Iptables_Semantics

theory Iptables_Semantics
imports Semantics_Embeddings "Semantics_Ternary/Normalized_Matches"
begin

section‹Normalizing Rulesets in the Boolean Big Step Semantics›
corollary normalize_rules_dnf_correct_BooleanSemantics: 
  assumes "good_ruleset rs"
  shows "Γ,γ,p normalize_rules_dnf rs, s  t  Γ,γ,p rs, s  t"
proof -
  from assms have assm': "good_ruleset (normalize_rules_dnf rs)" by (metis good_ruleset_normalize_rules_dnf) 
  from normalize_rules_dnf_correct assms good_imp_wf_ruleset have
    "β α. approximating_bigstep_fun (β,α) p (normalize_rules_dnf rs) s = approximating_bigstep_fun (β,α) p rs s" by fast
  hence 
    "α. approximating_bigstep_fun (βmagic γ,α) p (normalize_rules_dnf rs) s = approximating_bigstep_fun (βmagic γ,α) p rs s" by fast
  with βmagic_approximating_bigstep_fun_iff_iptables_bigstep assms assm' show ?thesis
  by metis
qed

end