Category Theory
Zulip Server
Archive

You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.


Stream: deprecated: our papers

Topic: a categorical semantics for bounded Petri nets


view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 10:29):

Hello everyone! Me, @fosco and @Daniele Palombi have a new paper out. This is related to the paper about mana-nets that we released last week (discussed here: ##practice: our papers>Nets with Mana: A Framework for Chemical Reaction Modelling** ), and it's part of a bigger effort in categorizing extensions of Petri nets using fibrations and lax functors.

You can find the arXiv here: https://arxiv.org/abs/2101.09100
If you don't like to read, I've also made a video presentation here: https://www.youtube.com/watch?v=mv4dyTNgz60

On the YT channel you will also find videos of other papers conceptually related to this one. Any feedback is appreciated! By the way, next week we will release yet another paper about hierarchic nets, so if Petri nets are your thing, stay tuned! :smile:

view this post on Zulip John Baez (Jan 26 2021 at 14:50):

Cool. Btw in English they're called "hierarchical" Petri nets. The word "hiearchical" is used much more than "hierarchic" (which I don't remember ever hearing).

Let's see:

"hierarchical Petri net": 9,380 Google hits
"hierarchic Petri net": 77 Google hits

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 14:54):

Very good to know, I'll replace all the occurences of "hierarchic" before the paper is out then!

view this post on Zulip John Baez (Jan 26 2021 at 15:10):

Hurrah, I got there in time!

view this post on Zulip John Baez (Jan 26 2021 at 15:15):

More importantly, I'm really glad you're tackling all these "enhancements" of Petri nets in a systematic way using category theory. It's important and interesting!

view this post on Zulip John Baez (Jan 26 2021 at 15:23):

On the one hand it makes me a bit sad because when I was first learning about Petri nets I had a dream of turning them into category theory. I did a bit of this with @Jade Master in Open Petri nets and a bit more with you, Jade and @Mike Shulman in Categories of nets.

But I wanted to do more... and I helped Jade and @Joe Moeller get going on a way of describing a colored Petri net by applying the Grothendieck construction to a functor out of the symmetric monoidal category generated by an ordinary Petri net. They spent a lot of time working on a paper about this... but they gave up, in the way young authors do, when they saw your similar work. (Older authors know that there's room in the universe for two similar papers.)

On the other hand, I'm basically happy! I'm glad you're getting all this stuff straightened out!

view this post on Zulip Fawzi Hreiki (Jan 26 2021 at 15:27):

If you don’t mind me asking, what are the big open questions or lines of development when it comes to Petri nets and category theory?

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:01):

John Baez said:

On the one hand it makes me a bit sad because when I was first learning about Petri nets I had a dream of turning them into category theory. I did a bit of this with Jade Master in Open Petri nets and a bit more with you, Jade and Mike Shulman in Categories of nets.

But I wanted to do more... and I helped Jade and Joe Moeller get going on a way of describing a colored Petri net by applying the Grothendieck construction to a functor out of the symmetric monoidal category generated by an ordinary Petri net. They spent a lot of time working on a paper about this... but they gave up, in the way young authors do, when they saw your similar work. (Older authors know that there's room in the universe for two similar papers.)

On the other hand, I'm basically happy! I'm glad you're getting all this stuff straightened out!

Jade and Joe were on the right track, and there's still a lot of work to do. The narrative that we are pushing in our papers is that:

Studying extensions of Petri nets is the same as studying lax functors CSpan\mathcal{C} \to \mathbf{Span} with C\mathcal{C} a free (symmetric, commutative) monoidal category

This is a very open and difficult question to answer, and it would definitely benefit if different groups of people would work on it. I see it a a sort of "classification of finite groups" problem, but for Petri nets. :smile:

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:03):

The reason for this is exactly that these functors correspond to slice categories via a categorical equivalence. In taste, it is also similar to what we do in out paper with Jade and Mike, when we switch from the profunctor perspective to the groupoid perspective.

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:08):

Fawzi Hreiki said:

If you don’t mind me asking, what are the big open questions or lines of development when it comes to Petri nets and category theory?

There are no "big" open questions. But since the 90s it turned out that categories were good to talk about ways in which a Petri net can run. There are 3 ways we can make this better:

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:10):

So, I believe that category theory can help a lot with point 3, in completely systhematize and classify all the possible ways to sensibly extend the concept of "Petri net".

view this post on Zulip John Baez (Jan 26 2021 at 16:14):

Fabrizio Genovese said:

There are no "big" open questions.

Too modest! Until fairly recently one big open question was this: we knew roughly that a Petri net was a way of describing some sort of symmetric monoidal category, so there should be some left adjoint functor from some category of Petri nets to some category of symmetric monoidal categories... but how exactly does this work? A lot of work was done on this, starting in 1990, but all this work had peculiarly complicated features. Only recently was this question completely solved.

view this post on Zulip John Baez (Jan 26 2021 at 16:17):

So, I can say we just now, this year, really understand the "execution semantics" of Petri nets: that is, the way they describe symmetric monoidal categories.

view this post on Zulip John Baez (Jan 26 2021 at 16:17):

But this is just the beginning: there are many variants of Petri nets, which Fabrizio just listed above, and many forms of semantics for these. They all call out for a clear treatment, which necessarily requires category theory.

view this post on Zulip John Baez (Jan 26 2021 at 16:18):

("Necessarily" because the semantics should be a functor or something fancier like a double functor, and also because Petri nets are a way of describing symmetric monoidal categories.)

view this post on Zulip John Baez (Jan 26 2021 at 16:22):

I'm particularly interested in this direction: "Petri nets with rates" have a semantics that assigns to each one of these a system of differential equations called the "rate equation". This semantics is widely studied in mathematical chemistry - the chemists have proved some deep theorems about it - but it is also applied to population biology and other populations of interacting entities. Biochemists have a lot of hard problems they want to solve, e.g. inferring a Petri net with rates from experimental data. And category theory should be able to help! But we're just barely getting started on this.

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:23):

John Baez said:

("Necessarily" because the semantics should be a functor or something fancier like a double functor, and also because Petri nets are a way of describing symmetric monoidal categories.)

So, this is where I beg to differ. I think this is just one way to represent the semantics of Petri nets. For us, categorists, this is clearly the right way. But I think we still have a long way to go to prove to the traditional Petri net community that there are definite advantages with this approach. For instance, many people are perfectly happy in representing the net semantics using graphs of states. :smile:

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 16:24):

John Baez said:

I'm particularly interested in this direction: "Petri nets with rates" have a semantics that assigns to each one of these a system of differential equations called the "rate equation". This semantics is widely studied in mathematical chemistry - the chemists have proved some deep theorems about it - but it is also applied to population biology and other populations of interacting entities. Biochemists have a lot of hard problems they want to solve, e.g. inferring a Petri net with rates from experimental data. And category theory should be able to help! But we're just barely getting started on this.

This is definitely on our list as well, albeit we have more pressing issues to tackle right now. Maybe one day... :smile:

view this post on Zulip Eric Forgy (Jan 26 2021 at 17:21):

:wave: This is probably kindergarten stuff for you guys, but when John got interested in Petri nets and held a course on network theory, I could see there was a relation to what I was doing so I started converting some of his course material into the language of "discrete calculus".

One kind of neat result was the master equation resulting from a Petri net with rates can be expressed as a vanishing boundary operator.

There is a series of related articles here.

view this post on Zulip Jade Master (Jan 26 2021 at 17:23):

John Baez said:

On the one hand it makes me a bit sad because when I was first learning about Petri nets I had a dream of turning them into category theory. I did a bit of this with Jade Master in Open Petri nets and a bit more with you, Jade and Mike Shulman in Categories of nets.

But I wanted to do more... and I helped Jade and Joe Moeller get going on a way of describing a colored Petri net by applying the Grothendieck construction to a functor out of the symmetric monoidal category generated by an ordinary Petri net. They spent a lot of time working on a paper about this... but they gave up, in the way young authors do, when they saw your similar work. (Older authors know that there's room in the universe for two similar papers.)

On the other hand, I'm basically happy! I'm glad you're getting all this stuff straightened out!

No offense but I think Joe and I would have felt more optimistic about putting out our almost duplicate paper if you were a coauthor. It can be much harder to get a journal to accept a paper when the authors are young and without a lot of reputation.

view this post on Zulip Jade Master (Jan 26 2021 at 17:31):

Fawzi Hreiki said:

If you don’t mind me asking, what are the big open questions or lines of development when it comes to Petri nets and category theory?

At least personally, I'm interested in understanding better with category theory how Petri nets are glued together. There has been a lot of work on this already including the paper Open Petri Nets which I wrote with John. I'm hoping to generalize this to get a better understanding of compositionally for Petri net-like systems. I'd also like to get more practical insights about composing these systems using category theory.

view this post on Zulip Jade Master (Jan 26 2021 at 17:36):

I suppose category theory is unique in that open questions often begin with words like "understand" :upside_down:

view this post on Zulip Mike Shulman (Jan 26 2021 at 17:42):

Jade Master said:

I suppose category theory is unique in that open questions often begin with words like "understand" :upside_down:

Maybe not literally unique, but it does seem to happen more here than elsewhere. Also words like "define".

view this post on Zulip Joe Moeller (Jan 26 2021 at 18:00):

Fabrizio Genovese said:

This is a very open and difficult question to answer, and it would definitely benefit if different groups of people would work on it. I see it a a sort of "classification of finite groups" problem, but for Petri nets. :)

I had a similar thought when I saw your mana paper. And it made me think there's something similar going on with my catalyst paper with @John Baez and John Foley. Something like classifying basic structures/functions that Petri nets can form.

view this post on Zulip Fawzi Hreiki (Jan 26 2021 at 18:02):

Thanks a lot for the responses. I haven’t really had the chance to properly dig into Petri nets (and all the related ACT stuff) so this is a pretty good springboard to that.

view this post on Zulip Joe Moeller (Jan 26 2021 at 18:05):

Jade Master said:

John Baez said:

On the one hand it makes me a bit sad because when I was first learning about Petri nets I had a dream of turning them into category theory. I did a bit of this with Jade Master in Open Petri nets and a bit more with you, Jade and Mike Shulman in Categories of nets.

But I wanted to do more... and I helped Jade and Joe Moeller get going on a way of describing a colored Petri net by applying the Grothendieck construction to a functor out of the symmetric monoidal category generated by an ordinary Petri net. They spent a lot of time working on a paper about this... but they gave up, in the way young authors do, when they saw your similar work. (Older authors know that there's room in the universe for two similar papers.)

On the other hand, I'm basically happy! I'm glad you're getting all this stuff straightened out!

No offense but I think Joe and I would have felt more optimistic about putting out our almost duplicate paper if you were a coauthor. It can be much harder to get a journal to accept a paper when the authors are young and without a lot of reputation.

Hmm, it hadn't occurred to me to ask John to join. I think at the time I was eager to try to write stuff without my advisor's help. Now I'm a bit more open to it. Maybe when John's list gets a little shorter we could consider salvaging something from it. There's some stuff in there that isn't in Fabrizio and David's paper.

view this post on Zulip John Baez (Jan 26 2021 at 18:24):

Jade Master said:

No offense but I think Joe and I would have felt more optimistic about putting out our almost duplicate paper if you were a coauthor. It can be much harder to get a journal to accept a paper when the authors are young and without a lot of reputation.

If I'd been a coauthor I would have pressured us to do the much simpler, less profound paper that I'd originally envisioned, and pushed us to do it faster. With luck we would have beat the evil @Fabrizio Genovese. :smiling_devil: But in reality I've been completely drowning in papers until recently, when I finally came up for air. Another one might have killed me.

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 18:30):

John Baez said:

Jade Master said:

No offense but I think Joe and I would have felt more optimistic about putting out our almost duplicate paper if you were a coauthor. It can be much harder to get a journal to accept a paper when the authors are young and without a lot of reputation.

If I'd been a coauthor I would have pressured us to do the much simpler, less profound paper that I'd originally envisioned, and pushed us to do it faster. With luck we would have beat the evil Fabrizio Genovese. :smiling_devil: But in reality I've been completely drowning in papers until recently, when I finally came up for air. Another one might have killed me.

Lol, to be fair me and David figured out this stuff in 2018. I also openly talked about this during the ACT2018 in Leiden. Then in 2019 we figured out that maybe we should have written something about it somewhere... xD

view this post on Zulip John Baez (Jan 26 2021 at 18:36):

I probably lectured about this stuff in 2018 or earlier...

https://www.youtube.com/watch?v=efHzGxEzDQA

view this post on Zulip John Baez (Jan 26 2021 at 18:57):

Anyway, this just shows something we all know: behind the neat surface mathematics there are people doing their usual messy people things. Luckily in this case nobody is unhappy (as far as I can tell), and Fabrizio and Jade and Mike and I later wrote a paper together. In the old days you could read much more bitter discussions of priority on the category theory mailing list!

view this post on Zulip Jade Master (Jan 26 2021 at 20:02):

I don't really care who thought of it first, (and it definitely wasn't me) but I remember telling Fab about this idea at the 2nd Statebox Summit (in 2018 I think?) John had told it to me earlier. The one difference was that we were thinking about functors F:FPSetF: FP \to \mathsf{Set} rather than lax functors into Span\mathsf{Span}. Later Joe and I figured out that you could capture colored Petri nets with guards a lot better by taking lax functors in Span. Probably Fab and David figured that out on their own as well I'm guessing.

view this post on Zulip Jade Master (Jan 26 2021 at 20:03):

So really I think that we all thought of this idea collaboratively...as it evolved as it passed between people.

view this post on Zulip Jade Master (Jan 26 2021 at 20:05):

By the way @Joe Moeller and I do have a few more refinements to this idea that haven't really been communicated yet...

view this post on Zulip Jade Master (Jan 26 2021 at 20:50):

By the way Fab was this a reference to our categories of nets paper?
Screenshot-from-2021-01-26-12-48-41.png
e.g. in categories of nets we wrote
Screenshot-from-2021-01-26-12-49-30.png

view this post on Zulip Jade Master (Jan 26 2021 at 20:51):

@Fabrizio Genovese

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 20:51):

Yes. Indeed "Categories of Nets" is also cited in this one, and in the subsequent ones :smile:

view this post on Zulip Fabrizio Genovese (Jan 26 2021 at 20:52):

I should probably paraphrased it a bit more, but I've written three different introductions to Petri nets in the last few weeks...

view this post on Zulip Jade Master (Jan 26 2021 at 20:57):

No it's fine. I was just curious, when you write a bunch of papers on the same topic there's always lots of expository overlap.

view this post on Zulip John Baez (Jan 26 2021 at 21:07):

I like my wording: "a Petri net is a seemingly simple thing" - because it comes at the start of a very intense paper examining 3 different ways to think about Petri-net-like things.

view this post on Zulip John Baez (Jan 26 2021 at 21:07):

In the end they are actually simple, but only after people have been struggling with them for > 30 years.

view this post on Zulip John Baez (Jan 26 2021 at 21:10):

It's like the old physics anecdote:

The version I heard is that Pauli was lecturing, and he said "this is obvious". A student raises his hand and says "sorry professor, I don't think that is obvious". Pauli stares at the board, back at the students. He thinks for a bit. He starts pacing in front of the class, thinking. He looks back at the board. Eventually he leaves the room, comes back 20 minutes later and says "I've thought about it and yes, it is obvious".

view this post on Zulip Eric Forgy (Jan 26 2021 at 21:26):

John Baez said:

It's like the old physics anecdote:

The version I heard is that Pauli was lecturing, and he said "this is obvious". A student raises his hand and says "sorry professor, I don't think that is obvious". Pauli stares at the board, back at the students. He thinks for a bit. He starts pacing in front of the class, thinking. He looks back at the board. Eventually he leaves the room, comes back 20 minutes later and says "I've thought about it and yes, it is obvious".

Obvious, but apparently not obviously obvious :blush:

view this post on Zulip John Baez (Jan 26 2021 at 21:30):

They often say category theory is important because it makes trivial facts be trivially trivial. I didn't know what to say when Tim Gowers responded that he was content with having them be trivial. :rolling_eyes:

view this post on Zulip John Baez (Jan 26 2021 at 21:31):

He later said this was not intended as some sort of devilishly clever put-down, but it sure sounded like it!