Univalent Foundations and the UniMath Library The Architecture of Mathematics Anthony Bordg1 2 We give a concise presentation of the Univalent Foundations of mathematics outlining the main ideas, followed by a discussion of the UniMath library of formalized mathematics implementing the ideas of the Univalent Foundations (section 1), and the challenges one faces in attempting to design a large-scale library of formalized mathematics (section 2). This leads us to a general discussion about the links between architecture and mathematics where a meeting of minds is revealed between architects and mathematicians (section 3). On the way our odyssey from the foundations to the "horizon" of mathematics will lead us to meet the mathematicians David Hilbert and Nicolas Bourbaki as well as the architect Christopher Alexander. 1 The Univalent Foundations and the UniMath Library 1.1 The Univalent Foundations of Mathematics The Univalent Foundations [1] of mathematics designed by Vladimir Voevodsky builds upon Martin-Löf type theory[2], a logical system for constructive mathematics with nice computational properties that makes mathematics amenable to proof-checking by computers (i.e. by a piece of software called a proof assistant). Certified or type-checked proofs should not be mistaken for automated proofs. Even if proof assistants come with various levels of automation, either built-in for elementary steps or user-defined via the 1University of Cambridge, Department of Computer Science and Technology, 15 JJ Thomson Avenue, Cambridge CB3 0FD, UK. website : https://sites.google.com/site/anthonybordg/home 2Work on this paper was supported by grant GA CR P201/12/G028 1 so-called tactics for less basic steps, the proof assistant only checks that man-made proofs written with it are correct. 1.1.1 The Univalence Axiom The main characters in Martin-Löf type theory (MLTT for short) are types and elements of these types. If T is a type, then the expression t : T denotes that t is an element of T . In particular, if T is a type and t, t′ are elements of T there is a new type called the identity type of t and t′ denoted t =T t′. Sometimes for convenience we will omit the type information and we will simply write t = t′. When one considers only a single element t, i.e. t′ is definitionaly equal to t, the identity type t =T t has always at least one element denoted idpath t, i.e. the expression idpath t : t =T t is well-formed. This term idpath is called a constructor and the identity types belong to a particular class of types called inductive types. Indeed, besides its constructors (an inductive type can have either a single constructor or many constructors), a family of types defined inductively (like the identity types are when introduced formally) obeys an induction principle. In the case of identity types, this induction principle states that given a type T , an element t : T , a family F of types indexed by an element t0 : T and an element p0 : t =T t0, if there is an element f : F t (idpath t) (the family F instantiated with the terms t and idpath t), then for any elements t′ : T , p : t =T t′ there is an element of the type F t′ p, and moreover this element is f itself when t′ and p are definitionaly equal to t and idpath t, respectively. Of course, one can iterate the process of building identity types, namely given p and q two elements of the identity type t =T t′, one can form the identity type p =t=T t′ q and so on. As it happens, these identity types lead to a very rich mathematical structure and there is a surprising connection between homotopy theory and MLTT (the latter being also coined Martin-Löf dependent type theory in reference to these dependent types, i.e. dependent on previous types for their definition which may be inductive, like in the case of identity types, or not). Roughly, one can think of T as a space, two elements t and t′ of T as points of this space, two elements p and q of the type t =T t′ as paths from t to t′ in the space T , and the elements of p =t=T t′ q as homotopies between the paths p and q and so on (the elements of the successive iterated identity types being higher homotopies). Under this correspondence idpath t is the identity path between a point t and itself in the given space. Each type bearing the structure of a weak ∞-groupoid obtained from the tower of iterated identity types over that type. Moreover, given two types A and B there is also a new type denoted A→ B for the type of functions between A and B. Among these functions some of them have a distinctive property, namely their homotopy fibers3 are contractible4, and they are called weak equivalences. Again, one forms a new type for the weak equivalences between two types A and B, denoted A ' B. Voevodsky found an interpretation of the rules of MLTT using Kan simplicial sets where an additional axiom, the so-called Univalence Axiom, is satisfied. The Univalence Axiom (UA for short) states a property 3The definition of the homotopy fibers of a map is given later in 1.2.1. 4The fundamental concept of contractibility is defined later in 1.1.2. 2 of a universe type U (interpreted as the base of a universal Kan fibration), a type whose elements are themselves types called "small" types. More specifically, first note that given two small types A and B, by applying the induction principle of identity types (take T := U , t := A, and the family F such that F B p0 is A ' B in the statement of the induction principle above) one defines a function eqweqmapAB, from A =U B to A ' B, that maps the identity path to the identity equivalence when B is definitionally equal to A. The Univalence Axiom states that for any two small types A and B the function (eqweqmap A B) is a weak equivalence, giving the correct notion of equality (or path under the connection alluded to above) in the universe. 1.1.2 The Homotopy Levels Note that in the function type A → B introduced above the type B does not depend on the type A. Now, we can replace the type B by a family of (small) types indexed by the type A, namely an element F of type A → U (where U is a universe), in this case we get a new type, the cartesian product of the family of types F , denoted∏ x:A F x. Given two elements f, g : ∏ x:A F x, we could also ask if there is an equivalence between the identity type f = g and the dependent product ∏ x:A (f(x) = g(x)). This equivalence (or rather the non-obvious implication) is known as function extensionality and it does not hold in MLTT. Fortunately, UA does imply function extensionality, i.e. given A : U , F : A → U and f, g : ∏ x:A F x, using UA one produces a term of the type ( ∏ x:A f(x) = g(x)) ' (f = g). Thus, the Univalence Axiom can be seen as a strong form of extensionality and the Univalent Foundations are a powerful and elegant way to achieve extensional concepts in Martin-Löf dependent type theory. Without surprise another very important type is the type of natural numbers denoted nat. This is a second example of an inductive type. The type nat has two constructors, 0 of type nat and s of type nat → nat that corresponds to the successor function. The induction principle of nat is what one expects, namely an element of the type∏ P :nat→U P 0→ ( ∏ n:nat P n→ P (s n))→ ( ∏ n:nat P n) . Finally, we would like to introduce an additional dependent type called the dependent sum type. Given a type A and an element B : A → U , we form the type of dependent pairs (x, y) with x : A and y : B x, denoted ∑ x:A B x. Given a small type A, the type A might have the property that it has an element cntr : A together with for every element x : A a path from x to cntr, i.e. an element of ∏ x:A x =A cntr. The dependent sum allows us to form the type of such elements, namely ∑ cntr:A ∏ x:A (x =A cntr), shortened to iscontrA, 3 that corresponds to the type of proofs that A seen as a space is contractible. If this last type is inhabited, i.e. if it has an element, the type A is said to be contractible and cntr is called a center of contraction. We are now equipped with all the tools we need to introduce the very important concept of homotopy levels, the so-called h-levels, that intuitively capture the fact that at some point in the tower connected with a type the iterated identity types might be contractible. First, we need to know that one is allowed to define functions over inductive types, in particular over the type of natural numbers nat. Hence, we will define an element denoted isofhlevel of type nat → U → U . To achieve this, it is enough to define isofhlevel 0X to be iscontrX and isofhlevel (s n)X to be ∏ x:X ∏ y:X isofhleveln (x =X y), where X is a small type. Given a small type X and a natural number n, if the type isofhlevelnX is inhabited, then one says that X is of h-level n. The type of all types of h-level n is ∑ X:U isofhlevelnX 5. The types of h-level 1 are called propositions, they are the types in which any two elements are equal. The types of h-level 2 are called sets. For n ≥ 3 the types of h-level n are higher analogs of sets6. It is possible to prove for instance that given a type X and an element n : nat the type isofhlevelnX is a proposition, that the type nat is a set, or that the type∑ X:U isofhlevelnX is of h-level n+ 1. Moreover, the Univalence Axiom is consistent with respect to the Law of Excluded Middle for propositions and the Axiom of Choice for sets, hence not diminishing our ability to reason about propositions or sets but increasing our ability to work with higher analogs of sets. Informed by homotopy theory, the main merits of the Univalent Foundations are the realization that types in MLTT are interpreted by homotopy types (topological spaces up to weak homotopy equivalences), their corresponding stratification according to the h-levels, and the ability that types give us to build weak higher groupoids through the tower of their iterated identity types. Moreover, the Univalence Axiom gives us the ability to reason formally about structures on these higher groupoids by enforcing an equivalence principle that makes two equivalent types indistinguishable in the Univalent Foundations. Indeed, let U0, U1 be two universes with U0 : U1 and U0 being univalent. Given any family P : X → U1, there exists two terms transportfP : (x =X y) → Px → Py and transportbP : (x =X y) → Py → Px. In particular, if one takes U0 for X, then using the univalence axiom for U0 one derives two terms of types (A ' B)→ PA→ PB and (A ' B)→ PB → PA, respectively. The Univalent Foundations realizes the following vision of Voevodsky : First note that we can stratify mathematical constructions by their "level". There is element-level mathematics the study of element-level objects such as numbers, polynomials or various series. Then one has set level mathematics the study of sets with structures such as groups, rings etc. which are 5This type is small with respect to a higher universe. This technical detail is unimportant for people unfamiliar with type theory. 6This analogy is explained in the quote from Voevodsky that ends the current section 1.1.2. 4 invariant under isomorphisms. The next level is traditionally called categorylevel, but this is misleading. A collection of set-level objects naturally forms a groupoid since only isomorphisms are intrinsic to the objects one considers, while more general morphisms can often be defined in a variety of ways. Thus the next level after the set-level is the groupoid-level the study of properties of groupoids with structures which are invariant under the equivalences of groupoids. From this perspective a category is an example of a groupoid with structure which is rather similar to a partial ordering on a set. Extending this stratification we may further consider 2-groupoids with structures, ngroupoids with structures and ∞-groupoids with structures. Thus a proper language for formalization of mathematics should allow one to directly build and study groupoids of various levels and structures on them. A major advantage of this point of view is that unlike∞-categories, which can be defined in many substantially different ways the world of∞-groupoids is determined by Grothendieck correspondence, which asserts that ∞-groupoids are "the same" as homotopy types. Combining this correspondence with the previous considerations we come to the view that not only homotopy theory but the whole of mathematics is the study of structures on homotopy types.[3]. 1.2 The UniMath Library Nowadays a fraction of the community working on the Univalent Foundations is involved in the design of a library of mathematics based on the Univalent Foundations, the UniMath[4] project, using the Coq proof assistant. The UniMath library was born in 2014 by merging three previous repositories, the repository Foundations written by Vladimir Voevodsky, the repository rezk_completion of Ahrens, Kapulkin and Shulman, and the repository Ktheory by Daniel Grayson. As of 6 September 2018, the library has the following packages (arranged in alphabetical order) : Algebra, CategoryTheory, Combinatorics, Folds, Foundations, HomologicalAlgebra, Induction, Ktheory, MoreFoundations, NumberSystems, PAdics, RealNumbers, SubstitutionSystems, Tactics, Topology. I will briefly focus on the three packages that implement the main ideas of the Univalent Foundations as outlined in the first section1.1, namely the Foundations package, the MoreFoundations package, and the CategoryTheory package. The latter grew out of the rezk_completion repository, hence our choice of packages covers two of the three original repositories. However, we underline that we do not do justice to the contents of the library. 5 1.2.1 The Foundations Package The Foundations package is the very core of the UniMath library. Hence, it is intended to become a very stable part of the library. For that reason this package is more or less locked. The code in that package is highly organized, and Voevodsky thought of writing it as a mathematical "textbook" about the Univalent Foundations. The file PartA therein contains, among other things, the correct formulation of the type of proofs that a given function f : X → Y is a weak equivalence1.1.1, denoted isweq f, which is the type ∏ y:Y iscontr(hfiber f y) 7, where hfiber f y is the type ∑ x:X fx = y of pairs consisting of an element x : X together with a path in Y from f(x) to y. The point being that the type isweq f is a proposition8, i.e. is of h-level 1. So, that type is proofirrelevant, hence it becomes contractible, i.e. of h-level 0, when it is inhabited. Here, proof-irrelevance means that given a proposition P , there exists an equality p : p1 =P p2 for all elements p1, p2 of P , i.e. for all proofs p1, p2 that the proposition P holds. As we have seen, the property of being a weak equivalence is instrumental in formulating the Univalence Axiom. This last axiom is stated in the file UnivalenceAxiom, and it consists in postulating that the type isweq (eqweqmapAB) is inhabited for all types A and B of a given universe type U , it means that we assume that the map (eqweqmap A B) is a weak equivalence for all elements A and B of the universe type U . We recall1.1.1 that (eqweqmap A B) is the canonical map from A =U B, the type of equalities between A and B, to A ' B, the type of weak equivalences between A and B. In this last file, one also finds various consequences of the Univalence Axiom. In that file, these consequences are themselves formulated as axioms after the corresponding implications have been proved. It is an interesting choice of design. Indeed, it allows the relevant use of the command "Print Assumptions" of the Coq proof assistant in order to track the weakest axioms needed to prove a given statement. In particular, among the consequences of the Univalence Axiom proved in that file, one should mention function extensionality1.1.2 which reassures any mathematician that pointwise equal functions are equal, a fact that any mathematician takes for granted. The file UnivalenceAxiom2 is devoted to the proofs that the types corresponding to the statements of these various axioms are propositions. Hence, those types are proofirrelevant as it should be. Last, the file PartB of the Foundations package contains the all-important formulation of the h-levels that we have covered in 1.1.2. The stratification of types according to their h-levels discriminates well behaved propositions and sets, hence it allows elegant formalizations of mathematics at the levels of sets and categories with a proof assistant. 7Given a small type A, see section 1.1.2 for the definition of the type iscontrA. 8In the UniMath library any type whose name starts by the prefix "is" is a proposition. 6 1.2.2 The MoreFoundations Package The MoreFoundations package is less fundamental than the Foundations one, but it is still very basic. There are constructions in the Foundations package that admit many variants, those variants are not necessarily interesting in themselves, at least on a purely mathematical level, but these slight variants might come in handy in a particular context. The developers of UniMath handle this discrepancy between a core mathematical idea and its various incarnations that are used as a convenient scaffolding in the process of formalization by using the MoreFoundations package as a home for those variants. It is a nice way to avoid losing the sharp structure of the Foundations package. We have already underlined in 1.1.2 that the Univalent Foundations (MLTT + UA) are consistent with the Law of Excluded Middle (LEM) and the Axiom of Choice (AC) if properly stated, namely if stated at the levels of propositions and sets, respectively. The type of propositions, namely ∑ X:U isofhlevel 1X, is shortened by hProp in the UniMath library. Then, the type corresponding to LEM in UniMath9 is roughly ∏ P :hProp P q ¬P , where P q ¬P denotes the coproduct of P and ¬P . To be more specific, it is the type∏ P :hProp decidable_propP , where decidable_propP is a pair consisting of the type Pq¬P together with a proof that it is a proposition, allowing to prove that the type-theoretic LEM is itself a proposition. The type of sets, namely ∑ X:U isofhlevel 2X, is shortened by hSet in UniMath. Then, the type corresponding to AC in UniMath10 is roughly∏ X:hSet ∏ P :X→U (( ∏ x:X ishinh(P x))→ ishinh( ∏ x:X P x)) , where given a small type Y , ishinhY is the type ∏ P :hProp ((Y → P ) → P ). Again, the exact type is ∏ X:hSet ischoicebaseX, where ischoicebaseX is a pair consisting of the type∏ P :X→U (( ∏ x:X ishinh(P x)) → ishinh( ∏ x:X P x)) together with a proof that this type is a proposition, allowing to prove that our type-theoretic AC is itself a proposition. In the UniMath library the type-theoretic versions of LEM and AC introduced above are not used as axioms but only as types in order to force them to be mentioned explicitely as additional assumptions whenever they are used to prove a statement. Finally, in the file entitled AxiomOfChoice there is a proof that the type-theoretic AC implies the type-theoretic LEM, a result originally due to Radu Diaconescu. 9See the file DecidablePropositions of the package MoreFoundations. 10See the file AxiomOfChoice in the package MoreFoundations. 7 1.2.3 The CategoryTheory Package The file Categories of the package CategoryTheory gives an analog of the univalence property for categories that mimics the pattern described for the Univalence Axiom. Indeed, given a category C and two elements a and b of ob C, the type of objects of C, one defines by induction a function idtoiso, from a =C b to the type iso a b of isomorphisms from a to b, that maps the identity path to the identity morphism when b is definitionaly equal to a. The category C is univalent if for any two elements a, b : ob C the above function is a weak equivalence. As a consequence, in the Univalent Foundations all category-theoretic constructions and proofs are invariant under isomorphism of objects of a univalent category and under equivalence of univalent categories. In a subdirectory entitled categories (with a lower-case c, it should not be confused with the file of the same name), one proves that the category of sets as well as many categories of structured sets (monoids, groups, rings, modules, discrete fields, all standard algebraic structures formalized in the Algebra package) are univalent11. Moreover, any category is equivalent to a univalent category called its Rezk completion as established in the eponymous file rezk_completion. Note that the univalence property itself for categories is not invariant under equivalence of categories, only under isomorphism of categories. 2 Some Challenges to Achieve Large-Scale Libraries of Formalized Mathematics 2.1 Toward Massive Collaborations in Mathematics Formalized mathematics leads to a high level of certification and collaboration in mathematics, in the case of the UniMath library using the Coq proof assistant for the former and the open source distributed revision control system Git, the development platform GitHub and a Google Group Univalent Mathematics[7] for the latter. Note that certification is a prerequisite for true massive collaboration in mathematics that is otherwise hardly possible, since one would need to check by hand developments by others in order to rely on them for his own proofs and developments. The advantage of certification allows the UniMath developers to focus on the quality of the code in the library. Usually, when someone submits a contribution then volunteers make remarks and suggestions to improve the formalization, sometimes several rounds of rewriting are undertaken. However, so far the formalization of mathematics has not changed by a few orders of magnitude the traditional way of collaborating between mathematicians, which typically involves at most 2 or 3 mathematicians, as illustrated by the celebrated collaboration 11A general theorem that "isomorphism is equality" for a large class of algebraic structures (assuming the Univalence Axiom) was proven by Thierry Coquand and Nils Anders Danielsson in 2013[5]. Closely related, is the formulation of the more abstract Structure Identity Principle due to Peter Aczel, see Chapter 9 of [6]. 8 between Hardy and Littlewood. Moreover, mathematicians have blamed the formalization of mathematics for its tediousness. Regarding an influential old formal language called Automath, N.G. de Bruijn wrote in "A survey of the project Automath"[8] : A very important thing that can be concluded from all writing experiments is the constancy of the loss factor. The loss factor expresses what we loose in shortness when translating very meticulous "ordinary" mathematics into Automath. This factor may be quite big, something like 10 or 20, but it is constant : it does not increase if we go further in the book. It would not be too hard to push the constant factor down by efficient abbreviations. So, de Bruijn notes two things. First, formal proofs are longer, sometimes to an inadmissible point, as measured by the loss factor. Second, the loss factor is constant and it does not increase beyond some threshold. Regarding the first point, Freek Wiedijk in [9]12 gives interesting data for the AutoMath, Mizar, and HOL Light systems. In several cases, what Wiedijk calls the de Bruijn Factor, roughly the ratio of a formalized text to a TEX encoding of its informal counterpart, is around 4. It would be interesting to have similar data for Isabelle, a system with more automation, and for a more expressive system based on a dependent type theory like Coq, these systems might compare favourably. A de Bruijn factor equal or less than 2 might be more acceptable to a mathematician, and it is certainly a goal one should strive for. In order to succeed, in addition to more efficient support for notations as pointed out by de Bruijn, we certainly need more automation to handle the most obvious and boring parts of formal proofs. In the meantime, given enough hands and eyeballs can any substantial formalization effort be made shallow enough ? We hope that the formalization of well-known mathematics, at the undergraduate or even graduate level, is parallelizable and could benefit from a divide-and-conquer approach to build comprehensive libraries that the working mathematician could use to do research-level mathematics. In this perspective, the formalization of mathematics might be more suited to massive collaborations than a project that focuses exclusively on research-level open problems like the Polymath Project13. 2.2 The Challenge of Scalability With formalized mathematics one faces the challenge of scalability. As suggested by the second point of de Bruijn, the constancy of the loss factor, the problem is not so much about the increase of de Bruijn factor with the length of a text, but about other aspects whose scalability might be problematic. We will give a simple example. With the growth of the library, its index for search becomes huge. If there is no homogeneity when possible for the names of the definitions, lemmas and theorems, then it becomes very difficult for the user to check whether some 12See also http://www.cs.ru.nl/~freek/factor/ 13https://en.wikipedia.org/wiki/Polymath_Project 9 item useful for his goal has already been formalized and if so to find it in the library, for instance by guessing easily its name. One could hope that the tools of machine learning could offer in the near future for instance more intelligent search support for definitions, lemmas and theorems in libraries as well as some other useful automated tools. But this perspective should not prevent developers from being very careful with the design of their library of formalized mathematics to achieve something whole. 2.3 The Foundations : a Never-Ending Work or an Horizon In the 21st century something new of the same magnitude as the Bourbaki project could wait for mathematicians. However, Bourbaki told us the following : If formalized mathematics were as simple as the game of chess, then once our chosen formalized language had been described there would remain only the task of writing out our proofs in this language, just as the author of a chess manual writes down in his notation the games he proposes to teach, accompanied by commentaries as necessary. But the matter is far from being as simple as that, and no great experience is necessary to perceive that such a project is absolutely unrealizable : the tiniest proof at the beginning of the Theory of Sets would already require several hundreds of signs for its complete formalization. Hence, from Book I of this series onwards, it is imperative to condense the formalized text by the introduction of a fairly large number of new words (called abbreviating symbols) and additional rules of syntax (called deductive criteria). By doing this we obtain languages which are much more manageable than the formalized language in its strict sense. Any mathematician will agree that these condensed languages can be considered as merely shorthand transcriptions of the original formalized language. But we no longer have the certainty that the passage from one of these languages to another can be made in a purely mechanical fashion : for to achieve this certainty it would be necessary to complicate the rules of syntax which govern the use of the new rules to such a point that their usefulness became illusory; just as in algebraic calculation and in almost all forms of notation commonly used by mathematicians, a workable instrument is preferable to one which is theoretically more perfect but in practice far more cumbersome. ([10], Introduction, p. 10). As it happens, the end of the 20th century gave us such unforeseen powerful theories and proof assistants, actually not so "complicated" as anticipated by Bourbaki, for instance under the form of the so-called Calculus of Inductive Constructions (a dependent type theory extended with various features) as embodied in Coq, equipped with notational support to handle notations even including LaTeX and unicode characters, incorporating automatic tools like tactics, and being able to automatically generate typeset documents. Contrary to Bourbaki's expectations, packaged this way these theories have rendered the 10 formalization of mathematics more feasible. It opens new possibilities for learning and teaching mathematics14, doing mathematical research, or using mathematics in industry. Thus, time may be ripe for Bourbaki's abandoned dream. However, one should keep in mind the distinction between the formalization of mathematics using proof assistants and some ultimate foundations of mathematics. The foundations of mathematics may be a never-ending work, what Bourbaki called the "horizon"[12]. Hence, the importance of a third technical challenge (in addition to massive collaborations using proof assistants, and the scalability of libraries), the migration of libraries, for instance from a system to a more evolved system and this is why the UniMath library uses for its development only a small subset of the Coq language. Given the numerous proof assistants and libraries of formalized mathematics on the market, migration is an important issue and old code for new proof assistants should be reused as easily as possible to become the scaffolding for new achievements. The UniMath library is intended to be a whole scalable migration-friendly library of formalized mathematics with certified proofs. With respect to large-scale formalization, one very interesting aspect of Bourbaki's project consists in noticing that its members faced large-scale architectural problems well before us, since they aimed in their series of books at a rigorous, general and self-contained, reformulation of the whole of mathematics known at the time. Hence, in this regard one can learn from Bourbaki's epoch-making project, and Armand Borel's article "Twenty-Five Years with Nicolas Bourbaki 1949-1973"[13] and Pierre Cartier's article "The Continuing Silence of Bourbaki"[14] are informative. 3 Architecture and Mathematics Alexander Grothendieck was a third-generation member of Bourbaki and when reading Grothendieck's "Récoltes et Semailles"[15] one can wonder why the architectural metaphor is recurrent 15. Actually, there is a meeting of minds between great architects 14The key step towards the widespread use of formalized mathematics could be to start teaching mathematics with the help of proof assistants, not to try very hard to gain the support of the working mathematicians. Given that present-day students are the mathematicians of tomorrow, the latter could be a consequence of the former. Moreover, a mathematical education using, at least occasionally, proof assistants could be solidly grounded in rigorous proofs and the students could benefit from it. Unfortunately, most proof assistants might be still too difficult to use except for graduate students. Note that the Isabelle proof assistant, which offers more automation, was used recently by a group of undergraduate students in Germany, under the supervision of three advisers, to formalize partly the DPRM theorem motivated by Hilbert's Tenth Problem. See their joint paper[11] presented during the FLOC 2018 conference in Oxford. 15I will give a few examples : "Je me sens faire partie, quant à moi, de la lignée des mathématiciens dont la vocation spontanée et la joie est de construire sans cesse des maisons nouvelles. Chemin faisant, ils ne peuvent s'empêcher d'inventer aussi et de façonner au fur et à mesure tous les outils, ustensiles, meubles et instruments requis, tant pour construire la maison depuis les fondations jusqu'au faîte, que pour pourvoir en abondance les futures cuisines et les futurs ateliers, et installer la maison pour y vivre et y être à l'aise. Pourtant, une fois tout posé jusqu'au dernier chêneau et au dernier tabouret, c'est rare que l'ouvrier s'attarde longuement dans ces lieux, où chaque pierre et chaque chevron porte la trace de la main qui l'a travaillé et posé. Sa place n'est pas dans la quiétude des 11 and great mathematicians linked by an abstract approach of space with surprisingly at the same time a feeling of its organic life. This abstract approach of space is remarkable in the great architectural theoreticians, like for instance Frank Lloyd Wright, Le Corbusier, or Christopher Alexander, in the sense that one can naively believe their prime business is the 3-dimensional space embodied in a house, a building or a city, it is certainly true but it goes beyond. We notice that architects have been facing large-scale problems for long, they have been challenging them and they have offered their thoughts. Christopher Alexander in "The Nature of Order"[16] develops what he calls wholeness to answer these challenges. Wholeness is precisely what is lacking in most libraries of formalized mathematics despite the fact it is an important feature of mathematics. Note that wholeness in Alexander's work is a specific concept defined by 15 properties16. We will not discuss here each of those properties, but only a few that seem more relevant with respect to mathematics, since it will be probably hopeless to search for a precise dictionary between Alexander's properties and some corresponding features of mathematics. These properties are an interesting attempt to capture what "organic" and "life" could mean for man-made artefacts like architectural works which are Alexander's main concern. In his 1900 address to mathematicians Mathematical Problems Hilbert mentioned this organic feature of mathematics in the following perceptive insights : The problems mentioned are merely samples of problems, yet they will suffice to show how rich, how manifold and how extensive the mathematical science of today is, and the question is urged upon us whether mathematics is doomed to the fate of those other sciences that have split up into separate branches, whose representatives scarcely understand one another and whose connection becomes ever more loose. I do not believe this nor wish it. Mathematical science is in my opinion an indivisible whole, an organism whose vitality is conditioned upon the connection of its parts. [. . . ] We also notice that, the farther a mathematical theory is developed, the more harmoniously and uniformly does its construction proceed, and unsuspected relations are univers tout faits, si accueillants et si harmonieux soient-ils qu'ils aient été agencés par ses propres mains, ou par ceux de ses devanciers. D'autres tâches déjà l'appelant sur de nouveaux chantiers, sous la poussée impérieuse de besoins qu'il est peut-être le seul à sentir clairement, ou (plus souvent encore) en devançant des besoins qu'il est le seul a pressentir." ([15], 2.5 Les héritiers et le bâtisseur); and "Comme le lecteur l'aura sans doute deviné, ces "théories", "construites de toutes pièces", ne sont autres aussi que ces "belles maisons" dont il a été question précédemment : celles dont nous héritons de nos devanciers et celles que nous sommes amenés à bâtir de nos propres mains, à l'appel et à l'écoute des choses. Et si j'ai parlé tantôt de l' "inventivité" (ou de l'imagination) du bâtisseur ou du forgeron, il me faudrait ajouter que ce qui en fait l'âme et le nerf secret, ce n'est nullement la superbe de celui qui dit : "je veux ceci, et pas cela !" et qui se complaît à décider à sa guise ; tel un piètre architecte qui aurait ses plans tout prêts en tête, avant d'avoir vu et senti un terrain, et d'en avoir sondé les possibilités et les exigences." ([15], 2.9); and again "C'était peut-être là la principale raison pour laquelle les maisons que je prenais plaisir à construire sont restées inhabitées pendant le longues années, sauf par l'ouvrier maçon lui-même (qui était en même temps aussi l'architecte, le charpentier etc.)." ([15], 18.2.8.3 Note 135). 161. Levels of scale 2. Strong centers 3. Boundaries 4. Alternating repetition 5. Positive space 6. Good shape 7. Local symmetries 8. Deep interlock and ambiguity 9. Contrast 10. Gradients 11. Roughness 12. Echoes 13. The void 14. Simplicity and inner calm 15. Not-separateness 12 disclosed between hitherto separate branches of the science. So it happens that, with the extension of mathematics, its organic character is not lost but only manifests itself the more clearly.[17]. If wholeness is a feature of mathematical science according to Hilbert, Alexander regrets its absence in most of modern, dead and dull, architectural works while this property is shining in some of the great artistic works of the past. Alexander's concerns may not be widely shared by present-day architects, but they are not without resonances among other great architects as testified by the organic architecture of Frank Lloyd Wright or Tadao Ando's obsession with making light vibrant, alive, through the use of concrete. If Alexander does not mention mathematics, a mathematician cannot help but think that mathematical entities and mathematics as a whole (" la mathématique" of Bourbaki, using a singular on purpose) display to a great extent this pervasive organic character, a life of their own, a wholeness. Mathematical entities are like the centers of Alexander, the elementary components of any system that make it alive, but with the subtlety that a center cannot be isolated from other centers but needs to be understood in a mutual recursive relation with other centers ([16], p.116). We can think about prime numbers in terms of what Alexander calls strong centers ([16], p.151), centers that focus our attention and engage us, the set of primes numbers being described by Alain Connes as the heart of mathematics [18] (compare Connes's vivid organic metaphor in the interview with the dull mechanic metaphor of the interviewers using a coffee machine). In mathematics strong centers are not only displayed as specific mathematical entities but also in proofs, proving being at the core of the activity of the working mathematician. Indeed, any good mathematical proof has its own architecture. This architecture revolves around the main ideas that provide the flesh of the proof. In a given proof there are as many strong centers as there are main ideas, fitting together thanks to boundaries which are the glue of the inner workings of the mathematical mind, the hypotheses and the conclusion being the initial boundary and the last boundary, respectively. Simple proofs have usually only one center, more elaborate proofs may have many centers, but it does not matter, centers are always what make things click. One can define the strong centers in a proof as the main ideas such that handed to any mathematician with the appropriate training he will not fail to reconstruct the proof on his own. In most proof assistants, formal proofs have no structure17. It is an important issue. This is the case for instance in the Coq proof assistant, and as a consequence in the UniMath library, where a formal proof is basically a sequence of tactics lacking the structure of its informal counterpart. Even if one would not intend to read formal proofs, for instance to get pedagogical insights, but only to get certificates of correctness from them, then one still needs to maintain on a regular basis the code in a library to take into account revisions that might have been proposed. Since changes pushed in a library can break some proofs, the task of repairing broken code (and in particular broken proofs) is made harder by the lack of structure in formal proofs that makes them barely legible. 17Some proof assistants like Isabelle have structured proofs (in the case of Isabelle thanks to an additional layer called the Isar language), but there is still room for improvement. 13 Also, there might be some roughness in the sense of Alexander in the distribution of prime numbers mentioned above, roughness being an elusive property : Things which have real life always have a certain ease, a morphological roughness. This is not an accidental property. It is not a residue of technically inferior culture, or the result of hand-craft or inaccuracy. [. . . ] It is an essential feature of living things, and has deep structural causes. [. . . ] Roughness does not seek to superimpose an arbitrary order over a design, but instead lets the larger order be relaxed, modified according to the demands and constraints which happen locally in different parts of a design. ([16], p.210). Moreover, it suffices to quote Hilbert again to find traces in mathematics of other properties of Alexander like local symmetries, deep interlocking and echoes : For with all the variety of mathematical knowledge, we are still clearly conscious of the similarity of the logical devices, the relationship of the ideas in mathematics as a whole and the numerous analogies in its different departments.[17]. The libraries of formalized mathematics are annoyingly lacking echoes. Often proof assistants miss some nice built-in features. For instance, these libraries have no counterpart as convenient as the index of a book, the easy search function of a PDF file or the table of contents of a book18, let alone clickable keywords for pop-up windows to remind the reader about definitions.19 So far, formalized mathematics has focused only on making impossible to write faulty proofs, in doing so it has done nothing for making proofs easier to read. Quite the contrary, formalized mathematics is much harder to read than everyday mathematics and this can explain why it has encountered considerable resistance from mathematicians. One should not forget that mathematicians spend a lot of time reading mathematics, not only doing or writing it. Formalized mathematics has forgotten the communication function of written mathematics, and this is a problem not only with respect to mathematicians but also for students, especially if one believes that teaching mathematics with proof assistants may have pedagogical value and is a necessary milestone towards the widespread use of formalized mathematics.20 Formalized mathematics is not responsive to the reader, this strong center of the subjective experience of mathematics, that changes across the mathematical community. In this sense, it lacks the property that Alexander coined gradients, the adaptive result in design when conditions vary. A simple solution should be to have expensible/collapsible parts in proofs, so that every reader, while reading a proof, can set for himself the level of details according to his background and ability. Hopefully, this feature would allow to hide very low-level details that make 18The good practices of writing a short table of contents at the top of a file starting a new formalization and a bibliography at the end are surprisingly not even included in the style guide (https://github. com/UniMath/UniMath/blob/master/UniMath/README.md) of UniMath as of 6 September 2018. 19Again, the Isabelle theorem prover and its bundled editor jEdit, even if not perfect, have built a competitive advantage with search support and clickable keywords. 20See also the footnote 8 on that point. 14 reading formal proofs cumbersome. Few libraries of formalized mathematics are really designed with the reader in mind. Finally, could it be that the last fifteenth property of Alexander, not-separateness, the experience of "a living whole as being at one with the world" ([16], p.230), is the "unreasonable effectiveness of mathematics in the natural sciences" emphasized by Eugene Wigner [19] ? 21 In the same way an architect try to realize the unfolding in space of a form through levels of scale ([16], p.145), i.e. the property that consists in the presence of centers at a wide range of scales, mathematicians unfold their axioms through mathematical entities and theorems. The levels of scale are apparent for instance in the definition/lemma/theorem/corollary structure of a mathematical book or article. Both architects and mathematicians are happy when this unfolding looks like the unfolding of an organism from the seed within. The axioms of mathematics are the seeds, the labour of mathematicians are the ground that nurtures the seeds, and the mathematical entities and theorems are the resulting landscape with its wide open horizon. Some parts of this landscape are jardins à la française, some others are English gardens, both with their respective supporters. Most parts of this landscape secretly aspire to the inner peace of Japanese gardens, natural but neither artificial nor wild. This living unfolding, from the axioms to the theorems, is the stuff mathematical objects are made from. In the case of the Univalent Foundations of mathematics the unfolding of shapes, namely types of various h-levels, a concrete example of levels of scale relevant in our context, what appears less directly and less smoothly in sets-based mathematics as homotopy types, is remarkable. The enlarged notion of life, of living structures, coined wholeness by Alexander, can help to understand in particular where the platonistic attitude of mathematicians comes from. As pointed out earlier, Alexander underlines the interplay of centers with the use of boundaries([16], p.150) which separate a center from others and at the same time unite them. For a second example, think in mathematics about the locus where two topics or two theories meet, share some methods and that could possibly merge in the future as a result. But Alexander seems to miss the point that sometimes the life of some parts may be at the expense of others. This full dynamics was noted by Hilbert : [. . . ] let me point out how thoroughly it is ingrained in mathematical science that every real advance goes hand in hand with the invention of sharper tools and simpler methods which at the same time assist in understanding earlier theories and cast aside older more complicated developments. It is therefore possible for the individual investigator, when he makes these sharper tools and simpler methods his own, to find his way more easily in the various branches of mathematics than is possible in any other science.[17]. The result of these sharper tools and simpler methods, won after the struggle, that ease the orientation of mathematicians in the whole of their science is the simplicity and inner calm put forward by Alexander, and described by him as the 21I have discovered a truly remarkable answer to this question which this footer is too small to contain. 15 quality [. . . ] which is essential to the completion of the whole. [. . . ] The quality comes about when everything unnecessary is removed.([16], p.226). The regular clean-up and reorganizations in mathematics mentioned by Hilbert above might be the analog of evolution in the biological world and a condition for a renewal of creativity, biological systems being a paradigm of wholeness. Of course, biological evolution as understood by modern biology is a blind process, while reorganizations are made on purpose by mathematicians and some mathematicians have the platonistic feeling to be guided by an independent architectural principle of some kind, to discover rather than to invent mathematical objects. One could think this prompted Darwin to say I have deeply regretted that I did not proceed far enough at least to understand something of the great leading principles of mathematics, for men thus endowed seem to have an extra sense.[20] , but one could also see in this quote a reference to the complementary ability of the mathematician, like the artist, to tap into the subconscious mind as pointed out by Jacques Hadamard[21]. 4 Conclusion In this article, following Alexander's approach, we have tried to underline a few strong centers in the foundations of mathematics, namely the Univalent Foundations, the UniMath library, the Bourbaki's cathedral of mathematics, twisting some architectural threads in a mathematical landscape. However, we have only sketched the boundaries between these centers to allow for at least some wholeness in the odyssey promised in the abstract. Some mathematicians are afraid that formalization could disrupt their flow of work, their inner music, and this may be indeed a real danger if one is not able to cleverly design organic libraries to allow smooth reorganizations on a regular basis. But if we are sensitive to the wholeness of our library this danger could be avoided. By facing new large-scale challenges in design formalized mathematics could offer new opportunities. The Alhambra (close to Alexander's heart) located in Granada (Spain), started in 889, still stands shadowing our mortality, in the same way can the libraries of formalized mathematics stand the test of time ? Acknowledgments The author would like to thank Benedikt Ahrens, Thierry Coquand, and an anonymous referee for their useful comments and suggestions. 16 References [1] Vladimir Voevodsky Paul Bernays Lectures, at ETH Zurich, Sept. 9-10 2014, available at https://www.math.ias.edu/vladimir/lectures. [2] Per Martin-Löf Constructive mathematics and computer programming, Logic, methodology and philosophy of science, VI (Hannover, 1979), Stud. Logic Found. Math., v. 104, pp. 153-175, North-Holland, Amsterdam, 1982. [3] Vladimir Voevodsky An Experimental Library of Formalized Mathematics based on the Univalent Foundations, Mathematical Structures in Computer Science, 25(5), pp. 1278-1294, 2015. [4] Vladimir Voevodsky, Benedikt Ahrens, Daniel Grayson and others UniMath : Univalent Mathematics. Available at https://github.com/UniMath. [5] Thierry Coquand, Nils Anders Danielsson Isomorphism is equality, Indagationes Mathematicae 24(4), pp. 1105-1120, 2013. [6] The Univalent Foundations Program Homotopy Type Theory : Univalent Foundations of Mathematics, Institute for Advanced Study, 2013, available online https://homotopytypetheory.org/book. [7] Univalent Mathematics, https://groups.google.com/forum/#!forum/ univalent-mathematics. [8] N.G. de Bruijn A Survey of the Project Automath Studies in Logic and the Foundations of Mathematics, Volume 133, 1994, pp. 141-161. [9] Freek Wiedijk The De Bruijn Factor, 2000. http://www.cs.ru.nl/F.Wiedijk/ factor/factor.pdf [10] Nicolas Bourbaki Elements of Mathematics, Theory of Sets. Addison-Wesley, 1968. [11] Deepak Aryal, Jonas Bayer, Bogdan Ciurezu, Marco David, Yiping Deng, Prabhat Devkota, Simon Dubischar, Malte Sophian Hassler, Yufei Liu, Maria Antonia Oprea, Abhik Pal, and Benedikt Stock Hilbert Meets Isabelle. Formalization of the DPRM Theorem in Isabelle/HOL, 2018. https://doi.org/10.29007/3q4s [12] Denis Guedj Nicolas Bourbaki, Collective Mathematician, An interview with Claude Chevalley, The Mathematical Intelligencer, vol.7, no.2, pp. 18-22, 1985. [13] Armand Borel Twenty-Five Years with Nicolas Bourbaki, 1949-1973, Notices of AMS, March 1998, pp. 373-380. [14] Pierre Cartier The Continuing Silence of Bourbaki, The Mathematical Intelligencer, 1, 1998, pp.22-28. [15] Alexandre Grothendieck Récoltes et Semailles, Réflexions et témoignages sur un passé de mathématicien. [16] Christopher Alexander The Nature of Order : An Essay on the Art of Building 17 and The Nature of the Universe, Book I The Phenomenon of Life, published by The Center for Environmental Structure, Berkeley, 2002. [17] David Hilbert Mathematical Problems, lecture delivered before the International Congress of Mathematicians at Paris in 1900, translated by Dr. Mary Winston Newson, Bulletin of the American Mathematical Society, volume 8, number 10, 1902, 437-479. [18] Stéphane Dugowson et Anatole Khelif Interview d'Alain Connes, IHES, 5 février 2014, https://www.youtube.com/watch?v=rHkhez4OxPU. [19] Eugene Wigner The Unreasonable Effectiveness of Mathematics in the Natural Sciences, Communications On Pure And Applied Mathematics, vol.XIII, 001-14, 1960. [20] Charles Darwin The Autobiography of Charles Darwin, 1958, chp.2 "Cambridge life", p.58, Darwin Online. http://darwin-online.org.uk/ [21] Jacques Hadamard The Mathematician's Mind : The Psychology of Invention in the Mathematical Field, Princeton University Press, Princeton, 1996.