In computer science, path explosion is a fundamental problem that limits the scalability and/or completeness of certain kinds of program analyses, including fuzzing, symbolic execution, and path-sensitive static analysis. Path explosion refers to the fact that the number of control-flow paths in a program grows exponentially ("explodes") with an increase in program size and can even be infinite in the case of programs with unbounded loop iterations.[1][2] Therefore, any program analysis that attempts to explore control-flow paths through a program will either have exponential runtime in the length of the program (or potentially even failure to terminate on certain inputs), or will have to choose to analyze only a subset of all possible paths. When an analysis only explores a subset of all paths, the decision of which paths to analyze is often made heuristically.[3]
^Anand, Saswat; Patrice Godefroid; Nikolai Tillmann (2008). "Demand-Driven Compositional Symbolic Execution". Tools and Algorithms for the Construction and Analysis of Systems. Lecture Notes in Computer Science. Vol. 4963. pp. 367–381. doi:10.1007/978-3-540-78800-3_28. ISBN 978-3-540-78799-0.
^Boonstoppel, Peter; Cadar, Cristian; Engler, Dawson (2008). Ramakrishnan, C. R.; Rehof, Jakob (eds.). "RWset: Attacking Path Explosion in Constraint-Based Test Generation". Tools and Algorithms for the Construction and Analysis of Systems. Berlin, Heidelberg: Springer: 351–366. doi:10.1007/978-3-540-78800-3_27. ISBN 978-3-540-78800-3. "the number of distinct paths increases exponentially with the number of conditional statements traversed. In all but the smallest programs, this typically leads to an essentially inexhaustible set of paths to explore."
^Ma, Kin-Keng; Khoo Yit Phang; Jeffrey S. Foster; Michael Hicks (2011). "Directed Symbolic Execution". Proceedings of the 18th International Conference on Statis Analysis. pp. 95–111. ISBN 9783642237010. Retrieved 2013-04-03.
In computer science, pathexplosion is a fundamental problem that limits the scalability and/or completeness of certain kinds of program analyses, including...
unbounded loop iterations. Solutions to the pathexplosion problem generally use either heuristics for path-finding to increase code coverage, reduce execution...
the explosion. Thousands of people had stopped to watch the ship burning in the harbour, many from inside buildings, leaving them directly in the path of...
point p is reached by two different execution paths and v inherits different typestates via each path, then the typestate of v at p is taken to be the...
combinatorial blow up of the state-space, commonly known as the state explosion problem, that must be addressed to solve most real-world problems. There...
(for a given execution trace). Other forms of slicing exist, for instance path slicing. Based on the original definition of Weiser, informally, a static...
gas explosion kills 10 miners". 12 May 2001. "Jim Walter Resources Mine Explosions". "Dozens die in Ugandan fuel fire". 7 December 2001. "StackPath". "Gasramp...
Tunguska event (occasionally also called the Tunguska incident) was a large explosion of between 3 and 50 megatons that occurred near the Podkamennaya Tunguska...
The New London School explosion occurred on March 18, 1937, when a natural gas leak caused an explosion and destroyed the London School in New London...
zone by an explosion that was near him. An early critical test of Kubrick's obsession with control on the set came during the making of Paths of Glory....
The inherent limitation of symbolic-execution-assisted testing tools—pathexplosion and scalability—is magnified especially in the context of differential...
hazardous locations (HazLoc, pronounced haz·lōk) are places where fire or explosion hazards may exist. Sources of such hazards include gases, vapors, dust...
report's conclusion was that the probable cause of the accident was the explosion of flammable fuel vapors in the center fuel tank. Although it could not...