Synthesis for Unbounded Bit-Vector Arithmetic

  • Andrej Spielmann
  • Viktor Kuncak
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7364)


We propose to describe computations using QFPAbit, a language of quantifier-free linear arithmetic on unbounded integers with bitvector operations. We describe an algorithm that, given a QFPAbit formula with input and output variables denoting integers, generates an efficient function from a sequence of inputs to a sequence of outputs, whenever such function on integers exists. The starting point for our method is a polynomial-time translation mapping a QFPAbit formula into the sequential circuit that checks the correctness of the input/output relation. From such a circuit, our synthesis algorithm produces solved circuits from inputs to outputs that are no more than singly exponential in size of the original formula. In addition to the general synthesis algorithm, we present techniques that ensure that, for example, multiplication and division with large constants do not lead to an exponential blowup, addressing a practical problem with a previous approach that used the MONA tool to generate the specification automata.


Clock Cycle Clock Pulse Sequential Circuit Combinational Circuit Linear Arithmetic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bloem, R., Jobstmann, B., Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of reactive(1) designs. J. Comput. Syst. Sci. 78(3), 911–938 (2012)CrossRefGoogle Scholar
  2. 2.
    Buchi, J., Landweber, L.: Solving sequential conditions by finite-state strategies. Transactions of the American Mathematical Society 138(295-311), 5 (1969)MathSciNetGoogle Scholar
  3. 3.
    Gupta, A.: Inductive Boolean Function Manipulation: A Hardware Verification Methodology for Automatic Induction. PhD thesis, CMU (1994)Google Scholar
  4. 4.
    Hamza, J., Jobstmann, B., Kuncak, V.: Synthesis for regular specifications over unbounded domains. In: Formal Methods in Computer-Aided Design (FMCAD), pp. 101–109. IEEE (2010)Google Scholar
  5. 5.
    Jobstmann, B., Bloem, R.: Optimizations for LTL synthesis. In: FMCAD (2006)Google Scholar
  6. 6.
    Klarlund, N., Møller, A., Schwartzbach, M.I.: MONA Implementation Secrets. In: Yu, S., Păun, A. (eds.) CIAA 2000. LNCS, vol. 2088, pp. 182–194. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  7. 7.
    Kuncak, V., Mayer, M., Piskac, R., Suter, P.: Complete functional synthesis. In: ACM SIGPLAN Conf. Programming Language Design and Implementation, PLDI (2010)Google Scholar
  8. 8.
    Rabin, M.: Automata on infinite objects and Church’s problem. Regional Conference Series in Mathematics, vol. 13. American Mathematical Society (1972)Google Scholar
  9. 9.
    Schuele, T., Schneider, K.: Verification of Data Paths Using Unbounded Integers: Automata Strike Back. In: Bin, E., Ziv, A., Ur, S. (eds.) HVC 2006. LNCS, vol. 4383, pp. 65–80. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Spielmann, A., Kuncak, V.: On synthesis for unbounded bit-vector arithmetic. Technical Report EPFL-REPORT-174801, EPFL (2012)Google Scholar
  11. 11.
    Srivastava, S., Gulwani, S., Foster, J.S.: From program verification to program synthesis. In: POPL (2010)Google Scholar
  12. 12.
    Stockmeyer, L., Meyer, A.R.: Cosmological lower bound on the circuit complexity of a small problem in logic. J. ACM 49(6), 753–784 (2002)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Andrej Spielmann
    • 1
  • Viktor Kuncak
    • 1
  1. 1.School of Computer and Communication Sciences (I&C)École Polytechnique Fédérale de Lausanne (EPFL)Switzerland

Personalised recommendations