Skip to content →

Tag: topos

The hype cycle of an idea

These three ideas (re)surfaced over the last two decades, claiming to have potential applications to major open problems:

  • (2000) F1-geometry tries to view Spec(Z) as a curve over the field with one element, and mimic Weil’s proof of RH for curves over finite fields to prove the Riemann hypothesis.
  • (2012) IUTT, for Inter Universal Teichmuller Theory, the machinery behind Mochizuki’s claimed proof of the ABC-conjecture.
  • (2014) topos theory : Connes and Consani redirected their RH-attack using arithmetic sites, while Lafforgue advocated the use of Caramello’s bridges for unification, in particular the Langlands programme.

It is difficult to voice an opinion about the (presumed) current state of such projects without being accused of being either a believer or a skeptic, resorting to group-think or being overly critical.

We lack the vocabulary to talk about the different phases a mathematical idea might be in.

Such a vocabulary exists in (information) technology, the five phases of the Gartner hype cycle to represent the maturity, adoption, and social application of a certain technology :

  1. Technology Trigger
  2. Peak of Inflated Expectations
  3. Trough of Disillusionment
  4. Slope of Enlightenment
  5. Plateau of Productivity

This model can then be used to gauge in which phase several emerging technologies are, and to estimate the time it will take them to reach the stable plateau of productivity. Here’s Gartner’s recent Hype Cycle for emerging Artificial Intelligence technologies.



Picture from Gartner Hype Cycle for AI 2021

What might these phases be in the hype cycle of a mathematical idea?

  1. Technology Trigger: a new idea or analogy is dreamed up, marketed to be the new approach to that problem. A small group of enthusiasts embraces the idea, and tries to supply proper definitions and the very first results.
  2. Peak of Inflated Expectations: the idea spreads via talks, blogposts, mathoverflow and twitter, and now has enough visibility to justify the first conferences devoted to it. However, all this activity does not result in major breakthroughs and doubt creeps in.
  3. Trough of Disillusionment: the project ran out of steam. It becomes clear that existing theories will not lead to a solution of the motivating problem. Attempts by key people to keep the idea alive (by lengthy papers, regular meetings or seminars) no longer attract new people to the field.
  4. Slope of Enlightenment: the optimistic scenario. One abandons the original aim, ditches the myriad of theories leading nowhere, regroups and focusses on the better ideas the project delivered.

    A negative scenario is equally possible. Apart for a few die-hards the idea is abandoned, and on its way to the graveyard of forgotten ideas.

  5. Plateau of Productivity: the polished surviving theory has applications in other branches and becomes a solid tool in mathematics.

It would be fun so see more knowledgable people draw such a hype cycle graph for recent trends in mathematics.

Here’s my own (feeble) attempt to gauge where the three ideas mentioned at the start are in their cycles, and here’s why:

  • IUTT: recent work of Kirti Joshi, for example this, and this, and that, draws from IUTT while using conventional language and not making exaggerated claims.
  • F1: the preliminary programme of their seminar shows little evidence the F1-community learned from the past 20 years.
  • Topos: Developing more general theory is not the way ahead, but concrete examples may carry surprises, even though Gabriel’s topos will remain elusive.

Clearly, you don’t agree, and that’s fine. We now have a common terminology, and you can point me to results or events I must have missed, forcing me to redraw my graph.

Comments closed

Learners and Poly

Brendan Fong, David Spivak and Remy Tuyeras cooked up a vast generalisation of neural networks in their paper Backprop as Functor: A compositional perspective on supervised learning.

Here’s a nice introduction to neural networks for category theorists by Bruno Gavranovic. At 1.49m he tries to explain supervised learning with neural networks in one slide. Learners show up later in the talk.

Poly is the category of all polynomial functors, that is, things of the form
p=ip(1)yp[i] : SetsSetsSip(1)Maps(p[i],S)
with p(1) and all p[i] sets.

Last time I gave Spivak’s ‘corolla’ picture to think about such functors.

I prefer to view pPoly as an horribly discrete ‘sheaf’ P over the ‘space’ p(1) with stalk p[i]=Pi at point ip(1).



A morphism pq in Poly is a map φ1:p(1)q(1), together with for all ip(1) a map φi#:q[φ1(i)]p[i].

In the sheaf picture, this gives a map of sheaves over the space p(1) from the inverse image sheaf φ1Q to P.



But, unless you dream of sheaves in the night, by all means stick to Spivak’s corolla picture.

A learner AB between two sets A and B is a complicated tuple of things (P,I,U,R):

  • P is a set, a parameter space of some maps from A to B.
  • I is the interpretation map I:P×AB describing the maps in P.
  • U is the update map U:P×A×BP, the learning procedure. The idea is that U(p,a,b) is a map which sends a closer to b than the map p did.
  • R is the request map R:P×A×BA.

Here’s a nice application of Poly’s set-up:

Morphisms PyPMaps(A,B)×Maps(A×B,A)yA×B in Poly coincide with learners AB with parameter space P.

This follows from unpacking the definition of morphism in Poly and the process CT-ers prefer to call Currying.

The space-map φ1:PMaps(A,B)×Maps(A×B,A) gives us the interpretation and request-map, whereas the sheaf-map φ# gives us the more mysterious update-map P×A×BP.

Learn(A,B) is the category with objects all the learners AB (for all paramater-sets P), and with morphisms defined naturally, that is, maps between the parameter-sets, compatible with the structural maps.

A surprising result from David Spivak’s paper Learners’ Languages is

Learn(A,B) is a topos. In fact, it is the topos of all set-valued representations of a (huge) directed graph GAB.

This will take some time.

Let’s bring some dynamics in. Take any polynmial functor pPoly and fix a morphism in Poly
φ=(φ1,φ[]) : p(1)yp(1)p
with space-map φ1 the identity map.

We form a directed graph:

  • the vertices are the elements of p(1),
  • vertex ip(1) is the source vertex of exactly one arrow for every ap[i],
  • the target vertex of that arrow is the vertex ϕ[i](a)p(1).

Here’s one possibility from Spivak’s paper for p=2y2+1, with the coefficient 2-set {green dot, yellow dot}, and with 1 the singleton {red dot}.



Start at one vertex and move after a minute along a directed edge to the next (possibly the same) vertex. The potential evolutions in time will then form a tree, with each node given a label in p(1).

If we start at the green dot, we get this tree of potential time-evolutions



There are exactly #p[i] branches leaving a node labeled ip(1), and all subtrees emanating from equal labelled nodes are isomorphic.

If we had started at the yellow dot we had obtained a labelled tree isomorphic to the subtree emanating here from any yellow dot.

We can do the same things for any morphism in Poly of the form
φ=(φ1,φ[]) : SySp
Now, we have a directed graph with vertices the elements sS, with as many edges leaving vertex s as there are elements ap[φ1(s)], and with the target vertex of the edge labeled a starting in s the vertex φ[φ1(s)](A).

Once we have this directed graph on #S vertices we can label vertex s with the label φ1(s) from p(1).

In this way, the time evolutions starting at a vertex sS will give us a p(1)-labelled rooted tree.

But now, it is possibly that two distinct vertices can have the same p(1)-labeled tree of evolutions. But also, trees corresponding to equal labeled vertices can be different.

Right, I guess we’re ready to define the graph GAB and prove that Learn(A,B) is a topos.

In the case of learners, we have the target polynomial functor p=CyA×B with C=Maps(A,B)×Maps(A×B,A), that is
p(1)=Cand allp[i]=A×B

Start with the free rooted tree T having exactly #A×B branches growing from each node.

Here’s the directed graph GAB:

  • vertices vχ correspond to the different C-labelings of T, one C-labeled rooted tree Tχ for every map χ:vtx(T)C,
  • arrows vχvω if and only if Tω is the rooted C-labelled tree isomorphic to the subtree of Tχ rooted at one step from the root.

A learner AB gives a set-valued representation of GAB.

We saw that a learner AB is the same thing as a morphism in Poly
φ=(φ1,φ[]) : PyPCyA×B
with P the parameter set of maps.

Here’s what we have to do:

1. Draw the directed graph on vertices pP giving the dynamics of the morphism φ. This graph describes how the learner can cycle through the parameter-set.

2. Use the map φ1 to label the vertices with elements from C.



3. For each vertex draw the rooted C-labeled tree of potential time-evolutions starting in that vertex.

In this example the time-evolutions of the two green vertices are the same, but in general they can be different.



4. Find the vertices in GAB determined by these C-labeled trees and note that they span a full subgraph of GAB.



5. The vertex-set Pv consists of all elements from p whose (C-labeled) vertex has evolution-tree Tv. If vw is a directed edge in GAB corresponding to an element (a,b)A×B, then the map on the vertex-sets corresponding to this edge is
fv,(a,b) : PvPwpφ[φ1(p)](a,b)



A set-valued representation of GAB gives a learner AB.

1. Take a set-valued representation of GAB, that is, the finite or infinite collection of vertices V in GAB where the vertex-set Pv is non-empty. Note that these vertices span a full subgraph of GAB.

And, for each directed arrow vw in this subgraph, labeled by an element (a,b)A×B we have a map
fv,(a,b) : PvPw

2. The parameter set of our learner will be P=vPv, the disjoint union of the non-empty vertex-sets.

3. The space-map φ1:PC will send an element in Pv to the C-label of the root of the tree Tv. This gives us already the interpretation and request maps
I:P×ABandR:P×A×BA

4. The update map U:P×A×BP follows from the sheaf-map we can define stalk-wise
φ[φ1(p)](a,b)=fv,(a,b)(p)
if pPv.

That’s all folks!

Learn(A,B) is equivalent to the (covariant) functors GABSets.

Changing the directions of all arrows in GAB any covariant functor GABSets becomes a contravariant functor GABoSets, making Learn(A,B) an honest to Groth topos!

Every topos comes with its own logic, so we have a ‘learners’ logic’. (to be continued)

One Comment

Scholze’s condensed sets and Mazzola’s path to creativity

Some months ago, Peter Scholze wrote a guest post on the Xena-blog: Liquid tensor experiment, proposing a challenge to formalise the proof of one of his results with Dustin Clausen on condensed mathematics.

Scholze and Clausen ran a masterclass in Copenhagen on condensed mathematics, which you can binge watch on YouTube starting here

Scholze also gave two courses on the material in Bonn of which the notes are available here and here.

Condensed mathematics claims that topological spaces are the wrong definition, and that one should replace them with the slightly different notion of condensed sets.

So, let’s find out what a condensed set is.

Definition: Condensed sets are sheaves (of sets) on the pro-étale site of a point.

(there’s no danger we’ll have to rewrite our undergraduate topology courses just yet…)

In his blogpost, Scholze motivates this paradigm shift by observing that the category of topological Abelian groups is not Abelian (if you put a finer topology on the same group then the identity map is not an isomorphism but doesn’t have a kernel nor cokernel) whereas the category of condensed Abelian groups is.

It was another Clausen-Scholze result in the blogpost that caught my eye.

But first, for something completely different.

In “Musical creativity”, Guerino Mazzola and co-authors introduce a seven steps path to creativity.



Here they are:

  1. Exhibiting the open question
  2. Identifying the semiotic context
  3. Finding the question’s critical sign
  4. Identifying the concept’s walls
  5. Opening the walls
  6. Displaying extended wall perspectives
  7. Evaluating the extended walls

Looks like a recipe from distant flower-power pot-infused times, no?

In Towards a Categorical Theory of Creativity for Music, Discourse, and Cognition, Mazzola, Andrée Ehresmann and co-authors relate these seven steps to the Yoneda lemma.

  1. Exhibiting the open question = to understand the object A
  2. Identifying the semiotic context = to describe the category C of which A is an object
  3. Finding the question’s critical sign = A (?!)
  4. Identifying the concept’s walls = the uncontrolled behaviour of the Yoneda functor
    @A : CSetsCHomC(C,A)
  5. Opening the walls = finding an objectively creative subcategory A of C
  6. Displaying extended wall perspectives = calculate the colimit C of a creative diagram
  7. Evaluating the extended walls = try to understand A via the isomorphism CA.

(Actually, I first read about these seven categorical steps in another paper which might put a smile on your face: The Yoneda path to the Buddhist monk blend.)

Remains to know what a ‘creative’ subcategory is.

The creative moment comes in here: could we not find a subcategory
A of C such that the functor
Yon|A : CPSh(A)A@A|A
is still fully faithful? We call such a subcategory creative, and it is a major task in category theory to find creative categories which are as small as possible.

All the ingredients are here, but I had to read Peter Scholze’s blogpost before the penny dropped.

Let’s try to view condensed sets as the result of a creative process.

  1. Exhibiting the open question: you are a topologist and want to understand a particular compact Hausdorff space X.
  2. Identifying the semiotic context: you are familiar with working in the category Tops of all topological spaces with continuous maps as morphisms.
  3. Finding the question’s critical sign: you want to know what differentiates your space X from all other topological spaces.
  4. Identifying the concept’s walls: you can probe your space X with continuous maps from other topological spaces. That is, you can consider the contravariant functor (or presheaf on Tops)
    @X : TopsSetsYCont(Y,X)
    and Yoneda tells you that this functor, up to equivalence, determines the space X upto homeomorphism.
  5. Opening the walls: Tychonoff tells you that among all compact Hausdorff spaces there’s a class of pretty weird examples: inverse limits of finite sets (or a bit pompous: the pro-etale site of a point). These limits form a subcategory ProF of Tops.
  6. Displaying extended wall perspectives: for every inverse limit FProF (for ‘pro-finite sets’) you can look at the set X(F)=Cont(F,X) of all continuous maps from F to X (that is, all probes of X by F) and this functor
    X=@X|ProF : ProFSetsFX(F)
    is a sheaf on the pre-etale site of a point, that is, X is the condensed set associated to X.
  7. Evaluating the extended walls: Clausen and Scholze observe that the assignment XX embeds compact Hausdorff spaces fully faithful into condensed sets, so we can recover X up to homeomorphism as a colimit from the condenset set X. Or, in Mazzola’s terminology: ProF is a creative subcategory of (cH)Tops (all compact Hausdorff spaces).

It would be nice if someone would come up with a new notion for me to understand Mazzola’s other opus “The topos of music” (now reprinted as a four volume series).



Comments closed