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: event: ACT20

Topic: July 6: John Nolan et al.'s talk


view this post on Zulip Paolo Perrone (Jul 02 2020 at 02:30):

Hello all! This is the thread of discussion for the talk of John Nolan and Spencer Breiner, "Symmetric Monoidal Categories with Attributes".
Date and time: Monday July 6, 21:10 UTC.
Zoom meeting: https://mit.zoom.us/j/7055345747
YouTube live stream: https://www.youtube.com/watch?v=nEmPJVjLrOI&list=PLCOXjXDLt3pZDHGYOIqtg1m1lLOURjl1Q

view this post on Zulip John Nolan (Jul 06 2020 at 19:42):

The talk slides are attached: ACT2020_Slides.pdf

view this post on Zulip Paolo Perrone (Jul 06 2020 at 21:05):

The talk starts in 5 minutes!

view this post on Zulip Georgios Bakirtzis (Jul 06 2020 at 21:36):

Hey @John Nolan I am wondering if you could do more traditional "robot planning" with this framework like obstacle avoidance.

view this post on Zulip Georgios Bakirtzis (Jul 06 2020 at 21:36):

This was a very interesting talk btw.

view this post on Zulip Evan Patterson (Jul 06 2020 at 21:39):

Thanks for a great talk. I was curious about whether you've implemented this machinery. For example, at the end, you mentioned translation to and from existing standards like PDDL. Have you tried that?

view this post on Zulip Spencer Breiner (Jul 06 2020 at 22:07):

Hi all!

@Evan Patterson: We've been working with Angeline Aguinaldo, a CS grad student at UMD. She has implemented some machinery for turning PDDL solutions into string diagrams using Catlab & Julia.

@Giorgos Bakirtzis: Great question. For the most part we plan to piggyback on existing approaches to path planning, but there are still some interesting connections. One issue that I have thought about a little bit is using the low-level geometric semantics to inform the constraints in the high-level Boolean semantics.

More specifically, the planning language (PDDL) allows constraints on the on the actions; e.g., the goal location might be behind a door that must be open to apply a particular MoveTo operation. Right now, we put those in by hand, but I would like to do something like this:

In that way, I think we could make progress towards helping the robot identity relevant preconditions in the environment.

view this post on Zulip Evan Patterson (Jul 06 2020 at 22:10):

Hi Spencer, excellent to hear that. If you need anything on the Catlab/Julia side, definitely let me know.

view this post on Zulip Mike Shulman (Jul 06 2020 at 22:11):

I am confused about the role of the category A\mathcal{A} in the definition. It seems to be saying that every data service comes with exactly one object on which it (co)acts, which doesn't seem to be what you would want. Can you explain why the definition is written this way?

view this post on Zulip Paolo Perrone (Jul 07 2020 at 10:38):

Here's the video:
https://www.youtube.com/watch?v=5PI207RFSHU&list=PLCOXjXDLt3pYot9VNdLlZqGajHyZUywdI

view this post on Zulip John Nolan (Jul 07 2020 at 13:17):

@Mike Shulman The objects of A\mathcal{A} are meant to represent specific actions of data services on objects (with the morphisms being "updates" of these). Each object / attribute AA in A\mathcal{A} has an underlying object / entity E(A)E(A) and an underlying data service V(A)V(A), though these are not at all uniquely determined by AA.

In fact a single pair E,VE, V could appear as E(A)E(A) and V(A)V(A) for several different AA. Consider for example an entity "Book" with a value "String" - we could have attributes / objects of AA associating String to Book in various different ways, e.g. sending a book to its author, its title, its dedication, etc.

Hopefully this clarifies things a bit.

view this post on Zulip Mike Shulman (Jul 07 2020 at 15:38):

@John Nolan Thanks. So would it be equivalent to express the definition as a functor from A\mathcal{A} to the category whose objects are data-service-coactions in C\mathcal{C}?

view this post on Zulip John Nolan (Jul 07 2020 at 18:10):

@Mike Shulman I think so - at least if you define the morphisms in your codomain properly.
I didn't really touch on this in the talk, but the "morphisms of data services" we use are not the typical "homomorphisms" you'd be tempted to define but rather are arbitrary morphisms between the underlying objects.
In math: Data(C)(D,D)=C(D,D)\mathsf{Data}(\mathcal{C})(D, D') = \mathcal{C}(D, D')
This is because physical processes typically affect attributes in a way that fails to respect filtering / copying / deleting.