skip to main content
research-article

Bridging boolean and quantitative synthesis using smoothed proof search

Published:08 January 2014Publication History
Skip Abstract Section

Abstract

We present a new technique for parameter synthesis under boolean and quantitative objectives. The input to the technique is a "sketch" --- a program with missing numerical parameters --- and a probabilistic assumption about the program's inputs. The goal is to automatically synthesize values for the parameters such that the resulting program satisfies: (1) a {boolean specification}, which states that the program must meet certain assertions, and (2) a {quantitative specification}, which assigns a real valued rating to every program and which the synthesizer is expected to optimize.

Our method --- called smoothed proof search --- reduces this task to a sequence of unconstrained smooth optimization problems that are then solved numerically. By iteratively solving these problems, we obtain parameter values that get closer and closer to meeting the boolean specification; at the limit, we obtain values that provably meet the specification. The approximations are computed using a new notion of smoothing for program abstractions, where an abstract transformer is approximated by a function that is continuous according to a metric over abstract states.

We present a prototype implementation of our synthesis procedure, and experimental results on two benchmarks from the embedded control domain. The experiments demonstrate the benefits of smoothed proof search over an approach that does not meet the boolean and quantitative synthesis goals simultaneously.

Skip Supplemental Material Section

Supplemental Material

d1_left_t10.mp4

References

  1. A. Adje, O. Bouisseau, J. Goubault-Larrecq, E. Goubault, and S. Putot. Static analysis of programs with imprecise probabilistic inputs. In VSTTE, 2013.Google ScholarGoogle Scholar
  2. Patrick Billingsley. Probability and measure. John Wiley & Sons, 2008.Google ScholarGoogle Scholar
  3. R. Bloem, K. Chatterjee, T. Henzinger, and B. Jobstmann. Better quality in synthesis through quantitative objectives. In CAV, pages 140--156, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Cerný, K. Chatterjee, T. Henzinger, A. Radhakrishna, and R. Singh. Quantitative synthesis for concurrent programs. In CAV, pages 243--259, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. P. Cerný and T. Henzinger. From boolean to quantitative synthesis. In EMSOFT, 2011.Google ScholarGoogle Scholar
  6. K. Chatterjee, T. Henzinger, B. Jobstmann, and R. Singh. Measuring and synthesizing systems in probabilistic environments. In CAV, pages 380--395, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Chaudhuri, M. Clochard, and A. Solar-Lezama. Bridging boolean and quantitative synthesis using smoothed proof search. Technical report, Rice University, 2014.Google ScholarGoogle Scholar
  8. S. Chaudhuri and A. Solar-Lezama. Smooth interpretation. In PLDI, pages 279--291, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Chaudhuri and A. Solar-Lezama. Smoothing a program soundly and robustly. In CAV, pages 277--292, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. S. Chaudhuri and A. Solar-Lezama. Euler: A system for numerical optimization of programs. In CAV, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. G. Claret, S. Rajamani, A. Nori, A. Gordon, and J. Borgström. Bayesian inference using data flow analysis. In ESEC/SIGSOFT FSE, pages 92--102, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Cousot and M. Monerau. Probabilistic abstract interpretation. In ESOP, pages 169--193, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Donzé, B. Krogh, and A. Rajhans. Parameter synthesis for hybrid systems with an application to Simulink models. In HSCC, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. T. Henzinger and H. Wong-Toi. Using HyTech to synthesize control parameters for a steam boiler. In Formal Methods for Industrial Applications, pages 265--282, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. S. Jambawalikar and P. Kumar. A note on approximate minimum volume enclosing ellipsoid of ellipsoids. In ICCSA, pages 478--487, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. Jha and S. Seshia. Synthesis of optimal fixed-point implementations of numerical software routines. In NSV, 2013.Google ScholarGoogle Scholar
  17. S. Jha, S. Seshia, and A. Tiwari. Synthesis of optimal switching logic for hybrid systems. In EMSOFT, pages 107--116, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Katoen, A. McIver, L. Meinicke, and C. Morgan. Linear-invariant generation for probabilistic programs: Automated support for proof-based methods. In SAS, pages 390--406, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. A. McCallum, K. Schultz, and S. Singh. Factorie: Probabilistic programming via imperatively defined factor graphs. In NIPS, pages 1249--1257, 2009.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. D. Monniaux. Abstract interpretation of probabilistic semantics. In SAS, pages 322--339, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. D. Monniaux. Backwards abstract interpretation of probabilistic programs. In ESOP, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. A. Nelder and R. Mead. A simplex method for function minimization. The computer journal, 7(4):308, 1965.Google ScholarGoogle Scholar
  23. A. Nori and R. Sharma. Termination proofs from tests. In ESEC/SIGSOFT FSE, pages 246--256, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. A. Platzer. Logical Analysis of Hybrid Systems: Proving Theorems for Complex Dynamics. Springer-Verlag, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. S. Seshia. Sciduction: combining induction, deduction, and structure for verification and synthesis. In DAC, pages 356--365, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. R. Sharma, S. Gupta, B. Hariharan, A. Aiken, P. Liang, and A. Nori. A data driven approach for algebraic loop invariants. In ESOP, pages 574--592, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. R. Sharma, S. Gupta, B. Hariharan, A. Aiken, and A. Nori. Verification as learning geometric concepts. In SAS, pages 388--411, 2013.Google ScholarGoogle ScholarCross RefCross Ref
  28. R. Singh and A. Solar-Lezama. Synthesizing data structure manipulations from storyboards. In SIGSOFT FSE, pages 289--299, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. M. Smith. Probabilistic abstract interpretation of imperative programs using truncated normal distributions. Electron. Notes Theor. Comput. Sci., 220(3):43--59, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Solar-Lezama. Program Synthesis by Sketching. PhD thesis, UC Berkeley, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Armando Solar-Lezama. Program sketching. STTT, 15(5--6):475--495, 2013.Google ScholarGoogle Scholar
  32. S. Srivastava, S. Gulwani, and J. Foster. From program verification to program synthesis. In POPL, pages 313--326, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Vechev and E. Yahav. Deriving linearizable fine-grained concurrent objects. In PLDI, pages 125--135, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. M. Vechev, E. Yahav, and G. Yorsh. Abstraction-guided synthesis of synchronization. In POPL, pages 327--338, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. J. Winn and T. Minka. Probabilistic programming with infer .NET. Machine Learning Summer School lecture notes, available at http://research.microsoft.com/\ minka/papers/mlss2009, 2009.Google ScholarGoogle Scholar

Index Terms

  1. Bridging boolean and quantitative synthesis using smoothed proof search

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!