  We propose Teamwork Synthesis, a version of the distributed synthesis problem
with application to teamwork multi-agent systems. We reformulate the
distributed synthesis question by dropping the fixed interaction architecture
among agents as input to the problem. Instead, our synthesis engine tries to
realise the goal given the initial specifications; otherwise it automatically
introduces minimal interactions among agents to ensure distribution. Thus,
teamwork synthesis mitigates a key difficulty in deciding algorithmically how
agents should interact so that each obtains the required information to fulfil
its goal. We show how to apply teamwork synthesis to provide a distributed
solution.
