Constrained Synthesis from Component Libraries

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]  Ehud Shapiro,et al.  Algorithmic Program Debugging , 1983 .

[2]  Ufuk Topcu,et al.  Compositional Synthesis with Parametric Reactive Controllers , 2016, HSCC.

[3]  Sanjit A. Seshia,et al.  Combinatorial sketching for finite programs , 2006, ASPLOS XII.

[4]  Amir Pnueli,et al.  Distributed reactive systems are hard to synthesize , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[5]  Ufuk Topcu,et al.  TuLiP: a software toolbox for receding horizon temporal logic planning , 2011, HSCC '11.

[6]  Bernhard Beckert,et al.  Formal Methods for Components and Objects , 2013, Lecture Notes in Computer Science.

[7]  Yoad Lustig,et al.  Synthesis from Component Libraries , 2009, FoSSaCS.

[8]  Alberto L. Sangiovanni-Vincentelli,et al.  Taming Dr. Frankenstein: Contract-Based Design for Cyber-Physical Systems , 2012, Eur. J. Control.

[9]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[10]  Alberto L. Sangiovanni-Vincentelli,et al.  Contract-based design of control protocols for safety-critical cyber-physical systems , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[11]  Sanjit A. Seshia,et al.  A theory of formal synthesis via inductive learning , 2015, Acta Informatica.

[12]  Marco Roveri,et al.  The nuXmv Symbolic Model Checker , 2014, CAV.

[13]  Ian Moir,et al.  Aircraft Systems: Mechanical, Electrical, and Avionics Subsystems Integration , 2008 .

[14]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[15]  Sumit Gulwani,et al.  Synthesis of loop-free programs , 2011, PLDI '11.

[16]  A. Prasad Sistla,et al.  The complexity of propositional linear temporal logics , 1982, STOC '82.

[17]  Alberto L. Sangiovanni-Vincentelli,et al.  Quo Vadis, SLD? Reasoning About the Trends and Challenges of System Level Design , 2007, Proceedings of the IEEE.

[18]  Alberto L. Sangiovanni-Vincentelli,et al.  Are interface theories equivalent to contract theories? , 2014, 2014 Twelfth ACM/IEEE Conference on Formal Methods and Models for Codesign (MEMOCODE).

[19]  Alberto L. Sangiovanni-Vincentelli,et al.  Library-based scalable refinement checking for contract-based design , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[20]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[21]  Roberto Passerone,et al.  Multiple Viewpoint Contract-Based Specification and Design , 2008, FMCO.

[22]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[23]  Sanjit A. Seshia,et al.  Combining Induction, Deduction, and Structure for Verification and Synthesis , 2015, Proceedings of the IEEE.