Output-Sensitive Algorithms for Reactive Synthesis (OSARES)


The goal of the OSARES project is the automatic synthesis of distributed embedded systems — that is, the construction of computer programs for such systems by a computer without the help of a human programmer.

The project is funded by the European Research Council for five years, from 2016 to 2021, as an ERC Consolidator Grant.


Distributed embedded systems have started to transform the role of computing technology in all sectors of our society. Applications include transport systems, building technology, energy management, health care, infrastructure, and environmental protection. These applications constitute a disruptive technology with the potential of vast savings in terms of energy, environmental pollution, and implementation costs. The flipside of these benefits is the potential for significant economical and possibly even life-threatening damage that could be caused if a distributed system fails to function as intended. Designing distributed systems that are safe, stable, and robust is difficult, because local design decisions may have global consequences, and many objectives can only be realized when multiple components cooperate.

Reactive synthesis has the potential to revolutionize the development of distributed embedded systems. From a given logical specification, the synthesis algorithm automatically constructs an implementation that is correct-by-design. This allows the developer to focus on “what” the system should do instead of “how” it should be done. Because synthesis analyzes objectives, not implementations, it can be applied at an early design stage, long before the system has been implemented. The goal of OSARES is to develop output-sensitive synthesis algorithms. In addition to optimal performance in the size of the specification, such algorithms also perform optimally in the size and structural complexity of the implementation. We aim for the principled analysis of the dependencies of different metrics on the complexity of the problem, as well as for improving the state of the art in practical synthesis. This entails work on both the theoretical level and on symbolic search algorithms, such as constraint solvers. We develop output-sensitive synthesis algorithms for the general classes of (control-dominated) discrete, real-time, and distributed reactive systems. Benchmarks for our new algorithms come from classic application areas like hardware synthesis, and from new and much more challenging application areas like distributed control and coordination, which are far beyond the reach of the currently available synthesis algorithms.

OSARES in the News

News reports about OSARES appeared in Saarbrücker Zeitung, c’t magazin für computer technik (pdf), and SR Aktueller Bericht (video starts at 11:30).

Open Positions

Currently there are several open PhD student positions and one open postdoc position. If you are interested, contact Bernd Finkbeiner. Candidates for PhD student positions should additionally submit an application to the Saarbrücken Graduate School of Computer Science (mention your interest in OSARES).

Publications