Revisiting Synthesis of GR(1) Specifications

The last few years have seen a rising interest in the problem of synthesizing systems from temporal logic specifications. One major contributor to this is the recent work of Piterman et al., which showed how polynomial time synthesis could be achieved for a class of LTL specifications that is large enough and expressive enough to cover an extensive number of complex, real-world, applications (despite a known doubly-exponential time lower bound for general LTL formulae). That approach has already been used extensively for the synthesis of various applications and as basis for further theoretical work on synthesis. Here, we expose a fundamental flaw in the initial processing of specifications in that paper and demonstrate how it may produce incorrect results, declaring that specifications could not be synthesized when, in fact, they could. We then identify a class of specifications for which this initial processing is sound and complete. Thus, giving an insight to the reason that this problem arises in the first place. We also show that it can be easily checked whether specifications belong to the sound and complete class by using the same synthesis techniques. Finally, we show in the cases that specifications do not fall into this category how to modify them so that their processing is, indeed, both sound and complete.

[1]  Amir Pnueli,et al.  Bridging the gap between fair simulation and trace inclusion , 2005, Inf. Comput..

[2]  Wolfgang Thomas,et al.  Computation Tree Logic CTL* and Path Quantifiers in the Monadic Theory of the Binary Tree , 1987, ICALP.

[3]  A. Prasad Sistla,et al.  Deciding Full Branching Time Logic , 1985, Inf. Control..

[4]  Krishnendu Chatterjee,et al.  Environment Assumptions for Synthesis , 2008, CONCUR.

[5]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[6]  Ufuk Topcu,et al.  Receding horizon temporal logic planning for dynamical systems , 2009, Proceedings of the 48h IEEE Conference on Decision and Control (CDC) held jointly with 2009 28th Chinese Control Conference.

[7]  Hadas Kress-Gazit,et al.  From structured english to robot motion , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[8]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[9]  Amir Pnueli,et al.  On the Merits of Temporal Testers , 2008, 25 Years of Model Checking.

[10]  Thomas A. Henzinger,et al.  Synthesizing robust systems , 2009, FMCAD.

[11]  Ufuk Topcu,et al.  Automatic Synthesis of Robust Embedded Control Software , 2010, AAAI Spring Symposium: Embedded Reasoning.

[12]  M. Rabin Automata on Infinite Objects and Church's Problem , 1972 .

[13]  Rajeev Alur,et al.  Deterministic generators and games for LTL fragments , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[14]  Amir Pnueli,et al.  Specify, Compile, Run: Hardware from PSL , 2007, COCV@ETAPS.

[15]  Hadas Kress-Gazit,et al.  Valet parking without a valet , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[16]  Amir Pnueli,et al.  Controller Synthesis from LSC Requirements , 2009, FASE.

[17]  Amir Pnueli,et al.  Synthesis of Reactive(1) Designs , 2006, VMCAI.

[18]  Helmut Veith,et al.  25 Years of Model Checking - History, Achievements, Perspectives , 2008, 25 Years of Model Checking.

[19]  Hillel Kugler,et al.  Compositional Synthesis of Reactive Systems from Live Sequence Chart Specifications , 2009, TACAS.

[20]  Alonzo Church,et al.  Logic, arithmetic, and automata , 1962 .

[21]  J. R. Büchi,et al.  Solving sequential conditions by finite-state strategies , 1969 .

[22]  Amir Pnueli,et al.  Automatic Hardware Synthesis from Specifications: A Case Study , 2007 .

[23]  Thomas Wilke,et al.  Alternating tree automata, parity games, and modal {$\mu$}-calculus , 2001 .

[24]  Ufuk Topcu,et al.  Receding horizon control for temporal logic specifications , 2010, HSCC '10.

[25]  A. Pnueli,et al.  CONTROLLER SYNTHESIS FOR TIMED AUTOMATA , 2006 .

[26]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[27]  Joseph Y. Halpern,et al.  “Sometimes” and “not never” revisited: on branching versus linear time temporal logic , 1986, JACM.

[28]  Amir Pnueli,et al.  Synthesis of programs from temporal property specifications , 2009, 2009 7th IEEE/ACM International Conference on Formal Methods and Models for Co-Design.

[29]  Kavita Ravi,et al.  A Hybrid Algorithm for LTL Games , 2008, VMCAI.

[30]  Pierre Wolper,et al.  Synthesis of Communicating Processes from Temporal Logic Specifications , 1981, Logic of Programs.

[31]  Fabio Somenzi,et al.  Safety first: A two-stage algorithm for LTL games , 2009, 2009 Formal Methods in Computer-Aided Design.

[32]  Martín Abadi,et al.  The Existence of Refinement Mappings , 1988, LICS.

[33]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[34]  Joseph Sifakis,et al.  Controller Synthesis for Timed Automata 1 , 1998 .

[35]  Hadas Kress-Gazit,et al.  Where's Waldo? Sensor-Based Temporal Logic Motion Planning , 2007, Proceedings 2007 IEEE International Conference on Robotics and Automation.

[36]  Amir Pnueli,et al.  On the synthesis of a reactive module , 1989, POPL '89.

[37]  V. Rich Personal communication , 1989, Nature.

[38]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.