Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Predicate Liftings

(draft)

Definition

A nn-ary predicate lifting for a functor T:SetSetT:\sf Set\to Set is a natural transformation

2nX2TX{2^n}^X\to 2^{TX}

It follows from the Yoneda lemma that such natural transformations are in bijection with functions

T(2n)2.T(2^n)\to 2.

In one direction, we apply 2nX2TX{2^n}^X\to 2^{TX} to the idenity on X=2nX=2^n to obtain T(2n)2T(2^n)\to 2.

In the other direction, each T(2n)2T(2^n)\to 2 induces a modal operator as follows.

Given a predicate lifting :T(2n)2\triangle: T(2^n)\to 2 and a collection ϕ:X2n\phi:X\to 2^n of nn predicates ϕi:X2\phi_i:X\to 2, we obtain TX2TX\to 2 defined as

TXTϕT(2n)2TX\stackrel {T\phi}\longrightarrow T(2^n)\stackrel\triangle\longrightarrow 2

Precomposing with a coalgebra XTXX\to TX the semantics of a modal formula

ϕ\triangle \phi

is then given by

XTXTϕT(2n)2.X\longrightarrow TX\stackrel {T\phi}\longrightarrow T(2^n)\stackrel\triangle\longrightarrow 2.

A good way to understand what is going on here is to explicitely calculate all unary predicate liftings of the powerset functor.

But before doing this let us clarify terminology.

First, to simplify notation, we will only consider unary predicate liftings in the following.

Terminology: We tend to say predicate lifting for the function

:T22\triangle: T2\to 2

and modal operator (or sometimes predicate transformer) for the function that maps a predicate ϕ\phi to the predicate

ϕ:XTXTϕT22.\triangle\phi: X\to TX \stackrel {T\phi}\longrightarrow T2\stackrel\triangle\longrightarrow 2.

Question: Would it be better to reverse the terminology? Or perhaps as follows:

Anyway: Since there is a bijection between predicate liftings and modal operators, we may blur the distinction on occasion.

Example: Powerset

Let T=PT=\mathcal P be the powerset functor.

We see right away that there are 16 modal operators

P22\mathcal P2\to 2

because that is the cardinality of the set of functions of type P22\mathcal P2\to 2.

We are interested in explicitely describing all modal operators :P22\triangle:\mathcal P2\to 2 taking predicates ϕ:X2\phi:X\to 2 to

PXPϕP22\mathcal PX\stackrel {\mathcal P\phi}\longrightarrow \mathcal P2\stackrel\triangle\longrightarrow 2

We need to know that Pϕ\mathcal P\phi takes direct image. This tells us how to interpret the 4 possible results of applying Pϕ\mathcal P \phi to a set SS of successors. Writing 2={0,1}2=\{0,1\}, if (Pϕ)S(\mathcal P\phi)S is [1]

For the purpose of further calculations I propose the following abbreviations:

={}0={0}01={0,1}1={1}\varnothing=\{\} \quad\quad \overline 0=\{0\} \quad\quad \overline{01}=\{0,1\} \quad\quad \overline 1=\{1\}

for the elements of P2\mathcal P2.

Exercise: (Assumes familiarity with the classical definition of the modal operators \Box and \Diamond). Show that ,11\varnothing,\overline 1\mapsto 1 defines \Box and that 1,011\overline 1,\overline{01}\mapsto 1 defines \Diamond. [2]

Answer. [3]

Observation: The modal operator :P22\Box:\mathcal P2\to 2 coincides with :P22\bigwedge: \mathcal P2\to 2 and the modal operator :P22\Diamond:\mathcal P2\to 2 coincides with :P22\bigvee: \mathcal P2\to 2.

Modal logic is expressive up to bisimilarity and this means here that all predicate liftings P22\mathcal P2\to 2 (and also all P2n2\mathcal P2^n\to 2) are generated by those for \Box and \Diamond. Let us try to support this with some examples:

Exercise: Using ,\Box,\Diamond as well as propositional connectives, express the predicate liftings σ\triangle_\sigma defined by σ1\sigma\mapsto 1 where σ\sigma ranges over {,0,01,1}\{\varnothing,\overline 0, \overline{01},\overline 1\}. Also verify that =¬¬\Diamond=\neg\Box\neg holds for the corresponding predicate liftings.

Our next concern is to better understand the lattice (Boolean algebra) of all unary modal operators of the powerset functor P\mathcal P.

We already noted that there are 16 unary modal operators P22P2\to 2 and we exhibited some salient examples.

From general facts about Boolean algebras we can deduce the following. The Boolean algebra of modal operators P22P2\to 2 is isomorphic to the free Boolean algebra on two generators, which I call o\sf o and i\sf i. [4] These generators combine to the atoms of the Boolean algebra as

oi,o¬i,¬oi,¬o¬i.\sf o\wedge i, o\wedge\neg i, \neg o\wedge i, \neg o\wedge\neg i.

Every element of the Boolean algebra of modal operators is a join of these atoms.

Exercise: Define an isomorphism between predicate liftings P22\mathcal P2\to 2 and the free Boolean algebra generated by {o,i}\{\sf o,i\} which maps \Box to ¬o\neg\sf o and \Diamond to i\sf i.

Answer. [5]

Remark: The isomorphism in the previous exercise has been chosen in such a way that the generator o\sf o is interpreted as “some successors are outside of ϕ\phi” and i\sf i as “some successors are inside”.

  1. This choice of interpretation is suggested by how the functor P\mathcal P acts on ϕ\phi (as direct image). In particular, o\sf o symbolizes the observation that the direct image under ϕ\phi of the set of successors contains 0 and i\sf i that the direct image contains 1.

  2. From the point of view of Boolean generators there is no reason to prefer ¬o\sf \neg o over o\sf o. But from a logician’s point of view ¬o\sf \neg o, which is \Box, has the advantage of being a monotone operator. We will study this in more detail in the follow-up note on monotone predicate liftings.

Remark: Items 1. and 2. could be the starting point for a rational reconstruction of why classical modal logic is usually presented in terms of \Box and \Diamond. One would begin with the question of a logic that is invariant under bisimilarity, answer that such a logic is given by the logic of all predicate liftings and then proceed to the insight that \Box and \Diamond generate all predicate liftings in a canonical way.

Summary: We introduced some notation for the set P2\mathcal P2

and then represented the unary modal operators as subsets of P2\mathcal P2. For example,

As a corollary we identified \Box and \Diamond as the generators of the free Boolean algebra of all unary predicate liftings.

Puzzle: If we equip P2\mathcal P2 with the inclusion order, then \Box is not a monotone function P22\mathcal P2 \to 2 (when 2 is ordered as 0<10<1). On the other hand, we do know that \Box is a monotone modal operator in the sense that [6]

ϕψϕψ\frac{\phi\to\psi}{\Box\phi\to\Box\psi}

This puzzle will be resolved in a follow-up note on monotone predicate liftings.

Example: Probability Distributions

Let D\mathcal D be the functor that maps a set XX to the set DX\mathcal DX of finitely supported probability distributions.

The unary modalities are given by sets of distributions on 2

D22.\mathcal D2\to 2.

A modal operators :D22\triangle:\mathcal D2\to 2 takes a predicate ϕ:X2\phi:X\to 2 to

DXDϕD22\mathcal DX\stackrel {\mathcal D\phi}\longrightarrow \mathcal D2\stackrel\triangle\longrightarrow 2

The atoms of the Boolean algebra are the sets {br}\{b_r\} where br(1)=rb_r(1)=r. If \triangle is {br}\{b_r\}, then

p[ ⁣[ϕ] ⁣]  Pr(xϕ)=rp\in \sem{\triangle\phi}\ \Leftrightarrow \ Pr(x\in\phi) =r
Footnotes
  1. This reminds me of the square of opposition in Aristotelian logic. {1}\{1\} corresponds to ϕ\phi “belongs to all successors”, {0}\{0\} to ϕ\phi “belongs to no successors”, \top to “belongs to some but not all”. As far as I understand (not my area of expertise) Aristotle’s logic does not admit \varnothing.

  2. Here and in the following all elements not explicitly mentioned are sent to 0. For example, writing ,11\varnothing,\overline 1\mapsto 1 implies 0,010\overline 0,\overline{01}\mapsto 0.

  3. For example, in the case of \Box, one has to verify that with \triangle defined as ,11\varnothing,\overline 1\mapsto 1 the function PXPϕP22\mathcal PX\stackrel {\mathcal P\phi}\longrightarrow \mathcal P2\stackrel\triangle\longrightarrow 2 maps SXS\subseteq X to 1 iff SϕS\subseteq\phi.

  4. Intuitively, o\sf o means “some successor outside of ϕ\phi” and i\sf i means “some successor inside ϕ\phi”. It is a lucky coincidence that the symbol o\sf o reminds us of both out and 0 and i\sf i of both in and 1.

  5. Recall that \varnothing means “no successor”, 0\overline 0 means “some and all successor outside of ϕ\phi”, 1\overline 1 means “some and all successors in ϕ\phi” and 01\overline{01} means “some out and some in”. Accordingly, we map the elements ,0,01,1P2\varnothing,\overline 0,\overline{01},\overline 1\in\mathcal P2 to conjunctions of generators as follows. ¬o¬i\varnothing \mapsto \sf \neg o\wedge\neg i, 0o¬i\overline 0\mapsto \sf o\wedge\neg i, 01oi\overline{01}\mapsto \sf o\wedge i, 1¬oi\overline 1\mapsto \sf\neg o\wedge i.

  6. It also makes sense to replace \to by \le if we think of predicates as propositional functions to 2={0<1}2=\{0<1\}.