Definition

A complete partial order is a partially ordered set with enough suprema to interpret limits of approximations.

In common domain-theoretic usage, a complete partial order is a poset such that:

The element is pronounced “bottom”.

Directed subsets

A subset is directed if it is non-empty and every pair of elements has a common upper bound in . Concretely, this means:

Intuitively, a directed set is a family of compatible approximations: any two pieces of information can be jointly extended.

Omega-CPO

An -complete partial order is weaker: it only requires suprema of -chains, that is, monotone sequences indexed by ,

Categorically this are represented by a diagrams from to .

This is weaker than requiring suprema of arbitrary countable chains, since a countable chain may have order type other than .

Every complete partial order in the directed-complete sense is an -complete partial order, but not conversely.

Computational meaning

In semantics of computation, elements of a complete partial order are often viewed as partial pieces of information.

The order

means that is at least as defined or informative as . The bottom element represents no information, undefinedness, or divergence.

A recursive computation can then be approximated by the chain

and its denotation is the supremum of that chain.

Example

Let

with order given by

for every , and no order relation between distinct natural numbers.

Thus:

but and are incomparable. This models a computation that has either not yet produced an answer or has terminated with a definite natural number.

Convention

There is some variation in terminology.

  • Some authors use CPO for a directed poset with suprema of directed subsets.
  • Some additionally require a least element .
  • Some reserve dcpo for the directed-complete notion and use -CPO for the countable-chain version.

So the safest phrasing is to state explicitly whether one means directed-complete or only -complete, and whether a bottom element is included.