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.
Also, it depends what you mean by "intro". The most complete reference for 1-dimensional string diagrams is still Peter Selinger's paper, I believe: https://www.mscs.dal.ca/~selinger/papers/graphical.pdf
If you mean that you want to learn to use them then yes, Pawel's blog is a good place to start. Also I strongly suggest @Bob Coecke and Aleks Kissinger's book "Picturing Quantum Process", which is probably the greatest applications of string diagrams we still have so far :slight_smile:
I find Graphical Linear Algebra slightly confusing in that it clashes with the usual kind of string diagram in FDVect. The diagrams are over the biproduct rather than the tensor product.
Is Raghav here? Or just on Twitter?
I started to learn string diagrams "seriously" only one or two months ago, starting from something even more basic - cell diagrams for 2-categories, representing adjunctions and monads via cell diagrams, the proof of the middle four interchange law, such things - and in the process I did typeset some of intermediate diagrams that I used to help me with the translations... it's VERY basic stuff, but if there's interest and I can organize it a bit more and share it publically...
Here's one of the slides.
adj.png
I didn't respond to Joe's question because I don't know a really good introduction to string diagrams for the purpose suggested.
I thought about Pawel's blog, which is great for string diagrams in the category of finite-dimensional vector spaces and linear relations, with as tensor product.
I thought about Picturing Quantum Processes, which is great for string diagrams in the category of finite-dimensional vector spaces and linear maps, with as tensor product. At least, it's great if you either know or want to learn quantum mechanics!
But both of these have a specialized "angle" that they're pursuing - they're not mainly explaining string diagrams in general, I think. (Maybe I'm wrong.)
My Rosetta Stone paper with @Mike Stay tries to explain how string diagrams unify physics, topology, logic and computation, so it least it covers more than one class of applications... but still, it's not what I'd point someone to who just wanted to understand string diagrams!
Peter Selinger's paper on string diagrams is a great encyclopedic reference, but not aimed at beginners.
So, I don't know.
What about Seven Sketches in Compositionality? Not specifically on string diagrams but it introduces them gently through the chapters.
(Sure, it's much bigger than “a blog post”... but if you only skip to the relevant parts...)
For those who know RDF, OWL (Semantic Web technologies) then Knowledge Representation in Bicategories of Relations is very helpful way to learn string diagrams. That was my entry point. (I progressed two or so article on from there)
I guess the best-known string diagrams are circuit diagrams, which probably explains why (as a computer scientist by batchelor's) I always thought it was just pre-formally obvious how to read simple string diagrams.
Yeah, me too...
I'd say that the simplest approach to string diagrams is just to notice that they're the Poincare dual of the usual commutative diagrams people draw:
image.png
I guess I was hoping to find something very short, like a blog post. I know the standard references for strings, Joyal-Street, Selinger, etc, and I definitely learned a ton myself from the Oxford gang and Catsters.
(Refering to James Wood and John's posts above) I found that pre-formal obviousness got in my way a bit sometimes though, because when the monoidal product isn't like a Cartesian product then things suddenly didn't behave how I expected.
It's definitely not for absolute beginners, but I don't feel like I really "got" string diagrams until I watched these videos by "TheCatsters" on string diagrams for Cat, and then worked through the initial part of Marsden's paper on the same topic and watched his talk about it. (Also definitely not beginner resources.)
I mention this because these made me realise that "things flowing along wires" isn't the only way to read a string diagram - there's another way that often makes much more sense. For a diagram that's written top-to-bottom, you have to read across the diagram, from left to right. Start at the top left-hand corner of the diagram and imagine something coming in from the left. Each wire "does something" to it as it moves across them, so you end up with something on the right-hand side that's been processed by all the wires.
Hmm, this is getting hard to describe in words. Can I post a gif here?
string-diagram-animation.gif
I'm not sure if that will work, but in case you can't see my crude animation, you have to imagine this "processing" happening at each vertical position along the diagram, so that in the end you just get one object at each vertical position, except for where there's a morphism. (Of course technically this is what the digram represents.) This is probably kind of obvious, but it took me a while before I had the "aha" moment that let me see it.
nice!
this applies doubly to string diagrams for bicategories :-)
Yes, this interpretation is indeed the one one uses when you have 2-categories. And then you can get to surface diagrams and make sense of what homotopy.io displays :D
I learned it first for 2-categories (Cat specifically) but once I'd seen it I found it really helpful for monoidal category string diagrams as well, especially if I find myself getting confused by sum-like monoidal products versus product-like ones.
I learnt string diagrams from the paper by Daniel Marsden, mentioned by Nathaniel Virgo. While I am not a professional category theorist, I found it clear enough: hence it should be suitable for beginners, and maybe worth adding to the list.