Abstract Interpretation - Examples of Abstract Domains

Examples of Abstract Domains

One can assign to each variable x available at a given program point an interval . A state assigning the value v(x) to variable x will be a concretization of these intervals if for all x, v(x) is in . From the intervals and for variables x and y, one can easily obtain intervals for x+y and for xy ; note that these are exact abstractions, since the set of possible outcomes for, say, x+y, is precisely the interval . More complex formulas can be derived for multiplication, division, etc., yielding so-called interval arithmetics.

Let us now consider the following very simple program:

y = x; z = x - y;

With reasonable arithmetic types, the result for z should be zero. But if we do interval arithmetic starting from x in, one gets z in . While each of the operations taken individually was exactly abstracted, their composition isn't.

The problem is evident: we did not keep track of the equality relationship between x and y; actually, this domain of intervals does not take into account any relationships between variables, and is thus a non-relational domain. Non-relational domains tend to be fast and simple to implement, but imprecise.

Some examples of relational numerical abstract domains are:

  • congruence relations on integers
  • convex polyhedra – with some high computational costs
  • "octagons"
  • difference-bound matrices
  • linear equalities

and combinations thereof.

When one chooses an abstract domain, one typically has to strike a balance between keeping fine-grained relationships, and high computational costs.

Read more about this topic:  Abstract Interpretation

Famous quotes containing the words examples of, examples, abstract and/or domains:

    There are many examples of women that have excelled in learning, and even in war, but this is no reason we should bring ‘em all up to Latin and Greek or else military discipline, instead of needle-work and housewifry.
    Bernard Mandeville (1670–1733)

    No rules exist, and examples are simply life-savers answering the appeals of rules making vain attempts to exist.
    André Breton (1896–1966)

    One of the fundamental reasons why so many doctors become cynical and disillusioned is precisely because, when the abstract idealism has worn thin, they are uncertain about the value of the actual lives of the patients they are treating. This is not because they are callous or personally inhuman: it is because they live in and accept a society which is incapable of knowing what a human life is worth.
    John Berger (b. 1926)

    I shall be a benefactor if I conquer some realms from the night, if I report to the gazettes anything transpiring about us at that season worthy of their attention,—if I can show men that there is some beauty awake while they are asleep,—if I add to the domains of poetry.
    Henry David Thoreau (1817–1862)