Approaches to Reactive System Synthesis J.-H. Roland Jiang
Road Map
Functional Synthesis First-order specification x y. (x,y) Find program p(x) such that x. (x,p(x)) Extract programs from proofs
Road Map
Reactive Synthesis Characterized by sequential behavior Specification is temporal
Closed System Synthesis x y. (x,y) Construct two components C 1 and C 2 which can modify x and y, respectively, such that the running values of x and y satisfy (x,y)
Open System Synthesis x y. (x,y) C 1, which modifies x, represents the environment over which the implementor has no control, while C 2, which modifies y, is the body of the system itself Find f(x) such that x. (x, f(x))
Church’s Problem [Church 62] Summary of early digital synthesis and verification Specification C (X: I , Y: J ) in “restricted recursive arithmetic” Find operator f: I J such that X. C (X, f(X)) is valid Requirements 1. f may not depend on the future 2. f may not depend on the far past
Solution 1: Tree Automata x y. (x, y) X-player chooses branch; Y-player chooses labeling Realizability = Non-emptiness Extract deterministic transducer from model Complexity: 2EXPTIME
Specification Tree Automata
Solution 2: Game Automata Infinite games played on finite graphs G = (Q 0, Q 1, E 0, E 1, , ) Specification (Q 0 Q 1 ) Sequential games Borel games All Borel games are determined
Specification Game
Solution 3: Control Synthesis Discrete event system P : controllable actions Qsystem states q 0 initial state P : Q 2 Q transition function L: Q 2 Prop state labeling Find controller C = M, m 0, C : M M such that C P ²
Specification Controller
Inter-reductions Tree automaton game Game controller Controller tree automaton
Tree Automaton Game
Game Controller
Controller Tree Automaton
Implementability Problem Prior formulations mainly focused on the implementability problem Asks if there exists a solution Largest solution in language equation vs. most permissive strategy in game Most permissive strategy only exist for safety games A strategy is permissive if it allows all the behaviors of all memoryless winning strategies in the game For every game there is a permissive strategy with finite memory Support design refinement
Supervisory Control Synthesis Controllability = c u Controllable events can be disabled at any time; uncontrollable events are always enabled Observability Partial observation can be see as a projection : { o } Natural projection ( o ) Signal hiding [Kupferman Vardi 97]
Wining Strategies and Controller Synthesis Most permissive strategies Exist only for safety games
Control of Synchronous Systems [de Alfaro Henzinger Mang 00] Non-blocking Every state should have at least one successor state Typing Prevents combinational loops
Research Directions Language equation solving with general partial observations Connection between S 1 S 2 and X 1 X 2 (for the same F) Game formulation of the unknown component problem Connection between permissive strategies in games and largest solutions in language equations
References J. Bernet, D. Janin and I. Walukiewicz. Permissive strategies: from parity games to safety games. RAIRO, N. Bjorner. A survey of reactive synthesis. Slides for DIMACS, L. de Alfaro, T. Henzinger and F. Mang. The control of synchronous systems. In Proc. CONCUR, O. Kupferman and M. Vardi. Synthesis with incomplete information. In Proc. Int’l Conf. Temporal Logic, A. Pnueli and R. Rosner. On the synthesis of a reactive module. In Proc. POPL, P. Ramadge, W. Wonham. A control of discrete event systems. Proceedings of the IEEE, 1989.