Skip to main content

Tight Error Analysis in Fixed-Point Arithmetic

  • Conference paper
  • First Online:
Integrated Formal Methods (IFM 2020)

Abstract

We consider the problem of estimating the numerical accuracy of programs with operations in fixed-point arithmetic and variables of arbitrary, mixed precision and possibly non-deterministic value. By applying a set of parameterised rewrite rules, we transform the relevant fragments of the program under consideration into sequences of operations in integer arithmetic over vectors of bits, thereby reducing the problem as to whether the error enclosures in the initial program can ever exceed a given order of magnitude to simple reachability queries on the transformed program. We present a preliminary experimental evaluation of our technique on a particularly complex industrial case study.

Partially supported by MIUR projects PRIN 2017TWRCNB SEDUCE (Designing Spatially Distributed Cyber-Physical Systems under Uncertainty) and PRIN 2017FTXR7S IT-MATTERS (Methods and Tools for Trustworthy Smart Systems).

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Programming languages – C - Extensions to support embedded processors. EEE, New York (1987). iSO/IEC Technical Report 18037:2008(E)

    Google Scholar 

  2. Abreu, R.B., Cordeiro, L.C., Filho, E.B.L.: Verifying fixed-point digital filters using SMT-based bounded model checking. CoRR abs/1305.2892 (2013)

    Google Scholar 

  3. Akbarpour, B., Tahar, S., Dekdouk, A.: Formalization of fixed-point arithmetic in HOL. Formal Methods Syst. Des. 27(1–2), 173–200 (2005)

    Article  Google Scholar 

  4. Ayad, A., Marché, C.: Multi-prover verification of floating-point programs. In: Giesl, J., Hähnle, R. (eds.) IJCAR 2010. LNCS (LNAI), vol. 6173, pp. 127–141. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14203-1_11

    Chapter  Google Scholar 

  5. de Bessa, I.V., Ismail, H.I., Cordeiro, L.C., Filho, J.E.C.: Verification of delta form realization in fixed-point digital controllers using bounded model checking. In: SBESC, pp. 49–54. IEEE (2014)

    Google Scholar 

  6. Blanchet, B., Cousot, P., Cousot, R., Feret, J., Mauborgne, L., Miné, A., Monniaux, D., Rival, X.: A static analyzer for large safety-critical software. CoRR (2007)

    Google Scholar 

  7. Boyd, S., Parikh, N., Chu, E., Peleato, B., Eckstein, J.: Distributed optimization and statistical learning via the alternating direction method of multipliers. Found. Trends Mach. Learn. 3(1), 1–122 (2011)

    Article  Google Scholar 

  8. Cimini, G., Bemporad, A.: Exact complexity certification of active-set methods for quadratic programming 62(12), 6094–6109 (2017)

    Google Scholar 

  9. Cimini, G., Bemporad, A.: Complexity and convergence certification of a block principal pivoting method for box-constrained quadratic programs. Automatica 100, 29–37 (2019)

    Article  MathSciNet  Google Scholar 

  10. Clarke, E.M., Kroening, D., Lerda, F.: A tool for checking ANSI-C programs. In: TACAS, pp. 168–176 (2004)

    Google Scholar 

  11. Darulova, E., Kuncak, V.: Sound compilation of reals. In: POPL, ACM (2014)

    Google Scholar 

  12. Darulova, E., Kuncak, V., Majumdar, R., Saha, I.: Synthesis of fixed-point programs. In: EMSOFT, pp. 22:1–22:10. IEEE (2013)

    Google Scholar 

  13. Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24605-3_37

    Chapter  Google Scholar 

  14. Fang, C.F., Rutenbar, R.A., Chen, T.: Fast, accurate static analysis for fixed-point finite-precision effects in DSP designs. In: ICCAD, pp. 275–282. IEEE/ACM (2003)

    Google Scholar 

  15. Fischer, B., Inverso, O., Parlato, G.: CSEQ: a concurrency pre-processor for sequential C verification tools. In: ASE, pp. 710–713. IEEE (2013)

    Google Scholar 

  16. Goubault, E., Putot, S.: Static analysis of finite precision computations. In: Jhala, R., Schmidt, D. (eds.) VMCAI 2011. LNCS, vol. 6538, pp. 232–247. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-18275-4_17

    Chapter  Google Scholar 

  17. Harrison, J.: Floating-point verification using theorem proving. In: Bernardo, M., Cimatti, A. (eds.) SFM 2006. LNCS, vol. 3965, pp. 211–242. Springer, Heidelberg (2006). https://doi.org/10.1007/11757283_8

    Chapter  Google Scholar 

  18. Inverso, O., Bemporad, A., Tribastone, M.: Sat-based synthesis of spoofing attacks in cyber-physical control systems. In: ICCPS, pp. 1–9. IEEE/ACM (2018)

    Google Scholar 

  19. Inverso, O., Trubiani, C.: Parallel and distributed bounded model checking of multi-threaded programs. In: PPoPP, pp. 202–216. ACM (2020)

    Google Scholar 

  20. Ivancic, F., Ganai, M.K., Sankaranarayanan, S., Gupta, A.: Numerical stability analysis of floating-point computations using software model checking. In: MEMOCODE, pp. 49–58. IEEE (2010)

    Google Scholar 

  21. Lin, D.D., Talathi, S.S., Annapureddy, V.S.: Fixed point quantization of deep convolutional networks. In: ICML. JMLR Workshop and Conference Proceedings, vol. 48, pp. 2849–2858. JMLR.org (2016)

    Google Scholar 

  22. Lohar, D., Prokop, M., Darulova, E.: Sound probabilistic numerical error analysis. In: Ahrendt, W., Tapia Tarifa, S.L. (eds.) IFM 2019. LNCS, vol. 11918, pp. 322–340. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-34968-4_18

    Chapter  Google Scholar 

  23. Martel, M., Najahi, A., Revy, G.: Toward the synthesis of fixed-point code for matrix inversion based on cholesky decomposition. In: DASIP, pp. 1–8. IEEE (2014)

    Google Scholar 

  24. Martinez, A.A., Majumdar, R., Saha, I., Tabuada, P.: Automatic verification of control system implementations. In: EMSOFT, pp. 9–18. ACM (2010)

    Google Scholar 

  25. Moussa, M., Areibi, S., Nichols, K.: On the arithmetic precision for implementing back-propagation networks on FPGA: a case study. In: Omondi, A.R., Rajapakse, J.C. (eds.) FPGA Implementations of Neural Networks. Springer, Boston (2006). https://doi.org/10.1007/0-387-28487-7_2

    Chapter  Google Scholar 

  26. Navas, J.A., Schachte, P., Søndergaard, H., Stuckey, P.J.: Signedness-agnostic program analysis: precise integer bounds for low-level code. In: Jhala, R., Igarashi, A. (eds.) APLAS 2012. LNCS, vol. 7705, pp. 115–130. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-35182-2_9

    Chapter  Google Scholar 

  27. Pajic, M., Park, J., Lee, I., Pappas, G.J., Sokolsky, O.: Automatic verification of linear controller software. In: EMSOFT. pp. 217–226. IEEE (2015)

    Google Scholar 

  28. Patrinos, P., Guiggiani, A., Bemporad, A.: A dual gradient-projection algorithm for model predictive control in fixed-point arithmetic. Automatica (2015)

    Google Scholar 

  29. Stellato, B., Banjac, G., Goulart, P., Bemporad, A., Boyd, S.: OSQP: an operator splitting solver for quadratic programs. Mathematical Programming Computation (2020). http://arxiv.org/abs/1711.08013

  30. Stol, J., De Figueiredo, L.H.: Self-validated numerical methods and applications. In: Monograph for 21st Brazilian Mathematics Colloquium, IMPA. Citeseer (1997)

    Google Scholar 

  31. Yates, R.: Fixed-point arithmetic: an introduction. Digital Signal Labs (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stella Simić .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Simić, S., Bemporad, A., Inverso, O., Tribastone, M. (2020). Tight Error Analysis in Fixed-Point Arithmetic. In: Dongol, B., Troubitsyna, E. (eds) Integrated Formal Methods. IFM 2020. Lecture Notes in Computer Science(), vol 12546. Springer, Cham. https://doi.org/10.1007/978-3-030-63461-2_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-63461-2_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-63460-5

  • Online ISBN: 978-3-030-63461-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics