Computing an integer using a Grothendieck topos
math.andrej.com
math.andrej.com
Bauer brings up non-Euclidean geometry but the thing there is about 40-ish years into it Beltrami and then Klein started showing why hyperbolic geometry is interesting and important (per Milnor[0]). Constructive mathematics is older than that by now ('Foundations of Constructive Analysis' came out in 1967, and the field was old even then), where are its applications to other fields of math? By 'application' I'm meaning stuff like, for example, how certain isometries of the plane (PSL2(R)) are connected to the Poincare disk.
I'm even less impressed by 'neutral mathematics'. OK, you proved a well-known result without using excluded middle or choice, that's cool, I beat Doom with only the pistol. Tell me why that's not just stunts and gimmickry.
[0]: https://projecteuclid.org/journals/bulletin-of-the-american-...
Also of note by the same author: https://www.ams.org/journals/bull/2017-54-03/S0273-0979-2016...
Some examples, Joyal and Tierney's An extension of the Galois theory of Grothendieck, CJ Mulvey's papers from the 70s (Intuitionistic algebra and representations of rings for example) and Blechschmidt's A General Nullstellensatz for Generalized Spaces.
Johnstone's Sketches of an Elephant often has both internal and external proofs for comparison and it's easily seen that the internal version is both easier to write and to understand.
For an article explicitly focused on using internal languages in algebraic geometry, see Blechschmidt's notes [0]. In particular, section 20 is dedicated to proving things that are difficult without the internal language.
Incidentally, I studied algebraic geometry with a functorially oriented professor; one day, in passing, he said something along the lines of not wanting to use the axiom of choice in the proof of some result. At the time I didn't understand and I didn't ask for clarification, but the puzzlement stayed with me for a while. Having read this, it looks like his remark might have been related to this kind of stuff (e.g. chapter 12).
I'm not asking for a 'mainstream more applied field', I'm asking for some other flavor of math, no matter how abstract.
Agreed, and I think this is something mathematicians generally can relate to.
One application for computer scientists is to focus on computability of the real numbers. Turing's proof that there are uncomputable real numbers is nonconstructive, and it turns out that we can choose "all reals are computable" as an axiom of a topos. (This is the "Russian school" of constructive maths, ala Markov, IIUC.) This is "interesting and important" for both theory and engineering.
For Poincaré-level mindblowing moments, we'll have to search across the landscape of topos theory, a landscape which was only dried out because of constructive maths damming up the floods of LEM and Choice. From homotopy type theory, we have the idea that types are like spaces; objects of the same type are related precisely by the possibility that one object might be deformable into the other. From higher category theory, we have the idea that sets are like 0-categories, and that set theory is just the bottommost slice of a 3D pyramid of category theories.
Proving results neutrally to LEM and Choice is "not just stunts and gimmickry", because the proofs may be reused in any topos, and thus a neutral result is more true or less contextual than one which relies upon LEM. Bauer gives Johnstone, Diff, and RT as example topoi where LEM simply isn't true, but where neutral proofs would be reusable. Since RT is realizeable (by definition, it's the "realizability topos!") this means that neutral proofs each give runnable computer programs.
This is sort of like beating Halo with only the pistol, and developing a sort of "pistol speedrun theory" where we study speedruns with games that have pistols. We aren't saying that there's not non-pistol speedruns, but emphasizing that pistols are a common feature. (Of course, the analogy breaks down here, since not all speedruns are pistol speedruns. Not all topoi are Grothendieck topoi, I suppose.)
There are type systems that correspond to non constructive logics, but those are the weirder ones.
I thought elliptic geometry was not a subset of absolute geometry.
It's been a while since I've actively studied this, but my recollection is that all you have to do is replace the axioms for betweenness with axioms for separation, and you get a theory which is suitable for elliptic geometry.
(Separation is an arity-4 relationship on points. Intuitively, given any four distinct and collinear points, A and C separate B and D if the order of the points on the line (traveling in either direction) is ABCD.)
https://en.wikipedia.org/wiki/Foundations_of_geometry#Ellipt... appears to agree
Certainly the way I learned it was that the parallel postulate is the only axiom which distinguishes the elliptic, Euclidean, and hyperbolic geometries.
Meanwhile, ACL2 has the excluded middle and can still prohibit defining non-computable things. It needs termination analysis in order to do so, but these type theories rely on that too. Is the forgoing the excluded middle really gaining you the guarantee of computability?
It doesn't follow; that uncomputable things cannot be expressed in a constructive system doesn't mean that everything that is computable in principle is also computable, or even definable, in that system (unless by "guaranteeing computability" you meant something else).
Wow cool, I never realized it was so simple! Thanks for this clear explanation! j/k.
I really wish technical authors wouldn't say "very easy" when they mean "readers will need a substantial intellectual investment such as a Ph.D".
Perhaps more materially, HN is obviously(^) not the intended audience for this article! We get a hint of this early on, when the author talks about axioms that contradict LEM -- the phrase "of course" stands out pretty starkly.
(^) Oh no, I did it too!
> the monoid of continuous endomaps
An "endomap" is a functions `T -> T` over the same base type `T`. You might call these "unary operators".
The "continuous" adjective means that `T` is some kind of topological space -- which agrees, thank goodness, with the "topological" we see earlier in the quotation -- and that our functions preserve the extra properties possessed by these spaces. For the most part, that means that points have some sense of connectivity and continuity (though not necessarily "distance").
The "monoid" bit here doesn't actually add much; it's just highlighting some behavior that unary operators already have. Namely, you can compose two unary operators in sequence, and there's an operator that returns the output unchanged. There's some extra color around making sure the composition is continuous, but we can take the author on faith for now that things work out.
> the one-point compactification of the discrete natural numbers
This is the concrete `T` above.
The "natural numbers" are hopefully clear; we can probably assume the author is including zero, but I don't think it actually matters. I think we just need a set of countably-infinite cardinality.
Since we're talking about continuous maps, we need to consider the natural numbers as some kind of space, with some kind of concept of continuity. The "discrete" qualifier tells us that every natural number is its own island. (This is why I don't think it matters whether we have zero or not.) Any set of elements can be given the discrete topology, so it's not very interesting in its own right. Usually we're interested in what other mathematical widgets do at these boundary cases: since they're effectively contentless, we can better understand what those other widgets contribute purely on their own.
The "one-point compactification" of a topological space is a lot harder to dissect. In a very small nutshell: some subspaces of a topological space can be "compact". If the whole space itself is not compact, there's often a way to turn it into a compact space by adding a single extra point. Compact spaces have some really nice properties, so if you have a space that isn't compact, sometimes it makes sense to move into a compactification of that space instead. But I don't understand this particular construction yet, so I can't explain concretely what space we end up with.
Unfortunately, that also means I have no intuition for what maps `T -> T` we end up with on this compact space. That seems like a pretty key bit of information for the rest of the construction.
> take the monoid of ... considered as a category, then take sheaves for the canonical coverage
For the "considered as a category" part, every monoid is a category in a boring way. It's even more boring when your monoid is already made of maps `T -> T`: the one object of your category is `T`, and the arrows are the maps. This is purely a "perspective-shifting" statement, and the only reason you'd do that is to say something else that's easier to say in category theoretic terms.
As for "take sheaves for the canonical coverage", I'm not even going to try to dissect that. It looks like a coverage is one way to define a topos, and Grothendieck toposes are defined by sheaves on a site, but we're rapidly falling down a rabbit hole here. Summary: they're building a topos in an apparently standard way from the monoid of endomaps we've built up to this point.
The underlying set is the natural numbers along with one extra point which we’ll call infinity.
The open subsets are:
- Any subset which does not contain infinity,
- Any subset containing infinity whose complement is finite.
So, in order for an endomap to be continuous, it either has to
- Send infinity to infinity, in which case the pre-image of any natural must have finite cardinality (though the pre-image of infinity could be infinite).
- Send infinity to some natural number n, in which case all but finitely many naturals should map to n.
> - Any subset which does not contain infinity
We get those from the original (discrete) topology, I assume?
> - Any subset containing infinity whose complement is finite.
Ohh, is this construction related to the cofinite topology, then? I always wondered what that was useful for. (I never quite made it all the way through Munkres.)
Also, I start to see why Wikipedia characterizes this as `{0} u {1/n | n in N}`. Any ball containing 0 will miss only finitely many points.
> So, in order for an endomap to be continuous, [...]
It took me a bit to work through this from first principles, but I see! Thanks for lighting the path.
Yep!
> ... is this construction related to the cofinite topology, then?
I’m not sure, it’s sort of only cofinite “at infinity”? One place you see the cofinite topology appear is in algebraic geometry. The Zariski topology of a (connected) one-dimensional algebraic variety is the same as the cofinite topology.
Glad I could help!