4 ms·
> If all HoTT does is give a theory that's mutually interpretable with ZFC, that's not interesting. "If all python does is give a theory that's mutually interp
by pgustafs 6y ago
> If all HoTT does is give a theory that's mutually interpretable with ZFC, that's not interesting.
"If all python does is give a theory that's mutually interpretable with x86 assembly, that's not interesting."
The point is to have better language support for expressing the things you want to reason about. I don't find it so far-fetched to be interested in better ways of reasoning about equality of types (both as a programmer and as a mathematician).
- spekcular 6y agoI don't think this is a good analogy. No one "does mathematics" in ZFC. Mathematicians don't express their reasoning in set-theoretic axioms; they do so in common language proofs. You can see this by opening any graduate textbook or journal. Mainstream mathematicians are not being prevented from proving theorems because they lack "better ways of reasoning about equality of types." The importance of ZFC is that it ensures our common language reasoning isn't incoherent (among other things). Once you've done that, you don't need to do it again.
- pgustafs 6y agoMathematicians use implicit DSLs approximately embedded in natural language to write proofs. Formalizing these DSLs in ZFC is a nightmare because its axioms are arcane and far from common mathematical discourse (much like assembly). On the other hand, the type formers and rules of (say) MLTT are natural generalizations of the rules of ordinary logic. > Mainstream mathematicians are not being prevented from proving theorems because they lack "better ways of reasoning about equality of types." How do you know? I've made the mistake of assuming that the definition of a certain morphism is natural with respect to a certain object when it wasn't (coevaluation in a rigid monoidal category). Better language for equality and naturality are precisely what HoTT provides. More importantly, the hope is that type theory will not only provide better language, but relieve us of the tedium of checking proofs by hand. > The importance of ZFC is that it ensures our common language reasoning isn't incoherent. I don't think this is true. AFAIK, no one has written down the definition of (say) a scheme from first principles in ZFC. In fact, if you care about coherence/verification, you should care even more about type theory. IIRC this is what drew Voevodsky to type theory in the first place -- https://mathoverflow.net/questions/234492/what-is-the-mistake-in-the-proof-of-the-homotopy-hypothesis-by-kapranov-and-voev https://mathoverflow.net/questions/234492/what-is-the-mistak...
- spekcular 6y agoI don't think you should regard ZFC's purpose as proof verification. If you want verification, by all means use something else, as discussed in the link in my original post (which also addresses your scheme point – that's a problem common to most approaches so far!). If HoTT helps you prove theorems, great. In particular I could see it being of interest to people working in higher category theory (and such people have responded in other comments here!). My remarks were meant for the other 99% of mathematicians – most of whom go their entire lives without ever writing the word "category" in a paper.
- pgustafs 6y agoThanks for the interesting discussion. My main point of disagreement re:foundations is that in my view a central criterion for a foundational system is easy translation of common mathematical discourse into formal proofs. Otherwise, it seems that the coherence of ordinary mathematical discourse must be an article of faith.
- spekcular 6y agoI don't have time to explain in detail at the moment, but I recommend reading about the history of set theory and the problems that the introduction of ZFC was meant to solve. I think you'll agree that they were both important and have nothing to do with proof verification. More generally, it's not clear to me why you necessarily want the language you use to rigorously investigate the foundations of mathematics to be the same one you use to do proof verification. ZFC – and set-theoretic approaches more broadly – facilitate proving things about mathematics (meta-mathematical theorems), and for that they are very useful. E.g., the strength of a theory is equivalent to the size of the cardinals it assumes, loosely speaking [1]. [1] https://en.wikipedia.org/wiki/Large_cardinal https://en.wikipedia.org/wiki/Large_cardinal
- pgustafs 6y agoWe've hit the comment depth limit, so I'll reply here. > it's not clear to me why you necessarily want the language you use to rigorously investigate the foundations of mathematics to be the same one you use to do proof verification. Among other things, I want theorems about foundations to be useful to non-foundational mathematicians. Working on type theory can improve, at the very least, formal verification tools. In my view, traditional ZFC-based mathematical logic has a much smaller likelihood of being useful for regular mathematicians. For example, the vast majority of mathematicians will never explicitly assume the existence of a large cardinal in a paper. It seems to me that the difference in usefulness is probably due to their relative distance from common discourse.
- Ericson2314 6y ago> No one "does mathematics" in ZFC. How is this not partial evidence that ZFC is trash? > Mainstream mathematicians are not being prevented from proving theorems because they lack "better ways of reasoning about equality of types." Mainstream mathematicians do run the risk of being siloed in narrow specialties because abstractions are needed to distill the all definitions of remote areas of mathematics. Saying HoTT is a failure because people do informal proofs is rather moving the goal posts; people won't do formal proofs until the tooling is really good. But none of the up-and-comming tools are classic first order logic + ZFC (Please don't mention TLA+) and there's a reason for that. > The importance of ZFC is that it ensures our common language reasoning isn't incoherent (among other things). Once you've done that, you don't need to do it again. No you need formal proofs to check that there aren't errors along the way. And lack of formal proofs slows down new weird stuff like the ABC conjecture proof candididate. I don't expect this to be solved now (tooling, as per above), but mathematicians should learn more category theory now as that works just fine pencil paper and brain. When the type theoretic tooling is ready they will be ready.
- spekcular 6y ago> How is this not partial evidence that ZFC is trash? ZFC was never intended as a language for practically doing mathematics in, so that's a weird criticism. > Mainstream mathematicians do run the risk of being siloed in narrow specialties because abstractions are needed to distill the all definitions of remote areas of mathematics. Mathematicians are siloed in narrow specialties because they focus on solving hard problems that require a great deal of specific subject matter expertise. I strongly doubt that "distill[ing] the all definitions of remote areas of mathematics" is even possible, or a fruitful project to attempt. Could you give an example of how definitions from, say, probability theory and algebraic geometry might be merged in a useful way? > No you need formal proofs to check that there aren't errors along the way. And lack of formal proofs slows down new weird stuff like the ABC conjecture proof candididate. I think this comment misunderstands the problem with the ABC "proof," which is (speaking roughly) that a certain lemma asserted something that was crucial to the argument, but which was never actually proved. Peter Scholze and others spotted this pretty quickly. Formalization wouldn't really have helped at all.