2. 2/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Goals
Thank you, ACT Summer School organizers!
I want talk about the application of Dialectica categories to
modelling Petri Nets.
I start by describing Petri nets and Dialectica categories.
Then I show how to think of special Petri nets as a kind of
Dialectica category (following Brown and Gurr) and how to think
of usual Petri nets as dialectica categories.
Then we discuss if this is good modelling or not, and why
Valeria de Paiva ACT 2020
3. 3/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Outline
Petri nets
Dialectica categories
Elementary nets
Petri nets as double dialectica constructions
Time permitting I will try to compare with new work on Petri nets.
Valeria de Paiva ACT 2020
4. 4/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Using Categories
Category: a collection of objects and of morphisms, satisfying
obvious laws for composition of morphisms;
there is an identity for each object and morphisms of the correct
domain and co-domain compose, associatively.
Functors: the natural notion of morphism between categories
Natural transformations: the natural notion of morphisms between
functors
Constructors: products, sums, functions spaces, limits, duals....
Adjunctions: an abstract version of equality
Valeria de Paiva ACT 2020
5. 5/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Categorical models of Petri Nets
Types are formulae/objects in appropriate category,
Terms/programs are proofs/morphisms in the category,
Logical constructors are appropriate categorical constructions.
Most important: Reduction is proof normalization (Tait)
Outcome: Transfer results/tools from logic to CT to CSci, etc
Valeria de Paiva ACT 2020
10. 10/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Why Petri Nets?
Modeling is hard. People seem to like Petri nets.
Concurrency is hard. People seem to like Petri nets
(non-determinism vs causal independence).
Huge number of types: colored, stochastic, higher-order, etc..
Huge number of papers/books/systems
Natural application of Linear Logic
Recent work on Baez/Master/Moeller and independently of
Lopes/Hauesler/Benevides
Valeria de Paiva ACT 2020
12. 12/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
What’s the problem?
A long-standing problem in the theory of Petri nets has
been the lack of any clear methodology for producing a
compositional theory of nets (and indeed the lack of even
a clear notion as to what a map between nets should be).
Brown and Gurr, 1990
Winskel suggests that Petri nets and other models of concurrency
can be profitably cast into an algebraic framework.
Many people followed this suggestion with several categorical
models of Petri nets proposed.
Our proposal is to use Dialectica morphisms, so let us check the
Dialectica construction for Linear Logic
Valeria de Paiva ACT 2020
13. 13/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Linear Logic
A proof theoretic logic described by Girard in 1986.
Basic idea: assumptions cannot be discarded or duplicated.
They must be used exactly once – just like dollar bills (except
when they’re marked by a modality !)
Other approaches to accounting for logical resources before.
Relevance Logic!
Great win of Linear Logic:
Account for resources when you want to, otherwise fall back
to traditional logic via translation A → B iff !A −◦ B
Valeria de Paiva ACT 2020
14. 14/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Linear Implication and (Multiplicative) Conjunction
Traditional implication: A, A → B B
A, A → B A ∧ B Re-use A
Linear implication: A, A −◦ B B
A, A −◦ B A ⊗ B Cannot re-use A
Traditional conjunction: A ∧ B A Discard B
Linear conjunction: A ⊗ B A Cannot discard B
Of course: !A !A⊗!A Re-use
!(A) ⊗ B B Discard
Valeria de Paiva ACT 2020
15. 15/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
The challenges of modeling Linear Logic
Traditional modeling of intuitionistic logic:
formula A object A of appropriate category
A ∧ B A × B (real product)
A → B BA (set of functions from A to B) and
they relate via adjunction
A ∧ B → C ⇐⇒ A → Hom(B, C) = CB
These are real products, have projections (A × B → A)
and diagonals (A → A × A) corresponding to deletion and
duplication of resources.
Not linear!!!
Need to use tensor products and internal homs.
Hard to define the “make-everything-usual”operator ”!”.
Valeria de Paiva ACT 2020
16. 16/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Dialectica Categories
The category Dial2(Sets) has as objects triples A = (U, X, α),
where U, X are sets and α is an ordinary relation between U and
X. (so either u and x are α related, α(u, x) = 1 or not.)
A map from A = (U, X, α) to B = (V , Y , β) is a pair of functions
(f , F), where f : U → V and F : X → Y such that
U
α
X
⇓ ∀u ∈ U, ∀y ∈ Y α(u, Fy) implies β(fu, y)
V
f
?
β
Y
6
F
or α(u, F(y)) ≤ β(f (u), y)
Valeria de Paiva ACT 2020
17. 17/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Dialectica Categories Constructions
On the board, lost slides.
Do internal-hom and tensor. and maybe adjunction.
Theorem: The category Dial2(Sets) is a sound model for
(intuitionistic and classical) Linear Logic.
And Petri Nets...
Valeria de Paiva ACT 2020
18. 18/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Dialectica Categories as (safe) Petri Nets
A category of safe nets SNet objects are of the form
(E, B, pre, post). (pre, post are relations E × B → 2) Morphisms
are pairs of functions (f , F) making the two diagrams below
commute.
E
pre
B
⇓
E
f
?
pre
B
6
F
E
post
B
⇑
E
f
?
post
B
6
F
where as before ∀e ∈ E, ∀b ∈ B pre(e, Fb ) implies pre (fe, b )
and also, the corresponding reversed implication for post:
∀e ∈ E, ∀b ∈ B post(e, Fb ) is implied by post (fe, b ).
Brown and Gurr 1990
Valeria de Paiva ACT 2020
19. 19/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Dialectica Categories as Petri Nets
Why is this good? Structurally safe nets, say Brown and Gurr.
Can construct refinement morphisms of nets.
Can lift all the categorical structure of Dial2(Sets) to a given
category of nets. Are these nets any good?
Similar to Winskel’s nets, constructed for different reasons.
Valeria de Paiva ACT 2020
20. 20/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Dialectica Categories as (general) Petri Nets
A category of safe nets SNet objects are of the form
(E, B, pre, post), BUT where pre, post are maps into N, a lineale.
Morphisms are pairs of functions (f , F) making the two diagrams
below commute.
E
pre
B
⇓
E
f
?
pre
B
6
F
E
post
B
⇑
E
f
?
post
B
6
F
where as before ∀e ∈ E, ∀b ∈ B pre(e, Fb ) implies pre (fe, b )
and also, the corresponding reversed implication for post
conditions:
∀e ∈ E, ∀b ∈ B post(e, Fb ) is implied by post (fe, b )
Valeria de Paiva ACT 2020
21. 21/21
Introduction
Petri Nets
Linear Logic
Dialetica cats
Dialectica and Petri
Conclusions
Dialectica morphisms correspond to simulations between
Petri nets, using markings.
CCS constructors can be simulated too.
Nielsen and Winskel have a collection of work on categories of
concurrency models, how much of that can be reproduced in
our setting?
Is this good modelling? Clearly people like Petri nets,
especially probabilistic ones. What is the theorem that we
want to prove?
Can this work shed some light on how to model probabilistic
theories using category theory?
at least it gives me the impulse to read about it!
Valeria de Paiva ACT 2020