Fixpoint Equations

Fixpoint equations are elementary equations. They are represented in the form .

Domain

A domain is a finite partially-ordered set with a least element. The domain is a set with the order relation .

Monotonic Functions

The function where is a domain is monotonic if:

The function must map elements that are less than or equal to each other to elements that are also less than or equal to each other.

A different property that is often confused with monotonicity is extensivity, which says that .

Intuition

Think of as an electrical circuit mapping input to output. is monotonic if increasing the input voltage causes the output voltage to increase or stay the same. is extensive if the output voltage is greater than or equal to the input voltage.

Fixpoint of the function of a domain

Suppose , a value is a fixpoint of if . maps to itself.

Example with D being a powerset of {a,b,c}

Identity function:

  • Every point in the domain is a fixpoint of this function

  • {a}, {a,b}, {a,c}, {a,b,c} are all fixpoints

  • no fixpoints

Fixpoint Theorem with Multiple Functions

If is a domain and are monotonic, the following system of simultaneous equations has a least solution computed in the obvious way:

You can generalize this to more than two equations and to the case when has a greatest element .

Example with Multiple Functions

Power-Set Domains ()

Consider a power set domain

  • Set union and intersection are monotonic functions
  • So we can use them in systems of fixpoint equations

Example of Power-Set Domain

Equations:

Join and Meet

If is a poset and is a lower bound of if .

This is an easy generalization to lower bound of a set of elements from .

In general, a set may have many lower bounds.

Greatest lower bound (glb) of : greatest element of that is a lower bound of :

  • Caveat: glb may not always exist

If for every pair of elements glb({x,y}) exists, we can define a function called meet()

  • Meet is idempotent (), commutative, and associative

Meet semilattice: a partially ordered set in which every pair of elements has a glb

Analogous notions: upper bounds, least upper bounds, join ()

Join semilattice: analogous notion

Lattice: both a meet and join semilattice