Kappa_site_graphs.SignatureSourceStore definitions of agents
type 'links site_sig = {internal_state : unit Kappa_data_structures.NamedDecls.t;links : 'links option;counter_info : counter_info option;If relevant: counter CEQ value * counter delta
*)}Store of one agent signature
num_of_internal_state site_id state_name signature
internal_state_of_site_id site_id value_id signature
Store of all the agents, s as a plural
val create :
counters_per_agent:
(string Kappa_data_structures.Loc.annoted
* string Kappa_data_structures.Loc.annoted list)
list ->
t Kappa_data_structures.NamedDecls.t ->
sval id_of_site :
string Kappa_data_structures.Loc.annoted ->
string Kappa_data_structures.Loc.annoted ->
s ->
intid_of_site agent_type site_name sigs
val id_of_internal_state :
string Kappa_data_structures.Loc.annoted ->
string Kappa_data_structures.Loc.annoted ->
string Kappa_data_structures.Loc.annoted ->
s ->
intid_of_internal_state agent_type site_name state_name sigs
internal_state_number agent_id site_id sigs
allowed_link ag1 s1 ag2 s2 sigs evaluates to true if and only if it is allowed to create a link between site s1 of agent ag1 and site s2 of agent ag2
If there are counters in the signature, we define a single agent as the * _counter agent_, which will be used as _dummies_ to keep track of the counter value
counter_agent agent_sigs
Suffix added to counter names to make an inverted counter name when needed for a <= test
Tests if a counter is a inverted counter, and should be hidden from the user
print_site_internal_state sigs agent_type site_id f state_id prints both the site and its internal state if it is not None.