An ACRE protocol a definition of how an interaction between two agents should occur. It does this by describing the messages that should be exchanged, so that it is possible to verify that the communication is being conducted as expected.

Whenever two agents engage in a series of communications that follow a protocol, this is known as aconversation.

A protocol consists of a number of states and a number of transitions. One of the states is marked as the start state, and all conversations that follow this protocol are in that state initially. At all times, a conversation has a state associated with it.

Transitions dictate how a conversation can change from state to state. Each transition must have a start state (that it can be activated from) and an end state (that the conversation will be in if the transition is triggered).

A conversation changes between states when messages are exchanged between the agents. Messages are matched against the active transitions (i.e. those that have the conversation’s current state as their start states).