Why do proof assistants use dependent type theory instead of set theory? https://mathoverflow.net/questions/376839/what-makes-dependent-type-theory-more-suitable-than-set-theory-for-proof-assista…
Hi Talia! I think you're completely wrong on this. I think that people who don't work in maths departments often have a view of mathematics which is quite detached from what is *actually happening in maths departments*. I don't see any reason why UIP stops me formalising maths.
It doesn't stop you, but it is one choice in a fork where univalence works just as nicely (in fact gives rise to the automation you like more easily). And it stops folks working in proof relevant mathematics; "all of math" is just a hyperbolic statement.
I was a math researcher before I went into CS, by the way. I didn't start programming until college.
It is important to be nuanced in these conversations or you lose the important lessons of why Lean has been useful for you. Foundations are not why.
My understanding is two things about Lean have helped you a lot: good automation and good library support. The latter of which has been a lot of your effort.
Other proof assistant designers should learn from this. Losing this nuance in discussion is a major loss for everyone
Not sure if this is part of 'good automation', or if it's more just 'tooling', but as a non-expert on theorem proving, I've appreciated Lean because it makes it easy to set up VS Code with live-updating intellisense.
I think the Agda and Coq folks are working on trying to improve support for these kinds of editors, but it seems like a big undertaking. It does help to reduce the barrier to entry to not have to go through emacs though.
Too the point at hand, this is all orthogonal to foundations. More about how easy it is to get up and running, and start doing meaningful stuff. I'm sure the way Lean does tactics helps ease that even more (seeing as they are written in Lean itself).
I would love to see any development of basic algebraic geometry (affine schemes as topological spaces+sheaf of rings) in a univalent setting. Voevodsky never managed to achieve this, and people have told me that he wasn't trying to do it; I would have loved to ask him why not 😐