Learning to Explore Paths for Symbolic Execution
Jingxuan He, Gishor Sivanrupan, Petar Tsankov, Martin Vechev
Abstract
Symbolic execution is a powerful technique that can generate tests steering program execution into desired paths. However, the scalability of symbolic execution is often limited by path explosion, i.e., the number of symbolic states representing the paths under exploration quickly explodes as execution goes on. Therefore, the effectiveness of symbolic execution engines hinges on the ability to select and explore the right symbolic states.
Topics & Concepts
Symbolic executionComputer scienceConcolic testingScalabilitySymbolic trajectory evaluationThe SymbolicPath (computing)Execution timeProgramming languageParallel computingTheoretical computer scienceModel checkingSoftwareDatabasePsychoanalysisPsychologySoftware Testing and Debugging TechniquesSoftware Reliability and Analysis ResearchVLSI and Analog Circuit Testing