Reactive systems are computer systems that maintain a continuous interaction with their environment. These include, for example, hardware circuits, communication protocols, or embedded controllers. Reactive synthesis is the task of constructing such systems automatically from logical specifications. Because synthesis eliminates the need for a manual implementation, it has the potential to revolutionize the development process for reactive systems. And indeed, synthesis has, over the past few years, found applications in several areas of systems engineering, notably in the construction of circuits and device drivers and in the synthesis of controllers for robots and manufacturing plants.
Rooted in automata theory and logic, reactive synthesis has been actively investigated since its inception by Alonzo Church more than fifty years ago. In the past decade the successful SYNTCOMP academic competition has been driving theoretical and practical progress. This has led to very efficient implementations of the existing techniques.
We believe that the next steps for reactive synthesis will require new insights, data structures, and approaches that may lead to considerable improvements. In this endeavor we will discuss the potential of neural-symbolic computation and more generally machine learning techniques, template-based solving in the context of constraint programming, symbolic algorithms, and connections to program synthesis and in particular Syntax Guided Synthesis
- Artificial Intelligence
- Formal Languages and Automata Theory
- Programming Languages
- Reactive synthesis
- program synthesis
- Temporal synthesis
- Program verification