Galois Connection
Galois connection is defined by two monotonic functions and
between partial orders
on
and
on
, such that
for all and
(intuitively, the condition means that
is approximated by
).
Lemma: The condition holds iff the conjunction of these two conditions:
holds for all and
.
Lemma: Let and
satisfy the condition of Galois connection. Then the following three conditions are equivalent:
for all
is a surjective function
is an injective function
Using Galois Connection
Terminology:
- concrete domain
- abstract domain
- concretization function
- abstraction function
- (the usual) strongest postcondition (or just “strongest post”), also called
- abstract post, abstract transformer (transforms one abstract element into another)
Abstraction function for sign analysis.
Define using
and
:
Best Abstract Transformer
can in general be arbitrarily precise while preserving correctness.
Given , we would like
to be as precise as possible while being correct.
The most precise is called “best abstract transformer”.
If , then
defined using
and
is the most precise one (given the abstract domain and particular blocks in the control-flow graph).