Bounded synthesis

Abstract

A fundamental challenge in the synthesis of reactive systems is the size of the search space: the number of candidate implementations of a temporal specification is typically superexponential or even, for distributed system architectures, infinite. In this article, we introduce the bounded synthesis approach, which makes it possible to traverse this immense search space in a structured manner. We fix a bound on a system parameter, such as the number of states, and limit the search to those implementations that fall below the bound. By incrementally expanding the search to larger bounds, we maintain completeness, while orienting the search towards the simplest (and often most useful) solutions. The technical backbone of this solution is a novel translation from formulas of linear-time temporal logic to sequences of safety tree automata, which are guaranteed to underapproximate the specification and to eventually become emptiness-equivalent. Bounded synthesis is applicable to the entire range of synthesis problems, from individual processes to synchronous and asynchronous distributed systems, to systems with additional design constraints, such as symmetry. We include experimental results from a SMT-based implementation, which demonstrate that bounded synthesis solves many synthesis problems that were previously considered intractable.

This is a preview of subscription content, log in to check access.

References

  1. 1

    Biere A., Cimatti A., Clarke E.M., Strichman O., Zhu Y.: Bounded model checking. Adv. Comput. 58, 118–149 (2003)

    Google Scholar 

  2. 2

    Copty, F., Fix, L., Giunchiglia, E., Kamhi, G., Tacchella, A., Vardi, M.: Benefits of bounded model checking at an industrial setting. In: Proceedings of 13th International Conference on Computer Aided Verification (CAV 2001), 18–22 July, Paris, France. Lecture Notes in Computer Science, pp. 436–453. Springer, Berlin (2001)

  3. 3

    Castellani, I., Mukund, M., Thiagarajan, P.S.: Synthesizing distributed transition systems from global specification. In: Proceedings of the 19th Conferenceon Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1999), 13–15 December, Chennai, India. Lecture Notes in Computer Science, vol. 1738, pp. 219–231. Springer, Berlin (1999)

  4. 4

    Dutertre B., de Moura L.M.: A fast linear-arithmetic solver for dpll(t). In: Ball, T., Jones, R.B. (eds.) CAV. Lecture Notes in Computer Science, vol. 4144, pp. 81–94. Springer, Berlin (2006)

    Google Scholar 

  5. 5

    Ehlers R.: Symbolic bounded synthesis. In: Touili, T., Cook, B., Jackson, P. (eds.) In: 22nd International Conference on Computer Aided Verification. LNCS, vol. 6174, pp. 365–379. Springer, Berlin (2010)

    Google Scholar 

  6. 6

    Ehlers, R.: Unbeast: Symbolic bounded synthesis. In: Proceedings of the 17th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS). Lecture Notes in Computer Science, vol. 6605, pp. 272–275. Springer, Berlin (2011)

  7. 7

    Filiot, E., Jin, N., Raskin, J.-F.: An antichain algorithm for LTL realizability. In: Proceedings of the 21st International Conference on Computer Aided Verification (CAV 2009), June 26–July 2, Grenoble, France, Lecture Notes in Computer Science, vol. 5643, pp. 263–277. Springer-Verlag (2009)

  8. 8

    Finkbeiner, B., Schewe, S.: Uniform distributed synthesis. In: Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science (LICS 2005), 26–29 June, Chicago, IL, USA, pp. 321–330. IEEE Computer Society Press, Los Alamitos (2005)

  9. 9

    Finkbeiner, B., Schewe, S.: SMT-based synthesis of distributed systems. In: Proceedings of the 2nd Workshop on Automated Formal Methods (AFM 2007), 6 November, Atlanta, Georgia, USA, pp. 69–76. ACM Press, New York (2007)

  10. 10

    Gu J., Purdom P.W., Franco J., Wah B.W.: Algorithms for the satisfiability (SAT) problem: a survey. In: Du, D.-Z., Gu, J., Pardalos, P. (eds.) Satisfiability Problem: Theory and applications. DIMACS Series in Discrete Mathematics and Theoretical Computer Science, pp. 19–152. American Mathematical Society, Washington (1997)

    Google Scholar 

  11. 11

    Kupferman, O., Vardi, M.Y.: Synthesizing distributed systems. In: Proceedings of the 16th Annual IEEE Symposium on Logic in Computer Science (LICS 2001), 16–19 June, Boston, MA, USA, pp. 389–398. IEEE Computer Society Press, Los Alamitos (2001)

  12. 12

    Kupferman, O., Vardi, M.Y.: Safraless decision procedures. In: Proceedings 46th IEEE Symposium on Foundations of Computer Science (FOCS 2005), 23–25 October, Pittsburgh, PA, USA, pp. 531–540 (2005)

  13. 13

    Lustig, Y., Vardi, M. Y.: Synthesis from component libraries. In: Proceedings of the Twelfth International Conference on Foundations of Software Science and Computation Structures (FoSSaCS 2009), 22–29 March, York, England, UK. Lecture Notes in Computer Science, vol. 5504, pp. 167–181. Springer, Berlin (2009)

  14. 14

    Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Proceedings of the 38th Design Automation Conference (DAC 2001), 18–22 June, Las Vegas, Nevada, USA, pp. 530–535. ACM Press, New York (2001)

  15. 15

    Muller D.E., Schupp P.E.: Simulating alternating tree automata by nondeterministic automata: new results and new proofs of the theorems of Rabin, McNaughton and Safra. Theor. Comput. Sci. 141(1-2), 69–107 (1995)

    MathSciNet  Article  MATH  Google Scholar 

  16. 16

    Madhusudan, P., Thiagarajan, P.S.: Distributed controller synthesis for local specifications. In: Proceedings of the 28th International Colloquium on Automata, Languages and Programming (ICALP 2001), 8–12 July, Crete, Greece. Lecture Notes in Computer Science, pp. 396–407. Springer, Berlin (2001)

  17. 17

    Madhusudan, P., Thiagarajan, P.S.: A decidable class of asynchronous distributed controllers. In: Proceedings of the 13th International Conference on Concurrency Theory (CONCUR 2002), 20–23 August, Brno, Czech Republic. Lecture Notes in Computer Science, vol. 2421, pp. 145–160. Springer, Berlin (2002)

  18. 18

    Piterman N.: From nondeterministic Büchi and Streett automata to deterministic parity automata. J. Log. Methods Comput. Sci. 3(3:5), 1–21 (2007)

    MathSciNet  Google Scholar 

  19. 19

    Pnueli, A.: The temporal logic of programs. In: Proceedings of FOCS, pp. 46–57. IEEE Computer Society Press, Los Alamitos (1977)

  20. 20

    Pnueli, A., Rosner, R.: On the synthesis of an asynchronous reactive module. In: Proceedings of the 16th International Colloquium on Automata, Languages and Programming (ICALP 1998), 11–15 July, Stresa, Italy. Lecture Notes in Computer Science, vol. 372, pp. 652–671. Springer, Berlin (1989)

  21. 21

    Pnueli, A., Rosner, R.: Distributed reactive systems are hard to synthesize. In Proceedings of the 31st Annual Symposium on Foundations of Computer Science (FOCS 1990), 22–24 October, St. Louis, Missouri, USA, pp. 746–757. IEEE Computer Society Press, Los Alamitos (1990)

  22. 22

    Rosner, R.: Modular Synthesis of Reactive Systems. PhD thesis, Weizmann Institute of Science, Rehovot, Israel (1992)

  23. 23

    Safra, S.: On the complexity of the ω-automata. In: Proceedings of the 29th Annual Symposium on Foundations of Computer Science (FOCS 1988), 24–26 October, White Plains, New York, USA, pp. 319–327. IEEE Computer Society Press, Los Alamitos (1988)

  24. 24

    Schewe, S.: Tighter bounds for the determinisation of Büchi automata. In: Proceedings of the Twelfth International Conference on Foundations of Software Science and Computation Structures (FoSSaCS 2009), 22–29 March, York, England, UK. Lecture Notes in Computer Science, vol. 5504, pp. 167–181. Springer, Berlin (2009)

  25. 25

    Schewe S.: Software synthesis is hard and simple. In: Bodik, R., Kupferman, O., SmithD.R. Yahav, E. (eds.) Software Synthesis. number 09501 in Dagstuhl Seminar Proceedings, Schloss Dagstuhl-Leibniz-Zentrum für Informatik, Germany (2010)

    Google Scholar 

  26. 26

    Schewe, S., Finkbeiner, B.: Synthesis of asynchronous systems. In: Proceedings of the 16th International Symposium on Logic-Based Program Synthesis and Transformation (LOPSTR 2006), 12–14 July, Venice, Italy. Lecture Notes in Computer Science, vol. 4407, pp. 127–142. Springer, Berlin (2006)

  27. 27

    Schewe, S., Finkbeiner, B.: Bounded synthesis. In: Proceedings of the 5th International Symposium on Automated Technology for Verification and Analysis (ATVA 2007), 22–25 October, Tokyo, Japan, Lecture Notes in Computer Science, vol. 4762, pp. 474–488. Springer, Berlin (2007)

  28. 28

    Schewe, S., Finkbeiner, B.: Distributed synthesis for alternating-time logics. In: Proceedings of the 5th International Symposium on Automated Technology for Verification and Analysis (ATVA 2007), 22–25 October, Tokyo, Japan. Lecture Notes in Computer Science, vol. 4762, pp. 268–283. Springer, Berlin (2007)

  29. 29

    Vardi, M.Y.: An automata-theoretic approach to fair realizability and synthesis. In: Proceedings of the 7th International Conference on Computer Aided Verification (CAV 1995), 3–5 July, Liege, Belgium. Lecture Notes in Computer Science, vol. 939, pp. 267–278. Springer, Berlin (1995)

  30. 30

    Walukiewicz, I., Mohalik, S.: Distributed games. In: Proceedings of the 23rd Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2003), 15–17 December, Bombay, Mumbai, India. Lecture Notes in Computer Science, vol. 2914, pp. 338–351. Springer, Berlin (2003)

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Bernd Finkbeiner.

Additional information

This work was partly supported by the German Research Foundation (DFG) as part of the Transregional Collaborative Research Center “Automatic Verification and Analysis of Complex Systems” (SFB/TR 14 AVACS) and by the Engineering and Physical Science Research Council (EPSRC) through grant EP/H046623/1 “Synthesis and Verification in Markov Game Structures”. It extends our work on bounded synthesis previously presented in [9,25,27].

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Finkbeiner, B., Schewe, S. Bounded synthesis. Int J Softw Tools Technol Transfer 15, 519–539 (2013). https://doi.org/10.1007/s10009-012-0228-z

Download citation

Keywords

  • LTL synthesis
  • Reactive systems
  • Infinite games
  • Co-Büchi automata
  • SMT-based synthesis
  • Synthesis of distributed systems