Abstract
This paper presents a method for synthesizing a reactive program to coordinate the actions of a group of other reactive programs so that the combined system satisfies a temporal specification of its desired long-term behavior. Traditionally, reactive synthesis has been applied to the construction of a stateful hardware circuit. This work is motivated by applications to other domains, such as the IoT (the Internet of Things) and robotics, where it is necessary to coordinate the actions of multiple sensors, devices, and robots to carry out a task. The mathematical model represents each agent as a process in Hoare’s CSP model. Given a network of interacting agents, called an environment, and a temporal specification of long-term behavior, the synthesis method constructs a coordinator process (if one exists) that guides the actions of the environment agents so that the combined system is deadlock-free and satisfies the given specification. The main technical challenge is that a coordinator may have only partial information of the environment state, due to non-determinism within the environment and internal environment actions that are hidden from the coordinator. This is the first method to handle both sources of partial information and to do so for arbitrary linear temporal logic specifications. It is established that the coordination synthesis problem is PSPACE-hard in the size of the environment. A prototype implementation is able to synthesize compact solutions for a number of coordination problems.
Supplemental Material
- Rajeev Alur, Salar Moarref, and Ufuk Topcu. 2016. Compositional synthesis of reactive controllers for multi-agent systems. In Proc. of CAV. Springer, 251–269.Google Scholar
- Tomás Babiak, Mojmír Kretínský, Vojtech Rehák, and Jan Strejcek. 2012. LTL to Büchi Automata Translation: Fast and More Deterministic. In Proc. of TACAS. 95–109.Google Scholar
Digital Library
- Suguman Bansal, Kedar S. Namjoshi, and Yaniv Sa’ar. 2018. Synthesis of Asynchronous Reactive Programs from Temporal Specifications. In Proc. of CAV. 367–385.Google Scholar
Cross Ref
- Suguman Bansal, Kedar S. Namjoshi, and Yaniv Sa’ar. 2019. Synthesis of Coordination Programs from Linear Temporal Specifications. arXiv: 1911.03807Google Scholar
- Nikola Benes, Benoît Delahaye, Uli Fahrenberg, Jan Kretínský, and Axel Legay. 2013. Hennessy-Milner Logic with Greatest Fixed Points as a Complete Behavioural Specification Theory. In Proc. of CONCUR. 76–90.Google Scholar
- Daniela Berardi, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, and Massimo Mecella. 2003. Automatic Composition of E-services That Export Their Behavior. In In proceedings of ICSOC. 43–58.Google Scholar
- Roderick Bloem, Barbara Jobstmann, Nir Piterman, Amir Pnueli, and Yaniv Sa’ar. 2012. Synthesis of Reactive(1) designs. J. Comput. System Sci. 78, 3 (2012), 911–938.Google Scholar
Digital Library
- Aaron Bohy, Véronique Bruyère, Emmanuel Filiot, Naiyong Jin, and Jean-François Raskin. 2012. Acacia+, a Tool for LTL Synthesis. In Proc. of CAV. 652–657.Google Scholar
Digital Library
- Randal E. Bryant. 1986. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Trans. Computers 35, 8 (1986), 677–691.Google Scholar
Digital Library
- J. Richard Büchi and L.H. Landweber. 1969. Solving sequential conditions by finite-state strategies. Trans. Amer. Math. Soc. 138 (1969), 367–378.Google Scholar
- Alonzo Church. 1957. Applications of recursive arithmetic to the problem of circuit synthesis. In Summaries of the Summer Institute of Symbolic Logic. Vol. I. Cornell Univ., Ithaca, N.Y., 3–50.Google Scholar
- Alonzo Church. 1963. Logic, arithmetic, and automata. In Proc. Int. Congr. Math. 1962. Inst. Mittag-Leffler, Djursholm, Sweden, 23–35.Google Scholar
- Daniel Ciolek, Víctor A. Braberman, Nicolás D’Ippolito, Nir Piterman, and Sebastián Uchitel. 2017. Interaction Models and Automated Control under Partial Observable Environments. IEEE Trans. Software Eng. 43, 1 (2017), 19–33.Google Scholar
Digital Library
- Nicolás D’Ippolito, Victor Braberman, Nir Piterman, and Sebastián Uchitel. 2013. Synthesizing nonanomalous event-based controllers for liveness goals. Transactions on Software Engineering and Methodology 22, 1 (2013), 9.Google Scholar
Digital Library
- Alexandre Duret-Lutz, Alexandre Lewkowicz, Amaury Fauchille, Thibaud Michaud, Etienne Renault, and Laurent Xu. 2016. Spot 2.0 - A Framework for LTL and \omega -Automata Manipulation. In Proc. of ATVA. 122–129.Google Scholar
Cross Ref
- Rüdiger Ehlers. 2010. Symbolic Bounded Synthesis. In Proc. of CAV. 365–379.Google Scholar
Digital Library
- Rüdiger Ehlers. 2011. Unbeast: Symbolic Bounded Synthesis. In Proc. of TACAS. 272–275.Google Scholar
Cross Ref
- E Allen Emerson and Edmund M Clarke. 1982. Using branching time temporal logic to synthesize synchronization skeletons. Science of Computer Programming 2, 3 (1982), 241–266.Google Scholar
Cross Ref
- Peter Faymonville, Bernd Finkbeiner, Markus N. Rabe, and Leander Tentrup. 2017b. Encodings of Bounded Synthesis. In Proc. of TACAS. 354–370.Google Scholar
Digital Library
- Peter Faymonville, Bernd Finkbeiner, and Leander Tentrup. 2017a. BoSy: An Experimentation Framework for Bounded Synthesis. In Proc. of CAV. 325–332.Google Scholar
Cross Ref
- Emmanuel Filiot, Naiyong Jin, and Jean-François Raskin. 2009. An Antichain Algorithm for LTL Realizability. In Proc. of CAV. 263–277.Google Scholar
Digital Library
- Emmanuel Filiot, Naiyong Jin, and Jean-François Raskin. 2010. Compositional Algorithms for LTL Synthesis. In Proc. of ATVA. 112–127.Google Scholar
Cross Ref
- Bernd Finkbeiner and Sven Schewe. 2013. Bounded synthesis. STTT 15, 5-6 (2013), 519–539.Google Scholar
Digital Library
- Nissim Francez. 1986. Fairness. Springer.Google Scholar
- Thomas Gibson-Robinson, Philip J. Armstrong, Alexandre Boulgakov, and A. W. Roscoe. 2014. FDR3 — A Modern Refinement Checker for CSP. In Proc. of TACAS. 187–201.Google Scholar
- William R. Harris and Sumit Gulwani. 2011. Spreadsheet table transformations from examples. In Symposium on Principles of Programming Languages (POPL), Vol. 46. 317–328.Google Scholar
- C. A. R. Hoare. 1978. Communicating Sequential Processes. Commun. ACM 21, 8 (1978), 666–677.Google Scholar
Digital Library
- C. A. R. Hoare. 1985. Communicating Sequential Processes. Prentice-Hall.Google Scholar
Digital Library
- Barbara Jobstmann and Roderick. 2006. Optimizations for LTL Synthesis. In Proc. of FMCAD. 117–124.Google Scholar
Digital Library
- Uri Klein, Nir Piterman, and Amir Pnueli. 2012. Effective Synthesis of Asynchronous Systems from GR(1) Specifications.. In International Conference on VMCAI. Springer, 283–298.Google Scholar
Digital Library
- Hadas Kress-Gazit and George J Pappas. 2010. Automatic synthesis of robot controllers for tasks with locative prepositions. In International Conference on Robotics and Automation (ICRA). IEEE, 3215–3220.Google Scholar
Cross Ref
- Orna Kupferman and Moshe Y Vardi. 2005. Safraless decision procedures. In Proc. of FOCS. IEEE, IEEE, 531–540.Google Scholar
Digital Library
- Kim Guldstrand Larsen and Xinxin Liu. 1990. Equation Solving Using Modal Transition Systems. In Proc. of LICS.Google Scholar
Cross Ref
- Kim Guldstrand Larsen and Bent Thomsen. 1988. A Modal Process Logic. In Proc. of LICS. 203–210.Google Scholar
Cross Ref
- Jun Liu, Necmiye Ozay, Ufuk Topcu, and Richard M. Murray. 2013. Synthesis of Reactive Switching Protocols From Temporal Logic Specifications. IEEE Trans. Automat. Contr. 58, 7 (2013), 1771–1785.Google Scholar
Cross Ref
- Yoad Lustig and Moshe Y. Vardi. 2009. Synthesis from Component Libraries. In Proc. of FOSSACS. 395–409.Google Scholar
- P. Madhusudan. 2001. CONTROL AND SYNTHESIS OF OPEN REACTIVE SYSTEMS. Ph.D. Dissertation. Institute of Mathematical Sciences, University of Madras.Google Scholar
- Zohar Manna and Amir Pnueli. 1987. Specification and Verification of Concurrent Programs By Forall-Automata. In Prof. of POPL. 1–12.Google Scholar
- Zohar Manna and Pierre Wolper. 1981. Synthesis of Communicating Processes from Temporal Logic Specifications. In Logics of Programs, Workshop. 253–281.Google Scholar
- Shahar Maoz and Yaniv Sa’ar. 2011. AspectLTL: an aspect language for LTL specifications. In In Proc. of the AOSD. 19–30.Google Scholar
Digital Library
- Shahar Maoz and Yaniv Sa’ar. 2012. Assume-Guarantee Scenarios: Semantics and Synthesis. In Proc. of MODELS. 335–351.Google Scholar
Digital Library
- S. Moarref and H. Kress-Gazit. 2018. Reactive Synthesis for Robotic Swarms. Formal Modeling and Analysis of Timed Systems, 71–87.Google Scholar
- Nir Piterman, Amir Pnueli, and Yaniv Sa’ar. 2006. Synthesis of reactive (1) designs. In International Conference on VMCAI, Vol. 3855. Springer, Springer, 364–380.Google Scholar
- Amir Pnueli. 1977. The temporal logic of programs. In Proc. of FOCS. IEEE, IEEE, 46–57.Google Scholar
Digital Library
- Amir Pnueli and Roni Rosner. 1989a. On the Synthesis of a Reactive Module. In Prof. of POPL. 179–190.Google Scholar
- Amir Pnueli and Roni Rosner. 1989b. On the synthesis of an asynchronous reactive module. Automata, Languages and Programming (1989), 652–671.Google Scholar
- Amir Pnueli, Yaniv Sa’ar, and Lenore D. Zuck. 2010. JTLV: A Framework for Developing Verification Algorithms. In Proc. of CAV. 171–174.Google Scholar
- M.O. Rabin. 1969. Decidability of second-order theories and automata on infinite trees. Trans. Amer. Math. Soc. 141 (1969), 1–35.Google Scholar
- P.J.G. Ramadge and W.M. Wonham. 1989. The control of discrete event systems. IEEE Transactions on Control Theory 98 (1989).Google Scholar
- Jean-François Raskin, Krishnendu Chatterjee, Laurent Doyen, and Thomas A. Henzinger. 2007. Algorithms for OmegaRegular Games with Imperfect Information. Logical Methods in Computer Science 3, 3 (2007).Google Scholar
- John H. Reif. 1984. The Complexity of Two-Player Games of Incomplete Information. J. Comput. Syst. Sci. 29, 2 (1984), 274–301.Google Scholar
Cross Ref
- A. W. Roscoe. 1997. The Theory and Practice of Concurrency. Prentice Hall PTR, Upper Saddle River, NJ, USA.Google Scholar
Digital Library
- Sven Schewe and Bernd Finkbeiner. 2006. Synthesis of Asynchronous Systems. In Proc. of LOPSTR. 127–142.Google Scholar
- Sven Schewe and Bernd Finkbeiner. 2007. Bounded synthesis. Proc. of ATVA (2007), 474–488.Google Scholar
Digital Library
- Armando Solar-Lezama, Liviu Tancau, Rastislav Bodik, Sanjit Seshia, and Vijay Saraswat. 2006. Combinatorial sketching for finite programs. Proc. of (ASPLOS) 34, 5 (2006), 404–415.Google Scholar
- Mate Soos, Karsten Nohl, and Claude Castelluccia. 2009. Extending SAT Solvers to Cryptographic Problems. In International Conference on SAT. 244–257.Google Scholar
Digital Library
- Wolfgang Thomas. 2009. Facets of Synthesis: Revisiting Church’s Problem. In Proc. of FOSSACS. 1–14.Google Scholar
Cross Ref
- Pierre Wolper. 1982. Specification and Synthesis of Communicating Processes using an Extended Temporal Logic. In Prof. of POPL. 20–33.Google Scholar
- Howard Wong-Toi and David L. Dill. 1990. Synthesizing Processes and Schedulers from Temporal Specifications. In Proc. of CAV. 272–281.Google Scholar
Index Terms
Synthesis of coordination programs from linear temporal specifications
Recommendations
Synthesis of AMBA AHB from formal specification: a case study
The standard hardware design flow involves: (a) design of an integrated circuit using a hardware description language, (b) extensive functional and formal verification, and (c) logical synthesis. However, the above-mentioned processes consume ...
Specify, Compile, Run: Hardware from PSL
We propose to use a formal specification language as a high-level hardware description language. Formal languages allow for compact, unambiguous representations and yield designs that are correct by construction. The idea of automatic synthesis from ...
A transformation-based synthesis of temporal specifications
AbstractThis paper is concerned with specifications expressed in propositional temporal logic with finite past extension. The variables of the specifications are partitioned into input variables, the value of which is determined by the environment, output ...






Comments