Zulip Chat Archive

Stream: general

Topic: idempotent constructions and universes


Johan Commelin (Oct 12 2018 at 12:10):

I think there might be general theory behind this. I will just start with an example:
There is this thing called a topos. It shows up in geometry, topology, and also logic. It is the natural category theoretic places where a sheaf lives. If you have a topological space X, you can form Sh(X): the category of all sheaves on X. This is the prototypical example of a topos. It turns out that topological spaces are to restrictive, we need to categorify them, what you get is sites: a category C together with a Grothendieck topology on C. Every Grothendieck topos is (by definition) the category of sheaves on some site.
Now here is a cool thing: every topos can be equipped with a canonical topology. This means that we can talk about sheaves on a topos. In particular we can form Sh(Sh(X)).
It turns out that you don't get anything new if you do this. Except, there is a catch, your universe levels increase. Mathematicians fight their way around this by fixing some κ and looking at the topos of κ-small sheaves, so that they can stay in the same universe, etc... I am afraid that we cannot escape this issue. (This has nothing to do with willing to work with universes or not. We just really don't want "idempotent" operations to bump up universe levels.)
In Lean we have the notion of fintype. Is it easy to speak about ĸ-small types? Is there a good systematic way to attack problems like this?
Related places where this shows up:
- algebraic closures
- valuation spectrum (to make this "idempotent" you probably have to take the ring of functions on Spv)

Reid Barton (Oct 12 2018 at 12:52):

Locally presentable categories are a related idea (and a Grothendieck topos is in particular a locally presentable category). A locally κ\kappa-presentable category CC is (among other characterizations) the category of those presheaves on a (small) category AA which take a designated collection of κ\kappa-small cocones in AA to limit cones in Set. Then it turns out that we can take AA to be CκC_\kappa, the full subcategory of all κ\kappa-presentable objects of CC, at least after replacing this by an equivalent small category, together with the collection of all κ\kappa-small colimits in CκC_\kappa.

Johan Commelin (Oct 12 2018 at 12:54):

And you are Leanifying this kind of stuff, right?

Reid Barton (Oct 12 2018 at 12:54):

My intention is just to formalize κ\kappa-smallness as

variables {α : Type u} (κ : cardinal.{u}) (h : cardinal.mk α < κ)

Reid Barton (Oct 12 2018 at 12:55):

and it seems to be working okay, for example, I mostly proved that κ\kappa-filtered colimits can be reduced to κ\kappa-directed colimits, which involves a somewhat complicated construction and a bunch of simple cardinality estimates

Johan Commelin (Oct 12 2018 at 12:59):

@Reid Barton But do you also have code to turn this into categories that don't increase the universe level?

Johan Commelin (Oct 12 2018 at 12:59):

Or is this what you mean with "after replacing this by an equivalent small category"?

Reid Barton (Oct 12 2018 at 13:02):

Right, good question. I haven't gotten that far yet but at some point the question will be how to replace something which we know as mathematicians is small or essentially small (like the collection of κ\kappa-presentable objects) with something which actually lives in the original universe u

Reid Barton (Oct 12 2018 at 13:03):

Let me try to think what the simplest example of such a question is

Johan Commelin (Oct 12 2018 at 13:05):

Right, I think you just rephrased in 3 lines what took me about 30 lines :upside_down: :thumbs_up:

Reid Barton (Oct 12 2018 at 13:06):

I guess a typical example is: given a category C, show there is only a Type u of isomorphism classes of diagrams K -> C where K is κ\kappa-small and whose image belongs to a specified set (i.e., another Type u) of objects of C.

Reid Barton (Oct 12 2018 at 13:06):

The obvious attempt structure my_thing := (K : Type u) [small_category K] (F : functor K C) ... fails immediately because we cannot put a Type u in there

Reid Barton (Oct 12 2018 at 13:07):

This isn't the simplest example but I think it has most of the interesting ingredients.

Reid Barton (Oct 12 2018 at 13:09):

Simpler examples would be things like: prove there is only a set of isomorphism classes of κ\kappa-small categories K, or even prove that there is only a set of isomorphism classes of κ\kappa-small sets.

Johan Commelin (Oct 12 2018 at 13:10):

Prove that there is only a set of κ\kappa-small algebraic field extensions.

Johan Commelin (Oct 12 2018 at 13:10):

If I understand it correctly, you can just define K¯\bar K with Zorn, after you know that fact.

Johan Commelin (Oct 12 2018 at 13:10):

And it won't have to live in a higher universe.

Reid Barton (Oct 12 2018 at 13:11):

But I think we want some kind of general method or bag of tricks for building these up, rather than just doing them all as one-off constructions. But that probably begins by doing the simplest cases as one-off constructions

Johan Commelin (Oct 12 2018 at 13:12):

Right... that's the kind of thing I'dd like to find out in this thread.

Reid Barton (Oct 12 2018 at 13:20):

Okay so let's break your claim down in mind-numbing detail. There is a category of field extensions of K, which I guess is relevant because the conclusion is "every [...] field extension of K is isomorphic [over K] to one selected from [some type]".

Reid Barton (Oct 12 2018 at 13:21):

It has a forgetful functor to Set. We're interested in the field extensions whose underlying set is κ\kappa-small and which satisfy some other property (algebraic over K) whose details don't matter here I think.

Johan Commelin (Oct 12 2018 at 13:22):

Well, algebraic implies κ\kappa-small.

Johan Commelin (Oct 12 2018 at 13:23):

If κ\kappa is bigger than the cardinality of the ground field.

Reid Barton (Oct 12 2018 at 13:23):

I guess we should say a category C is essentially small when there's an equivalence D -> C with D : Type u a small category

Reid Barton (Oct 12 2018 at 13:23):

Oh true, but then the rest of the argument goes through the fact that the extensions we care about are κ\kappa-small, right?

Johan Commelin (Oct 12 2018 at 13:24):

Yes

Reid Barton (Oct 12 2018 at 13:25):

So, the subcategory of Set on the κ\kappa-small sets is essentially small. This must be some primitive ingredient because it is tied closely to the notion of cardinality

Reid Barton (Oct 12 2018 at 13:25):

and surely we can just prove it directly

Reid Barton (Oct 12 2018 at 13:26):

Then, we want to argue like: a set can only be made into a field in a set's worth of ways

Reid Barton (Oct 12 2018 at 13:26):

that is just the statement that discrete_field has type Type u -> Type u, I guess

Reid Barton (Oct 12 2018 at 13:27):

Or here, you could just substitute algebraic_extension_of k : Type u -> Type u and then be done with the whole argument at the end of this step.

Reid Barton (Oct 12 2018 at 13:30):

So I suppose the missing piece is something like: if F : C' -> C is a functor and the fibers of F.obj are small then the preimage of an essentially small subcategory of C is an essentially small subcategory of C'

Reid Barton (Oct 12 2018 at 13:30):

Well, I didn't state that quite right (that statement is false)

Reid Barton (Oct 12 2018 at 13:31):

for this F also needs to be an isofibration, i.e. if FX' = X and X -> Y is an isomorphism in C then it lifts to at least one isomorphism X' -> Y' in C'

Reid Barton (Oct 12 2018 at 13:32):

(aka "transport of structure")

Reid Barton (Oct 12 2018 at 13:35):

I guess I never thought about the fact that this is required. But I think it really is. After all, you could define a field extension of K in the same way but then say that the only maps between field extensions are identity maps (not even isomorphisms) and then even though there is only a set of ways to equip each set with a field extension structure, it's no longer true that every κ\kappa-small field extension is isomorphic to one from a set of representatives.

Reid Barton (Oct 12 2018 at 13:43):

I think what's going on here is:
1. The pullback of an equivalence D -> C by an isofibration C' -> C is an equivalence D' -> C'. ("The canonical model category structure on Cat is right proper.")
2. We can choose the pullback D' here to belong to Type u. This isn't a general fact about pullbacks because C' belongs to Type (u+1). Instead it is some statement about the way pullbacks interact with bundled categories.

Johan Commelin (Oct 12 2018 at 13:55):

Right. This is looking good. The only problem is that it will take some time to convince Lean of this :wink:

Reid Barton (Oct 12 2018 at 13:58):

So I suppose we can hide all the category theory language maybe.

Reid Barton (Oct 12 2018 at 14:00):

For each cardinal k : cardinal.{u}, there's a type R k : Type u and a function U : R k -> Type u with the property that every type of cardinality < k is equiv to U r for some r : R k. (R k = representatives of isomorphism classes of sets of size < k.) In fact, R k is just k.out or something.

Johan Commelin (Oct 12 2018 at 14:01):

Right. Did you just reduce the problem to "transport of structure"?

Reid Barton (Oct 12 2018 at 14:01):

Then we can define a new structure

structure kappa_small_algebraic_extension (K : Type u) [discrete_field K] :=
(r : R k)
(str : algebraic_extension_of K (U r))

Reid Barton (Oct 12 2018 at 14:02):

and we will need transport of structure to show that every κ\kappa-small algebraic extension is "isomorphic" to one that comes from kappa_small_algebraic_extension, yes

Reid Barton (Oct 12 2018 at 14:02):

but then the point is that kappa_small_algebraic_extension K is also a Type u

Johan Commelin (Oct 12 2018 at 14:03):

Exactly. That is really nice.

Johan Commelin (Oct 12 2018 at 14:03):

This would allow us to do universe resizing (is this what it is called) for the valuation spectrum, for algebraic closures, etc...

Johan Commelin (Oct 12 2018 at 14:04):

We probably still want "constructions" in the end. But it is nice to also have this option available.

Johan Commelin (Oct 12 2018 at 14:04):

And in the case of topoi, I think this is maybe the only option.

Reid Barton (Oct 12 2018 at 14:20):

Maybe we should try to actually prove the existence of algebraic closures modulo whatever field theory results we need (a composition of algebraic extensions is algebraic?)

Johan Commelin (Oct 12 2018 at 14:23):

Kenny already did some of that stuff in his LL repo

Kevin Buzzard (Oct 12 2018 at 19:28):

Polynomials are currently quite hard to work with because module refactoring hasn't landed yet.

Reid Barton (Oct 12 2018 at 19:51):

@Johan Commelin I'm actually not sure exactly what proof you had in mind for which you need to know that there is only a set of isomorphism classes of algebraic extensions of K.

Reid Barton (Oct 12 2018 at 19:52):

To apply Zorn's lemma you need a poset, but the collection of algebraic extensions of K only forms a filtered diagram because there will typically be several embeddings FEF \to E between two extensions FF and EE.

Reid Barton (Oct 12 2018 at 19:53):

Actually it's not even filtered, I guess

Reid Barton (Oct 12 2018 at 19:57):

http://www2.im.uj.edu.pl/actamath/PDF/30-131-132.pdf has a proof which is the kind of thing I was imagining, but it looks at fields whose underlying set is a subset of some fixed set SS containing KK, so that there is a partial order defined by inclusion. (Actually the collection R\mathcal{R} defined there makes no sense as defined, since a subset LL of SS is not a field, but it can be fixed by considering pairs of a subset and a field structure on the subset, and defining the poset relation so that LLL \le L' if LLL \subset L' and the inclusion is a field extension.)

Reid Barton (Oct 12 2018 at 20:01):

http://www.cs.bsu.edu/~hfischer/math412/Closure.pdf seems to be a rather more careful version of the same proof

Kenny Lau (Oct 12 2018 at 20:03):

a construction that needs to deal with set-theoretic issues would be very ugly if implemented, I think.

Kenny Lau (Oct 12 2018 at 20:03):

it wouldn't be natural.

Mario Carneiro (Oct 12 2018 at 20:05):

I've talked here before about alternatives to cardinal bounds. The key is to find a set (type) that indexes all the relevant objects up to isomorphism

Kenny Lau (Oct 12 2018 at 20:06):

I'm talking about the added difficulty and unnaturality when proving the universal properties

Mario Carneiro (Oct 12 2018 at 20:06):

These things are usually best done on a case by case basis though, which complicates matters

Mario Carneiro (Oct 12 2018 at 20:07):

Unfortunately, there's nothing that can be done about this Kenny. The perfect system would allow you to just write down these types over an impredicative universe so you get the right universal property, but that's inconsistent

Mario Carneiro (Oct 12 2018 at 20:08):

The fact that in some particular case you can do it without an impredicative universe is a nontrivial fact that must be proved

Kenny Lau (Oct 12 2018 at 20:08):

of course there's something that can be done. That isn't the only construction of algebraic closure. The one that I know has no universe issues.

Mario Carneiro (Oct 12 2018 at 20:09):

The key is picking the right indexing type, like I said

Mario Carneiro (Oct 12 2018 at 20:09):

if you do it right you don't have universe issues

Mario Carneiro (Oct 12 2018 at 20:12):

Kenny what is your proof of existence of algebraic closure?

Reid Barton (Oct 12 2018 at 20:13):

There's another one where you sort of adjoin roots of all polynomials at once and then use the existence of maximal ideals to form a quotient which is a field

Kevin Buzzard (Oct 12 2018 at 20:14):

Kenny has thought about algebraic closure quite a bit and I'd be interested to hear his response. He did embark upon a construction some weeks ago but had problems using polynomials. I cannot remember the specific issue but I think that we got confirmation from Mario that the issues would be fixed by the module refactoring.

Kevin Buzzard (Oct 12 2018 at 20:15):

I am pretty sure that Kenny was going to adjoin all polynomials at once and use the existence of maximal ideals. However there is then the issue that this new field L is only guaranteed to contain all roots of polynomials with coefficients in the original field K.

Mario Carneiro (Oct 12 2018 at 20:15):

@Reid Barton So is the idea that every element of the algebraic closure is expressible as a root of some polynomial over the base field?

Reid Barton (Oct 12 2018 at 20:15):

Yes, I read some notes by someone with the initials "KMB" about this

Kevin Buzzard (Oct 12 2018 at 20:15):

There are then two ways of proceeding. One is to iterate this construction countably infinitely often and to take a direct limit

Kevin Buzzard (Oct 12 2018 at 20:16):

and the other is to work harder and prove that L is algebraically closed anyway.

Kevin Buzzard (Oct 12 2018 at 20:16):

But the natural way of doing the latter is I guess via the theory of integral closures.

Mario Carneiro (Oct 12 2018 at 20:16):

I would be inclined to go for the "work harder" route

Mario Carneiro (Oct 12 2018 at 20:17):

since it keeps the complexity of the object itself down

Kenny Lau (Oct 12 2018 at 20:17):

me too

Kevin Buzzard (Oct 12 2018 at 20:17):

[and for integral closures you need Hilbert basis and for that you need the module refactoring]

Kenny Lau (Oct 12 2018 at 20:17):

I need this big lemma that for any polynomial f, there is a separable polynomial h and integer n such that f(x) = h(x^(p^n)), where p is the characteristic of the field (p=1 for Q)

Kevin Buzzard (Oct 12 2018 at 20:18):

Now you are talking about separable closure maybe?

Kenny Lau (Oct 12 2018 at 20:18):

no...

Kenny Lau (Oct 12 2018 at 20:19):

the proof that L is algebraically closed anyway is to consider M the maximally purely inseparable subextension

Mario Carneiro (Oct 12 2018 at 20:19):

wait so Q is characteristic 1 now?

Kevin Buzzard (Oct 12 2018 at 20:19):

The advantage of doing separable closure would be that you could then state the abelian local Langlands conjectures in full and correct generality.

Kenny Lau (Oct 12 2018 at 20:19):

and show that every polynomial f in M still has a root in L (by considering f^(p^n) for a large n and observing that (x+y)^p = x^p+y^p so eventually you get a polynomial f^(p^n) in K which has a root in L by construction)

Kenny Lau (Oct 12 2018 at 20:20):

and then show that every polynomial f in M splits in L, which requires Primitive Element Theorem

Kevin Buzzard (Oct 12 2018 at 20:21):

What is wrong with the proof I'm about to sketch for the fact that L is alg closed.

Kevin Buzzard (Oct 12 2018 at 20:23):

Say M/L is a finite field extension. Say degree > 1 for a contradiction. Choose m in M not L. Consider the min poly p(x) of m. Its coefficients generate a finite extension K' of K. Now K'(m) is a finite extension of K, so m has a min poly over K. But we already added the roots of all the polys with coefficients in K.

Kenny Lau (Oct 12 2018 at 20:24):

I only added one root

Kevin Buzzard (Oct 12 2018 at 20:24):

Is this a serious issue?

Kevin Buzzard (Oct 12 2018 at 20:25):

I see what you mean though.

Kenny Lau (Oct 12 2018 at 20:25):

also I can shorten "Say M/L is a finite field extension. Say degree > 1 for a contradiction. Choose m in M not L. Consider the min poly p(x) of m" to "consider an irred. poly. p in L[X]"

Kevin Buzzard (Oct 12 2018 at 20:26):

Yes, I was just spelling it out because your comment made me wonder where my mistake was.

Kevin Buzzard (Oct 12 2018 at 20:26):

So we are reduced to showing that L is normal or something like that?

Kenny Lau (Oct 12 2018 at 20:27):

I still don't see why K'(m) is a finite extension of K

Kevin Buzzard (Oct 12 2018 at 20:28):

oh that's just because K'/K was generated by finitely many elements of L over K and L/K is algebraic.

Kenny Lau (Oct 12 2018 at 20:29):

ok

Kevin Buzzard (Oct 12 2018 at 20:29):

Do you need the theory of integral extensions here? Sum of two elements integral over K is integral over K?

Kevin Buzzard (Oct 12 2018 at 20:30):

Honestly this code should be waiting until after the module refactoring :-/


Last updated: Dec 20 2023 at 11:08 UTC