Constrained Synthesis from Component Libraries

  • Antonio IannopolloEmail author
  • Stavros Tripakis
  • Alberto Sangiovanni-Vincentelli
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10231)


Synthesis from component libraries is the problem of building a network of components from a given library, such that the network realizes a given specification. This problem is undecidable in general. It becomes decidable if we impose a bound on the number of chosen components. However, the bounded problem remains computationally hard and brute-force approaches do not scale. In this paper we study scalable methods for solving the problem of bounded synthesis from libraries, proposing a solution based on the CounterExample-Guided Inductive Synthesis paradigm. Although our synthesis algorithm does not assume a specific formalism a priori, we present a parallel implementation which instantiates components defined as Linear Temporal Logic-based Assume/Guarantee Contracts. We show the potential of our approach and evaluate our implementation by applying it to an industrial case study.


  1. 1.
    Semiconductor IP Market by Form Factor (ICs IP, SOCs IP), Design Architecture (IP cores (Hard IP, Soft IP), Standard IP, Custom IP, Processor Design), Processor Type (Microprocessor, DSP), Verification IP - Global forecast to 2022. (2016)Google Scholar
  2. 2.
    de Alfaro, L., Henzinger, T.A.: Interface automata. In: Proceedings of the 8th European Software Engineering Conference Held Jointly with 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering, ESEC/FSE-9, pp. 109–120. ACM, New York (2001)Google Scholar
  3. 3.
    Alur, R., Moarref, S., Topcu, U.: Compositional synthesis with parametric reactive controllers. In: Proceedings of the 19th International Conference on Hybrid Systems: Computation and Control, HSCC 2016, pp. 215–224. ACM, New York (2016)Google Scholar
  4. 4.
    Benveniste, A., Caillaud, B., Ferrari, A., Mangeruca, L., Passerone, R., Sofronis, C.: Multiple viewpoint contract-based specification and design. In: Boer, F.S., Bonsangue, M.M., Graf, S., Roever, W.-P. (eds.) FMCO 2007. LNCS, vol. 5382, pp. 200–225. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-92188-2_9 CrossRefGoogle Scholar
  5. 5.
    Cavada, R., Cimatti, A., Dorigatti, M., Griggio, A., Mariotti, A., Micheli, A., Mover, S., Roveri, M., Tonetta, S.: The nuXmv symbolic model checker. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 334–342. Springer, Cham (2014). doi: 10.1007/978-3-319-08867-9_22 Google Scholar
  6. 6.
    Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 154–169. Springer, Heidelberg (2000). doi: 10.1007/10722167_15 CrossRefGoogle Scholar
  7. 7.
    de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-78800-3_24 CrossRefGoogle Scholar
  8. 8.
    Gulwani, S., Jha, S., Tiwari, A., Venkatesan, R.: Synthesis of loop-free programs. In: Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2011, pp. 62–73. ACM, New York (2011)Google Scholar
  9. 9.
    Iannopollo, A., Nuzzo, P., Tripakis, S., Sangiovanni-Vincentelli, A.: Library-based scalable refinement checking for contract-based design. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), pp. 1–6, March 2014Google Scholar
  10. 10.
    Jha, S., Seshia, S.A.: A theory of formal synthesis via inductive learning. CoRR abs/1505.03953 (2015)Google Scholar
  11. 11.
    Lustig, Y., Vardi, M.Y.: Synthesis from component libraries. In: Alfaro, L. (ed.) FoSSaCS 2009. LNCS, vol. 5504, pp. 395–409. Springer, Heidelberg (2009). doi: 10.1007/978-3-642-00596-1_28 CrossRefGoogle Scholar
  12. 12.
    Moir, I., Seabridge, A.: Aircraft Systems: Mechanical, Electrical and Avionics Subsystems Integration, 3rd edn. Wiley, Chichester (2008)CrossRefGoogle Scholar
  13. 13.
    Nuzzo, P., Finn, J., Iannopollo, A., Sangiovanni-Vincentelli, A.: Contract-based design of control protocols for safety-critical cyber-physical systems. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), pp. 1–4, March 2014Google Scholar
  14. 14.
    Nuzzo, P., Iannopollo, A., Tripakis, S., Sangiovanni-Vincentelli, A.: Are interface theories equivalent to contract theories? In: 2014 Twelfth ACM/IEEE International Conference on Formal Methods and Models for Codesign (MEMOCODE), pp. 104–113, October 2014Google Scholar
  15. 15.
    Pnueli, A., Rosner, R.: Distributed reactive systems are hard to synthesize. In: 31st Annual Symposium on Foundations of Computer Science, Proceedings, vol. 2, pp. 746–757, October 1990Google Scholar
  16. 16.
    Pnueli, A.: The temporal logic of programs. In: Proceedings of the 18th Annual Symposium on Foundations of Computer Science, SFCS 1977, pp. 46–57. IEEE Computer Society, Washington, DC (1977)Google Scholar
  17. 17.
    Sangiovanni-Vincentelli, A.: Quo vadis, SLD? Reasoning about the trends and challenges of system level design. Proc. IEEE 95(3), 467–506 (2007)CrossRefGoogle Scholar
  18. 18.
    Sangiovanni-Vincentelli, A., Damm, W., Passerone, R.: Taming Dr. Frankenstein: contract-based design for cyber-physical systems. Eur. J. Control 18(3), 217–238 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Seshia, S.A.: Combining induction, deduction, and structure for verification and synthesis. Proc. IEEE 103(11), 2036–2051 (2015)CrossRefGoogle Scholar
  20. 20.
    Shapiro, E.Y.: Algorithmic Program DeBugging. MIT Press, Cambridge (1983)zbMATHGoogle Scholar
  21. 21.
    Sistla, A.P., Clarke, E.M.: The complexity of propositional linear temporal logics. J. ACM 32(3), 733–749 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Solar-Lezama, A., Tancau, L., Bodik, R., Seshia, S., Saraswat, V.: Combinatorial sketching for finite programs. SIGOPS Oper. Syst. Rev. 40(5), 404–415 (2006)CrossRefGoogle Scholar
  23. 23.
    Wongpiromsarn, T., Topcu, U., Ozay, N., Xu, H., Murray, R.M.: Tulip: a software toolbox for receding horizon temporal logic planning. In: Proceedings of the 14th International Conference on Hybrid Systems: Computation and Control, HSCC 2011, pp. 313–314. ACM, New York (2011)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Antonio Iannopollo
    • 1
    Email author
  • Stavros Tripakis
    • 1
    • 2
  • Alberto Sangiovanni-Vincentelli
    • 1
  1. 1.EECS DepartmentUniversity of California at BerkeleyBerkeleyUSA
  2. 2.Department of Computer ScienceAalto UniversityEspooFinland

Personalised recommendations