Undecidability of static analysis 论文

1992ACM Letters on Programming Languages and Systems引用 382
Software Testing and Debugging TechniquesAdvanced Malware Detection TechniquesSoftware Reliability and Analysis Research

摘要

Static analysis of programs is indispensable to any software tool, environment, or system that requires compile-time information about the semantics of programs. With the emergence of languages like C and LISP, static analysis of programs with dynamic storage and recursive data structures has become a field of active research. Such analysis is difficult, and the static-analysis community has recognized the need for simplifying assumptions and approximate solutions. However, even under the common simplifying assumptions, such analyses are harder than previously recognized. Two fundamental static-analysis problems are may alias and must alias . The former is not recursive (is undecidable), and the latter is not recursively enumerable (is uncomputable), even when all paths are executable in the program being analyzed for languages with if statements, loops, dynamic storage, and recursive data structures.

相关事件

暂无数据

相关文章

暂无数据