Skip to main content

Advertisement

Springer Nature Link
Account
Menu
Find a journal Publish with us Track your research
Search
Cart
  1. Home
  2. Fundamental Approaches to Software Engineering
  3. Conference paper

ESBMC: Scalable and Precise Test Generation based on the Floating-Point Theory

(Competition Contribution)

  • Conference paper
  • Open Access
  • First Online: 17 April 2020
  • pp 525–529
  • Cite this conference paper

You have full access to this open access conference paper

Download book PDF
Fundamental Approaches to Software Engineering (FASE 2020)
ESBMC: Scalable and Precise Test Generation based on the Floating-Point Theory
Download book PDF
  • Mikhail R. Gadelha  ORCID: orcid.org/0000-0001-6540-658710,
  • Rafael Menezes  ORCID: orcid.org/0000-0002-6102-434311,
  • Felipe R. Monteiro  ORCID: orcid.org/0000-0001-9420-905611,
  • Lucas C. Cordeiro  ORCID: orcid.org/0000-0002-6235-427212 &
  • …
  • Denis Nicole13 

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12076))

Included in the following conference series:

  • International Conference on Fundamental Approaches to Software Engineering
  • 8700 Accesses

  • 7 Citations

Abstract

ESBMC is an SMT-based bounded model checker for real-world C programs. Such programs often represent real numbers using the floating-points, most commonly, the IEEE floating-point standard (IEEE 754-2008). Thus, ESBMC now includes a new floating-point arithmetic encoding layer in our SMT backend, that encodes floating-point operations into bit-vector operations. In particular, ESBMC can use off-the-shelf SMT solvers that offer support for bit-vectors only to encode floating-point arithmetic.

Lucas C. Cordeiro: Jury member

Download to read the full chapter text

Chapter PDF

Similar content being viewed by others

Encoding Floating-Point Numbers Using the SMT Theory in ESBMC: An Empirical Evaluation over the SV-COMP Benchmarks

Chapter © 2017

An Efficient Floating-Point Bit-Blasting API for Verifying C Programs

Chapter © 2020

Searching Critical Values for Floating-Point Programs

Chapter © 2016

Explore related subjects

Discover the latest articles, books and news in related subjects, suggested using machine learning.
  • ESCRT
  • Methylation analysis
  • Register-Transfer-Level Implementation
  • Software Testing
  • Electronics Design and Verification
  • Computer Science Logic and Foundations of Programming

References

  1. Beyer, D.: Second competition on software testing: Test-comp 2020. In: Proc. FASE. LNCS, Springer (2020)

    Google Scholar 

  2. Clarke, E., Kroening, D., Lerda, F.: A tool for checking ANSI-C programs. In: Tools And Algorithms For The Construction And Analysis Of Systems. LNCS, vol. 2988, pp. 168–176 (2004)

    Google Scholar 

  3. Cordeiro, L.C., Fischer, B.: Verifying multi-threaded software using SMT-based context-bounded model checking. In: International Conference on Software Engineering. pp. 331–340 (2011)

    Google Scholar 

  4. Dutertre, B.: Yices 2.2. In: Computer-Aided Verification. LNCS, vol. 8559, pp. 737–744 (2014)

    Google Scholar 

  5. Eén, N., Sörensson, N.: Temporal induction by incremental SAT solving. Electronic Notes in Theoretical Computer Science 89(4), 543–560 (2003)

    Article  Google Scholar 

  6. Erkk, L.: Bug in floating-point conversions. https://github.com/Z3Prover/z3/issues/1564 (2018), [Online; accessed January-2020]

  7. Gadelha, M.R., Monteiro, F., Cordeiro, L., Nicole, D.: ESBMC v6.0: Verifying C programs using \(k\)-induction and invariant inference. In: Tools And Algorithms For The Construction And Analysis Of Systems. LNCS, vol. 11429, pp. 209–213 (2019)

    Google Scholar 

  8. Gadelha, M.R., Monteiro, F.R., Morse, J., Cordeiro, L.C., Fischer, B., Nicole, D.A.: ESBMC 5.0: An industrial-strength C model checker. In: Automated Software Engineering. pp. 888–891 (2018)

    Google Scholar 

  9. Gadelha, M.Y.R., Cordeiro, L.C., Nicole, D.A.: Encoding floating-point numbers using the SMT theory in ESBMC: An empirical evaluation over the SV-COMP benchmarks. In: Simpósio Brasileiro De Métodos Formais. LNCS, vol. 10623, pp. 91–106 (2017)

    Google Scholar 

  10. Gadelha, M.Y.R., Ismail, H.I., Cordeiro, L.C.: Handling loops in bounded model checking of C programs via \(k\)-induction. Software Tools for Technology Transfer 19(1), 97–114 (2017)

    Article  Google Scholar 

  11. IEEE: IEEE Standard For Floating-Point Arithmetic (2008), IEEE 754–2008

    Google Scholar 

  12. Muller, J.M., Brisebarre, N., Dinechin, F., Jeannerod, C.P., Lefe, V., Melquiond, G., Revol, N., Stehl., Torres, S.: Handbook of Floating-Point Arithmetic. Birkher Boston, 1st edn. (2010)

    Google Scholar 

  13. Niemetz, A., Preiner, M., Biere, A.: Boolector 2.0 system description. Journal on Satisfiability, Boolean Modeling and Computation 9, 53–58 (2014)

    Google Scholar 

  14. Noetzli, A.: Failing precondition when multiplying 4-bit significand/4-bit exponent floats. https://github.com/CVC4/CVC4/issues/2182 (2018), [Online; accessed January-2020]

  15. Schrammel, P., Kroening, D., Brain, M., Martins, R., Teige, T., Bienmüller, T.: Incremental bounded model checking for embedded software (extended version). Formal Aspects of Computing 29(5), 911–931 (2017)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

  1. SIDIA Instituto de Ciência e Tecnologia, Manaus, Brazil

    Mikhail R. Gadelha

  2. Federal University of Amazonas, Manaus, Brazil

    Rafael Menezes & Felipe R. Monteiro

  3. Kilburn Building University of Manchester, Oxford Rd, Manchester, M13 9PL, UK

    Lucas C. Cordeiro

  4. University of Southampton, Southampton, UK

    Denis Nicole

Authors
  1. Mikhail R. Gadelha
    View author publications

    Search author on:PubMed Google Scholar

  2. Rafael Menezes
    View author publications

    Search author on:PubMed Google Scholar

  3. Felipe R. Monteiro
    View author publications

    Search author on:PubMed Google Scholar

  4. Lucas C. Cordeiro
    View author publications

    Search author on:PubMed Google Scholar

  5. Denis Nicole
    View author publications

    Search author on:PubMed Google Scholar

Corresponding author

Correspondence to Lucas C. Cordeiro .

Editor information

Editors and Affiliations

  1. University of Paderborn, Paderborn, Germany

    Heike Wehrheim

  2. ICREA, Open University of Catalonia, Barcelona, Spain

    Jordi Cabot

Rights and permissions

Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.

The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

Reprints and permissions

Copyright information

© 2020 The Author(s)

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Gadelha, M.R., Menezes, R., Monteiro, F.R., Cordeiro, L.C., Nicole, D. (2020). ESBMC: Scalable and Precise Test Generation based on the Floating-Point Theory. In: Wehrheim, H., Cabot, J. (eds) Fundamental Approaches to Software Engineering. FASE 2020. Lecture Notes in Computer Science(), vol 12076. Springer, Cham. https://doi.org/10.1007/978-3-030-45234-6_27

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-030-45234-6_27

  • Published: 17 April 2020

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-45233-9

  • Online ISBN: 978-3-030-45234-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Keywords

  • Automated Test Generation
  • Bounded Model Checking
  • Software Testing
  • Satisfiability Modulo Theories

Publish with us

Policies and ethics

Societies and partnerships

  • The European Joint Conferences on Theory and Practice of Software.
    The European Joint Conferences on Theory and Practice of Software. (opens in a new tab)

Search

Navigation

  • Find a journal
  • Publish with us
  • Track your research

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Journal finder
  • Publish your research
  • Language editing
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our brands

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Discover
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support
  • Legal notice
  • Cancel contracts here

Not affiliated

Springer Nature

© 2025 Springer Nature