In computer science, program analysis is the process of automatically analysing the behavior of computer programs. Two main approaches in program analysis are static program analysis and dynamic program analysis. Main applications of program analysis are program correctness and program optimization.
Techniques related to program analysis include:
- control-flow and data-flow analysis
- constraint-based analysis
- abstract interpretation,
- type and effect systems.
A technique that is applied for certain kinds of program analysis is program slicing.
See also 
Further reading 
- Flemming Nielson, Hanne Riis Nielson, Chris Hankin (2005). Principles of Program Analysis. Springer.
|This computer science article is a stub. You can help Wikipedia by expanding it.|