  Given the advances in reactive synthesis, it is a natural next step to
consider more complex multi-process systems. Distributed synthesis, however, is
not yet scalable. Compositional approaches can be a game changer. Here, the
challenge is to decompose a given specification of the global system behavior
into requirements on the individual processes. In this paper, we introduce a
compositional synthesis algorithm that, for each process, constructs, in
addition to the implementation, a certificate that captures the necessary
interface between the processes. The certificates then allow for constructing
separate requirements for the individual processes. By bounding the size of the
certificates, we can bias the synthesis procedure towards solutions that are
desirable in the sense that the assumptions between the processes are small.
Our experimental results show that our approach is much faster than standard
methods for distributed synthesis as long as reasonably small certificates
exist.
