Theory SyntaxN
chapter‹Syntax of Terms and Formulas using Nominal Logic›
theory SyntaxN
imports Nominal2.Nominal2 HereditarilyFinite.OrdArith
begin
section‹Terms and Formulas›
subsection‹Hf is a pure permutation type›
instantiation hf :: pt
begin
definition "p ∙ (s::hf) = s"
instance
by standard (simp_all add: permute_hf_def)
end
instance hf :: pure
proof qed (rule permute_hf_def)
atom_decl name
declare fresh_set_empty [simp]
lemma supp_name [simp]: fixes i::name shows "supp i = {atom i}"
by (rule supp_at_base)
subsection‹The datatypes›