Try   HackMD

A Short Review of Powerdomains

(draft references to be added) (up)

Powerdomains can be seen as modelling non-determinstic choice. They appear in various areas of mathematics and computer science.

We review the basic relationships between lower/upper powerdomains, forward and backward simulation, and

and
modalities.

It may be worth to read the Summary first.

An Axiomatic Account of Choice

A somewhat minimal axiomatisation of a "choice" operator

is
(xy)z=x(yz)xy=yxxx=x

What is axiomatised here is choice as a set of alternatives. Given a set

X, we denote by
PX
the set of subsets of
X
and by
PωX
the set of finite subsets of
X
. A set with an operation
satisfying the three equations above is known as a semi-lattice.

Facts:

  • PωX
    is the free semi-lattice over
    X
    .
  • (Pω,η,μ)
    with
    η(x)={x}
    and
    μ(A)=A
    where
    APωX
    is a monad and the algebras for the monad are the semi-lattices.
  • Semi-lattices can be equipped with an order in two ways. The first corresponds to taking
    PωX
    with inclusion of subsets and the second to reverse inclusion.
    • The operation
      is the join in the poset generated by
      xxy
      .
    • The operation
      is the meet in the poset generated by
      xxy
      .
  • Similarly,
    P
    gives us complete semi-lattices. The initial algebra for the functor
    P
    is our usual set-theoretic universe, while the final coalgebra fo the functor
    P
    is Aczel's universe of non-well founded sets. [1]

Remark: Semi-lattices exist in many categories. This often allows us to generalise non-determinism.

Coalgebras for the Powerset Functor

(this section can be skipped)

More often than not, the reason to investigate choice is to model dynamic scenarios where agents change state by making choices. Such dynamical systems are known as coalgebras for the powerset functor and also as transition systems in process algebra and as non-determinstic automata in the theory of automata and formal languages and as Kripke frames in the theory of modal logic.

Mathematically, a coalgebra is a function

XPX. A coalgebra morphism
(XξPX)f(XξPX)

is a function

f:XX satisfying
Pfξ=ξf.

In other words,

f makes the following square commute.

Of course, a coalgebra on

X is nothing but a set with a relation
RX×X
. But coalgebra morphisms do not only preserve the relation but also reflect it in a particular way. Key to this is the following.

Exercise on (bi)simulation: We write

xRy for
yξ(x)
. The following are equivalent conditions for
f
being a forward simulation.
Pfξ  ξfxRy  f(x)Rf(y)x=f(x)  yξ(x).yξ(x).y=f(x)

The following are equivalent conditions for

f being a backward simulation.
Pfξ  ξff(x)Ry  y.xRy & y=f(y)x=f(x)  yξ(x).yξ(x).y=f(x)

The advantage of the first conditions is that they are parametric in the functor[2], the second condition is how so-called zig-zag morphisms or p-morphisms or bounded morphisms are defined in modal logic and the third conditions establish the following important fact that will continue to play a role in this note (we will give a precise definition of bisimulation later).

Fact: A function is a coalgebra morphism iff its graph is a bisimulation.

Powerdomains on Posets

The "domain" in powerdomain comes from domain theory and the theory of programming languages. It is well-known that in order to model recursively defined programs and datatypes in general one needs to extend the types-as-sets paradigm to types-as-domains. There are different ways to define domains. Typically, they involve some kind of complete order or complete metric that supports the taking of certain limits to interpret recursively defined functions. In this section, I simplify by ignoring completeness and only look at domains as ordered sets.

Functors

The powerset functor gives rise to three different powerdomains on the category of partial orders according to whether we enforce one of one of the following two alternatives.

xxyxxy

  • The functor

    Pc:PosPos maps a poset
    (X,)
    to the set of convex subsets
    PX
    . The order on convex subsets is defined as follows. [3] [4]
    ab  if xa.yb.xy and yb.xa.xy

    If

    X is discrete then
    PcX
    is just
    PX
    and
    is equality.

  • The functor

    D:PosPos maps a poset
    (X,)
    to the set of downward closed subsets (downsets)
    DX
    . The order on subsets
    a,bX
    is defined as [5] [6]
    ab  if xa.yb.xy

    which amounts to inclusion of downsets. If

    X is discrete then
    DX
    is
    PX
    ordered by
    .

  • The functor

    U:PosPos maps a poset
    (X,)
    to the set of upward closed subsets (upsets)
    UX
    . The order on upsets is defined as [7]
    ab  if yb.xa.xy

    which amounts to reverse inclusion of upsets. If

    X is discrete then
    UX
    is
    PX
    ordered by
    .

Coalgebras

As noted above, coalgebras

XPX are in bijective correspondence with Kripke frames
(X,R)
. This continues to hold in the ordered setting under appropriate conditions on the relation
R
.

(X,R) is an
U
-coalgebra iff
R
is a weakening relation, that is, iff
xxRyyxRy

(X,R) is an
D
-coalgebra iff
xxRyyxRy

Example: Let

X={x,y} be a Kripke frame where
x
has no successor and
y
is reflexive. We can turn
X
into a
U
-coalgebra by setting
xy
and into a
D
-coalgebra by setting
xy
.

(Bi)simulations

As for set-functors, any functor on ordered sets gives rise to a canonical notion of (bi)simulation, cospan bisimulation. In case of

Pc-coalgebras (bi)simulation is bisimulation, in case of
U
-coalgebras (bi)simulation is backward simulation and in case of
D
-coalgebras (bi)simulation is forward simulation.

Fact: The largest preorder on a

U-coalgebra (
D
-coalgebra) compatible with the coalgebra structure is the largest backward-simulation (forward simulation) on that coalgebra. [8]

To understand this better it helps to know more about coalgebraic (bi)similarity. But I will try to shortcut this here, with more details available at cospan (bi)simulation.

In order to define the notion of (bi)simulation induced by

U or
D
we proceed as follows.

  • A relation
    R
    from
    X
    to
    Y
    will be represented as an order
    R
    on the disjoint union
    X+Y
    .
  • Because of the universal property of the coproduct, there always will be a coalgebra
    RTR
    where
    T
    is either
    U
    or
    D
    .
  • R
    is a (bi)simulation iff
    RTR
    is monotone.

Recall from the definition of

D and
U
how these functors act on ordered sets.[9] Instantiating this procedure it is not difficult to see the following.

Proposition on

D- and
U
-(bi)simulation:
D
-(bi)simulation is forward-simulation and
U
-(bi)simulation is backward-simulation.

Simulations for Set-Coalgebras

Each functor

T:SetSet induces a notion of
T
-bisimulation.

What about simulations?

We first note that each functor

T:OrdOrd induces a notion of
T
-(bi)simulation.[10] I write (bi)simulation here because technically this notion works much in the same way for
Set
-functors and for
Ord
-functors. But for
Ord
-functors, it encompasses both simulations and bisimulations, depending on the functor.

A general way to introduce notions of simulation for

Set functors is as follows. Let
T:SetSet
be a functor. Extend
T
to a functor
T:OrdOrd
.[11] Then restrict
T
-(bi)simulation to
T
-coalgebras.

Example: Let

T=P. We can let
T
be one of
Pc
or
U
or
D
to capture bisimulation or forward simulation or backward simulation.

Remark: The ordered setting is the right one if we want to exploit that the structures at hand support an order-duality. In the example,

U and
D
capture
and
separately and both extend
P
.

Powerdomains via Generators and Relations

The finitary versions of the three powerdomains can be generated as follows. The way we describe algebras by generators and relation is the same as over sets, with the only difference that we now require

to be order-preserving (monotone).

If

X is a finite poset, then the finitely generated convex subsets
PωcX
are ismorphic to the free semi-lattice over
X
. Convexity is captured by the requirement that
is montone. [12]

If

X is a finite poset, then the finitely generated downsets
DωX
are ismorphic to the free semi-lattice over
X
satisfying
xxy
, or, equivalently, the free join semi-lattice over
X
.

If

X is a finite poset, then the finitely generated upsets
UωX
are ismorphic to the free semi-lattice over
X
satisfying
xyx
, or, equivalently, the free meet semi-lattice over
X
.

To remember how taking upsets and downsets interacts with the order, it is helpful to know the following.

Facts: Let

X be a preorder.
DX
is the free complete join semi lattice over
X
.
D
is a monad on preorders (and also on posets). The unit
XDX=[Xo,2]
is the order enriched Yoneda embedding.[13] The Yoneda embedding is a free completion by colimits (joins). The
xxy
play the role of the arrows into the colimit (coproduct, join). (The Yoneda embedding preserves all limits (meets) that may already exist in
X
.) The multiplication of the monad is the free extension of the identity
DXDX
.

We have seen that coalgebra morphisms express a particular back-and-forth condition. It is interesting to study its logical ramifications.

The key questions are: Which logic is invariant under coalgebra morphisms (bisimulation)? Which logic is invariant under forward (or backward) simulation?

The Logic of Bisimulation

The answer is given by the "bounded quantifiers"

and
. Usually they are considered as syntactic operations on formulas. But I want to treat them here as operations on "semantic" propositions, that is, on subsets of
X
where
ξ:XPX

is a coalgebra. We rewrite the usual definition of the semantics of

and
in terms of the coalgebra structure
ξ
as follows.

a=ξ1({bXba})a=ξ1({bXab})

Exercise: The following are a direct consequence of the definition above.

xayξ(x).yaxayξ(x).ya

We can now extend propositional logic by unary operators for

and
(and all equations they satisfy in all coalgebras). This is known as the modal logic
K
.

Here are some classic results of modal logic. I use "coalgebra" instead of "Kripke frame" to indicate that these results generalise.

Facts: The modal logic

K is invariant under coalgebra morphisms. Every logic that contains classical propositional logic and is invariant under bisimulation is equivalent to
K
on finite coalgebras.
K
characterises elements of coalgebras up to bisimilarity on finite coalgebras.
K
is the bisimulation-invariant fragment of first-order logic.

The notion of bisimilarity can be defined in different ways. From a coalgebraic point of view I find the following the most elegant.

Two elements of two

P-coalgebras are bisimilar (or behaviourally equivalent) iff they can be connected by some zig-zag of morphisms. [14]

The advantage of this definition is that it captures the informal idea that coalgebra-morphisms preserve behaviour and that it is parametric in the functor. But we also want a more combinatorial characterisation:

Given two coalgebras

XξPX and
XξPX
a relation
RX×X
is called a bisimulation if
xRx   only if yξ(x).yξ(x).xRyandyξ(x).yξ(x).xRy

Facts: Two elements of two coalgebras are bisimilar iff there is a bisimulation relating them. If two elements of two coalgebras are bisimular then they satisfy the same modal formulas. The converse is true on finite coalgebras (or if we extend modal logic by infinitary conjunctions).

Logics of Simulation

A finer analysis, separating forward and backward simulation, is possible. It also sheds light on the ordered generalisations of the powerset functor.

Let me write

K and
K
(this is not standard notation) for the negation-free fragment of
K
that only contains
(respectively
) formulas. It now turns out that preservation of
K
-formulas and preservation of
K
-formulas each corresponds to one direction of the definition of bisimulation.

As the Exercise on (bi)simulation above shows,

K-formulas are invariant under forward-simulation and
K
-formulas are invariant under backward-simulation.

On the other hand, we know from the Proposition on

D- and
U
-(bi)simulation
that
D
-(bi)simulation is forward-simulation and
U
-(bi)simulation is backward simulation.

We now assembled all the pieces needed for the table below.

Summary

To read the table recall that, for a poset

X, the elements of
DX
are downsets ordered according to
 ab  ab
and the elements of
UX
are upsets ordered as
 ab  ab
.

T
D
U
also known as Hoare powerdomain Smyth powerdomain
abTX
xa.yb.xy
yb.xa.xy
semilattice +
aab
aba
(bi)simulation forward backward
logic
XRTX
xxRyyxRy
xxRyyxRy
angelic demonic

Maybe the most principled way to remember that

U gives
and
D
gives
is via a direct analysis of the predicate liftings of these functors, see my note on monotone predicate liftings.

A choice satisfying

aab is sometimes called angelic because, whatever
ab
is, it is better than what I have,
a
. Dually, a demon would make sure that
ab
is not better than
a
and not better than
b
.

Generalisations

The basic ideas we have seen so far generalise in many directions.

In domain theory we are typically interested in directed complete partial orders with the Scott topology.

Domains can be seen as particular topological spaces. Many different topological spaces support some kind of powerspace, often called the Vietoris construction.

Vietoris defined a powerdomain on certain topological spaces. A good introduction to the topic is this talk by Guram Bezhanishvili. (Passcode: ?D3q#^mw).

The theory can also be developed internally in a topos.

Many results on powerdomains generalise to quantale enriched categories. And some even survive the move to categories or higher categories. The analogy here is that the powerset functor, or rather

U and
D
, generalise to taking presheaves.

Further Reading

(very incomplete)

Topology

Vietoris

Johnstone: Stone Spaces. 1982. See in particular Chapter III.4. On page 112 one finds the definitions of

(called
t
) and
(called
m
). This also works for ordered compact Hausdorff spaces and many other settings, see Guram Bezhanishvili's talk.

G. Bezhanishvili: Talk on The hit-or-miss toplogy. (Passcode: ?D3q#^mw).

van Benthem, Segerberg, Goldblatt,

Domain Theory

Plotkin 1976, Smyth 1978 [15], Plotkin 1980, Apt-Plotkin 1981, Winskel 1985 [16], Section 6.2 of Abramsky-Jung 1994, Martin-Curtis-Rewitzky 2007, Section 3 of Goubault-Larreque 2010,

Coalgebra

Aczel: Non-well founded set theory. Aczel-Mendler,

Barwise, Moss: Vicious Circles.

Baltag: A structural theory of sets.

Rutten: Universal coalgebra.

Jacobs, Hughes-Jacobs,

Pattinson

Litak etal

More references can also be found in the following papers. Kurz-Palmigiano Coalgebras and Modal Expansions of Logics, Kapulkin-Kurz-Velebil Expressiveness of Positive Coalgebraic Logic, Bilkova-Kurz-Petrisan-Velebil Relation lifting, with an application to the many-valued cover modality, Balan-Kurz-Velebil Positive Fragments of Coalgebraic Logics.


  1. To make this claim precise, one needs to extend sets with classes and extend the powerset functor continuously. ↩︎

  2. All functors can be extended to functors on ordered sets, see Positive Fragments of Coalgebraic Logics. ↩︎

  3. Note how the back-and-forth pattern of bisimulations appears again. ↩︎

  4. We could have defined this powerdomain as the set of all subsets instead of restricting to convex subsets. Then

    PX is a preorder but may not be a partial order. This gives the right definition of the "convex" powerdomain on preorders. In fact, for a preorder
    (X,)
    and
    a,bX
    we have
    ab
    iff they have the same posetal quotients of their convex closures. ↩︎

  5. Note that the definition of the order

    makes sense for aribtray subsets of
    X
    (but may only be a preorder then). ↩︎

  6. The justification for choosing this half of the convex powerdomain is the following. Two subsets

    a,bX are in the relation
    ab
    iff the downset closure of
    a
    is a subset of the downset closure of
    b
    . It follows that if
    X
    is a poset then the order
    is also a poset when restricted to downsets. ↩︎

  7. As before, the definition of the order makes sense for aribtrary subsets

    a,bX (and we can use this observation to extend the powerset functor to preorders). Note that
    ab
    iff the upset of
    b
    is a subset of the upset of
    a
    . It follows that if
    X
    is a poset then the order
    is also a poset when restricted to upsets. ↩︎

  8. Compatible means that the quotient by the preorder is again a coalgebra. ↩︎

  9. The order on

    DX is given by
    ab  if xa.yb.xy

    and the order on

    UX by
    ab  if yb.xa.xy
    ↩︎

  10. I like to write

    Ord if I do not want to commit to using preorders or posets. If you want to be specific let
    Ord
    be the category of preorders. ↩︎

  11. Let

    D:SetOrd be the "discrete" embedding.
    T
    is an extension of
    T
    if there is a natural transformation
    DTTD
    . For example, if
    T=P
    and
    T=U
    , then we have the bijection
    (PX,=)(U,)
    . ↩︎

  12. Add more detail ↩︎

  13. This deserves more explanation ↩︎

  14. See the note on Coalgebraic (Bi)Similarity for more. ↩︎

  15. On page 26 we find

    ↩︎

  16. On page 128 we find

    ↩︎