Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2486788.2487001acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Memoise: a tool for memoized symbolic execution

Published: 18 May 2013 Publication History

Abstract

This tool paper presents a tool for performing memoized symbolic execution (Memoise), an approach we developed in previous work for more efficient application of symbolic execution. The key idea in Memoise is to allow re-use of symbolic execution results across different runs of symbolic execution without having to re-compute previously computed results as done in earlier approaches. Specifically, Memoise builds a trie-based data structure to record path exploration information during a run of symbolic execution, optimizes the trie for the next run, and re-uses the resulting trie during the next run. Our tool optimizes symbolic execution in three standard scenarios where it is commonly applied: iterative deepening, regression analysis, and heuristic search. Our tool Memoise builds on the Symbolic PathFinder framework to provide more efficient symbolic execution of Java programs and is available online for download. The tool demonstration video is available at http://www.youtube.com/watch?v=ppfYOB0Z2vY.

References

[1]
Java PathFinder Tool-set. http://babelfish.arc.nasa.gov/trac/jpf.
[2]
D. Balasubramanian, C. S. Pasareanu, M. W. Whalen, G. Karsai, and M. R. Lowry. Polyglot: modeling and analysis for multiple statechart formalisms. In ISSTA, pages 45–55, 2011.
[3]
C. Cadar, D. Dunbar, and D. R. Engler. KLEE: Unassisted and automatic generation of high-coverage tests for complex systems programs. In OSDI, pages 209–224, 2008.
[4]
L. A. Clarke. A program testing system. In Proc. of the ACM 1976 annual conference, pages 488–491.
[5]
P. Godefroid, N. Klarlund, and K. Sen. DART: Directed automated random testing. In PLDI, pages 213–223, 2005.
[6]
J. C. King. Symbolic execution and program testing. Communications of the ACM, 19(7):385–394, 1976.
[7]
S. Person, G. Yang, N. Rungta, and S. Khurshid. Directed incremental symbolic execution. In PLDI, pages 504–515, 2011.
[8]
C. S. Păsăreanu, P. C. Mehlitz, D. H. Bushnell, K. Gundy-Burlet, M. Lowry, S. Person, and M. Pape. Combining unit-level symbolic execution and system-level concrete execution for testing NASA software. In ISSTA, pages 15–25, 2008.
[9]
C. S. Păsăreanu and N. Rungta. Symbolic PathFinder: Symbolic execution of Java bytecode. In ASE, pages 179–180, 2010.
[10]
K. Sen and G. Agha. CUTE and jCUTE: Concolic unit testing and explicit path model-checking tools. In CAV, pages 419–423, 2006.
[11]
S. F. Siegel, A. Mironova, G. S. Avrunin, and L. A. Clarke. Combining symbolic execution with model checking to verify parallel numerical programs. ACM Trans. Softw. Eng. Methodol., 17(2), 2008.
[12]
D. E. Willard. New trie data structures which support very fast search operations. J. Comput. Syst. Sci., 28:379–394, 1984.
[13]
G. Yang, C. S. Păsăreanu, and S. Khurshid. Memoized symbolic execution. In ISSTA 2012, pages 144–154, 2012.

Cited By

View all
  • (2015)MultiSE: multi-path symbolic execution using value summariesProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786830(842-853)Online publication date: 30-Aug-2015
  • (2014)Solving complex path conditions through heuristic search on induced polytopesProceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2635868.2635889(425-436)Online publication date: 11-Nov-2014
  • (2014)Symbolic PathFinder v7ACM SIGSOFT Software Engineering Notes10.1145/2557833.256057139:1(1-5)Online publication date: 11-Feb-2014

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '13: Proceedings of the 2013 International Conference on Software Engineering
May 2013
1561 pages
ISBN:9781467330763

Sponsors

Publisher

IEEE Press

Publication History

Published: 18 May 2013

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '13
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 31 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2015)MultiSE: multi-path symbolic execution using value summariesProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786830(842-853)Online publication date: 30-Aug-2015
  • (2014)Solving complex path conditions through heuristic search on induced polytopesProceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2635868.2635889(425-436)Online publication date: 11-Nov-2014
  • (2014)Symbolic PathFinder v7ACM SIGSOFT Software Engineering Notes10.1145/2557833.256057139:1(1-5)Online publication date: 11-Feb-2014

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media