Using Model Checking to Solve Supervisor Synthesis Problems

Verification procedures, which check whether a given system satisfies a given specification, are nowadays mature for industrial usage. The more general supervisor synthesis problem asks how a system has to be restricted or which actions have to be selected such that the system satisfies a given specification. Supervisor synthesis problems are often formulated in frameworks like game structures that are more general than the Kripke structures that are traditionally used in verification. For this reason, current verification tools can not be used for supervisory control problems. In this paper, however, we present a reduction of alternating time μ-calculus model checking problems (on game structures) to model checking problems of the μ-calculus on Kripke structures. As a result, arbitrary model checkers can be used to solve supervisor synthesis problems. As a demonstration of the applicability of our approach, we show how the classical supervisory control problems of Ramadge and Wonham can be solved within our framework.

[1]  Thomas A. Henzinger,et al.  From verification to control: dynamic programs for omega-regular objectives , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[2]  Klaus Schneider,et al.  A generalized approach to supervisor synthesis , 2003, First ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2003. MEMOCODE '03. Proceedings..

[3]  P. Ramadge,et al.  Supervisory control of a class of discrete event processes , 1987 .

[4]  Thomas A. Henzinger,et al.  Alternating-time temporal logic , 2002, JACM.

[5]  J. Büchi Weak Second‐Order Arithmetic and Finite Automata , 1960 .

[6]  Thomas A. Henzinger,et al.  Alternating-time temporal logic , 1999 .

[7]  Dexter Kozen,et al.  RESULTS ON THE PROPOSITIONAL’p-CALCULUS , 2001 .

[8]  Dana Fisman,et al.  The Temporal Logic Sugar , 2001, CAV.

[9]  Klaus Schneider,et al.  Verification of Reactive Systems: Formal Methods and Algorithms , 2003 .

[10]  Edmund M. Clarke,et al.  Using Branching Time Temporal Logic to Synthesize Synchronization Skeletons , 1982, Sci. Comput. Program..

[11]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[12]  Orna Kupferman,et al.  Module Checking , 1996, Inf. Comput..

[13]  Klaus Schneider,et al.  Combining supervisor synthesis and model checking , 2005, TECS.