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.
There hasn't been much attempt to use this channel as a community forum. Possibly "community" posts like this ought to be on a different channel than the usual ones talking about technical questions. Anyway, I just wrote something on Twitter that I'd like to also copy here in the hope of starting a fight intelligent conversation. Copy of that thread follows:
A lot of applied category theorists are in for a bit of a shock when they encounter actual real world problems
Real world problems tend to contain nasty complicating factors that can’t be handled in a nice way - but all different to each other
Open games are pretty broad in the kind of problems they could in principle be applied to, but even so, problems that they can actually be applied to with only reasonable amounts of hackery are like gold dust. Nasty complicating factors are the norm, not the exception
Converting your fully worked out ACT idea into an actual functioning application is at least as hard as working that idea out in theory - and for me at least as fun too - and it requires an almost completely disjoint skill set as a researcher
This had better be considered just as much part of the field of applied category theory if it’s not going to be a failure. So far there’s been a negligible amount of representation of this half at ACT events. We had industry talks but they do generalities, we need serious details
Most applied category theorists are humble enough to admit that categorical methods can’t do everything. But if you stop at that point, then you never actually solve problems. You need to accept the limits of categorical methods, then keep going anyway with other methods
Isn't the remaining hackery for someone else to do implicitly though, as with all theoretical CS? The quantum information people don't worry too much about how qubits are physically realised; the programming languages people don't make production-ready software libraries, only tech demos (if even then); the verification people come up with nice new techniques but it would be a far cry for them to be implemented in state-of-the-art model checkers by the same people. Unless I'm misunderstanding what you mean. Should the A in ACT be taken so literally?
Nick Hu said:
The quantum information people don't worry too much about how qubits are physically realised
I don't think this is the case... although there's enough CQM people on this channel who know better than either of us
Nick Hu said:
Isn't the remaining hackery for someone else to do implicitly though
Obviously every individual researcher works on whatever they want, in the end. But it's my opinion that if too many people do this then ACT will be a failure
The problem is that these two "halves" can't be done disjointly. You need massive amounts of communication both ways, which is very hard. It's easier when one person can do both
I'd worry that in particular because ACT is so obviously cross-field, the application part is better suited to a domain specialist than a category theorist who knows a bit of application. Like the difference between knowing lots of PL theory versus software engineering - the skillsets might be related but they aren't the same, and when you look at most software written by academics that fact is amplified
I guess it depends what one means by ‘applied’. Is the theory of PDEs ‘applied analysis’ or does one have to go even further to numerical analysis of PDEs for it to really be ‘applied’?
One perspective is that the goal of applied category theory is not to make useful applications, but instead to clarify and understand the basic principles which underly various applied subjects.
The perspective @Jade Master mentions above is my perspective on this. I think it's irresponsible to promise that category theory is going to make the day to day work in a given field easier.
If there are gains in that direction they're probably going to be the "point of view is worth 60 IQ points" kind.
... and I don't think we can really promise that, although it seems to happen reasonably often.
Jade Master said:
One perspective is that the goal of applied category theory is not to make useful applications, but instead to clarify and understand the basic principles which underly various applied subjects.
I like this perspective, but it's a hard sell to those who think their subject of interest was doing just fine before. This might be easier to explain with the following:
Nick Hu said:
Isn't the remaining hackery for someone else to do implicitly though
This only works if this someone else exists. If we are trying to bring new methods/povs to a field that isn't already interested in CT, then chances are that this "someone else" doesn't exist unless we first demonstrate the value of our tools (in ways the practicioners can themselves appreciate).
Well there won’t be direct applications immediately but anything which clarifies basic principles should inevitably lead to new developments.
Well, given that there are fields where people tried to write categorically in the past and then such approaches fizzled down (or more currently, people are writing with a categorical pov but face no takers), I'd say that the theorists having an impression that something has been clarified doesn't inevitably lead to anything.
At the very least you need to convince a practicioner that something has been clarified
Martti Karvonen said:
At the very least you need to convince a practicioner that something has been clarified
I think this is really the core issue. Sometimes categorifying something just makes it more complicated.
I think that we need to "turn the handle", yes, but when we are done turning the handle we need to look really hard at what comes out of our machinery. Is it actually telling us anything in this case? What exactly? How can we make it simple?
But whenever any family of concepts is unified under some abstract framework, there is front loading of work
Fawzi Hreiki said:
But whenever any family of concepts is unified under some abstract framework, there is front loading of work
What I'm saying is that sometimes we frontload the wrong work.
The cash out only comes when that abstract framework is understood. Then one can go and apply it to various previously disconnected things.
Allow me to clarify: I think pure mathematics is a valuable activity.
I agree there is value in this (that's why I'm in CT), but those who don't buy this need to see some cashing out happening first before they learn a field they perceive as esoteric & useless
Like there's the saying about horses and water, but we gotta at least lead them to water and not just gesture in the direction
Maybe these kinds of developments are not for those older specialists anyway. Perhaps the benefit will be that newcomers will build intuition directly with the new ways.
New ways of thinking often require a kind of naivety which you won’t really find in experts.
That's indeed one very important mechanism and shouldn't be discounted. That said, given that the revolution doesn't inevitably follow once a paper (or even a book) has appeared discussing both CT and some field X, one shouldn't count on this being automatic.
Jules Hedges said:
Anyway, I just wrote something on Twitter that I'd like to also copy here in the hope of starting a
fightintelligent conversation
Mission accomplished
So it actually looks like I'm more optimistic than most. Or maybe optimistic isn't the right word... I'm more aggressive than most at trying to get a bigger result. Ultimately what it comes down to is that I enjoy doing the other kind of research
To me (and this is also entirely subjective and it's definitely not my intention to hate on anyone), doing ACT in the sense of formulating some problem domain as a category is super enjoyable as a process, but "clarification" as an end result is kinda boring
I guess a good test case for whether clarity was actually achieved was whether you can do with ease something that was difficult to do before
an easy case is streamlining known results/methods, a harder case is doing something flat-out new
Arguably by then you've gone beyond "mere" clarifying, because you have a method
It probably comes down to whether the "something" that went from difficult to easy is something that it's useful to be able to do more easily (and the exactly meaning of "useful" is probably a big point of debate just by itself)
To the people who think ACT should just be theory, what would you want to call the work of people who figure out how to use it explicitly for domain applications? "Applied ACT"? "ACT for X"?
I also think that these people underestimate the years of contact required with people who understand category theory in order to apply CT to a domain in a way that makes sense and is helpful. How will these people get these years of contact if they are not considered part of the ACT community?
This looks like the question that I should have asked!
As a group we don't talk explicitly enough about the basic fact that interdisciplinary research of all kinds is really really hard
The name "applied applied category theory" does get thrown around sometimes, which I think is a terrible name for multiple reasons
I don't like carefully defining the borders between fields, e.g. defining the difference between "category theory" and "applied category theory", or "applied applied category theory". I've never understood why people are so interested in defining fields of study. I guess there are practical reasons for doing it, but some people seem to actually enjoy it, or need it for their mental equilibrium.
I'm always trying to soften the borders between fields, in order to increase communication between people. The "ACT community" is a useful construct if it helps people meet, learn new ideas and work together to solve problems. It becomes a less useful construct when it starts walling itself off, e.g. by saying "ACT is not about X".
Yeah I think I've met some people who were skeptical of ACT because they were worried that making it into its own thing would lead to people exclusively talking to each other rather than working with the wider world
The real question isn't to arbitrarily name and delineate subfields. It's the one that @Joshua Meyers said: how to be more welcoming as a field towards the people who are spending most of their time engaging with the messy details of an application and only a bit of it doing category theory, at a time when most (but not all) people who call themselves ACTists are not doing that
This is a very interesting conversation. I think my perspective is that the 'A' in 'ACT' is really misleading. The relation 'applied to' is not a function, and it's not even acyclic. You can 'apply' a concept ten times before really arriving to something you might consider 'concrete'.
So in this broad sense (which is what I sorta always thought myself, I now realize), ACT is using categorical language in someone else's backyard. That backyard can be a theoretical field itself, and a lot of very nice work is happening along this lines (see work on Petri nets, topos theory for quantum mechanics, categorical probability theory, etc.)
So Jules I think your call is justified, but I won't look scoldingly (which you probably didn't imply) on people who don't care about going all the way to 'touchdown' and get their hands dirty.
Also, as said above, I think it's rather naive to imagine categorical methods will ever be directly applied to a concrete problem, in the sense that very little math is ever directly applied in this sense. CT provides great scaffolding for thought, which pays dividends in applications. I look forward to have CT taught to young scientists, engineers, and whatnot because that's how the models they're going to study should be formulated, not because they're going to take limits of functors 'in the wild'. This is the same reason we teach people the language of sets, or complex numbers, or even Arabic numerals: they're useful language to talk about useful stuff.
Jules Hedges said:
The real question isn't to arbitrarily name and delineate subfields. It's the one that Joshua Meyers said: how to be more welcoming as a field towards the people who are spending most of their time engaging with the messy details of an application and only a bit of it doing category theory, at a time when most (but not all) people who call themselves ACTists are not doing that
Are we unwelcoming right now? My guess is that there's simply not a lot of categorical literate people out there which are doing something else.
I think the best way to see our work applied and have people tell us concrete stories about dirty problems in ACT20xx is to teach CT to people who are going to work somewhere else. Biologists, chemists, physicists, engineers, economists.
Matteo Capucci (he/him) said:
Are we unwelcoming right now? My guess is that there's simply not a lot of categorical literate people out there which are doing something else.
I don't think so if you say it as directly as that (although it's not our place to judge!)
Jules Hedges said:
Matteo Capucci (he/him) said:
Are we unwelcoming right now? My guess is that there's simply not a lot of categorical literate people out there which are doing something else.
I don't think so if you say it as directly as that (although it's not our place to judge!)
Right, it looks a bit too harsh indeed :sweat_smile: What I wanted to say is more peacefully expressed in the second message.
But, look for example at the accepted talks at the ACT conferences. The vast majority are on the theoretical side, from my perspective. For sure the main reason is just that there isn't much research even happening on the more-applied side. But I do worry that, for example, there could have been talks rejected on grounds like being "not sufficiently categorical". (I don't have any idea whether this has actually happened)
If that's case, I'd be disappointed too, yes
Jules Hedges said:
The real question isn't to arbitrarily name and delineate subfields. It's the one that Joshua Meyers said: how to be more welcoming as a field towards the people who are spending most of their time engaging with the messy details of an application and only a bit of it doing category theory, at a time when most (but not all) people who call themselves ACTists are not doing that
I agree that we should be welcoming to people who really want to get into the messy details of applications, but I'm curious why you think "most (but not all) people who call themselves ACTists are not doing that". I kinda wish you'd name names here instead of broadly complaining about "most (but not all)" of us. But that might turn up the temperature of the conversation too high.
So, maybe you could just say more about how ACTists should be more welcoming and why they (we?) are not.
For example, is talking a lot about fancy math "not welcoming"? I can see why it might be off-putting, but I'm afraid I'm never gonna stop doing that.
I guess if I had an answer to the "how" I would have just said it at the start
Doing CT workshops for non-CT people could be a way to welcome people, although a tendentious one
Jules Hedges said:
But, look for example at the accepted talks at the ACT conferences. The vast majority are on the theoretical side, from my perspective. For sure the main reason is just that there isn't much research even happening on the more-applied side. But I do worry that, for example, there could have been talks rejected on grounds like being "not sufficiently categorical". (I don't have any idea whether this has actually happened)
I don't think you should worry about this too much. From what I saw in ACT2019 and ACT2020, the few talks that were rejected were mainly from people who were either utterly crazy or using category theory to do not much at all. I don't recall rejected talks that, say, solved an interesting practical problem using a whole bunch of tricks including a little category theory.
Jules Hedges said:
I guess if I had an answer to the "how" I would have just said it at the start
Well, then just say in which way you think some unnamed people are being unwelcoming.
I think this is almost the same as saying how they could be more welcoming: see that thing you're doing? stop doing that!
You're worried that someone is being unwelcoming, but you're not saying why you think this.
Or maybe this "unwelcoming" business was not your main point, in which case maybe I should drop it.
I completely agree with everything you said about how hard it is to actually go from category theory to something very concrete and practical. I think typically there needs to be a long chain of people talking to other people, not one person doing it all, or even two (a category theorist and a "practitioner").
I thought the main point was a call for doing more convincing applications
Here's the concrete recommendation in the OP:
This had better be considered just as much part of the field of applied category theory if it’s not going to be a failure. So far there’s been a negligible amount of representation of this half at ACT events. We had industry talks but they do generalities, we need serious details
So
1: consider "applied ACT" part of ACT.
2: represent this part of ACT at conferences
I think the "unwelcoming" thing is just one speculation as to why 2 isn't happening
Who is actually doing this "applied ACT" and what are they doing?
Once we know, the ACT conferences would be glad to have talks by such people.
@John Baez, why do you think we don't know? Because there is nobody doing it or some other reason? If because there is nobody doing it, then why is nobody doing it?
Jules is the one who seems to think there's some "applied ACT" work hiding in the hills out there, which the ACT conferences have neglected.
So then you think we don't know because there is nobody doing it?
Well, I'll go this far: if something doesn't exist, that would explain why we don't know about it.
Well it would be the beginning of an explanation. The explanation then would have to go on to say why something doesn't exist.
I've always considered "ACT" its own thing distinct of "applied category theory", because to me it seems to be about various flavours of monoidal category theory and their gadgets. Are the people who are doing categorical semantics or coalgebra not doing 'applied' category theory? I think they are, and they seem to have their own distinct communities.
I think the question about the precise boundaries of the "field" ACT disappears if you change the word to what I think it really is. ACT is a research community. If people doing different stuff are involved in conversations, they're obviously in the community.
@Joshua Meyers - I've been helping organize all the ACT conferences so far, and I think all the organizers are really eager to have "really applied" talks, and I think there have been a few such talks - I could list some if I go over the old conference programs to refresh my memory. But there haven't been many. I think that's because ACT as a field is very new...
except for category theory as applied to theoretical computer science, which has its own conference series, full of talks...
and category theory applied to mathematical physics, which has its own conference series, full of talks...
and category theory applied to quantum computation, which has its own conference series, full of talks...
Perhaps ACT is sort of all the applications of category theory that haven't worked very well yet!
I know this has been discussed before at past organizational meetings, but I'll bring it up again. Maybe the ACT conferences should specifically make room for talks that are not actually about research which utilized CT in some way, but are actually talks from domain people about their domain, and about they ways they think maybe somehow CT could possibly get in the game. I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves.
"I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves." I don't think this is necessarily the best way to understand what ACT is from on outside perspective. It would be easy to see a bunch of ACT talks and get the impression that this is just another formalism of the same sort that someone is used to. It wouldn't necessarily convey that it is an entire way of thinking. I think a better way for someone outside the field to understand what it is so that they could talk about "ways they think maybe somehow CT could possibly get in the game" would be to read something like the NIST report which explains what benefits ACT can bring to a field from a high-level perspective. Hopefully more such material can be written
Martti Karvonen said:
Nick Hu said:
Isn't the remaining hackery for someone else to do implicitly though
This only works if this someone else exists. If we are trying to bring new methods/povs to a field that isn't already interested in CT, then chances are that this "someone else" doesn't exist unless we first demonstrate the value of our tools (in ways the practitioners can themselves appreciate).
I was having a conversation with @Joshua Wrigley and @Riccardo Zanfa about this earlier today. A researcher doing some research and publishing it with aspirational excuses of the form "this could be applied in domain X to solve problem Y!" are worthless unless the same researcher either goes some way towards solving problem Y or they manage to convince some researchers in domain X to take the time to absorb and apply their work. Otherwise the inertial barrier of entry for researchers in domain X to understanding the new theory will outweigh the speculative benefits that theory could bring. I reckon a lot of potentially valuable work falls into obscurity in this way.
Jules Hedges said:
The name "applied applied category theory" does get thrown around sometimes, which I think is a terrible name for multiple reasons
Have you considered studying the reasons it's a bad name? This could be the beginning of the field of "applied applied category theory theory"! :stuck_out_tongue_wink:
Here's something everyone can do: consider a continuum from the most applied to the most theoretical. Consider your location on this continuum. Now be a liaison between those to your left and those to your right.
@Jules Hedges , to answer you question with my personal experience, every time I tried to do something really applied and tried to spin it in the ACT community I have been either rejected or turned down. Is it possible that my work was bad? For sure, but in general I think that the overwhelming majority of people in ACT doesn't want to see all the nitty-gritty details that pop up in a real application. I think this is due to two reasons:
My personal approach now is to publish any result that is really applied to journals in those fields, and bypassing the ACT community altogether.
Also, the industry talks are honestly a bit of a joke. I had the distinct feeling that the only reason why we have them around is that we want to be able to say that we collaborate with industry. Very few people seem actually interested to understand what does it take to turn an idea into something viable and sellable. Which is fine I guess, to each their own research domain.
My personal approach now is to publish any result that is really applied to journals in those fields, and bypassing the ACT community altogether.
This seems like the best approach, because then your work will be seen by the people to whom it should matter the most (assuming you are interested in concrete applications).
Well, I consider it a disgrace and a huge defeat for this community, but in practice it is the only one that works.
I said it multiple times, but, for instance, in my experience the best way to have a publicaton rejected from the ACT conference is to actually include some real code in your paper, instead of just saying that "this can be turned into code." :smile:
Fabrizio Genovese said:
Well, I consider it a disgrace and a huge defeat for this community, but in practice it is the only one that works.
But otherwise, are you expecting ACT proceedings/conferences to involve literally every field to which category theory might be applied? That doesn't seem feasible.
No, my expectation is that when real applications start to be developed from an ACT subfield, that subfield goes its own way, with its own conference venues etc.
At that point, the ACT "main conference/venue and such" will serve the purpose of keeping everyone updated about what's happening in each subfield
In that case, what's the issue with having to publish in the venues of the target field rather than in ACT? Like shouldn't that be the end-game anyway, and ACT is there to help with that process?
No, because in real life you end up in a limbo: Your stuff is too detailed/applied for act, and still not useful enough for applications.
So you get nowhere to do, and the research you can do is just toy models.
I would have thought the ACT community would be focused on developing (abstract and concrete) tools that are useful for applying category theory to various domains. But the research produced using such tools would be relevant specifically to the communities in the domains themselves.
Meaning there are two aspects of research: making it easier to apply category theory, and actually applying category theory.
If I'm a researcher interested in domain X, I don't see that I would necessarily care so much about applications of CT to domain Y (other than being happy that ACT was useful to domain Y). But I would be interested in the techniques used in that research that could be generally applied.
This is the problem that any interdisciplinary researcher faces, it is not specific to ACT. An individual solution is to write two versions of every paper, for each of the two fields you are between. An societal solution would involve laying off some of the pressure on researchers, as interdisciplinary work takes longer to come to fruition per unit effort, and also takes longer for people in just one of the fields you are between to understand
Nathanael Arkor said:
If I'm a researcher interested in domain X, I don't see that I would necessarily care so much about applications of CT to domain Y (other than being happy that ACT was useful to domain Y). But I would be interested in the techniques used in that research that could be generally applied.
Again, this is very far from the reality of things. Let me give you a very simple example. There are quite a lot of people doing research in artificial intelligence using categorical methods here. 90% of this research is nowhere near to be publishable in a specialized AI venue. Why? Well, they care about data, complexity studies, how your model outperforms other models etc. They do not care too much about having a conceptual breakthrough until your conceptual breakthrough is provable via some standard testing.
The result is that there is a very well define time in your career, that can last months, or even years, where basically no one wants the stuff you do.
Not only this is not nice, I think this is bad for science as a whole. :smile:
It's the same thing with cryptography, and a lot of other stuff. The point is that if you say "category theory can make things better in this field" then it should be the responsibility of applied category theorists to persist until this claim results convincing to outsiders.
Instead, the approach of the community seems to be "well, for us a toy model can do, and then good luck convincing everyone else"
This was also the situation categorical quamtum mechanics was in for years. But they persisted, the community fostered real applications of CQM, and only now, after -> many <- years we see talks about ZX calculus and such presented at quantum machine learning venues and whatnot. This wouldn't have been possible -> at all <- if QPL wasn't as open and welcoming as it has been up to now.
Fabrizio Genovese said:
The point is that if you say "category theory can make things better in this field" then it should be the responsibility of applied category theorists to persist until this claim results convincing to outsiders.
I can't speak for what did or didn't get accepted at ACT (there's two conflicting descriptions of it in the thread already), but I think the thread so far is full of people agreeing with this.
But your point about needing a safe haven until you get actually applicable is good
Well, I know it is. I have been unbelievably depressed for most of 2019-2020 also for this reason. :wink:
Yes, this is the kind of thing I meant by "developing (abstract and concrete) tools that are useful for applying category theory to various domains". That is, the work that is not ready to be applied directly to the domain, but preparatory research to that end.
Joe Moeller said:
I know this has been discussed before at past organizational meetings, but I'll bring it up again. Maybe the ACT conferences should specifically make room for talks that are not actually about research which utilized CT in some way, but are actually talks from domain people about their domain, and about they ways they think maybe somehow CT could possibly get in the game. I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves.
I think trying to foster interactions like this is a great idea. The big annual ACT conference is probably not the best time to do it: everyone is busy listening to dozens of talks, and - if it happens in person - trying to meet and talk to all their old friends. So, everyone is too distracted to really focus on a brand new domain of knowledge. I think it might work better to have a specialized workshop on "Category Theory and X", with a smaller number of people, including an expert on X who gives lectures mainly on X, and category theorists interested in X - who ideally already know a bit about X. If it lasted for a week and focused on this one subject, people might get some good ideas.
(BTW I was able to cope with my depression by deciding that I do not give a flying fuck about applications, I just started doing Petri nets again xD)
@Fabrizio Genovese do you have issues with specific people or with the "community" as a whole? If you have issues with specific people have you reached out to them? If you have reached out to them were you able to successfully communicate your issues to them?
Fabrizio Genovese said:
(BTW I was able to cope with my depression by deciding that I do not give a flying fuck about applications, I just started doing Petri nets again xD)
Isn't that why we pick category theory in the first place? :wink:
Joshua Meyers said:
Fabrizio Genovese do you have issues with specific people or with the "community" as a whole? If you have issues with specific people have you reached out to them? If you have reached out to them were you able to successfully communicate your issues to them?
No, I don't have issues with specific people. I just came to realize that real applications are unwelcomed here, and that me working in that direction and trying to publish said applications in our venues was the perfect recipe to feel like a failed researcher
So I always smile a bit when I read this kind of discussions, because my perception about what is the state of affairs is very clear xD
Nick Hu said:
Fabrizio Genovese said:
(BTW I was able to cope with my depression by deciding that I do not give a flying fuck about applications, I just started doing Petri nets again xD)
Isn't that why we pick category theory in the first place? :wink:
No I'm one of those freaks that really wanted to take the "A" in "ACT" seriously xD
Joshua Meyers said:
"I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves." I don't think this is necessarily the best way to understand what ACT is from on outside perspective. It would be easy to see a bunch of ACT talks and get the impression that this is just another formalism of the same sort that someone is used to. It wouldn't necessarily convey that it is an entire way of thinking. I think a better way for someone outside the field to understand what it is so that they could talk about "ways they think maybe somehow CT could possibly get in the game" would be to read something like the NIST report which explains what benefits ACT can bring to a field from a high-level perspective. Hopefully more such material can be written
I wasn't thinking of it being strictly for the benefit of the speaker learning CT. I was thinking it could be a way of going out of our way to include domain specialists. These talks could be by invitation as well.
I wasn't claiming otherwise. I was just replying to "I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves." I think that if the speaker's only exposure to ACT is technical ACT talks, they won't be able to speak very well on "ways they think maybe somehow CT could possibly get in the game" in their field.
Hmmm there are people doing CT btw in other fields but hide it. As in they use categorical results but don't explicitly call out this community (including Ames that everyone knows, Tabuada, Topcu from my field). I have always wondered why that is.
Joshua Meyers said:
I wasn't claiming otherwise. I was just replying to "I'm thinking the speaker is someone who may have heard some talks from ACT people, but they don't strictly "know" any category theory themselves." I think that if the speaker's only exposure to ACT is technical ACT talks, they won't be able to speak very well on "ways they think maybe somehow CT could possibly get in the game" in their field.
Oh, I see now. Ok, well it doesn't matter as much how they came across CT. I was just imagining one possibility for such a person. I like John's suggestion though. Invite a few domain people who may be interested in CT, Invite CTists interested in domain. Talk to each other for a week.
Here's another suggestion. Maybe we should have a couple invited longer talks at the annual ACT conference describing "case studies" of more-or-less successfully completed applications of category theory. I think they'd need to be long to explain:
a) the problem being solved, which is some problem outside category theory and thus not well-understood by most of the audience,
b) how they tried to apply category theory to it,
c) what challenges came up - what Jules called the "messy details",
d) how these challenges got solved,
e) what's left to do,
f) any general lessons learned.
They might have to be invited, because they'd be different from the other talks. And the people giving them might have to be coached a little, since it's quite hard to give a good talk like this. It's easy to sink into too much detail, or not give enough detail, etc.
Sounds like a keynote talk
I definitely agree that the lofty rhetoric about category theory and applied category theory does not make the math were doing more accessible to the experts in the subjects we want to reach out to. If they heard us talking about it being a grand language for unifying science technology and math then I bet they just shut off and think "that's not what I do"
I now realize Jules was trying to give a talk sort of like this at the ACT@UCR seminar:
At the time I was a bit frustrated because I was trying to understand some things about open games (which I've never understood very well), and Jules was not really wanting to explain that stuff in much detail. I see now he was really trying to explain this "long road to practical applications" business.
If we had some talks at the ACT conference that were explicitly "case studies", then we could warn the audience ahead of time that the point of the talk was about the development process, not the details of the math or what it's being applied to.
John Baez said:
Here's another suggestion. Maybe we should have a couple invited longer talks at the annual ACT conference describing "case studies" of more-or-less successfully completed applications of category theory. I think they'd need to be long to explain:
a) the problem being solved, which is some problem outside category theory and thus not well-understood by most of the audience,
b) how they tried to apply category theory to it,
c) what challenges came up - what Jules called the "messy details",
d) how these challenges got solved,
e) what's left to do,
f) any general lessons learned.They might have to be invited, because they'd be different from the other talks. And the people giving them might have to be coached a little, since it's quite hard to give a good talk like this. It's easy to sink into too much detail, or not give enough detail, etc.
This idea I really like. Institutionally of course it's up to the individual organisers. If it was me it's a no brainer: I'd get someone from Cambridge Quantum Computing to do an hour long talk that begins with interacting bialgebras, and ends with actual running code on an actual quantum computer
John Baez said:
I now realize Jules was trying to give a talk sort of like this at the ACT@UCR seminar:
- Jules Hedges, Open games: the long road to practical applications .
At the time I was a bit frustrated because I was trying to understand some things about open games (which I've never understood very well), and Jules was not really wanting to explain that stuff in much detail. I see now he was really trying to explain this "long road to practical applications" business.
If we had some talks at the ACT conference that were explicitly "case studies", then we could warn the audience ahead of time that the point of the talk was about the development process, not the details of the math or what it's being applied to.
Yep. And I announced my intention to give exactly that talk on the last day of ACT the year before, in 2019. I've been thinking this stuff for a while now...
Joe Moeller said:
Right, this is what I was imagining in my original suggestion, basically.
I thought you were suggesting that an expert in subject X talk about "the ways they think maybe somehow CT could possibly get in the game".... i.e. sort of a solicitation for help. I'm suggesting that sort of thing would work better in a separate week-long workshop devoted to "Categories in X". I'm suggesting that at the big ACT conference we could hear a story about a successful project and how it succeeded.
I deleted that because I realized it was very different from my suggestion.
I look up very explicitly to the folks doing ZX calculus at CQC as a model of research that I want to replicate with open games
Joe Moeller said:
I deleted that because I realized it was very different from my suggestion.
Okay. I'll keep my remark because it may help some people come up with ideas about different kinds of talks.
Jules Hedges said:
I look up very explicitly to the folks doing ZX calculus at CQC as a model of research that I want to replicate with open games
Yes. So one interesting thing is that the ZX calculus, by virtue of being rather successful, has become technical enough that not many people outside that field want to hear lots of talks about it. At least, not the same talks that the experts want to hear!
So if open games are similarly successful, a similar thing will probably happen with those.
But I think non-experts could still enjoy "case studies" talks about both these topics as long as it was clear that the talk was not explaining the subject, just how the subject developed.
So maybe that should be the next one of these such talks. Get a CQC person to give a big picture talk about this to a general ACT audience.
So, I'm a ZX-calculus researcher and I can tell you why it became succesful in my opinion: we are (mostly) not really interested in the category theory side of it
The language is specialized and intuitive enough that you don't have to drag category theory to it
In the terminology I use, category theory for ZX calculus is "in the basement"
Sure, it is a compact closed PROP, but it doesn't really matter
I don't think it's successful because category theory is not so important. I think it's successful because it gets the job done.
Or maybe there's some general law saying that as long as the math is actually interesting to mathematicians, it's not being applied yet?
Like, this paper for instance: https://arxiv.org/abs/1902.03178
You won't find any category theory in there, but as far as I can tell it contains the first results that were truly new to the quantum computing community, produced using the ZX-calculus\
And this paper wouldn't be accepted at ACT I can imagine
And ZX does sit on top of some stuff that's definitely straight category theory, like saying some functor to is fully faithful
Even though it is sort-of applied category theory
Jules Hedges said:
And ZX does sit on top of some stuff that's definitely straight category theory, like saying some functor to is fully faithful
Using that language is how you get rejected from mainstream quantum journals :)
Right, you don't have to say it, but if it wasn't there then ZX calculus would collapse into a big heap of junk I guess
I really don't like all these speculations about papers that wouldn't be accepted at ACT, unless they come along with some evidence. Since I'm helping run ACT, I can actually try to fix problems if I know for sure that they exist. If I just hear vague speculations, I can't do much.
I don't want people to be scared off from submitting good papers to ACT2021!
Sorry, you're right. I was more thinking that it would feel kinda weird to me to have that paper be accepted at ACT. It would feel out-of-place IMO
But isn't the main reason that there's a much better place to submit it, for example QPL?
That might be
John van de Wetering said:
The language is specialized and intuitive enough that you don't have to drag category theory to it
Sure, after the framework has been discovered you can purge/hide most of the CT, but it was historically important to come up with the tool in the first place, no?
Yes, definitely
Of course, at one point, this paper would have been out of place at QPL, but QPL shifted to more practical oriented stuff in the last few yeaers
A better analogy would probably be to the early years of QPL when it was accepting all the weird misfit stuff...
John Baez said:
I really don't like all these speculations about papers that wouldn't be accepted at ACT, unless they come along with some evidence. Since I'm helping run ACT, I can actually try to fix problems if I know for sure that they exist. If I just hear vague speculations, I can't do much.
Fabrizio may have evidence........
Martti Karvonen said:
John van de Wetering said:
The language is specialized and intuitive enough that you don't have to drag category theory to it
Sure, after the framework has been discovered you can purge/hide most of the CT, but it was historically important to come up with the tool in the first place, no?
So I asked Bob about this, and he said they weren't thinking about "composing PROPs" at all when they first came up with it. Their motivation was MBQC, so something applied
Martti Karvonen said:
John van de Wetering said:
The language is specialized and intuitive enough that you don't have to drag category theory to it
Sure, after the framework has been discovered you can purge/hide most of the CT, but it was historically important to come up with the tool in the first place, no?
Algebraic geometers learned that they could sweep Grothendieck's ideas on topos theory under the rug and ignore them. That was probably a mistake in the long run, but it worked okay for a few decades.
Right, but a few years before ZX calculus Bob wrote "A categorical semantics of quantum protocols" and a bunch of other papers full of words like "compact closed category"
So we had a talk at Oxford where Bob was reminiscing about the olden days, and he mentioned that he needed to do that stuff to get accepted at LICS
He felt that if he presented it in the intuitive manner that he thought about it, then it never would have been accepted
I wouldn't be surprised if Samsons viewpoint wasn't exactly the same
:upside_down:
And ever since his "kindergarten quantum mechanics" he doesn't care about formal mathematics anymore (his words)
I don't think Bob is typical...
Fair enough. Although he does have a habit of hiring PhD students who fall down the rabbit hole of the formal theory of diagrams
John Baez said:
I don't think Bob is typical...
That might be an understatement :P
I am a very understated sort of guy.
So the way I kinda see it, is that ZX was very much in the theoretical CS side of things, and people cared a lot about formalities and completeness and such. Some people applied it to MBQC, but only to do the clarifying, not really to do anything new. Only in the last few years we have sort of dropped those shackles and decided to go all in on trying to do actual new stuff. The necessary underlying formal developments have been there for a long time already, but nobody bothered trying to make it work for applied new stuff
I've had two LICS rejecta...and one LICS success which was entirely written by my then PhD student who was keen on learning how to write like that.
That is not to say that, for instance, completeness is not important or interesting, but it is a very insular thing if you don't use it for new stuff that people outside the community would care about
I do plan exactly the same thing for open games. It's absolutely possible to hide 100% of the category theory "in the basement", with string diagrams (or some other equivalent syntax) acting as a firewall between the users and the category theory
It would also be absolutely possible to present even the foundations of open games while never using category theory, even implicitly. Doing it with categories happens to match the way that I prefer to think. Sometimes I wonder about the parallel universe where open games were discovered via a different presentation
I guess the analogy there is front-end vs back-end code :)
For ZX there's a second benefit to forgetting categories besides being more gentle to end users: it turns out to be a really good idea to view ZX diagrams as graphs, and hit them with heavy duty graph algorithms
That is a good point
There's a bunch of papers around explaining what's "really" happening, but I guess when it comes to actually writing code it's helpful to pull an existing fast implementation of graph rewriting off the shelf
Yeah, in PyZX we certainly don't have a PROP class floating around
Jules Hedges said:
This idea I really like. Institutionally of course it's up to the individual organisers. If it was me it's a no brainer: I'd get someone from Cambridge Quantum Computing to do an hour long talk that begins with interacting bialgebras, and ends with actual running code on an actual quantum computer
It's almost too late for ACT2021, since it's being organized right as we speak, but I'll suggest it to Jamie Vicary and Kohei Kishida, who seem to be the most active of the organizers. (I'm just on the "advisory board", along with Bob Coecke and David Spivak.)
The name that springs to my mind would be Ross Duncan, one of the 2 co-inventors of ZX calculus, since he's been at CQC for quite a bit longer than Bob who just joined them recently
Okay, I'll fire off an email now.
Another (less good) possibility that just came to mind is Simon Marlow. We had a guest lecture by him one year for the functional programming course at Queen Mary. He's responsible for the fact that Facebook's real-time spam filter is written in Haskell and runs in a custom FacebookSpamFilterMonad
I don't remember the details, this was in like 2013, but he did a great talk on what functional programming in general and monads in particular buy you when you need to process 20 bajillion Facebook posts per nanosecond in real time
We were just debating whether we'd allow Facebook as a sponsor - not because it's likely to happen, just as an example of something that would piss people off.
Hah. Yeah, that's a debate that's definitely worth having. It's just not this debate
We could also have an invited talk from someone at BAE Systems about how they used category theory to help Saudi Arabia bomb civilians in Yemen. :upside_down:
Just kiddin', just kiddin' - that joke should annoy everyone.
Quantum computing wins because it hasn't been used for evil yet. (It certainly will in the future, of course, unless the whole idea turns out not to work unexpectedly)
Yes, I guess the safest applications of category theory are the ones that haven't quite succeeded yet. :wink:
Btw, on a meta-level this discussion is a good example of what ACT could do: start with an abstract observation that some problem needs to be fixed, and end up with a concrete solution that can be implemented (John sending an email to Ross)
Wait until compositional game theory gets let loose in the world..........
Jules Hedges said:
Wait until compositional game theory gets let loose in the world..........
We are waiting Jules (we should talk)
In fact I already far surpassed my goal of starting this thread just from the fact that the thread is so lively. Getting my choice of conference keynote as a result of cross-posting a twitter thread on a chatroom is.... kind of outrageous really
The Unreasonable Effectiveness of Twitter-crossposting in getting Conference Keynotes?
More like The Unreasonable Effectiveness of Talking to Someone on the Steering Committee of a Conference About That Conference.
But don't count on getting your choice of conference keynote.... it may be too late already, the people actually running the conference may not like this idea, etc.
Need to make a disclaimer here re @John van de Wetering :) since 2005 I didn't care about "symbolic" category theory anymore, since string diagrams do the job anyway. In quantum foundations people now think that: string diagrams = category theory. E.g. in the Resource Theory paper with Fritz and Spekkens, we define SMC just as diagrams. The 2004 CQM LiCS paper has the most horrible proof of teleportation ever, using diagram chasing with commuters and other natural transformations all over the place...wtf? (that paper made my career btw)
Sorry for misrepresenting your viewpoint Bob :)
There is a very pragmatic side to this. The association with CT made CQM unsellable to physicists, so we had to work really hard for many years (>10) to actually get them to show some respect. ZX is now explicitly playing the game of complete disconnection, hence its success. Should we deny that CT was behind it? Of course not. Except for a while, we really needed to.
Do you think the concerns regarding CT that the phycists had were founded at all, or were they simply an adverse response to unfamiliar language and/or bias against CT as a whole?
Nathanael Arkor said:
Do you think the concerns regarding CT that the phycists had were founded at all, or were they simply an adverse response to unfamiliar language and/or bias against CT as a whole?
Unfamiliar language mostly I think, and the "we know better" every physicist kind of has, about whatever field. :)
I'm going to throw in my 2 cents' worth.
Certainly one issue is that a lot of 'pure' category theorists are very scary people. Some of them on the personal level, but even the ones who are very nice people are very scary on a professional level. The tendency of some of these people to see a piece of math and say "Oh, that's easy, that's just the application of the Babbleflung theorem to generalized Unboabs tensored with Quoftas" is the extreme opposite of helpful and welcoming. So if pure category theorists are going to be hanging around, many of the others will simply not deign to show up. So the community needs to forcefully reject bad behaviour (even if done by absolutely brilliant mathematicians), as well as never ever use phrases like "Oh, that's easy" (or any synonyms thereof), even if they think it (and are, in some sense, right).
Second, because the ACT people seem to have arisen from CT, they seem to be completely blind to the fact that ACT has been going on for > 45 years! To name just two pioneers: Joseph Goguen and Rod Burstall. The algebraic specification community has been a hotbed of category theory for decades. There's a whole textbook from 2005 Categories for Software Engineering full of ACT. If 'ACT as a field' cannot recognize that it is already a very old field, it is doomed! Using spans and cospans as connectors in diagrams representing systems? Super old hat stuff, if only you look in the right places, such as this PhD thesis from 1995 Formal Foundations for the Specification of Software Architecture. [Not that there isn't a lot that can be improved on some of that clunky old stuff...] There's also the graph rewriting community which happily uses double-pushouts - happily here the nlab acknowledges the existence of this, and that it goes back to 1973. And those are merely the ones that I know of, I am sure the actual list is considerably longer. To me, ACT has already existed for a very long time.
The whole endeavour is also hampered by the opaqueness of most books on category theory. There are some exceptions (Conceptual Mathematics as one example), but most do not state some very simple intuitions, such as:
and so on. These ideas are known to most category theorists, but apparently only even mentioned in hushed tones and never written down. So one is left to painstakingly reconstruct the intuitive understanding from the dry definitions. Of course, it doesn't help that so many of the examples given in textbooks are misleading (i.e. too based on historically important examples, instead of highlighting the conceptually important parts, with a preponderance of examples being set-theoretic in nature). All sorts of concepts in category theory are actually quite simple once they get stripped of their historical baggage and re-expressed with fewer assumptions (example: multicategories are simpler when expressed over an index set rather than over the natural numbers; informally, they're both about the same, but if you try to be precise, the implicit combinatorics of the version based on natural numbers is a complete nightmare. There's a reason most texts don't bother to ever write down the full details of associativity! And it is, in fact, quite simple to do so, if you don't assume natural-number indexing).
@Jacques Carette wow you should write a CT textbook!
Thanks for the flattery @Joshua Meyers but unfortunately I am a slow writer. Writing a textbook, on my own, is not going to happen, at least not before retirement. Though I have wondered if it could be done, using some of the methods of the past: a few student scribes write down material from a series of lectures, put into decent enough shape, and then polished as a group effort. [With writing credit given to all.] Plus my intuitive understanding of CT still has some ways to go before I could fill even a small textbook.
Jacques Carette said:
I'm going to throw in my 2 cents' worth.
Certainly one issue is that a lot of 'pure' category theorists are very scary people. Some of them on the personal level, but even the ones who are very nice people are very scary on a professional level. The tendency of some of these people to see a piece of math and say "Oh, that's easy, that's just the application of the Babbleflung theorem to generalized Unboabs tensored with Quoftas" is the extreme opposite of helpful and welcoming. So if pure category theorists are going to be hanging around, many of the others will simply not deign to show up. So the community needs to forcefully reject bad behaviour (even if done by absolutely brilliant mathematicians), as well as never ever use phrases like "Oh, that's easy" (or any synonyms thereof), even if they think it (and are, in some sense, right).
Second, because the ACT people seem to have arisen from CT, they seem to be completely blind to the fact that ACT has been going on for > 45 years! To name just two pioneers: Joseph Goguen and Rod Burstall. The algebraic specification community has been a hotbed of category theory for decades. There's a whole textbook from 2005 Categories for Software Engineering full of ACT. If 'ACT as a field' cannot recognize that it is already a very old field, it is doomed! Using spans and cospans as connectors in diagrams representing systems? Super old hat stuff, if only you look in the right places, such as this PhD thesis from 1995 Formal Foundations for the Specification of Software Architecture. [Not that there isn't a lot that can be improved on some of that clunky old stuff...] There's also the graph rewriting community which happily uses double-pushouts - happily here the nlab acknowledges the existence of this, and that it goes back to 1973. And those are merely the ones that I know of, I am sure the actual list is considerably longer. To me, ACT has already existed for a very long time.
The whole endeavour is also hampered by the opaqueness of most books on category theory. There are some exceptions (Conceptual Mathematics as one example), but most do not state some very simple intuitions, such as:
- categories embody the idea of 'typed composition'
- functors are just homomorphisms, which themselves are just 'functions that preserve structure'
- natural transformations are just homomorphisms (of functors)
and so on. These ideas are known to most category theorists, but apparently only even mentioned in hushed tones and never written down. So one is left to painstakingly reconstruct the intuitive understanding from the dry definitions. Of course, it doesn't help that so many of the examples given in textbooks are misleading (i.e. too based on historically important examples, instead of highlighting the conceptually important parts, with a preponderance of examples being set-theoretic in nature). All sorts of concepts in category theory are actually quite simple once they get stripped of their historical baggage and re-expressed with fewer assumptions (example: multicategories are simpler when expressed over an index set rather than over the natural numbers; informally, they're both about the same, but if you try to be precise, the implicit combinatorics of the version based on natural numbers is a complete nightmare. There's a reason most texts don't bother to ever write down the full details of associativity! And it is, in fact, quite simple to do so, if you don't assume natural-number indexing).
As people like @John Baez and @David Spivak know, for me a main motivation for the ACT conference series and Compositionality journal was to provide and alternative to the scary CT community, although meanwhile that seems to have turned a bit less scary as well. Now, the category theory in CS community is also packed with jargon that made it impossible to penetrate. So I see ACT as a community where an effort is made to explain things to each other, and be a bit nicer to each other. I actually don't think that many here came out of the traditional CT community.
Please don't get me wrong: I think both the ACT Conference and Compositionality are great! I'm just injecting an additional outsider's view into things, for people's consideration.
We're lucky to have quite a high concentration of people who are really good science communicators, like Bob and David and Tai. I have a lot of respect for them because I know from trying that good science communication is really hard. Writing Bourbaki style is way easier, for example
Second, because the ACT people seem to have arisen from CT, they seem to be completely blind to the fact that ACT has been going on for > 45 years! To name just two pioneers: Joseph Goguen and Rod Burstall.
I "arose" - that makes me sound like some sort of swam creature - not from CT but from mathematical physics, so I've struggled for decades to learn category theory, and I know essentially nothing about computer science.
I keep trying to learn bits of computer science here and there, especially since some of my students are interested in it - like @Mike Stay, who taught me the lambda calculus, and @Christian Williams , who is now working with Mike on type theory. But I don't think I'll ever know much about it. I never program and don't want to. I've read Goguen's A categorical manifesto, since the title is irresistible and it's pretty short and fun. I've heard of Burstall but don't know anything about him.
Because I've spent much more time studying category theory, I find it much easier to understand category theorists than computer scientists. What category theorists say feels natural to me: even if I don't understand all the details, I can often guess what they're trying to do. Computer science, on the other hand, is much more mysterious. But I don't bother saying this, because I don't expect to understand it: why should I?
When I first helped launch the ACT conference series in ACT2018, I pushed for it to exclude categorical computer science, categorical quantum mechanics, or applications of category theory to string theory and topological quantum field theory - because those were relatively old, well-established fields with their own conferences. I envisaged ACT as being about the other stuff, the new stuff.
By the time ACT2019 came along, Tom Leinster had forcefully talked me out of this idea. I realized, thanks largely to him, that ACT should be all-embracing.
I think it's great that we have people of many kinds talking here. But I hope everyone realizes that their expertise is a mysterious black box to many other people here. It's not just category theorists who are hard to understand!
Jules Hedges said:
We're lucky to have quite a high concentration of people who are really good science communicators, like Bob and David and Tai. I have a lot of respect for them because I know from trying that good science communication is really hard. Writing Bourbaki style is way easier, for example
Funny you didn't mention the inventor of scientific blogging. But yeah, he is indeed pretty crap at it.
@John Baez the days of being able to learn everything are long, long past. Even though I have an odd background (my PhD is in complex dynamics, with Douady and Hubbard being my co-supervisors, but I spent just as much time learning combinatorics and analysis of algorithms from Phillippe Flajolet and Bruno Salvy at INRIA, then many years doing symbolic computation / system building at Maplesoft, doing more software engineering than anything else, before re-joining academia as a computer scientist who is increasingly interested in meta-programming and programming language design, on top of mechanized mathematics. Oh, and a side gig applying cognitive psychology models to game design.), I too refuse to learn certain topics. There is only so much time. I know I'm missing out on beautiful stuff in areas I've sworn off of, so I can sympathize with your choice to largely stay out of CS.
Amusingly, quantum used to be one of those domains that I swore I'd never learn. But Amr Sabry got me totally hooked on the categorical approach to reversible computation, because of his approach from the fundamentals (i.e. asking the question "what does conservation of information really mean for computations?"). Of course, the jump to quantum from there is trivial so, despite my best intentions, I now know quite a bit more about quantum computing than I ever expected.
At least twice I've gone to workshops/conferences and been floored by folks I never heard of doing 'way-more-applied' category theory than I knew existed: once was in Luxembourg at a workshop on "Dynamics, Thermodynamics and Information Processing in Chemical Networks" where I learned about https://cheminf.imada.sdu.dk/mod/index.html and the other was at a model transformation Dagstuhl workshop on "Multidirectional Transformations and Synchronisations" where I basically learned about the existence of the graph-transformation and model transformation community/communities. I was kind of shocked these hadn't been on my radar, but I mean that is research, different neighboring communities, gotta interact. I think the point is that for me, going to adjacent conferences/workshops and talking about ACT was always a bit intimidating bc I didn't know their history and 'how baby' the stuff I was presenting appeared to them, nor did I feel I really represented the 'category theory' part of ACT, but it was one of the most important parts of my development as a researcher and led to the most new connections/ideas/perspectives.
Some mechanism encouraging young 'ACT researchers' to present/participate in domain workshops/conferences would be dope. Maybe with a reciprocation from the domain workshop. Foreign research domain exchange program.
I also remember, I think it was @John Baez, talking about setting the 'temperature' of conversations. Like an expectation about what 'level' you'll try to keep the discussion. Low temp convos are focused, down in the deets, not much jumping around. High temp ones can be more all over the place. Drawing on the temp/time analogy, I think setting an expectation about an interaction with domain folks based on time could be helpful. Yea it takes years to learn deeply about a domain or about CT, let alone to identify and tackle an interesting problem that involves a bit of both, but there is def value in shorter interactions: over a few days at a workshop, a few hours on a forum, once a month via a group zoom for a while. I always thought of kind of serving a 'speed-dating' app for domain people and folks wanting to do more 'applied category theory.' Like that is part of knowing the community, knowing what types of problems/questions/discussions to bring up with which people. Helping domain people find the 'right' flavour of applied category theorist to kick it with and vice-versa.
Jacques Carette said:
Thanks for the flattery Joshua Meyers but unfortunately I am a slow writer. Writing a textbook, on my own, is not going to happen, at least not before retirement. Though I have wondered if it could be done, using some of the methods of the past: a few student scribes write down material from a series of lectures, put into decent enough shape, and then polished as a group effort. [With writing credit given to all.] Plus my intuitive understanding of CT still has some ways to go before I could fill even a small textbook.
I like thinking about protocols such as that for efficient production of pedagogical material. Here's a very simple protocol, involving a teacher and a student. Teacher explains something to student. Student writes up an explanation of it. Teacher edits student's write-up. The student will be able to sympathize well with other people in their position, learning the material for the first time, so their write-up will be intelligible to such people, and the act of writing it will also help their own learning. The teacher though, will have to edit it at the end in order to remove misconceptions which can happen when someone is first learning something.
That's an interesting loop, @Joshua Meyers, but it can be tiring for the teacher: more work than writing a book on one's own. I gave a course on classical mechanics, my student Derek Wise wrote great hand-written notes, then a grad student at another school jumped in and LaTeXed them up. Great! But this student added his own observations and jokes, almost none of which I agree with. So now I'm going to spend a long time trying to polish the book further, and get it back to my conception of things.
Jacques Carette:
the days of being able to learn everything are long, long past.
Yes. I never wanted to learn everything. At some stage I wanted to learn everything interesting, which cuts the job down by about 2 orders of magnitude. :upside_down: But even this is hopeless, especially because things tend to get more interesting when you know more about them.
I spent just as much time learning combinatorics and analysis of algorithms from Phillippe Flajolet and Bruno Salvy at INRIA [....]
That's cool! This blog series of mine:
is heavily inspired by Phillipe Flajolet and Robert Sedgewick's book *Analytic Combinatorics, which is actually very connected to Andre Joyal's theory of species, nicely formulated using category theory.
I can sympathize with your choice to largely stay out of CS.
Thanks. But I'm still curious sometimes about what the hell you guys are talking about. :upside_down:
John Baez said:
That's an interesting loop, Joshua Meyers, but it can be tiring for the teacher: more work than writing a book on one's own. I gave a course on classical mechanics, my student Derek Wise wrote great hand-written notes, then a grad student at another school jumped in and LaTeXed them up. Great! But this student added his own observations and jokes, almost none of which I agree with. So now I'm going to spend a long time trying to polish the book further, and get it back to my conception of things.
Glad to see a real-life example! Sure, it can be more work than writing a book on one's own, but I think that if it was done right, it could be much less work! In the example you gave, the participants didn't consciously decide to do a process for producing pedagogical material and agree on the terms of the process at the beginning, rather it just sort of "fell into place". I think that if people did this sort of process intentionally it could be optimized for efficiency. And I don't think that efficiency is an end in itself, but there is a dearth of good pedagogical material and producing it more efficiently would cause more to be produced.
Sure, it can be more work than writing a book on one's own, but I think that if it was done right, it could be much less work!
In my case there was much less work because someone else translated a bunch of notes into LaTeX... and now some more work because I have to deal with this. On the whole it was less work. But you're right, this collaboration was not planned, it just happened. It would have worked better if the grad student had simply contacted me before converting the notes into LaTeX!
Jacques Carette said:
The whole endeavour is also hampered by the opaqueness of most books on category theory. There are some exceptions (Conceptual Mathematics as one example), but most do not state some very simple intuitions, such as:
- categories embody the idea of 'typed composition'
- functors are just homomorphisms, which themselves are just 'functions that preserve structure'
- natural transformations are just homomorphisms (of functors)
I'm not sure what you're getting at here. I just had a look at some books on category theory. The section on functors in MacLane's "Categories for the working mathematician" begins with the sentence "A functor is a morphism of categories". Similarly, Leinster's "Basic category theory" starts the section on functors with "One of the lessons of category theory is that whenever we meet a new type of mathematical object, we should always ask whether there is a sensible notion of ‘map’ between such objects. We can ask this about categories themselves. The answer is yes, and a map between categories is called a functor." In fact, I can't imagine introducing functors without saying that they are the obvious structure-preserving morphisms between categories.
In general I think it is important to realize that "opaque" and "simpler" are relative concepts. What is opaque for you may be simpler for someone else, and vice versa.
In general I think it is important to realize that "opaque" and "simpler" are relative concepts. What is opaque for you may be simpler for someone else, and vice versa.
I was trying to say that too, in a very friendly way. I complain a lot about the opaqueness of other people's writing - to myself. But I don't think it helps a lot to complain about it publicly. Instead I try to explain things as soon as I learn them - and explain them the way I wish someone had explained them to me.
When learning a subject I think it's important to explain it to other people soon, because later on a bunch of things become obvious and it's hard to remember what was hard to understand. It's also good to explain things later, since then you can zip past all that obvious stuff and focus on deeper issues.
Category theory is a "least common denominator" subject for a whole lot of people, which surely makes it really hard or even impossible to write a textbook that could please everyone who might want to read it. Mac Lane surely isn't a bad book, but he definitely has an audience in mind: pure mathematicians, probably with a leaning towards algebra. So it's not a surprise that computer scientists find it a bit hard to read. Luckily by now we have a bunch of good introductions written for different audiences. The only thing is making sure the right reader finds the right book
Mike Shulman said:
Jacques Carette said:
The whole endeavour is also hampered by the opaqueness of most books on category theory. There are some exceptions (Conceptual Mathematics as one example), but most do not state some very simple intuitions, such as:
- categories embody the idea of 'typed composition'
- functors are just homomorphisms, which themselves are just 'functions that preserve structure'
- natural transformations are just homomorphisms (of functors)
I'm not sure what you're getting at here. I just had a look at some books on category theory. The section on functors in MacLane's "Categories for the working mathematician" begins with the sentence "A functor is a morphism of categories". Similarly, Leinster's "Basic category theory" starts the section on functors with "One of the lessons of category theory is that whenever we meet a new type of mathematical object, we should always ask whether there is a sensible notion of ‘map’ between such objects. We can ask this about categories themselves. The answer is yes, and a map between categories is called a functor." In fact, I can't imagine introducing functors without saying that they are the obvious structure-preserving morphisms between categories.
In general I think it is important to realize that "opaque" and "simpler" are relative concepts. What is opaque for you may be simpler for someone else, and vice versa.
For much of categorical quantum mechanics etc, starting with categories, functors, and especially natural transformations already kills the audience. None of that is needed. That's the problem for non-mathematicians with category theory. Adjunctions also don't come into the game, nor limits. So it's a very different thing, really. The nr1 definition is symmetric monoidal category, and you don't need all the above stuff to explain what it is (contra what MacLane does). When I was still a kid, we wrote this: https://arxiv.org/abs/0905.3010
I thought you are still a kid.
These days I am allowed to drink alcohol.
Right now we have a thread on Applied CT as a field and a thread on CT applied to fields lol
@Mike Shulman The audience, of course, matters a lot. I was thinking of introductory textbooks that go very slow and try hard to give lots of intuition -- I rather like Simmons' book for that. Think of the audience as 3rd year CS and Physics students at second-tier universities as what to aim for.
The definition of Functor can be systematically derived from that of Category. I have indeed seen many textbooks that say, quite clearly, that a Functor is a Category homomorphism. I have not seen a single one that then goes through the steps to derive what that means - instead, the "answer" is just plopped there as a definition. For some audiences, the act of deriving the details will be much more enlightening that just giving the answer.
Functor is straightforward. Doing the same to get natural transformations and, even more so, modifications, requires considerably more work. Doing all the steps for natural transformation is extremely useful as, for very many people that I've encountered (myself included), the raw definition seems to 'come out of thin air'.
The audience matters enormously. For example, at the stage where I was in my learning of CT and type theory, your proto-textbook Categorical logic from a categorical point of view was brilliant and spot on. As soon as it's finished, I will purchase a 'real' copy.
Thanks for the flattery @Jacques Carette (-:O Indeed, the audience matters enormously; that's essentially the same point that John and I were making. Rather than deriding "most books" on category theory as "opaque", it sounds like your point is rather that you want more books on category theory addressed to a particular audience.
It also sounds like the problem with extant books is not that they do not state the intuitions you mentioned, as you first said, but that they don't explain those intuitions in a way accessible to an audience that doesn't already understand what notions like "homomorphism" mean. Which is quite different from category theorists keeping the intuitions a secret.
Yes, I will accept that criticism as having properly landed: I did not express what I meant adequately, and ended up in error deriding textbooks that didn't deserve it.
Note that understanding homomorphism, even from a universal algebra point of view, will only help so much. There is already a (very small) leap to make for Functor, but a larger one for Natural Transformation, and a huge one for modification.
I am trying to write software to do such 'higher order universal algebra' automatically. This has taught me a lot. In particular, I would modify the usual aphorism about teaching as follows:
Thanks!
I'm curious how you are thinking of explaining natural transformations as homomorphisms. The way I would think of doing it is to specialize to natural transformations between functors with codomain Set, in which case such a functor is clearly a family of structured sets and the ordinary notion of homomorphism between families of structured sets yields a natural transformation. Then one could generalize to natural transformations with other codomains.
So long as someone has internalised the notion of a comma category, the definition of a natural transformation as a section of the domain and codomain projections works well.
Or even just as a functor to an arrow category. But these definitions are more like homotopies than traditional homomorphisms.
In the end though, it doesn’t really matter how well one phrases a definition. It’s the examples which will actually get people to understand.
Fawzi Hreiki said:
In the end though, it doesn’t really matter how well one phrases a definition. It’s the examples which will actually get people to understand.
Amen. As someone who is not super well versed in category theory, the number of category theory papers I've seen with basically no examples of the main structures they are talking about is staggering.
My take on it is extremely tainted by type theory and trying to automate everything. So be prepared for a weird ride, mathematically speaking.
I see a Functor as a parametrized theory. Often, I see that as a marked context, where you have two categories in an initial segment, with the parts of Functor in the rest. The marked context is invariant, so the context-to-context mapping must be the identity. [The same reasoning works for defining homomorphisms of R-modules, where you want to split the initial segment that axiomatizes 'ring' off.] Then you have to map the rest. Name our two Functors and . Well, the first data in a Functor is an object map. Let us reason point-wise (and this is already an interesting 'design' decision'). If is an object of , then somehow and ought to be related, basically because is definitionally equal to itself. So we posit a function, call it , from to . As was arbitrary, we actually get a whole family of functions.
Now things get interesting. should also have an action on morphisms. Repeating the previous reasoning, given , we need to map to . But that would be a 2-morphism (and not even a 2-cell), and we're doing 1-category theory, so we simply drop that.
But we can't have just any old family. If we look at the diagram we'd have drawn for figuring out , one sees that we get a potential commutation: . That diagram should indeed commute, for our family to be coherent. How to express that this comes out of "preserves structure", I don't know.
Note that if we went to 2-category theory, the obvious mapping of components does not give 'the' definition of lax natural transformation! That's because usual CT is globular, and the mechanical definition of would be from to . So 'globularity' forces things to be different here. Which is "expected", in the sense that at dimension 2, different choices of geometry show up.
So natural transformations in 1-category theory are really truncated homomorphisms of Functors.
(Hmm, I wonder if this part of the conversation should be split off into a different thread.)
You could also think of as being the commutation . You could think that there are no 2-cells in 1-category theory, but another point of view is that all 2-cells are equalities.
It's hard not to notice that can also be seen as 'coming from' , if we indeed had .
@Joshua Meyers Completely agreed, that is a useful point of view. If you then split the equalities as oriented rewrites, you go up a dimension (i.e. bicategory theory).
Jacques Carette said:
It's hard not to notice that can also be seen as 'coming from' , if we indeed had .
Yes, this leads to a point of view where is really just an action on morphisms: for each , you get such that for each , you get and for each , you get .
Put briefly, is the limit of the diagram , where is the twisted arrow category and is the canonical projection. Idk if this is too fast, I can give more detail if anybody wants.
BTW, to convert between this and the standard notion of natural transformation, let (as you intuited) and for , let .
I see a Functor as a parametrized theory. Often, I see that as a marked context, where you have two categories in an initial segment, with the parts of Functor in the rest. The marked context is invariant, so the context-to-context mapping must be the identity.
If someone had tried to explain a functor to me like this I would have run away in terror. I don't know what any of these phrases mean: "parametrized theory", "marked context", "categories in an initial segment", "invariant marked context", "context-to-context mapping". Each one of them seems - to me - much more complicated and intimidating than the concept of "functor".
So, it goes to show that category theory is so flexible that people can have radically different intuitions about what it's "really about".
Sorry if I was not precise: I did not mean to explain 'Functor' via all of these things! A Functor is just a homomorphism of categories.
What I was explaining is how to derive a natural transformation's definition as an instance of a construction over presentations of Generalized Algebraic Theories (in the sense of Cartmell). In other words, I was trying to explain 'generalized homomorphism' as an explicit construction. So I first needed to encode Functor in that setting - thus all the mumbo jumbo. Universal Algebra has just as much mumbo jumbo needed to define signatures and algebras, and from there, constructions over these.
Okay, sorry. I slipped. I should have said "if someone had tried to define a natural transformation this way..."
Funny thought... one day when I'm a grumpy old guy sitting in the back row of ACT 30, I'm going to bring an air horn and fire it once per utterance of the word "just" in the room <s/>
That's just rude.
BLAAP!!!
Isn't that almost the definition of 'grumpy old guy'?
But anyway, @Jacques Carette , yes, I can see the idea of trying to define a functor in the language of universal algebra (or maybe some generalization of it) so one can see natural transformations as homomorphisms between functors.
I don't think that's crazy.
It does turn out to be rather less straightforward than it first seems.
I usually try to motivate naturality squares using ideas like this: if it were possible to flawlessly translate from English to German, you could have a map from "questions to English" to "answers in English", and a map from "questions in German" to "answers in German".... and then for any question in English,
answering it in English and translating the answer to German
should agree with
translating it into German and answering it in German.
In physics the same sort of naturality square shows up when we say a theory of physics is "generally covariant", or "coordinate-independent".
We can answer a question in one coordinate system and then change coordinates, or change coordinates first and then answer the question, and the result is the same.
That message on 'coordinates' resonates a lot with me. I did a lot of work on creating a programming language for probabilistic programming Hakaru where this shows up in the following sense: given a presentation of a measure (as a program), conditioning corresponds exactly to a change of variables in which the quantity we want to condition by becomes a straight line. [Yes, for the lens lovers, there is indeed a relation.] Then you can integrate things out. In practice, this involves a lot of real algebraic geometry (Marc Moreno Maza's Regular Chains work was indispensible here). This even deals correctly with conditioning out on measure 0 events - when it works.
You (@John Baez ) might be amused that holonomic functions, as taught to me again by Philippe Flajolet, have a staring role in Hakaru: they are used to give normal forms to the representation of most of the probability distributions that show up in practice, and to give an algorithmic handle on conjugate priors.
Quoting from an interview with Tadashi Tokieda:
I ask them, what do you think constitutes a practical application? It’s very surprising. Roughly speaking, people converge within five to 10 minutes onto two categories of practical applications. One is, if you manage to make several million dollars instantly. The other is, if you manage to kill millions of people instantly. Many people are actually kind of shocked by their own answers.
Yeah, this is something I've thought about a bunch
One I made earlier: https://twitter.com/_julesh_/status/1185596885026967553?s=20
A relevant Bertrand Russell quote:
In universities, mathematics is taught mainly to men who are going to teach mathematics to men who are going to teach mathematics to ... Sometimes, it is true, there is an escape from this treadmill. Archimedes used mathematics to kill Romans, Galileo to improve the Grand Duke of Tuscany’s artillery, modern physicists (grown more ambitious) to exterminate the human race. It is usually on this account that the study of mathematics is commended to the general public as worthy of State support.
Within academia, "applied math" means "math that can be applied to getting big grants". Many mathematicians study applications of math, but only the ones who can get big grants are called applied mathematicians.
In universities, mathematics is taught mainly to men who are going to teach mathematics to men who are going to teach mathematics to ... Sometimes, it is true, there is an escape from this treadmill.
Women!
Yeah that part of the quote certainly didn't age well
My experience is that traditionally, "applied mathematics" means modeling with differential equations, whereas nowadays many of us are working to liberate it from that. I know plenty of people who call themselves applied mathematicians but don't get big grants. And depending on your definition of "big" I know some very pure mathematicians who've gotten big grants.
I didn't say all applied mathematicians get big grants; they're in subjects that can get big grants. "Big" means, say, over a million bucks. In our department any applied mathematician who doesn't regularly get at least $100,000 grants is looked at as not being successful yet: we hire young applied mathematicians who haven't gotten grants like that, but we're hoping they will.
Another sign of being applied is that you can get grants in the US from government agencies other than the NSF.
HoTT may turn out to be applied mathematics, since it got a $7.5 million grant from the US Air Force Office of Scientific Research. In 2017, an Army Research Office Broad Agency Announcement for Fundamental Research wrote:
Modeling frameworks are desired that are able to eschew the usual computational simplification assumptions and realistically capture … complexities of real world environments and phenomena, while still maintaining some degree of computational tractability. Of specific interest are causal and predictive modeling frameworks, hybrid model frameworks that capture both causal and predictive features, statistical modeling frameworks, and abstract categorical models (cf. Homotopy Type Theory).
and later:
Homotopy Type Theory and its applications are such an area that is of significant interest in military applications.
Lots of "big data" mathematics has nothing to do with differential equations - though yes, traditionally a lot of applied math used differential equations.
In 1986 at MIT the applied math department contained fluid dynamics, combinatorics, and two rogue particle physicists: Kerson Huang and Dan Friedman. I don't know what that department is like now.
I think it is not all so bleak, personally. The coin of “dual use” does have a peaceful side.
Sometimes the peaceful side is mass surveillance, but other times we get better logistics (which is agressively dual use).
For me "applied mathematics" means doing mathematics by keeping a look on a very practical (as in real life) problem one wants to solve. This may seem trivial, but A LOT of people that think they are doing applied maths make some assumptions that are absolutely unreasonable from a practical point of view. In the end, you have a nice mathematical model, but it has no real application. Everyone working hard to make sure this doesn't happen deserves the name "applied mathematician" in my opinion
What if my real-life problem is that I want to understand, say, inverse semigroups, because I think they are super cool and want to force them on my friends?
I’m only being mildly facetious. I think “real life” is in many ways like a “true Scotsman”.
... maybe the real applications are the friends we make along the way.
Fabrizio Genovese said:
For me "applied mathematics" means doing mathematics by keeping a look on a very practical (as in real life) problem one wants to solve. This may seem trivial, but A LOT of people that think they are doing applied maths make some assumptions that are absolutely unreasonable from a practical point of view. In the end, you have a nice mathematical model, but it has no real application. Everyone working hard to make sure this doesn't happen deserves the name "applied mathematician" in my opinion
I'm not sure the distinction between pure and applied is this clear. Sure, the standard you espouse is a laudable one, but what often happens in applied math falls under "let's solve some related toy problems that are close to the (currently too hard) unsimplified problems". Of course, if you solve an unrealistic toy problem you don't get to claim victory over the real problems, but work like this can eventually help the work of those unwilling to assume the difficulties away.
I would add that all models are wrong. We seem to be doing okay anyway.
Chad Nester said:
I’m only being mildly facetious. I think “real life” is in many ways like a “true Scotsman”.
Then you have your answer. I am not a Wittgensteinian and I despise analytic philosophy, so I don't tend to play these word-games. :smile:
Martti Karvonen said:
Fabrizio Genovese said:
For me "applied mathematics" means doing mathematics by keeping a look on a very practical (as in real life) problem one wants to solve. This may seem trivial, but A LOT of people that think they are doing applied maths make some assumptions that are absolutely unreasonable from a practical point of view. In the end, you have a nice mathematical model, but it has no real application. Everyone working hard to make sure this doesn't happen deserves the name "applied mathematician" in my opinion
I'm not sure the distinction between pure and applied is this clear. Sure, the standard you espouse is a laudable one, but what often happens in applied math falls under "let's solve some related toy problems that are close to the (currently too hard) unsimplified problems". Of course, if you solve an unrealistic toy problem you don't get to claim victory over the real problems, but work like this can eventually help the work of those unwilling to assume the difficulties away.
The key difference is that there are people that solve a toy problem and are happy, and people that solve a toy problem and use this as motivation to do more
I've definitely met a lot of research that was concerned with toy models that CLEARLY in the mind of the authors weren't really a way to step up to the real issues
In that case your mindset can be described as "playing with applications" at best, not as an applied mathematician. :smile:
Fabrizio Genovese said:
Chad Nester said:
I’m only being mildly facetious. I think “real life” is in many ways like a “true Scotsman”.
Then you have your answer. I am not a Wittgensteinian and I despise analytic philosophy, so I don't tend to play these word-games. :smile:
Also, as you can see I am embracing a stricly applied definition. I want a working criterium to categorize things, and I don't care if it doesn't work 10% of the time. I still have a 90% effective definition and I prefer this to spending a lot of time to formalize really precisely something that is intuitively understandable because of ad-hoc corner cases :grinning:
Fabrizio Genovese said:
In that case your mindset can be described as "playing with applications" at best, not as an applied mathematician. :)
I agree that there's a difference in mindsets, but it probably helps the applied applied people that there's people specializing in "playing with applications", even if such people deep down don't care about the applications. I'd also classify such work as applied math (as opposed to pure math) as the motivations for problems more or less track the applications and not only the internal developments of the theory. Now, at times drawing up a distinction like yours might be important (e.g. if you want to figure out if someone you're working with actually wants to solve the practical problem at hand or merely solve similar problems for whatever reason), but overall I wouldn't want to prop up such distinctions too much: it's bit of a spectrum and people can and do move along it.
Well to that matter I never understood the purpose of these applications discussions
But people seem to like them very much here, they spawn every so often
Chad Nester said:
What if my real-life problem is that I want to understand, say, inverse semigroups, because I think they are super cool and want to force them on my friends?
I’m only being mildly facetious. I think “real life” is in many ways like a “true Scotsman”.
I don't believe in "real life", but I think it makes some sense to distinguish between applications of math that are of interest outside mathematics, versus applications within mathematics.
For example, category theory was born due to its applications within mathematics, so I use "applied category theory" to cover applications of category theory that are (or could be) of interest outside mathematics.
I don't restrict "applied category theory" to mean category theory used to make products like software. When I'm using category theory to study classical mechanics I call it applied category theory.
But someone else might disagree. And then we'd have to fight to the death. :upside_down:
I think that's a good way to slice it up.
Fabrizio Genovese said:
Well to that matter I never understood the purpose of these applications discussions
Perhaps we are engaged in a "pure" discussion of applications :thinking:
Mathematics is so interconnected and interdependent and the applicability of any one concept (within mathematics or to science) is so unpredictable that the traditional pure/applied distinction seems more like a convenient way to talk about funding (and maybe to denigrate certain subjects, eg combinatorics, as not ‘pure’ enough)
Is application transitive? Or do you have to be right at the intersection with science to be considered applied?
In this thread I talk about a paper that's very-applied category theory: https://twitter.com/_julesh_/status/1478725018720903175?s=21
My collaborator Philipp Zahn (with Nicolas Eschenbaum and Filip Mellgren) just released a new paper, “Robust algorithmic collusion”: https://arxiv.org/abs/2201.00345 tl;dr 1. Learning collusion is a bit more subtle and less certain than recently suggested 2. Open games go brr [thread] https://twitter.com/_julesh_/status/1478725018720903175/photo/1
- julesh supports UCU action (@_julesh_)As I say in the thread, the paper intentionally makes zero references to category theory. It's all hidden deep inside the code
Jules Hedges said:
As I say in the thread, the paper intentionally makes zero references to category theory. It's all hidden deep inside the code
Thanks for pointing this out. Curious to know if you have any other examples.