Theory Simple_Network_Language
theory Simple_Network_Language
imports Main
Munta_Model_Checker.State_Networks
Munta_Model_Checker.UPPAAL_State_Networks_Impl
FinFun.FinFun
Simple_Expressions
Munta_Tagging
begin
section ‹Simple Networks of Automata With Broadcast Channels and Committed Locations›
no_notation top_assn ("true")
abbreviation concat_map where
"concat_map f xs ≡ concat (map f xs)"
type_synonym
('c, 't, 's) invassn = "'s ⇒ ('c, 't) cconstraint"
type_synonym
('a, 's, 'c, 't, 'x, 'v) transition =
"'s × ('x, 'v) bexp × ('c, 't) cconstraint × 'a × ('x, 'v) upd × 'c list × 's"
type_synonym
('a, 's, 'c, 't, 'x, 'v) sta =
"'s set × 's set × ('a, 's, 'c, 't, 'x, 'v) transition set × ('c, 't, 's) invassn"
type_synonym
('a, 's, 'c, 't, 'x, 'v) nta = "'a set × ('a act, 's, 'c, 't, 'x, 'v) sta list × ('x ⇀ 'v * 'v)"
context begin
qualified definition conv_t where "conv_t ≡ λ (l,b,g,a,f,r,l'). (l,b,conv_cc g,a,f,r,l')"
qualified definition conv_A where "conv_A ≡ λ (C, U, T, I). (C, U, conv_t ` T, conv_cc o I)"
definition conv where
"conv ≡ λ(broadcast, automata, bounds). (broadcast, map conv_A automata, bounds)"
end