Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Abstract interpretation
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Approach to static program analysis}} In [[computer science]], '''abstract interpretation''' is a theory of [[soundness|sound approximation]] of the [[semantics of programming languages|semantics of computer programs]], based on [[Monotonic function#Monotonicity in order theory|monotonic function]]s over [[ordered set]]s, especially [[lattice (order)|lattice]]s. It can be viewed as a partial [[Execution (computers)|execution]] of a [[computer program]] which gains information about its semantics (e.g., [[control-flow analysis|control-flow]], [[data-flow analysis|data-flow]]) without performing all the [[calculation]]s. Its main concrete application is formal [[static code analysis|static analysis]], the automatic [[information extraction|extraction of information]] about the possible executions of computer programs; such analyses have two main usages: * inside [[compiler]]s, to analyse programs to decide whether certain [[Optimization (computer science)|optimization]]s or [[Program transformation|transformation]]s are applicable; * for [[debugging]] or even the certification of programs against classes of bugs. Abstract interpretation was formalized by the French computer scientist working couple [[Patrick Cousot]] and [[Radhia Cousot]] in the late 1970s.<ref>{{cite book |first1=Patrick |last1=Cousot |first2=Radhia |last2=Cousot |chapter-url=https://www.di.ens.fr/~cousot/publications.www/CousotCousot-POPL-77-ACM-p238--252-1977.pdf |chapter=Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints |title=Conference Record of the Fourth ACM Symposium on Principles of Programming Languages, Los Angeles, California, USA, January 1977 |publisher=ACM Press |year=1977 |pages=238β252 |doi=10.1145/512950.512973 |s2cid=207614632 }}</ref><ref name="CCPOPL79">{{cite book |first1=Patrick |last1=Cousot |first2=Radhia |last2=Cousot |chapter-url=https://www.di.ens.fr/~cousot/publications.www/CousotCousot-POPL-79-ACM-p269--282-1979.pdf |chapter=Systematic Design of Program Analysis Frameworks |title=Conference Record of the Sixth Annual ACM Symposium on Principles of Programming Languages, San Antonio, Texas, USA, January 1979 |publisher=ACM Press |year=1979 |pages=269β282 |doi=10.1145/567752.567778|s2cid=1547466 }}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)