Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
69
In the first post of the series, we talked about what the topological topos is, and how we can think about its objects (and, importantly, how we can relate computations in the topos $\mathcal{T}$ to computations with topological spaces in “the real world”). In part two, we talked about algebraic structures, and how (for example) groups in $\mathcal{T}$ are related to topological groups. In that post we alluded to the presence of ~bonus axioms~ that allow us to reason in $\mathcal{T}$ more freely than in many other topoi. For instance, we have access to a certain amount of choice. We also have access to a powerful principle saying that every function between metric spaces is $\delta$-$\epsilon$ continuous! In this post we’ll spend some time talking about these bonus axioms, and proving that they’re true (since a lot of these facts are basically folklore). Let’s get to it! First, let’s take a second to recall the definition of the grothendieck topology $J$ for $\mathcal{T}$....
9 months ago

Improve your reading experience

Logged in users get linked directly to articles resulting in a better reading experience. Please login for free, it takes less than 1 minute.

More from Chris Grossack's Blog

Some Doodles I'm Proud of -- The Capping Algorithm for Embedded Graphs

This will be a really quick one! Over the last two weeks I’ve been finishing up a big project to make DOIs for all the papers published in TAC, and my code takes a while to run. So while testing I would hit “go” and have like 10 minutes to kill… which means it’s time to start answering questions on mse again! I haven’t been very active recently because I’ve been spending a lot of time on research and music, but it’s been nice to get back into it. I’m especially proud of a few recent answers, so I think I might quickly turn them into blog posts like I did in the old days! In this post, we’ll try to understand the Capping Algorithm which turns a graph embedded in a surface into a particularly nice embedding where the graph cuts the surface into disks. I drew some pretty pictures to explain what’s going on, and I’m really pleased with how they turned out! So, to start, what’s this “capping algorithm” all about? Say you have a (finite) graph $G$ and you want to know what surfaces it embeds into. For instance planar graphs are those which embed in $\mathbb{R}^2$ (equivalently $S^2$), and owners of this novelty mug know that even the famously nonplanar $K_{3,3}$ embeds in a torus1: Obviously every graph embeds into some high genus surface – just add an extra handle for every edge of the graph, and the edges can’t possibly cross each other! Also once you can embed in some surface you can obviously embed in higher genus surfaces by just adding handles you don’t use. This leads to two obvious “extremal” questions: What is the smallest genus surface which $G$ embeds into? What is the largest genus surface which $G$ embeds into where all the handles are necessary? Note we can check if a handle is “necessary” or not by cutting our surface along the edges of our graph. If the handle doesn’t get cut apart then our graph $G$ must not have used it! This leads to the precise definition: Defn: A $2$-Cell Embedding of $G$ in a surface $S$ is an embedding so that all the conected components of $S \setminus G$ are 2-cells (read: homeomorphic to disks). Then the “largest genus surface where all the handles are necessary” amounts to looking for the largest genus surface where $G$ admits a 2-cell embedding! But in fact, we can restrict attention to 2-cell embeddings in the smallest genus case too, since if we randomly embed $G$ into a surface, there’s an algorithm which only ever decreases the genus and outputs a 2-cell embedding! So if $S$ is the minimal genus surface that $G$ embeds in, we can run this algorithm to get a 2-cell embedding of $G$ in $S$. And what is that algorithm? It’s called Capping, see for instance Minimal Embeddings and the Genus of a Graph by J.W.T. Youngs. The idea is to cut your surface along $G$, look for anything that isn’t a disk, and “cap it off” to make it a disk. Then you repeat until everything in a disk, and you stop. The other day somebody on mse asked about this algorithm, and I had a lot of fun drawing some pictures to show what’s going on2! This post basically exists because I was really proud of how these drawings turned out, and wanted to share them somewhere more permanent, haha. Anyways, on with the show! We’ll start with an embedding of a graph 𝐺 (shown in purple) in a genus 2 surface: we’ll cut it into pieces along $G$, and choose one of our non-disk pieces (call it $S$) to futz with: Now we choose3 a big submanifold $T \subseteq S$ which leaves behind cylinders when we remove it. Pay attention to the boundary components of $T$, called $J_1$ and $J_2$ below, since that’s where we’ll attach a disk to “cap off” where $T$ used to be We glue all our pieces back together, but remove the interior of $T$ and then, as promised “cap off” the boundary components $J_1$ and $J_2$ with disks. Note that the genus decreased when we did this! It used to be genus 2, and now we’re genus 1! Note also that $G$ still embeds into our new surface: Let’s squish it around to a homeomorphic picture, then do the same process a second time! But faster now that we know what’s going on: At this point, we can try to do it again, but we’ll find that removing $G$ cuts our surface into disks: This tells us the algorithm is done, since we’ve successfully produced a 2-cell embedding of $G$ ^_^. Wow that was a really quick one today! Start to finish in under an hour, but it makes sense since I’d already drawn the pictures and spent some time doing research for my answer the other day. Maybe I’ll go play flute for a bit. Thanks for hanging out, all! Stay safe, and see you soon ^_^ This photo of a solution was taken from games4life.co.uk ↩ You know it’s funny, even over the course of drawing just these pictures the other day I feel like I improved a lot… I have half a mind to redraw all these pictures even better, but that would defeat the point of a quick post, so I’ll stay strong! ↩ It’s possible there’s a unique “best” choice of $T$ and I’m just inexperienced with this algorithm. I hadn’t heard of it until I wrote this answer, so there’s a lot of details that I’m fuzzy on. If you happen to know a lot about this stuff, definitely let me know more! ↩

2 days ago 4 votes
A Cute Application of the Yoneda Lemma

Every few weeks recently I’ve been putting a new fun problem on one of the whiteboards in the first year office. These are often inspired by something I saw on MSE, and I’m usually choosing problems that force you to understand something fundamental really well. Then I usually have a “challenge” bonus problem that uses the same ideas, but requires you to do some independent research to finish the puzzle! I’ve just decided what the next problem is going to be, and I’m going to post about it here because I think it’s too cute to not share more widely! This is also going to serve as a nice excuse to talk about some important reasons to care about yoneda and representability that I don’t think we often tell beginners! Before we start, though, some quick life updates: I’m still waiting to hear back positively from postdocs, but there’s still plenty of departments where I’d be very happy. I’m trying to not stress out until the end of april. What’s more stressful is my actual dissertation – because we had to move everything up a year, I didn’t have as much time as I expected to solve my main problem, and while I solved some very simple thing that’s needed along the way… It’s really not a very good thesis, haha. So I’m trying really hard to finish the whole problem in the time I have, and we’ll see how I manage. My mental health has been pretty hit or miss with the *gestures at the state of the world*, but I’m doing what I can where I can to help, and that’s been good for what would otherwise be an overwhelming sense of helplessness. I know everyone is feeling some amount of this, especially in the queer and trans community, and I encourage everyone to find something actionable to do on a local level – it helps the community, and it really does help keep the feelings manageable. BUT, enough about all that! I haven’t been writing much because I’ve been so focused on research, and I’ve really missed posting here. The quicker I am the more likely I’ll find time to do it again, so let’s get to the fun part! I’m going to assume that most people reading my blog have at least heard of the Yoneda Lemma. But it’s possible that some people reading this are confused as to why you might care about it. Like, what does it buy you? How does it help prove theorems? One answer is that it’s foundational for thinking about the functor of points approach to lots of subjects, which tells you how to study things like stacks, etc. Said in a different way, it’s an extremely useful perspective for studying certain moduli problems – you can see my old blog post about this here if you’re interested. But that’s all quite high powered. Is there a more concrete reason to care about yoneda? The answer here is inspired by one of Terry Tao’s old blog posts – the yoneda lemma tells you how to understand polymorphic transformations between two constructions (which are a priori complicated) by just studying regular old functions between representing objects! For one version of this, say you want to understand cohomology operations. That is, say you want to understand when there’s a map on cohomology $H^p(X,G_1) \to H^q(X,G_2)$ which is “polymorphic in $X$” or “uniform in $X$” in the sense that the same map works no matter which $X$ you choose1. Just as in analysis where uniformity allows you to prove lots of ~bonus results~, requiring uniformity here gives us access to many additional theorems – such as the yoneda lemma. Here this “uniformity” is usually called naturality of the transformation, and the precise relationship to polymorphism will be well understood by anyone who learned category theory via functional programming2, and is well explained in some of Bartosz Milewski’s old blog posts here and here. Now we know that $H^p(-,G)$ is represented by a space called $K(G,p)$, so asking for one of these “cohomology operations” is asking for a natural transformation Which, by representability, is a natural transformation but now we finally get to use yoneda! These natural transformations are exactly the same thing as ordinary continuous functions (up to homotopy) This means if we can understand all continuous functions between these fixed spaces, that’s enough to understand all cohomology operations $H^p(X,G_1) \to H^q(X,G_2)$ for every space $X$ simultaneously! The ability to work with the representing objects directly is a huge reduction in complexity, and one of the main reasons people work with objects like “stacks” and “spectra” is because they want more things to be representable so that they can play exactly this game3. That’s well and good…. But surely that can’t be the “down to earth” example, right? Cohomology operations are interesting, and might eventually feel down to earth, but objectively most people would laugh at that idea. This, finally, brings us to the problem I’ll be writing on the first year’s whiteboard later today: Let $R$ be a (commutative, unital) ring. Classify all “polymorphic” functions $R^n \to R$. That is, all (set) functions $R^n \to R$ that can be defined uniformly for all rings $R$ simultaneously. (Hint: yoneda) If $G$ is a finite group, define a “$G$-torsion collection” in $R$ to be a group homomorphism $G \to R^\times$ from $G$ to the units of $R$. For example, a “$C_n$-torsion collection” is an element $x \in R$ so that $x^n = 1$, and a “$\mathfrak{S}_3$-torsion collection” is determined by elements $x,y \in R$ with $x^2 = 1$, $y^3 = 1$, and $xyx = y^2$ (because $\langle x, y \mid x^2=1, \ y^3=1, \ xyx=y^2 \rangle$ is a presentation for $\mathfrak{S}_3$) (Challenge) Classify all “polymorphic” (set) functions \(\Big \{\mathfrak{S}_3\text{-torsion collections in $R$} \Big \} \to \Big \{C_2\text{-torsion collections in $R$} \Big \}\) I’m about to spoil both of these problems, so if you want to think about them (and I really encourage you to think about them! At least the first problem!) now is your last chance to be unbiased by my explanation… Ok, so. Inspired by the rest of this post you’ll want to think about how to represent the constructions above. For the first problem, where we want set functions $R^n \to R$, that means we want to represent4 the functor sending a ring $R$ to the underlying set of $R^n$ the functor sending a ring $R$ to its underlying set The second one isn’t so hard to do – a moment’s thought shows that ring homs $\mathbb{Z}[x_1] \to R$ are in bijection with elements of $R$ (we just have to choose where to send $x_1$). Once you’ve figured this out it’s not such a big jump to see that ring homs $\mathbb{Z}[x_1, \ldots, x_n] \to R$ are in bijection with elements of $R^n$ (we just have to choose where to send each of the $x_i$ separately). So classifying “polymorphic” transformations $R^n \to R$ is classifying natural transformations which, by yoneda, is asking to classifying good old fashioned ring homs and, as before, we just need to decide where $y$ goes! So this is in bijection with the underlying set of $\mathbb{Z}[x_1, \ldots, x_n]$. That is, with integer-coefficient polynomials in $n$ variables. It’s not hard to see that any such polynomial gives you such a natural map! Indeed, for a concrete example take $p = x_1^2 + 2 x_1 x_2 - 3$. Then we get a function $R^2 \to R$ sending $(r_1, r_2) \mapsto r_1^2 + 2 r_1 r_2 - 3$, where an integer like $-3$ is interpreted in $R$ as $0_R - 1_R - 1_R - 1_R$. If one thought about this problem without knowing category theory, I think it would be pretty easy to conjecture that integer polynomials are the only polymorphic maps $R^n \to R$… But I’m not sure how you would prove it without basically rediscovering this special case of yoneda! Now… what about the challenge problem? We want to classify “polymorphic” maps Again we have a natural5 conjecture, since if we have a group homomorphism $\mathfrak{S}_3 \to R^\times$ we get some obvious group homomorphisms $C_2 \to R^\times$ too (namely the images of $(1 \ 2)$, $(2 \ 3)$ and $(1 \ 3)$, the 2-torsion elements in $\mathfrak{S}_3$)… Could this be all of them? Well, a “$G$-torsion collection” in $R$ is a group homomoprhism $G \to R^\times$, and these are in bijection with ring maps $\mathbb{Z}G \to R$! So the same idea as before shows that classifying natural transformations is the same as classifying natural transformations which, by yoneda, means classifying ring maps and thus means classifying $C_2$-torsion collections in $\mathbb{Z}\mathfrak{S}_3$. So we want to understand the group of units in $\mathbb{Z}\mathfrak{S}_3$, and in particular we want to classify the $2$-torsion elements in this group! Now is where the independent research comes in. You might naively guess that the group of units in $\mathbb{Z}G$ is just $G$ again… But you would be wrong! Of course if $g \in G$ then both $+g$ and $-g$ are units in $\mathbb{Z}G$, but even this isn’t enough! Understanding the units in group rings turns out to be a subtle and interesting problem, and I think it’s extra cute that this little puzzle helps people learn about this surprisingly rich subject6. We want to understand the group of units in $\mathbb{Z}\mathfrak{S}_3$, and searching for things related to this will quickly turn up the paper The Group of Units of the Integral Group Ring $\mathbb{Z}S_3$ by Hughes and Pearson, which certainly seems related! This paper is only 6 pages long, and is a very polite read7. Part (2) of their Theorem 1 is exactly what we’re looking for: (2) … there are $2$ conjugacy classes of elements of order $2$, with generic elements $(12)$ and $t=(12) + 3(13) - 3(23) - 3(123) + 3(132)$ respectively. What does this mean for us? Their Part (1) to this same theorem gives an isomorphism of \((\mathbb{Z}\mathfrak{S}_3)^\times\) with a certain $2 \times 2$ matrix group, so it’s easy to compute conjugation. So knowing this and knowing both conjugacy representatives we have a classification of all order 2 elements in $\mathbb{Z}\mathfrak{S}_3$, and by extension (crucially using yoneda and representability!) a classification of all natural transformations Indeed from this we’ve learned that our naive conjecture was wrong! This element $t$ is not one of the 2-torsion elements we were expecting, and it gives us a new and unexpected natural transformation! If $f : \mathfrak{S}_3 \to R^\times$ is a $\mathfrak{S}_3$-torsion collection in $R$, then of course we have $C_2$-torsion elements $f(1 \ 2)$, $f(2\ 3)$ and $f(1 \ 3)$. But it turns out we also have a secret, special $C_2$-torsion element Or, said another way, if $x,y \in R^\times$ with $x^2 = 1$, $y^3 = 1$, and $xyx = y^2$ determine a $\mathfrak{S}_3$-torsion collection in $R$, then is a (probably surprising!) $C_2$-torsion element in $R$. Of course, as with the last problem, I’m not sure how you would even begin to approach this classification problem without rediscovering the relevant version of the yoneda lemma! Thanks again for hanging out, everyone! I’m working on a lot of really fun stuff and I can’t wait to have time to talk about it. I think I want a quick outro today – I’ve had the sniffles all weekend, probably because I didn’t dress well before hanging out in the cold with one of my best friends who visited me last week! We made creme brulee for the first time (since I recently bought a blowtorch), and it was surprisingly easy and turned out delicious! I already make a lot of lava cakes when I want a decadent and fancy dessert, but I’ll have to add creme brulee into the rotation! Talk soon, everyone! Stay warm 💖 This “polymorphism” (which, of course, corresponds to naturality) is because we want an operation that’s really coming from the cohomology rather than being an “accidental” operation that comes from structure on $X$. ↩ Like I did… about a decade ago… I realized when writing this post that I remember waiting for many of these Bartosz Milewski posts to be published! But these posts have been done since 2017. Wild. ↩ I was so close to making “spectra” in this sentence link to spectra instead, which I think would be hilarious, but I decided against it. ↩ Some pedants might prefer I say corepresent. This footnote is purely to indicate that I do know better, I just don’t care, haha. ↩ Pun very much intended ↩ I forget exactly when I learned that the units in $\mathbb{Z}G$ might be bigger than just $\pm G$… But I remember being extremely surprised at the time! I’ll mention, though, that this maybe shouldn’t be that surprising. Indeed the group ring and group of units constructions are adjoint, so the unit of the adjunction gives a (natural) map and there’s no reason to suspect this unit is an isomorphism! Most units aren’t, haha. ↩ Though you have to get over the “function application on the right” notation, which goes totally unmentioned and confused me for a second when I read it. Functions on the right is absolutely objectively the better notation, and unfortunately it’s just confusing enough when you aren’t used to it to make it so that it’s unlikely to ever really catch on. ↩

2 weeks ago 10 votes
Where Do Those Undergraduate Divisibility Problems Come From?

Oftentimes in your “intro to proofs” class or your first “discrete math” class or something similar, you’ll be shown problems of the form “prove that for $n^6 + n^3 + 2n^2 + 2n$ is a multiple of $6$ for every $n$”… But where do these problems come from? And have you ever stopped to think how magical this is? If I gave you some random polynomial in $n$ and asked you if it always output multiples of $6$, the answer would almost always be “no”! So if you really needed to come up with an example of this phenomenon, how would you do it? In this blog post, we give one approach! I want to give some sort of attribution for this, since I remember reading about this exact topic… like a long time ago. Maybe 6 or 7 years ago? I’m sure that I saved the relevant article1 in my zotero, but I can’t find it for the life of me! Regardless, I want to emphasize that the whole idea for this topic (using Pólya-Redfield counting to build these divisibility problems) is not mine. I’ve wanted to write a post on Pólya-Redfield counting for years now, since it was a pet topic of mine as an undergrad, but I think I was always planning too big a scope. This is a very bite-sized problem, and I won’t go into the theory very deeply, so I think it should make for a blog post I can finish in a day2. Let’s get to it! Ok, first, how might we come up with problems like this? We want a polynomial $P(n)$ and an integer $k$ so that $P(n)$ is always a multiple of $k$. That is, so that $P(n) / k$ is always an integer! But what are sources of integers? If we put our combinatorial hats on, we learn that we had better be counting something! That’s the quickest way to ensure that we get an integer answer at the end of the day. So we want a polynomial so that as we vary $n$, the value $P(n) / k$ counts… something. At this point, you might be inspired by The Lemma Which is Not Burnside’s, which says that when a group $G$ acts on a set $X$, the number of orbits is where \(X^g = \{ x \mid gx = x \}\) is the set of fixed points of $g$. This is great, since in some sense it’s “where division comes from”. I don’t want to get into categorification here, but when we say we’re thinking of numbers as the cardinality of some set (to guarantee they’re integers) we’re really categorifying our problem. There’s been lots of work showing how various operations on numbers lift to categorified operations on the category of finite sets, and the only way I know of to categorify division is to take the orbits of some group action3. Hopefully this also serves to show that categorification doesn’t need to be scary! It can be incredibly simple, just thinking about finite sets and what we can do to them… Though maybe people who read my blog are already convinced of that, haha. Regardless, this orbit-counting formula is close to what we want! It gives us access to division. So if we could only find a family of sets $X_n$, all of which admit a $G$-action, then maybe we could have $P(n) = \sum_g |X_n^g|$ and thus $P(n)$ will always be divisible by $|G|$, since $P(n)/|G|$ counts the orbits $|X_n \big / G|$! This is exactly what Pólya-Redfield counting buys us! I really want to write a blog post with lots of pretty pictures that explains this in detail, but maybe just for today I’ll allow myself to be a bit less thorough. If you want to see this motivated with pretty pictures, I’ll point you to some slides by my undergrad advisor Klaus Sutner4. These are from the 2023 version of the class where I first met him back in… 2017? It’s better to not think about that, haha. Moving on, say we have a set $X$ with a $G$-action. Then we think about all the ways to “color” $X$ with $n$-many colors. Precisely these are functions from \(X \to [n]\), and they pick up a natural $g$ action by sending the function $f : X \to [n]$ to the function $(gf)(x) = f(g^{-1}x)$5. These function spaces6 \((X \to [n])\) will be our sets $X_n$, and all that’s left is to see how to compute $|X_n \big / G|$, ideally in a way that’s uniform in $n$. Now (a corollary of) the main Pólya-Redfield theorem says: where $c(g)$ is the “cycle count” of $g$. We can view the action of $G$ on $X$ as a homomorphism $\alpha$ from $G$ to the symmetric group $\mathfrak{S}_X$. Then $\alpha(g) \in \mathfrak{S}_X$ is a permutation, so decomposes into a product of cycles. The number $c(g)$ is perhaps the dumbest invariant you can think of: just count the number of cycles! This is exactly what we want, since it tells us that the polynomial $P(n) = \sum_g n^{c(g)}$ is always divisible by $|G|$, since the quotient is exactly counting the orbits of the action of $G$ on \((X \to [n])\)! Again, unfortunately I’ll leave the derivation of this formula (and the many many other useful things the Pólya-Redfield theory buys you) for another day, but at least we can do some quick examples! First, say we want to count the number of bracelets you can make with $6$ beads, provided you have $n$ many types of beads available. Obviously if you were looking at bracelets in the real world that you can move around, the following two bracelets are actually the same: so we want to count the number of ways to color this picture with $n$ colors (this is a choice of bead in each position), but only up to the obvious $\mathbb{Z} / 6$ action on the space of colorings7! Now choose an isomorphism between the colorable places of our configuration and the standard set of size $6$, for instance, this is likely to be a common choice: After making this identification our action is a map $\mathbb{Z}/6 \to \mathfrak{S}_6$, and thus we can compute cycle decompositions as follows: Element $g \in \mathbb{Z}/6$ Image in $\mathfrak{S}_6$ Number of Cycles, $c(g)$ $0$ $(1)(2)(3)(4)(5)(6)$ $6$ $1$ $(1 \ 2 \ 3 \ 4 \ 5 \ 6)$ $1$ $2$ $(1 \ 3 \ 5)(2 \ 4 \ 6)$ $2$ $3$ $(1 \ 4)(2 \ 5)(3 \ 6)$ $3$ $4$ $(1 \ 5 \ 3)(2 \ 6 \ 4)$ $2$ $5$ $(1 \ 6 \ 5 \ 4 \ 3 \ 2)$ $1$ Using this, we see that the number of bracelets with $n$ beads, up to our $\mathbb{Z}/6$ action is Since this is counting the number of orbits, it must be an integer, and so for every $n$, the polynomial $P(n) = n^6 + n^3 + 2n^2 + 2n$ has to be divisible by $6$, as promised! Let’s see a harder one, which (in the interest of speed) I stole from Klaus’s lectures: How many ways can you fill a tic-tac-toe board with $X$s and $O$s, up to rotation and reflection? We have configurations like the following (I’ve already chosen a bijection between our colorable places and the standard set with $9$ elements): Now we want to color each slot $X$ or $O$, and quotient out the action of the dihedral group in order to view the following colorings as “the same” (of course, these aren’t the whole orbit! There’s many other rotations and reflections which are also equivalent): Notice we’re also not worried about which colorings come from actual games of tic-tac-toe! How does Pólya-Redfield tell us to proceed? Well, the dihedral group $D_{2 \cdot 4}$ has $8$ elements, built out of rotations and reflections. Say that $r$ is the clockwise rotation shown above, and $s$ is the horizontal flip shown above. Then using the numbering system from before, we compute so that, in cycle notation: Since $r$ and $s$ generate the whole dihedral group, we’re done with the hard work! Now a computer algebra system like sage can compute the rest of the table from these by multiplying them together: As a cute exercise for those new to group theory, try computing these 8 permutations yourself! Can you figure out which one comes from which element of the dihedral group? Can you see how they relate to the usual presentation $G = \langle r, s \mid r^4, s^2, srs=r^{-1} \rangle$? From here it’s easy to read off the polynomial! If we have $n$-many available colors to put in each slot of the tic-tac-toe board, then the number of possible boards, counted up to rotation and reflection is given by Since we’re trying to color the board with only two colors, $X$ and $O$, we see the number of ways is Now we’ve really made two predictions here. First, that $P(n) = n^9 + 4n^6 + n^5 + 2n^3$ will be a multiple of $8$ for whichever $n$ you plug in. Second, that this quotient really is counting the tic-tac-toe boards! Let’s take a quick second and ask sage how true those look. First, we can just plug in a few thousand $n$s and see if we ever hit anything other than a multiple of $8$: Second, we know there’s only $2^9 = 512$ many ways to 2-color a tic-tac-toe board without counting rotations and reflections. So it’s not too time consuming to just list all of them and remove any we’ve seen before! So there we go! This actually ended up taking two days to write, since yesterday I got distracted from my distraction when I was talking to a friend about connections and how curvature is related to force in physics. I realized I don’t actually understand that as well as I thought I did, so I had to spend some time rereading a bunch of physics stuff, which was super fun, even if it took a while, haha. If you’re ever on a deserted island and you find yourself needing polynomials whose outputs are always divisible by some fixed number, this is an endless source! You might ask if every such polynomial arises from Pólya-Redfield counting in this way, and that’s obviously false (since, for instance, we’ll never get any constant terms)… But it’s not obviously false that every such polynomial arises from Pólya-Redfield counting after a change of variables! So with no intuition at all for whether it’s true or false, let me pose that as a conjecture: Conjecture: If $p$ is a polynomial so that $p(n)$ is a multiple of $k$ for every $n$, then there is a set $X$ and a group $G$ of order $k$ and a polynomial $f$ sending integers to integers so that Maybe $f$ can even be taken to be of the form $an+b$, why not. I haven’t thought about it either way, haha. For anyone interested in thinking about this conjecture, it’ll be nice to know that every polynomial sending integers to integers is an integer linear combination of binomial coefficients (see here). Amusingly, this was also shown by Pólya! You can push this further (as mentioned in the same wikipedia article) to note that $k \mid p(n)$ for all $n$ if and only if in the above representation $p = \sum c_i \binom{x}{i}$, all the $c_i$s are multiples of $k$. So we have an extremely concrete classification of these polynomials, which one might use to (dis)prove the conjecture8! As a cute aside, we’ve actually talked about this basis for polynomials in terms of binomial coefficients before! Seeing them turn up here was like seeing an old friend. Thanks again for hanging out, all! This was super fun, and it was a nice diversion from the blog post about my thesis work. It’s loooong, but really interesting, and I think people will enjoy it. This stuff relating fukaya categories, topological field theories, and representation theory is some of the coolest math I’ve ever seen, and I couldn’t have asked for a more fun thesis topic. Of course, I also need to get the topological topos posts cleaned up and submitted to journals, and I have a fun project that I want to finish up which will be interesting to categorical logicians and algebraic geometers! (At least, algebraic geometers of a certain kind, haha). There’s always more to do, but that’s part of the fun of it! After two months applying to postdocs and barely doing any math at all, I’m thrilled to be back at it ^_^. Alright, stay safe, all! We’ll talk soon 💖 or maybe it was a blog post or an mse question or something… Or maybe a footnote in a published paper? Part of why I can’t find it is because I don’t remember anything about where I read it! And back when I was an undergrad I was much worse about leaving myself searchable notes so I can quickly find interesting things again. ↩ If you’re curious why I decided to make this blog post now, I just started learning about cluster algebras today, and in the first lecture of Pavel Galashin’s series on the subject he mentions a recurrence relation which magically always gives integers, despite division happening. This reminded me of these polynomials which always give outputs divisible by some number (which is an easier version of the same phenomenon), and I went looking for the original article to share on mastodon. I couldn’t find it, so… I guess I’m writing one! John Baez and Jim Dolan and I also talked about species and structure types in our last meeting, and so I think I was also somewhat primed to think about generating functions and Pólya-Redfield counting based on that conversation. ↩ You need groupoids and “groupoid cardinality” to have access to division in general, since this lets you get rational numbers (and even certain real numbers!) as cardinalities. See, for instance, John and Jim’s famous paper From Finite Sets to Feynman Diagrams or this MO post for more. ↩ I saved a copy of these slides local to this blog to make sure they’re always available, but if you want them right from the horse’s mouth you can find them here, and a course schedule with all the available lecture slides here. ↩ As long as I’m missing my undergrad years, I’ll pass on an insight from one of my favorite undergrad professors Clinton Conley about this seemingly weird $g^{-1}$: Remember when you were learning how to graph functions and if you want to move the graph of $f(x)$ to the right by $c$, you look at the function $f(x-c)$? This trips up a lot of students first learning things, since it seems backwards to subtract $c$ to move to the right, especially since moving up and down has the much more sane behavior that $f(x)+c$ moves you up by $c$ units! This is the same phenomenon, where the action on the input is contravariant (and we act on $x$ by the inverse of $c$) while the action on the output is covariant (and we act on $f(x)$ by $c$)! There’s also something to be said here about left vs right actions, but I won’t say it, haha. Hopefully this Clinton-ism helps this make more sense, since I remember it really helped me when I was younger! ↩ I guess my type theory background is showing in this notation, haha. ↩ I think when most people talk about these bracelet problems, they quotient by the dihedral group instead of the cyclic group. This is because you can flip a bracelet over in 3D, so you have access to reflections too. I’m ignoring that for the sake of the example, though, and just counting things up to rotation. ↩ This is also a much more efficient source of polynomials for undergrad divisibility problems, but it wouldn’t have been anywhere near as fun! ↩

2 months ago 37 votes
$\mathsf{B}\text{Diff}(\Sigma)$ Classifies $\Sigma$-bundles

I’ve been trying to learn all about topological (quantum) field theories, the cobordism hypothesis, and how to use $(\infty,n)$-categories. This is all in service of some stuff I’m doing with skein algebras (which are part of a “$3+1$ TQFT” often named after Crane–Yetter, but I believe the state of the art is due to Costantino–Geer–Haïoun–Patureau-Mirand), but it’s incredibly interesting in its own right and it’s been super fun to get a chance to learn more physics and learn way more about topology and higher categories. Along the way, I was watching a lecture by Jacob Lurie where he mentions something that should probably be obvious (but wasn’t to me): For a (smooth) manifold $F$, $\mathsf{B}\text{Diff}(F)$ classifies bundles with fibre $F$ That is, given a manifold $M$ we have a natural bijection I asked about this in the category theory zulip, and got some great responses that still took me a while to digest. Actually, it wasn’t until I started reviewing a bunch of material on principal bundles1 that everything clicked into place for me. Over the course of this post, I’ll hopefully make this bijection obvious, and I’ll explain some facts about bundles along the way. This should serve as a nice quick blog post to write during my winter break since I’ve been extremely stressed for the last two months trying to get all my postdoc applications done2. Thankfully it’s all finally behind me, and I’m back in New York with people I love, so I’m resting up and doing math again (which have both been fantastic for my mental health). Let’s get to it! First, let’s remember what a bundle even is. Say we have a base space $M$ and a map $\pi : E \to M$. Then for each point $m \in M$ we have the fibre $E_m = \pi^{-1}(m)$, and so we can view $\pi$ as a family of spaces $(E_m)$ indexed by points of $M$. We think of $E_m$ as being “vertical” over $m \in M$, and we think of the topology on $E$ as telling us how these fibres are glued to each other “horizontally”3: We say that $\pi : E \to M$ is a fibre bundle if it’s “locally trivial” in the sense that (locally) the fibres are all $F$, and these copies of $F$ are all glued to each other in the most obvious possible way. Because we mathematicians feel the need to make newcomers feel inadequate, we call this most obvious way the “trivial” bundle: $\pi : M \times F \to M$. For a bundle to be locally trivial we don’t ask for it to literally be $M \times F$, that’s asking too much. Instead we ask that for every point $m \in M$ there should be a neighborhood $U_m$ so that $\pi^{-1}(U_m) \cong F \times U_m$4. We say that such a bundle is a Fibre Bundle with Fibre $F$, and here’s a completely natural question: Can we classify all fibre bundles with fibre $F$ over a base space $M$? Let’s think about how we might do this from a conceptual point of view, and that will lead us to the answer in the title of this post. Then we’ll reinterpret that conceptual understanding in much more concrete language, and hopefully explain why people care so much about principal bundles at the same time! If we put our type theory hats on5, then we want to think about a fibre bundle as being a map from our base space $M$ into a “space of all $F$s”. Then we think of this map as assigning an $F$ to every point of $M$, and this is exactly6 the data of a fibre bundle! But what should a “space of all $F$s” look like7? Well, as a first try let’s just take a huge manifold $\mathcal{U}$ and look at all copies of $F$ sitting inside it! For instance, we might take $\mathbb{R}^\infty$, and then an “$F$ sitting inside it” is an embedding $\iota : F \hookrightarrow \mathbb{R}^\infty$… almost! A choice of embedding has the ~bonus data~ of a parameterization, which an abstract “copy of $F$” wouldn’t have. We’re only interested in what’s morally the image of a particular embedding, so we should quotient out by reparameterization. Concretely, if $\varphi : F \overset{\sim}{\rightarrow} F$ is a diffeomorphism, then $\iota$ and $\iota \circ \varphi$ represent the same “copy” of $F$ in $\mathbb{R}^\infty$, so we find ourselves interested in the space Now it feels like we made a choice here, taking $\mathcal{U} = \mathbb{R}^\infty$, but we can worm our way out of this choice with homotopy theory! Indeed it’s believable that \(\{ \iota : F \hookrightarrow \mathbb{R}^\infty \}\) should be contractible, since if $F$ is finite dimensional then any two embeddings lie in a small subspace of $\mathbb{R}^\infty$, so there’s plenty of room to homotope them into each other. Then for any two such homotopies there’s still room to fill in the resulting circle, and so on. Since the space of embeddings is contractible, up to homotopy we’re working with8 and if we make “$\mathcal{U}$ is sufficiently large” mean “the space of embeddings of $F$ in $\mathcal{U}$ is contractible”, then we’ll get $\star \big / \text{Diff}(F)$ independent of this choice. Of course, $\star \big / \text{Diff}(F)$ is frequently called the Classifying Space $\mathsf{B} \text{Diff}(F)$, and so we’re halfway to our goal! We normally think of $\mathsf{B}G$ for a group $G$ as an object classifying “principal $G$-bundles”, so that a map $M \to \mathsf{B}G$ is the same thing as a bundle over $M$ whose fibres are all isomorphic to $G$… So, naively, it sounds like a map $M \to \mathsf{B}\text{Diff}(F)$ should be the data of a bundle over $M$ whose fibres are $\text{Diff}(F)$! But we wanted a bundle over $M$ whose fibres are $F$! What gives? The answer comes from the Associated Bundle Construction, which is the reason to care about principal bundles at all! In a remarkably strong sense, we can understand every “$G$-bundle” as long as we’re able to understand the principal $G$-bundles! Let’s see how, then use it to solve our problem in a (more) down-to-earth way. Concretely, we might understand a fibre bundle by picking a good open cover \(\{ U_\alpha \}\). Then we pick local trivializations $\varphi_\alpha : \pi^{-1}(U_\alpha) \overset{\sim}{\to} U_\alpha \times F$. If we want to answer a (local) question about the bundle, we can use one of these $\varphi_\alpha$s to transfer the question to a question about $U_\alpha \times F$, which is often easier to work with. But crucially we need to know that we’ll get the same answer no matter which of these “charts” $U_\alpha$ we work with. For instance, say our fibres are all $\mathbb{R}$. Then a natural question might be “is this element of the fibre $0$?”. If we always glue $0$ to $0$ then we get a consistent answer, but if at some point we glue $0$ in $U_\alpha$ to $1$ in $U_\beta$ then the answer will depend on which chart we use to do the computation! It turns out that more fundamental than the particular choice of trivialization are the “transition maps” $\varphi_\beta \circ \varphi_\alpha^{-1} : (U_\alpha \cap U_\beta) \times F \overset{\sim}{\to} (U_\alpha \cap U_\beta) \times F$ which tell us how to translate computations between our $\alpha$ and $\beta$ charts. These have to be the identity on the $U_\alpha \cap U_\beta$ part, so the interesting data is a map $\varphi_{\beta \alpha} : F \overset{\sim}{\to} F$ which tells us how to glue the $\alpha$ and $\beta$ charts along their intersection. Now if we want to answer questions corresponding to “bonus structure” on our fibre, we need to make sure we only ever glue in a way that preserves the answers to these questions. That is, instead of $\varphi_{\beta \alpha}$ being any old diffeomorphism of $F$, we want it to be in the subgroup of diffeomorphisms respecting this structure9. If we call this subgroup $G$, then we call our bundle a $G$-bundle. For example, if our fibres are all $\mathbb{R}^n$ and we want to ask vector-spacey questions, then we should only glue them using diffeomorphisms that respect the vector space structure. That is, we should only glue along $\mathsf{GL}(n) \subseteq \text{Diff}(\mathbb{R}^n)$, and so we’re working with a $\mathsf{GL}(n)$-bundle. If we moreover want to ask questions about the usual inner product on $\mathbb{R}^n$, then we have to glue in a way that preserves the inner product so our transition functions will be valued in $\mathsf{O}(n)$10. So it turns out the crucial data for a $G$-bundle are the transition maps $\varphi_{\beta \alpha} : U_\alpha \cap U_\beta \to G$. These have to satisfy the Cocycle Condition11 that $\varphi_{\gamma \beta} \varphi_{\beta \alpha} = \varphi_{\gamma \alpha}$, which crucially never mentions the fibre $F$! So we learn that $G$-bundles can be classified without referencing the fibre $F$ at all! Indeed, say we have the data of a $G$-cocycle $\varphi_{\beta \alpha}$. Then for any space $F$ with a $G$-action we can build a bundle with fibres $F$ by using these as our transition functions. Since we can choose any $F$ we want (at least for the purposes of classification) it’s reasonable to ask if there’s a “best” choice of fibre that makes things easier. To answer this one might ask if there’s a “best” choice of set that $G$ acts on, and from there we might be led to say that the best choice is $G$ acting on itself by multiplication! In this case our fibres are all $G$, and it’s easy to see this preserves “relative information” about $G$ since $h^{-1}k = (gh)^{-1}(gk)$ and the value of $h^{-1}k$ is preserved by the multiplication action. However this action does not preserve “absolute information” about $G$, such as the identity, since $ge = g \neq e$. The structure that’s preserved is called a torsor, and so we see that any $G$-valued cocycle on $M$ naturally gives us a bundle of $G$-torsors on $M$! This is called a Principal $G$-Bundle, and from the earlier discussion if we can classify the principal $G$-bundles, we can classify all $G$-bundles easily! It turns out that in many many ways if we want to understand $G$-bundles it’s enough to understand the principal ones. For instance connections on a $G$-bundle arise in a natural way from connections on a principal $G$-bundle, and principal $G$-bundles give us a way to work with bundles in a coordinate-invariant way. I won’t say any more about this, in the interest of keeping this post quick, but I’ll point you to the excellent blog posts by Nicolas James Marks Ford12 on $G$-bundles and connections, as well as the relevant sections of Baez and Muniain’s excellent book Gauge Fields, Knots, and Gravity. Concretely, how can we implement this bijection? Well, given a $G$-bundle $\pi : E \to M$ we can fix a good open cover \(\{ U_\alpha \}\) of $M$, and we can read off the transition maps $\varphi_{\beta \alpha} : U_\alpha \cap U_\beta \to G$, and then we can build a new $G$-bundle $\widetilde{E} \to M$ whose fibres are all $G$ (called the Associated Bundle to $E$) by gluing copies of $G$ together with these same transition maps $\varphi_{\beta \alpha}$. This is a principal $G$-bundle. In the other direction, say we have a principal $G$-bundle $\pi : P \to M$. Then if $G$ acts on any space $F$ we can build a new $G$-bundle which is fibrewise given by $E_m = (P_m \times F) \big / \sim$ where we quotient by the relation $(hg,f) \sim (h, gf)$. This is, in some sense, coming from the “universality” of $G$ as a $G$-set that made $G$ the “best” choice of set with a $G$-action13! It’s a cute exercise to check that these operations are inverse to each other! Now. Where did we start, and where did we end? Well we can read on wikipedia that $\mathsf{B}G$ classifies principal $G$-bundles. But we know that once we fix an action of $G$ on $F$, the principal $G$-bundles are in bijection with $G$-bundles with fibre $F$! So using the obvious action of $\text{Diff}(F)$ on $F$, and remembering that all bundles with fibre $F$ have transition functions landing in $\text{Diff}(F)$, we get a natural bijection Which is exactly what we were looking for! In hindsight, I’m not sure whether the story involving a “space of all $F$s” or the story about associated bundles is “more concrete”… I know the second story is easier to make precise, but I think both versions are good to see. I’m super happy to have finished this post in two days. I started writing it last night when I got to my friends’ house in New York, and I finished it this morning while they were addressing and signing a bunch of christmas cards. It’s good to be thinking and writing about math again after my two months of postdoc application hell, and I’m feeling SO comfortable and relaxed it’s just great to be around people I love. I’m going to hopefully find time to finish writing a series on skein algebras, hall algebras, and fukaya categories (which is the topic of my thesis) in the next month or two. That will be great, because I have a TON of fascinating stuff to share ^_^. As always, thanks for hanging out. Now more than ever stay safe, stay warm, and take care of each other. Nobody else is going to. Also… wow I’m tall. I’m trying to learn some gauge theory for other reasons ↩ For political reasons at UCR, it seems like none of the rising 6th years will get TA positions next year. Which means that me and a LOT of people in my cohort are having to graduate a year earlier than we planned, because like…. we need money to live, lol. We found this out in mid october, crucially after the NSF grant deadline, and only a month and a half before most postdoc applications were due. I made it happen, but it’s been a really unpleasant two months. ↩ I want this to be a quick low effort post, so I’m going to shamelessly steal all my graphics from Baez and Muniain’s book Gauge Fields, Knots, and Gravity. ↩ In this situation we say our condition is “local on the base” or “local on the target” since we have a neighborhood $U_m$ for every $m \in M$ the “base space”, which is the target of the map $\pi : E \to M$. This is to be contrasted with a condition that’s “local on the domain” or “local on the total space” or “local on the source”, where we have a neighborhood $U_e$ for every $e \in E$ the “domain” or “total space” or “source” of the map $\pi : E \to M$. ↩ You could just as well put your moduli space hat on, if you’re more comfortable with that. One of the ↩ It’s reasonable to ask why this definition only gives us locally trivial bundles. The reason is that a homotopy class of a map from a contractible space to the “space of all $F$s” is the same thing as a map from a point to this space. Composing with the contraction homotopy we find that the bundle we classify is trivial. So if you take a point if $M$ and restrict your map to a contractible neighborhood of $m$, you’ll find that the bundle is trivial on that neighborhood. ↩ I got this argument from Kevin Carlson in the CT Zulip, from the same thread I linked earlier. ↩ Here, of course, we have to work $\infty$-categorically and interpret this quotient as a homotopy quotient in order for it to be interesting! ↩ This is what “structure groups” are all about. I had half a mind to write up a longer thing explaining how structure groups work and why they correspond to structure on the fibre surviving to global structure on the bundle (especially because it was something that took me a while to understand)… But I also want this post to be done quickly, and I found myself wanting to draw a bunch of pictures and write a bunch of stuff about that, so… I didn’t 😌. I’m sure we’ll talk more about it someday. ↩ If at this point you’re thinking that if we don’t want to preserve ~any~ bonus structure we should take our structure group to be the whole of $\text{Diff}(F)$, then congratulations! You are making an observation that would have saved me… a lot of time and confusion a few months ago, haha. ↩ I won’t get into this here, and since I want this to be quick I don’t want to find a good reference, but this use of the word “cocycle” isn’t an accident, and indeed we’re computing the Čech cohomology of the base space with coefficients in $G$. The cocycle condition tells us we’re considering cocycles, and the coboundaries tell us when we’re describing the same bundle with different intitial choices of trivialization. ↩ It’s kind of hilarious how similar his blog looks to mine. We’re using very similar color schemes. ↩ Note also that the action of left multiplication of $G$ on itself commutes with (“preserves”) the action of right multiplication of $G$ on itself (this is associativity). So a principal $G$-bundle has a global right action of $G$, and a trivial bundle with fibre $F$ has a global left action of $G$, since the identity diffeomorphism preserves the left action of $G$ on $F$. So we have two bundles, one with a global right $G$-action and one with a global left $G$-action. So we can take thier tensor product to be left with a new bundle, not necessarily admitting a global $G$-action. ↩

3 months ago 62 votes
Finiteness in Sheaf Topoi

The notion of “finiteness” is constructively subtle in ways that can be tricky for people new to the subject to understand. For a while now I’ve wanted to figure out what’s going on with the different versions of “finite” in a way that felt concrete and obvious (I mentioned this in a few older blog posts here and here), and for me that means I want to understand them inside a sheaf topos $\mathsf{Sh}(X)$. I’ve thought about this a few times, but I wasn’t able to really see what was happening until a few days ago when I realized I had a serious misconception about picturing bundles and etale spaces! In this post, we’ll talk about that misconception, and spend some time discussing constructive finiteness in its most important forms. As a short life update before we get started, I’m currently in Denmark with my advisor to hang out with Fabian Haiden. We’re going to be talking about all sorts of fun things related to my thesis work, mainly about Fukaya Categories. These can be really scary when you first start reading about them, but in the special case of surfaces they’re really not that bad! In the process of prepping for meeting Fabian, I’ve been writing a blog post that explicitly details what fukaya categories are, why you should care, and (for surfaces) how to compute them. I know I would have loved an article like this, and I’m excited to share one soon! I’m also finally going to finish my qual prep series from three years ago! Way back then I promised a post on fourier theory that I never got around to, but I recently found a draft of that post! So it might not be 100% true to what I was studying back then, but it’ll be as true to that as I can make it1. With all that out of the way, let’s get to it! First, let’s just recall the notions of finiteness you’re likely to find in the literature2. Keep in mind that, depending on the reference you’re reading, each of these is liable to be called just “finite” without disambiguation. Sometimes you even get more confusing conventions, (such as writing “subfinite” to mean what we call “kuratowski finite”!) so make sure you read carefully to know exactly what each particular author means! For this post, though, we’ll write: If $n : \mathbb{N}$, the Finite Cardinal of size $n$ is the set \([n] = \{ x : \mathbb{N} \mid x \lt n \}\). A set $X$ is called Bishop Finite if it’s (locally) isomorphic to a cardinal. That is, if \(\exists n : \mathbb{N} . \exists f : X \cong [n]\) A set $X$ is called Kuratowski Finite if it’s (locally) the image of a cardinal. That is, if \(\exists n : \mathbb{N} . \exists f : [n] \twoheadrightarrow X\). A set $X$ is called Subfinite if it’s (locally) a subobject of a cardinal. That is, if \(\exists n : \mathbb{N} . \exists f : X \hookrightarrow [n]\). A set $X$ is called Dedekind Finite if every mono $X \hookrightarrow X$ is actually an iso. That is, if we can prove \(\forall f : X \hookrightarrow X . \exists g : X \to X . fg = 1_X \land gf = 1_X\). It’s pretty obvious from these definitions that dedekind finiteness is a bit different from the others. This comes with pros and cons, but in my experience it’s rarely the thing to consider. I’m including its definition more for cultural growth than anything, and I won’t say anything more about it in this post3. Also, notice we’re putting an existential quantifier in front of everything. Externally, this means that we’re allowed to pass to an open cover of our base space and use a different $f$ (or indeed, a different $n$!) on each open. If you prefer type theory4, you can replace every instance of $\exists$ by the propositional truncation of a $\Sigma$-type. It’s interesting to ask what the “untruncated” versions of these will be. I think that untruncated bishop finite types are exactly the cardinals, untruncated subfinite types are disjoint unions of finitely many propositions… But it’s not clear to me what the untruncated kuratowski finite types should be. Something like “finitely many copies of $B$, glued together along open sets”… But I don’t see a snappy characterization of these5. Introducing Finiteness Now, how should we go about visualizing these things? Every sheaf on $B$ is also an etale space over $B$ (that is, a local homeomorphism6 $E \to B$). And by thinking of our favorite sheaf as some space over $B$ we can draw pictures of it! Let’s start simple and let $B = [-1,1]$ be an interval. Then a cardinal7 is a sheaf \([n] = \{x : \mathbb{N} \mid x \lt n \}\). In every sheaf topos $\mathsf{Sh}(B)$ the natural number object is (the sheaf of sections of) $B \times \mathbb{N}$ where $\mathbb{N}$ gets the discrete topology. So if $n$ is a global section, it must be \(B \times \{ n \}\) for some fixed $n$ in “the real world”. This also tells us that \([n] = \{ x : \mathbb{N} \mid x \lt n \}\) is given by The situation is only slightly more complicated if $B$ has multiple components8 (say $B = [-1,1] \sqcup S^1$). In this case, $\mathbb{N}$ is still $B \times \mathbb{N}$, but now global sections can choose a different natural over each component: Because of this, we end up with more sets $[n]$! Indeed, now a global section $n$ might be something like $(2,3)$ (shown in pink above) so that we get a cardinal $[(2,3)]$, shown below: So cardinals are really really easy to work with! This is what we would expect, since they’re subsheaves of a particularly simple sheaf ($\mathbb{N}$). For instance, we can see the fact that cardinals always have decidable equality by noticing that any two sections over $U$ are either equal on all of $U$, or none of $U$! Contrast this with a doodle of what other sheaves might look like, where the pink and blue sections are different, but nonetheless intersect. Then the truth value of $(\text{pink} = \text{blue}) \lor (\text{pink} \neq \text{blue})$ as computed in $\mathsf{Sh}([-1,1]) \big / U$ will not be all of $U$9! We also see why a cardinal is either empty or inhabited! As soon as you have a piece of a section over $U$, it must extend to a section on all of $U$. Next up are the bishop finite sets10! These satisfy $\exists f : X \cong [n]$, so that we can find an open cover \(\{U_\alpha \}\) of $B$ and functions \(f_\alpha : X \! \upharpoonright_\alpha \cong [n] \! \upharpoonright_\alpha\). Since $[n]$ is a constant family over $B$, this means we want $X$ to be locally constant. So bishop finite sets have to basically look like cardinals, but now we’re allowed to “twist” the fibres around. See how on each element of our cover we have something that looks like $[2]$, but globally we get something that is not isomorphic to $[2]$! In fact, the bishop finite sets are exactly the covering spaces with finite fibres. These inherit lots of nice properties from the cardinals, since as far as the internal logic is concerned they’re isomorphic to cardinals! For instance, here’s an internal proof that bishop finite sets have decidable equality: $\ulcorner$ We know $\exists f : X \cong [n]$. Fix such an $f$, and let $x,y : X$. Since $f$ is an isomorphism we know $x=y$ if and only if $fx = fy$, but we can decide this using decidable equality on $[n]$ (which comes from decidable equality on $\mathbb{N}$, which we prove by induction). $\lrcorner$ We can also see this externally. As before, this is saying that two sections over $U$ either agree everywhere or nowhere (and it’s a cute exercise to see this for yourself). But we can even see this in a third way! It says that the subsheaf \(\{(x,y) : X \times X \mid x=y \}\) is a clopen subset of $X \times X$! But we can compute $X \times X$ (the pullback of $X \to B$ along $X \to B$) and check this. Note that the subsheaf (really sub-etale space) where the fibres are the same really is a clopen subset (read: a connected component) of the whole space $X \times X$ over $B$. If it’s not obvious that this really is the pullback, it makes a fun exercise! Actually, it’s a fun exercise to check this is true in general! As a last remark, let’s also notice that bishop finite sets can be inhabited without being pointed. That is, a bishop finite set $X$ can satisfy $\exists x : X$ ($X$ is inhabited11) without actually having $x:X$ for any $x$ ($X$ is not pointed)! This is because of the locality of the existential quantifier again! If we pass to an open cover of $B$, we can find a local section over each open. Unfortunately, these might not be compatible, so won’t glue to a global section (a point $x:X$)! Ok, now let’s get to the example that led me to write this post! How should we visualize kuratowski finite sets? These are (locally) quotients of cardinals, so we start with a cardinal (which we know how to visualize) and then we want to start gluing stuff together. Let’s start with a trivial double cover of $B = [-1,1]$ (that is, with two copies of $B$), and glue them together along their common open subset $[-1,0) \cup (0,1]$. This space is the line with two origins, and it’s famously nonhausdorff! You can see that this space still deserves to be called “finite” over $B$ (for instance, all the fibres are finite), but it’s more complicated than the bishop case. For instance, it doesn’t have a well defined “cardinality”. In some places it has one element in the fibre, and in others it has two. However, it’s still possible to list or enumerate all the sections. In the above picture, there’s the gold section and the blue section. It just happens that sometimes this list has duplicates, since away from $0$ they’re the same section! The failure of hausdorffness and the failure of decidable equality are closely related. For example, consider the two sections from the previous picture. Decidable equality says that they should be either everywhere equal or everywhere unequal12. But of course they aren’t! They’re equal in some places (over $1$, say) but unequal in others (over $0$)! Following Richard Borcherds, hausdorffness is also closely related to a kind of “analytic continuation”. Indeed, say your etale space $X$ is hausdorff and you pick a point $x_b$ over $b \in B$ (in this context we think of $x_b$ as the germ of a function at $b$). Then for any small enough open $U \ni b$, there is a unique extension of $x_b$ to a function on the whole neighborhood $U$! We are able to analytically continue $x_b$ from data at just a point to data defined in some neighborhood! Here’s an easy exercise to see this for yourself and check your knowledge of the topology on the etale space of a sheaf: Let $\mathcal{F}$ be a sheaf on $B$ whose etale space $X$ is hausdorff, and let $U$ be a connected open of $X$. Let $f,g \in \mathcal{F}(U)$ be local sections with $f(b_0) = g(b_0)$ for some $b_0 \in U$. Then show $f=g$ identically on $U$. As a hint, consider the set \(\{ b \in U \mid f(b) = g(b) \}\). Why is it open? Why is it closed? In fact, if $B$ is locally connected and hausdorff, then the converse is also true, and our sheaf of sections $\mathcal{F}$ has this analytic continuation property if and only if its etale space is hausdorff13! This also makes a nice exercise (though it’s less easy), and I’ll include a solution below a fold. solution $\ulcorner$ definition of stalk says that $f=g$ on a neighborhood of $b$. Since $U$ is connected, we learn this subset is the whole of $U$ and $\mathcal{F}$ has analytic continuation. $\lrcorner$ When I was trying to picture kuratowski finite objects inside $\mathsf{Sh}(B)$, I’d somehow convinced myself that a local homeomorphism over a hausdorff space has to itself be hausdorff. This is, obviously, not true! So I was trying to picture kuratowski finite sets and struggling, because I was only ever picturing hausdorff covering spaces. And we’ll see later that all hausdorff kuratowski finite sheaves (over spaces I was picturing) are actually bishop finite! So it’s no wonder I was confused! I didn’t realize the complexity (especially the nonhausdorff complexity) that etale spaces are allowed to have, even though in hindsight I’d been warned about this before14. Going back to examples, we should ask if we recognize the sheaf of sections for our favorite “line with two origins” picture from earlier. Away from $0$, we know there’s exactly one section, but in any neighbordhood of $0$ there’s two sections. So we see this is the etale space for the skyscraper sheaf with two points over $0$! Since our epi $[n] \twoheadrightarrow X$ only has to exist locally, kuratowski finite objects in $\mathsf{Sh}(B)$ can have the same twisting behavior as bishop finite sets too! If you look up an example of a kuratowski finite set that isn’t bishop finite (for example, in Section 2.2.2 of Graham Manuell’s excellent note), you’re likely to find the example \(\{ \top, p \}\) where $p$ is some truth value other than $\top$ or $\bot$. That is, where $p$ is some open set of the base space $B$. Away from $p$, this set has two elements, $\top$ and $p$ (since away from $p$ we know $p = \bot$). But inside of $p$, this set has a single element (since in $p$ we know $p = \top$). We find its etale space is nonhausdorff as before, but now the nonhausdorffness is “spread out” over a larger set. It’s a good exercise to figure out what’s happening at the boundary of $p$. What are the basic opens of this space? Does the fibre at $p$ have one point, or two? Kuratwoski finite sets can be shockingly complicated! Especially in contrast to the relatively tame bishop finite sets. For example, consider $B = \mathbb{R}$ with a skyscraper sheaf at every integer15: This space is kuratowski finite in $\mathsf{Sh}(\mathbb{R})$ (since it’s locally a quotient of $\mathbb{R} \sqcup \mathbb{R}$), but it has continuum many global sections! Indeed, we can choose either the top or the bottom point at every integer. Since even the choice of $[n]$ is local, we can change the size of the fibres as long as they’re all finite! In fact, on mastodon (here and here), Antoine Chambert-Loir and Oscar Cunningham pointed out that you can do even weirder things. For instance, the set \(\{\frac{1}{n} \mid n \in \mathbb{N} \} \cup \{ 0 \}\) is closed in $[0,1]$. So its complement is open, and we can glue two copies of $[0,1]$ together along it! This gives us a kuratowski finite object which nonetheless has infinitely many sections in every neighborhood of $0$16! Finally, let’s talk about subfinite sets. These are locally subobjects of cardinals, so are much easier to visualize again! A subobject of a cardinal is just a disjoint union of open subsets of $B$: So a subfinite set has to locally look like these. Keep in mind, though, that like kuratowski finite sets, the choice of $[n]$ is made locally. So we can have something like this: In particular, we see that the fibres of a subfinite set don’t need to be globally bounded! So, perhaps surprisingly, a subfinite set does not need to be a subobject of a bishop finite set! As we’ve come to expect, the existential quantifier gives us the ability to twist. As subobjects of decidable objects, we see these inherit decidable equality. However, while bishop and kuratowski finite objects are all either empty or inhabited, subfinite sets don’t need to be! For an easy example, consider Here the truth value of $\exists x : X$ is $U \cup V$, and the truth value of $X = \emptyset$ is $\text{int}(U^c \cap V^c)$. (Do you see why?) An aside on decidable equality This isn’t technically about visualizing etale spaces, but I was thinking about it while writing this post, and I think it fits well enough to include. If nothing else, it’s deifnitely interesting enough to include! If you’re really paying attention, you’ll notice the “easy exercise” about analytic continuation didn’t actually use any aspects of finiteness. Indeed, we can prove the following (very general) theorem: Let $B$ be locally connected and hausdorff. Then the following are equivalent for a sheaf $\mathcal{F}$ on $B$: The etale space of $\mathcal{F}$ is hausdorff Sections of $\mathcal{F}$ satisfy “analytic continuation”, in the sense that two sections agreeing on a stalk17 must agree everywhere they’re defined $\mathcal{F}$ has decidable equality in the internal logic of $\mathsf{Sh}(B)$ This comes from a mathoverflow answer by Elías Guisado Villalgordo $\ulcorner$ The equivalence of $1$ and $2$ was the earlier exercise, and you can find a proof below it under a fold/ To check the equivalence of $2$ and $3$, we look at “decidable equality”, that $\forall f,g : \mathcal{F} . (f=g) \lor (f \neq g)$. Externally, this says that for every $U$, for every pair of local sections $f,g \in \mathcal{F}(U)$, there’s an open cover \(\{U_\alpha\}\) so that on each member of the cover \(f \! \upharpoonright_{U_\alpha}\) and \(g \! \upharpoonright_{U_\alpha}\) are either everywhere equal or everywhere unequal. Clearly if $\mathcal{F}$ has analytic continuation then $\mathcal{F}$ has decidable equality. Indeed using local connectedness of $B$ we can cover $U$ by connected opens. By analytic continuation we know that on each connected piece either $f=g$ everywhere or nowhere, as desired. Conversely, say $\mathcal{F}$ has decidable equality. Fix a connected $U$ and sections $f,g \in \mathcal{F}(U)$ which have the same stalk at some point $b \in U$. By decidable equality, there’s an open cover \(\{ U_\alpha \}\) of $U$ where on each member of the cover $f=g$ holds everywhere or nowhere. Recall that since $U$ is connected, for any two opens in the cover $U_\alpha$ and $U_\beta$ we can find a finite chain $U_\alpha = U_0, U_1, U_2, \ldots, U_n = U_\beta$ of opens in our cover where each $U_i$ intersects $U_{i+1}$. Then for any $U_\beta$ in the cover, fix such a chain from $U_0 \ni b$ to $U_\beta$. By decidable equality we know $f=g$ on $U_0$. So for the point in $U_0 \cap U_1$ we know $f=g$, and by decidable equality again we learn $f=g$ on $U_1$. Proceeding in this way we learn $f=g$ on the whole of $U_\beta$. Thus $f=g$ on every member of the cover, so on the whole of $U$, and so $\mathcal{F}$ satisfies analytic continuation. $\lrcorner$ If you’ve internalized this, it makes it geometrically believable that a decidable kuratowski finite set is actually bishop finite! I think it’s fun to see this fact both syntactically (reasoning in the internal logic) and semantically (reasoning about bundles), so let’s see two proofs! First, a syntactic proof: $\ulcorner$ Say $f : [n] \twoheadrightarrow X$. Then we note for each $x:X$ the predicate $\varphi(k) \triangleq f(k) = x$ on $[n]$ is decidable since $X$ has decidable equality. Thus it gives an inhabited decidable subset of $[n]$, which has a least element (Lemma D5.2.9(iii) in the elephant). Call such an element $g(x)$. Note the image of $g$ is a complemented subset of $[n]$, since we can decide $k \in \text{im}(g)$ by checking if $k = g(f(k))$ using decidability of $[n]$. Then $\text{im}(g)$ is isomorphic to a cardinal (D5.2.3), $[m]$, and it’s easy to see that composing $g$ and $f$ with this isomorphism gives a bijection between $X$ and $[m]$. $\lrcorner$ And now a semantic proof: $\ulcorner$ Say $\pi : E \twoheadrightarrow B$ is the etale space of a kuratowski finite object in $\mathsf{Sh}(B)$. So, locally, $E$ is the quotient of some $\coprod_n B$. Say also that $E$ is has decidable equality so that, locally, two sections of $E$ that agree somewhere must agree everywhere. By refining our covers, then, we may fix an open cover \(\{U_\alpha\}\) of $B$ and epimorphisms \(\coprod_{n_\alpha} U_\alpha \to E \! \upharpoonright_{U_\alpha}\) so that two local sections on $U_\alpha$ either agree everywhere or nowhere. In particular, the $n_\alpha$ many components $f_i : U_\alpha \overset{i\text{th inclusion}}{\longrightarrow} \coprod_{n_\alpha} \to E$ are pairwise either have the same image or disjoint images. Choosing exactly one $f_i$ for each possible image (the least $i$ that works, say) we see that actually $\pi^{-1}(U_\alpha)$ is homeomorphic to the disjoint union of copies of $U_\alpha$ so that $E$ is actually a covering space, and thus represents a bishop finite object. $\lrcorner$ It’s worth meditating on why these are actually the same proof! In both cases we use decidability to “remove duplicates” from our enumeration. Which Finite to Use? Constructively, bishop and kuratowski finiteness encode two aspects of finiteness which are conflated in the classical finite world. Bishop finite sets are those which admit a cardinality. They’re in bijection with some $[n]$, and so have a well defined notion of size. Kuratowski finite sets, in contrast, are those equipped with an enumeration. You can list all the elements of a kuratowski finite set. Of course, knowing how to biject a set $X$ with a set $[n]$ always tells you how to enumerate $X$. But constructively knowing how to enumerate $X$ doesn’t tell you how to biject it with some $[n]$! As we saw earlier, the problem lies with removing duplicates. It’s worth taking a second to visualize a kuratowski finite set that isn’t bishop finite, and convince yourself that the question “is this a duplicate element” can have more subtle answers than just “yes” or “no”. This makes it impossible to remove the duplicates. This bifurcation might feel strange at first, but in some squishy sense it happens classically too once you start working with infinite sets. Indeed in set theory the notion of finiteness bifurcates into cardinals, which have a defined notion of “size”, and ordinals, which have a defined notion of “order” (kind of like an enumeration… if you squint). So when you’re working constructively, ask why you’re using finiteness. Do you really need to know that something literally has $n$ elements for some $n$? Or is it enough to know that you can put the elements in a finite list? Does it matter if your list has duplicates? These questions will tell you whether bishop finiteness or kuratowski finiteness is right for your purposes. Subfiniteness, which amounts to being contained in some $[n]$, I find to be less useful “in its own right”. Instead, if you’re able to prove a result for bishop finite objects, it’s worth asking if you can strengthen that to a proof for subfinite ones! In any case, as long as we work with decidable things, these notions all coincide. As we saw earlier, a decidable quotient of a bishop finite set (that is, a decidable kuratowski finite set) is again bishop finite. Similarly, a complemented subset of a bishop finite set is finite (this is lemma D5.2.3 in the elephant, but it’s not hard to see yourself). So if you’re working in a context where everything is decidable, finite sets work exactly as you would expect! This is part of why constructive math doesn’t have much to say about combinatorics and algebra. Most arguments are already constructive for decidable finite sets (which is what you’re picturing when you picture a finite set and do combinatorics to it). Sometimes you can push things a bit farther though, and this can be interesting. See, for instance, Andreas Blass’s paper on the Constructive Pigeonhole Principle. Another blog post done! I’m writing this on a train to Odense right now, and once I get to my room I’ll draw all the pictures and post it. Hopefully this helps demystify the ways in which constructive math might look strange at first. Once again the seemingly bizarre behavior is explained by its vastly greater generality! When you first learn that a subset of a (bishop) finite set need not be (bishop) finite, it sounds so strange as to be unusable! But once you learn that this is an aspect of “everywhere definedness” in a space of parameters (read: the base space) it becomes much more palatable. Thanks, as always, for hanging out. Try to keep cool during this summer heat (though it’s actually really pleasant in Denmark right now), and I’ll see you all soon ^_^. Here’s a picture of me and Peter right after we got off the train: And, of course, I still really want to finish the blog post on 2-categories and why you should care… There’s just so many other things to think about and to write! It also feels like a big topic because I have a lot to say, and that makes me a bit scared to actually start. Especially since I’ve been writing a lot of longer form posts lately (like the three part series on the topological topos, and I can tell the fukaya post is going to be long too…) ↩ Here we’re using the expected abbreviations. We write $f : X \cong Y$ to mean $f : X \to Y$ and $\exists g : Y \to X . gf = 1_X \land fg = 1_Y$. We write $f : X \hookrightarrow Y$ to mean $f : X \to Y$ and $\forall x_1, x_2 : X . fx_1 = fx_2 \to x_1 = x_2$ We write $f : X \twoheadrightarrow Y$ to mean $f : X \to Y$ and $\forall y : Y . \exists x : X . fx = y$. ↩ If you want to learn more about it, I highly recommend Stout’s Dedekind Finiteness in Topoi. I don’t know of a good way to visualize the dedekind finite objects in $\mathsf{Sh}(X)$ (though I haven’t tried at all – I want this to be a quick post) which was another reason to exclude them. ↩ Which I often do, but not today. ↩ And I want this to be a quick post, finished within a day or two of starting. So I don’t have time to think if there’s something slicker (and intuitively I don’t expeect there to be). Edit: I got about as close to “within a day or two” as is possible for me, haha. I started writing this on August 12, and it looks like I’ll get it posted on August 18. Given I went a few days without working on it, that’s not too bad! ↩ That is, a space built by gluing together opens of $B$ along common intersections ↩ Johnstone’s Elephant defines a cardinal to be a pullback of the “universal cardinal”. In $\mathsf{Sh}(B)$ this is an object in $\mathsf{Sh}(B) \big / \mathbb{N} \simeq \mathsf{Sh}(B \times \mathbb{N})$ and is shown in the following picture: ↩ We’ll still assume that $B$ is locally connected, though, since that makes them much easier to draw. It’s important to remember that our geometric intuition is likely to fail us if we start considering, say, sheaves on the cantor space! ↩ Remember truth values are open sets in the base space, so the truth value of $(\text{pink} = \text{blue}) \lor (\text{pink} \neq \text{blue})$ will be \(\text{int}(\{ \text{pink} = \text{blue} \}) \cup \text{int}( \{ \text{pink} \neq \text{blue} \} )\) ↩ I’m like… at least 90% sure it’s an accident these are both named after positions of authority in catholicism. ↩ Here we use the common abuse of notation of abbreviating “$\exists x:X . \top$” by just “$\exists x:X$”. It measures “to what extent” there exists an element of $X$. That is, its truth value is the support of $X$ over $B$ – \(\text{int} \big ( \{b \in B \mid \exists x \in X_b \} \big )\) ↩ Well, it says this should be true locally. But it’s easy to see we’ll have a problem in any neighborhood of $0$. ↩ I stole this whole exercise from this mathoverflow answer by Elías Guisado Villalgordo ↩ In that same Richard Borcherds video, for instance, which I know I watched when it came out. In fact, lots of references on etale spaces, in hindsight, emphasize the fact that etale spaces can be highly nonhausdorff. My guess is that I’m not the first person to have made this mistake, haha, and I know that when I teach etale spaces going forwards I’m going to be sure to emphasize this too! In his talk Nonetheless One Should Learn the Language of Topos, Colin McLarty compares etale spaces to a piece of mica (around the 1h04m mark), and I think I’m starting to see what he means. ↩ Concretely you can build this space by gluing two copies of $\mathbb{R}$ together along their common open subset $\mathbb{R} \setminus \mathbb{Z}$. ↩ This is a fun example to think about. Why does it have only countably many sections at $0$, rather than uncountably many? Can you picture its topology at all? See the linked mastodon posts for more discussion. ↩ Saying that $f$ and $g$ agree on the stalk at $b$ is saying that there’s an open neighborhood of $b$ where $f=g$ on that neighborhood. So this is another way of saying that as soon as two sections agree on an arbitrarily small neighborhood, they must agree on their whole (connected) domain! ↩

7 months ago 65 votes

More in science

Fertility Policy For Rich Countries

A brief proposal to fix Social Security and grow the population

11 hours ago 2 votes
Why Are Beach Holes So Deadly?

[Note that this article is a transcript of the video embedded above.] Even though it’s a favorite vacation destination, the beach is surprisingly dangerous. Consider the lifeguard: There aren’t that many recreational activities in our lives that have explicit staff whose only job is to keep an eye on us, make sure we stay safe, and rescue us if we get into trouble. There are just a lot of hazards on the beach. Heavy waves, rip currents, heat stress, sunburn, jellyfish stings, sharks, and even algae can threaten the safety of beachgoers. But there’s a whole other hazard, this one usually self-inflicted, that usually doesn’t make the list of warnings, even though it takes, on average, 2-3 lives per year just in the United States. If you know me, you know I would never discourage that act of playing with soil and sand. It’s basically what I was put on this earth to do. But I do have one exception. Because just about every year, the news reports that someone was buried when a hole they dug collapsed on top of them. There’s no central database of sandhole collapse incidents, but from the numbers we do have, about twice as many people die this way than from shark attacks in the US. It might seem like common sense not to dig a big, unsupported hole at the beach and then go inside it, but sand has some really interesting geotechnical properties that can provide a false sense of security. So, let’s use some engineering and garage demonstrations to explain why. I’m Grady and this is Practical Engineering. In some ways, geotechnical engineering might as well be called slope engineering, because it’s a huge part of what they do. So many aspects of our built environment rely on the stability of sloped earth. Many dams are built from soil or rock fill using embankments. Roads, highways, and bridges rely on embankments to ascend or descend smoothly. Excavations for foundations, tunnels, and other structures have to be stable for the people working inside. Mines carefully monitor slopes to make sure their workers are safe. Even protecting against natural hazards like landslides requires a strong understanding of geotechnical engineering. Because of all that, the science of slope stability is really deeply understood. There’s a well-developed professional consensus around the science of soil, how it behaves, and how to design around its limitations as a construction material. And I think a peek into that world will really help us understand this hazard of digging holes on the beach. Like many parts of engineering, analyzing the stability of a slope has two basic parts: the strengths and the loads. The job of a geotechnical engineer is to compare the two. The load, in this case, is kind of obvious: it’s just the weight of the soil itself. We can complicate that a bit by adding loads at the top of a slope, called surcharges, and no doubt surcharge loads have contributed to at least a few of these dangerous collapses from people standing at the edge of a hole. But for now, let’s keep it simple with just the soil’s own weight. On a flat surface, soils are generally stable. But when you introduce a slope, the weight of the soil above can create a shear failure. These failures often happen along a circular arc, because an arc minimizes the resisting forces in the soil while maximizing the driving forces. We can manually solve for the shear forces at any point in a soil mass, but that would be a fairly tedious engineering exercise, so most slope stability analyses use software. One of the simplest methods is just to let the software draw hundreds of circular arcs that represent failure planes, compute the stresses along each plane based on the weight of the soil, and then figure out if the strength of the soil is enough to withstand the stress. But what does it really mean for a soil to have strength? If you can imagine a sample of soil floating in space, and you apply a shear stress, those particles are going to slide apart from each other in the direction of the stress. The amount of force required to do it is usually expressed as an angle, and I can show you why. You may have done this simple experiment in high school physics where you drag a block along a flat surface and measure the force required to overcome the friction. If you add weight, you increase the force between the surfaces, called the normal force, which creates additional friction. The same is true with soils. The harder you press the particles of soil together, the better they are at resisting a shear force. In a simplified force diagram, we can draw a normal force and the resulting friction, or shear strength, that results. And the angle that hypotenuse makes with the normal force is what we call the friction angle. Under certain conditions, it’s equal to the angle of repose, the steepest angle that a soil will naturally stand. If I let sand pour out of this funnel onto the table, you can see, even as the pile gets higher, the angle of the slope of the sides never really changes. And this illustrates the complexity of slope stability really nicely. Gravity is what holds the particles together, creating friction, but it’s also what pulls them apart. And the angle of repose is kind of a line between gravity’s stabilizing and destabilizing effects on the soil. But things get more complicated when you add water to the mix. Soil particles, like all things that take up space, have buoyancy. Just like lifting a weight under water is easier, soil particles seem to weigh less when they’re saturated, so they have less friction between them. I can demonstrate this pretty easily by just moving my angle of repose setup to a water tank. It’s a subtle difference, but the angle of repose has gone down underwater. It’s just because the particle’s effective weight goes down, so the shear strength of the soil mass goes down too. And this doesn’t just happen under lakes and oceans. Soil holds water - I’ve covered a lot of topics on groundwater if you want to learn more. There’s this concept of the “water table” below which, the soils are saturated, and they behave in the same way as my little demonstration. The water between the particles, called “pore water” exerts pressure, pushing them away from one another and reducing the friction between them. Shear strength usually goes down for saturated soils. But, if you’ve played with sand, you might be thinking: “This doesn’t really track with my intuitions.” When you build a sand castle, you know, the dry sand falls apart, and the wet sand holds together. So let’s dive a little deeper. Friction actually isn’t the only factor that contributes to shear strength in a soil. For example, I can try to shear this clay, and there’s some resistance there, even though there is no confining force pushing the particles together. In finer-grained soils like clay, the particles themselves have molecular-level attractions that make them, basically, sticky. The geotechnical engineers call this cohesion. And it’s where sand gets a little sneaky. Water pressure in the pores between particles can push them away from each other, but it can also do the opposite. In this demo, I have some dry sand in a container with a riser pipe to show the water table connected to the side. And I’ve dyed my water black to make it easier to see. When I pour the water into the riser, what do you think is going to happen? Will the water table in the soil be higher, lower, or exactly the same as the level in the riser? Let’s try it out. Pretty much right away, you can see what happens. The sand essentially sucks the water out of the riser, lifting it higher than the level outside the sand. If I let this settle out for a while, you can see that there’s a pretty big difference in levels, and this is largely due to capillary action. Just like a paper towel, water wicks up into the sand against the force of gravity. This capillary action actually creates negative pressure within the soil (compared to the ambient air pressure). In other words, it pulls the particles against each other, increasing the strength of the soil. It basically gives the sand cohesion, additional shear strength that doesn’t require any confining pressure. And again, if you’ve played with sand, you know there’s a sweet spot when it comes to water. Too dry, and it won’t hold together. Too wet, same thing. But if there’s just enough water, you get this strengthening effect. However, unlike clay that has real cohesion, that suction pressure can be temporary. And it’s not the only factor that makes sand tricky. The shear strength of sand also depends on how well-packed those particles are. Beach sand is usually well-consolidated because of the constant crashing waves. Let’s zoom in on that a bit. If the particles are packed together, they essentially lock together. You can see that to shear them apart doesn’t just look like a sliding motion, but also a slight expansion in volume. Engineers call this dilatancy, and you don’t need a microscope to see it. In fact, you’ve probably noticed this walking around on the beach, especially when the water table is close to the surface. Even a small amount of movement causes the sand to expand, and it’s easy to see like this because it expands above the surface of the water. The practical result of this dilatant property is that sand gets stronger as it moves, but only up to a point. Once the sand expands enough that the particles are no longer interlocked together, there’s a lot less friction between them. If you plot movement, called strain, against shear strength, you get a peak and then a sudden loss of strength. Hopefully you’re starting to see how all this material science adds up to a real problem. The shear strength of a soil, basically its ability to avoid collapse, is not an inherent property: It depends on a lot of factors; It can change pretty quickly; And this behavior is not really intuitive. Most of us don’t have a ton of experience with excavations. That’s part of the reason it’s so fun to go on the beach and dig a hole in the first place. We just don’t get to excavate that much in our everyday lives. So, at least for a lot of us, it’s just a natural instinct to do some recreational digging. You excavate a small hole. It’s fun. It’s interesting. The wet sand is holding up around the edges, so you dig deeper. Some people give up after the novelty wears off. Some get their friends or their kids involved to keep going. Eventually, the hole gets big enough that you have to get inside it to keep digging. With the suction pressure from the water and the shear strengthening through dilatancy, the walls have been holding the entire time, so there’s no reason to assume that they won’t just keep holding. But inside the surrounding sand, things are changing. Sand is permeable to water, meaning water moves through it pretty freely. It doesn’t take a big change to upset that delicate balance of wetness that gives sand its stability. The tide could be going out, lowering the water table and thus drying the soil at the surface out. Alternatively, a wave or the tide could add water to the surface sand, reducing the suction pressure. At the same time, tiny movements within the slopes are strengthening the sand as it tries to dilate in volume. But each little movement pushes toward that peak strength, after which it suddenly goes away. We call this a brittle failure because there’s little deformation to warn you that there’s going to be a collapse. It happens suddenly, and if you happen to be inside a deep hole when it does, you might be just fine, like our little friend here, but if a bigger section of the wall collapses, your chance of surviving is slim. Soil is heavy. Sand has about two-and-a-half times the density of water. It just doesn’t take that much of it to trap a person. This is not just something that happens to people on vacations, by the way. Collapsing trenches and excavations are one of the most common causes of fatal construction incidents. In fact, if you live in a country with workplace health and safety laws, it’s pretty much guaranteed that within those laws are rules about working in trenches and excavations. In the US, OSHA has a detailed set of guidelines on how to stay safe when working at the bottom of a hole, including how steep slopes can be depending on the types of soil, and the devices used to shore up an excavation to keep it from collapsing while people are inside. And for certain circumstances where the risks get high enough or the excavation doesn’t fit neatly into these simplified categories, they require a professional engineer be involved. So does all this mean that anyone who’s not an engineer just shouldn’t dig holes at the beach. If you know me, you know I would never agree with that. I don’t want to come off too earnest here, but we learn through interaction. Soil and rock mechanics are incredibly important to every part of the built environment, and I think everyone should have a chance to play with sand, to get muddy and dirty, to engage and connect and commune with the stuff on which everything gets built. So, by all means, dig holes at the beach. Just don’t dig them so deep. The typical recommendation I see is to avoid going in a hole deeper than your knees. That’s pretty conservative. If you have kids with you, it’s really not much at all. If you want to follow OSHA guidelines, you can go a little bigger: up to 20 feet (or 6 meters) in depth, as long as you slope the sides of your hole by one-and-a-half to one or about 34 degrees above horizontal. You know, ultimately you have to decide what’s safe for you and your family. My point is that this doesn’t have to be a hazard if you use a little engineering prudence. And I hope understanding some of the sneaky behaviors of beach sand can help you delight in the primitive joy of digging a big hole without putting your life at risk in the process.

2 hours ago 2 votes
The Future of American Foreign Aid

USAID has been slashed, and it is unclear what shape its predecessor will take. How might American foreign assistance be restructured to maintain critical functions? And how should we think about its future?

18 hours ago 2 votes
The prehistoric psychopath

Life in the state of nature was less violent than you might think. But this made them vulnerable to a few psychopaths.

4 hours ago 1 votes
What Are My Politics?

And my unrefined thoughts on US politics

5 hours ago 1 votes