Theory AWN
section "Terms of the Algebra for Wireless Networks"
theory AWN
imports Lib
begin
subsection "Sequential Processes"
type_synonym ip = nat
type_synonym data = nat
text ‹
Most of AWN is independent of the type of messages, but the closed layer turns
newpkt actions into the arrival of newpkt messages. We use a type class to maintain
some abstraction (and independence from the definition of particular protocols).
›
class msg =
fixes newpkt :: "data × ip ⇒ 'a"
and eq_newpkt :: "'a ⇒ bool"
assumes eq_newpkt_eq [simp]: "eq_newpkt (newpkt (d, i))"
text ‹
Sequential process terms abstract over the types of data states (@{typ 's}),
messages (@{typ 'm}), process names (@{typ 'p}),and labels (@{typ 'l}).
›