Next: Active Teams Up: Generalizations Previous: Generalizations

Active Agents

Alter definition 6.2 as follows: Require that Fun(A) contains an additional unary relation name Active and that only agents satisfying the relation Active (active agents) can make moves. This is essentially a generalization; the original definition can be seen as a special case where all agents are active.

The new definition may be convenient, for example, when the initial state specifies all agents and their programs, and these agents are activated and deactivated during the evolution.

The same convenience can be achieved without altering the original definition. (This may be useful, for example, if you want to prove something about all distributed ealgebras and wish to restrict attention to the basic definition without losing generality.) Here is one way to do that. In order to indicate the program of a potential agent without making it an actual agent, use an auxiliary unary function name Mod'. Active(t) can be viewed as an abbreviation for Mod(t) = Mod'(t) except if Active is the subject of an update instruction.

Active(t) := t0

can be viewed as an abbreviation for

if t0 then Mod(t) := Mod'(t)
else Mod(t) := undef
endif


huggins@acm.org
Thu Mar 23 17:30:35 EST 1995