  A question we can ask of multi-agent systems is whether the agents'
collective interaction satisfies particular goals or specifications, which can
be either individual or collective. When a collaborative goal is not reached,
or a specification is violated, a pertinent question is whether any agent is to
blame. This paper considers a two-agent synchronous setting and a formal
language to specify when agents' collaboration is required. We take a deontic
approach and use obligations, permissions, and prohibitions to capture notions
of non-interference between agents. We also handle reparations, allowing
violations to be corrected or compensated. We give trace semantics to our
logic, and use it to define blame assignment for violations. We give an
automaton construction for the logic, which we use as the base for model
checking and blame analysis. We also further provide quantitative semantics
that is able to compare different interactions in terms of the required
reparations.
