Skip to main content

CORAL: Solving Complex Constraints for Symbolic PathFinder

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6617))

Abstract

Symbolic execution is a powerful automated technique for generating test cases. Its goal is to achieve high coverage of software. One major obstacle in adopting the technique in practice is its inability to handle complex mathematical constraints. To address the problem, we have integrated CORAL’s heuristic solvers into NASA Ames’ Symbolic PathFinder symbolic execution tool. CORAL’s solvers have been designed to deal with mathematical constraints and their heuristics have been improved based on examples from the aerospace domain. This integration significantly broadens the application of Symbolic PathFinder at NASA and in industry.

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

Buying options

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 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. CHOCO web page, http://www.emn.fr/z-info/choco-solver/

  2. CVC3 web page, http://www.cs.nyu.edu/acsys/cvc3/

  3. Opt4J web page, http://opt4j.sourceforge.net/

  4. TSAFE maryland, http://www.cs.umd.edu/~mvz/cmsc435-s09/

  5. TSAFE mit, http://sdg.csail.mit.edu/TSAFE/downloads/

  6. Wolfram Alpha web page, http://www.wolframalpha.com/

  7. YICES web page, http://yices.csl.sri.com/

  8. JPF project (2010), http://babelfish.arc.nasa.gov/trac/jpf

  9. Back, T., Eiben, A.E., Vink, M.E.: A superior evolutionary algorithm for 3-SAT. In: Porto, V.W., Waagen, D. (eds.) EP 1998. LNCS, vol. 1447, pp. 125–136. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  10. Baresi, L., Lanzi, P.L., Miraz, M.: Testful: An evolutionary test approach for java. In: ICST, pp. 185–194 (2010)

    Google Scholar 

  11. Godefroid, P., Klarlund, N., Sen, K.: DART: Directed Automated Random Testing. In: PLDI, pp. 213–223 (2005)

    Google Scholar 

  12. Goldberg, D.E.: Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Longman Publishing Co., Inc., Boston (1989)

    MATH  Google Scholar 

  13. JavaNCSS website. JavaNCSS - A Source Measurement Suite for Java, http://www.kclee.de/clemens/java/javancss/

  14. Kennedy, J., Eberhart, R.: Particle swarm optimization. IEEE Neural Networks, 1942–1948 (1995)

    Google Scholar 

  15. King, J.C.: Symbolic execution and program testing. Communications of ACM 19(7), 385–394 (1976)

    Article  MATH  Google Scholar 

  16. Korel, B.: Automated software test data generation. IEEE Transactions on Software Engineering 16(8), 870–879 (1990)

    Article  Google Scholar 

  17. Kroening, D., Strichman, O.: Decision Procedures – an Algorithmic Point of View. In: EATCS. Springer, Heidelberg (2008)

    Google Scholar 

  18. Lakhotia, K., Tillmann, N., Harman, M., de Halleux, J.: FloPSy - search-based floating point constraint solving for symbolic execution. In: Petrenko, A., Simão, A., Maldonado, J.C. (eds.) ICTSS 2010. LNCS, vol. 6435, pp. 142–157. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  19. Pasareanu, C.S., Schumann, J., Mehlitz, P., Lowry, M., Karasai, G., Nine, H., Neema, S.: Model based analysis and test generation for flight software. In: Proceedings of SMC-IT (2009)

    Google Scholar 

  20. Păsăreanu, C.S., Mehlitz, P.C., Bushnell, D.H., Gundy-Burlet, K., Lowry, M., Person, S., Pape, M.: Combining unit-level symbolic execution and system-level concrete execution for testing nasa software. In: ISSTA, pp. 15–26 (2008)

    Google Scholar 

  21. Takaki, M., Cavalcanti, D., Gheyi, R., Iyoda, J., d’Amorim, M., Prudencio, R.: A comparative study of randomized constraint solvers for random-symbolic testing. In: NFM, pp. 56–65 (2009)

    Google Scholar 

  22. Takaki, M., Cavalcanti, D., Gheyi, R., Iyoda, J., d’Amorim, M., Prudencio, R.: Randomized constraint solvers: a comparative study. Innovations in Systems and Software Engineering (ISSE) 6(3), 243–253 (2010)

    Article  Google Scholar 

  23. Tillmann, N., de Halleux, J.: Pex–white box test generation for.NET. In: Beckert, B., Hähnle, R. (eds.) TAP 2008. LNCS, vol. 4966, pp. 134–153. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  24. Tonella, P.: Evolutionary testing of classes. In: ISSTA, pp. 119–128 (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Souza, M., Borges, M., d’Amorim, M., Păsăreanu, C.S. (2011). CORAL: Solving Complex Constraints for Symbolic PathFinder. In: Bobaru, M., Havelund, K., Holzmann, G.J., Joshi, R. (eds) NASA Formal Methods. NFM 2011. Lecture Notes in Computer Science, vol 6617. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20398-5_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-20398-5_26

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-20397-8

  • Online ISBN: 978-3-642-20398-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics