"Principia Mathematica is an odd book, worth looking into from a historical point of view as well as a mathematical one. It was written around 1910, and mathematical logic was still then in its infancy, fresh from the transformation worked on it by Peano and Frege. The notation is somewhat obscure, because mathematical notation has evolved substantially since then. And many of the simple techniques that we now take for granted are absent. Like a poorly-written computer program, a lot of Principia Mathematica's bulk is repeated code, separate sections that say essentially the same things, because the authors haven't yet learned the techniques that would allow the sections to be combined into one."
Possibly pertinent: Principia Mathematica Maps and Table Site (PM-MATS):
https://principia.lib.uiowa.edu/about.html - more description in my top-level
comment in this page.
Of you prefer an even more entertaining approach and a very gentle introduction into the topic, I recommend the comic "Logicomix" which tells Russel's journey (though not historically correct all the time for story telling reasons).
Logicomix is novel, and done well, but flawed … it's deficiencies lie in what it leaves out which may come across as an unfair charge but in this case the charge is warranted. There is a more historically correct and less orthodox work waiting in the wings for whosoever should attempt it.
It's also a bit weird how it makes ahistorical meetings for "drama" -- e.g. Russell and Frege never met in real life -- why show that they did (they do mention this never happened in their notes, but why write such a scene at all?)
"The goal of this project is to make clear structural connections between different parts of Principia and to make analyzable data about the theorems, definitions, and primitive postulates in its text. We do this by providing three digital tools ..."
For example here is their take on the celebrated proof in PM that 1 + 1 = 2
You might be interested in Kurt Goedel’s extended book review wherein he proves that Principia cannot do what it sets out to do, nor can any such system.
I do teach PM when I teach theory of computation, but largely to tell the story of how we discovered the limits to computation.
The notation for avoiding parentheses is interesting, and I've thought that it might be useful in programming languages.
To illustrate, suppose you have a non-associative operator $. Rather than write a$(b$c), you can write a$.b$c - the . makes the $ before it be lower precedence on the right side. More dots make things be even lower precedence.
So, for example,
a$b .$: x$y .$. p$q
means
(a$b) $ ((x$y) $ (p$q))
At least, that's my recollection. It's been over fifty years since I read (significant parts of) it...
If you can read this book cover-to-cover, you're an absolute hero. Sometimes I wonder if they inserted a big logical error in the middle just to troll people under the assumption nobody would bother to read it.
This is commonly believed, but Gödel didn't identify a logical error at the heart of the whole enterprise, he proved astonishing theorems revealing limitations of any sufficiently powerful formal system. One can kind of think of the Principia as a science experiment to find the extent to which known mathematics could be proven from foundational axioms that could be thought of as "laws of logic". To make their system work, Russell and Whitehead themselves had to add extralogical axioms, such as their Axiom of Reducibility [0] and the Axiom of Infinity, giving empirical evidence (but not a proof) that "laws of logic" alone were not enough. They were also aware of limitations in their own system, such as the inability to define the cardinal $\aleph_\omega$ [1].
Like the article says, what they did was ahead-of-its-time, and a monumental influence on all subsequent work on formal systems, including Gödel's work, regardless of whether Russell and Whitehead achieved their initial aims.
Utter nonsense ... there is no known logical error in PM. Gödel proved that Russell and Whitehead's goal was unachievable but that's a totally different matter.
OTOH, Russell found a logical error at the heart of Frege's work, and PM fixed it by introducing the theory of types.
Wittgenstein didn't find logical flaws in the Principia and deeply admired it. He found flaws in Russell's follow up work on Epistemology, "The Theory of Knowledge."
I read GEB cover to cover and haven’t stopped thinking about it for years. Not a brag, a nudge that it’s not impenetrable and more people should read it.
It is a popular science book which catches the vibe of mathematical logic in an excellent way. It is not a textbook, nor a piece of research. It's all vibes, but high-quality vibes. If you are in the right headspace it can be really inspiring!
I had my copy signed by Prof Hofstadter; a treasure to this day. Led to a maths degree, years of organ playing classes, a career in software, and a Zen practice going on 20 years. And I'm pescatarian. I even wrote a few haiku when my babies were little. Hmm, time for another listen to a Tocatta and Fugue.
The extraneous stuff is honestly fabulous, IMO of course. Just being able to listen to a four part fugue sensibly is a rare but accessible pleasure. And amusing dialogs as an instantiated dialectic for showing the truth synthesized from apparent opposites, is a great pedagogical learning.
I showed up to first day at university and an older student talked to me for like two minutes before declaring that I needed to read GEB. I dutifully went ahead and bought it, and I still work in logic today.
He wrote a number of follow-up books. I love GEB, but the follow ups were often disappointing in surprising ways.
He has another book about the beauty and challenges of translating poetry, but it’s actually about the sudden death of his wife and it's been too sad for me to finish.
I gave that book to my mathematician grandma, and she found it so boring she couldn’t finish it - “All this stuff was known for decades”. True anecdote.
A large chunk of the book is philosophizing about AI and the nature of the mind and intelligence. And when it's betting on the AI that existed pre-AI winter... yeah, that part is quite dated.
You should see his book "Fluid Concepts and Creative Analogies, which is entirely about his experiments with AI in The Fluid Analogies Research Group with his grad students. Although I wonder if those techniques could be paired with LLMs somehow.
I used to wonder how likely it was that the printers made some typesetting errors. Who among us could, say, type a thousand pages of APL symbols without introducing a bug?
There's a reason mathematics was known as "penalty copy" and was notoriously difficult to typeset and even more difficult to turn a profit on.
For a deep dive into both ends of that, see the history of publication of Knuth's TAoCP where the text was originally published traditionally by setting metal type on a composition machine (to the extent possible), then compositors would add the additional characters and spacing material necessary to compose the equations and so forth so as to lay out a galley (which would then be proofed/corrected) --- a successive edition was then typeset using an early imagesetter, which looked so ghastly that DEK considered giving up, but when informed that the imagesetter was controlled by a computer declared, "I am a computer scientist, I can fix that." and expected to knock out a typesetting system over his next sabbatical....
Roughly a decade later, TeX 1.0 was released.... the current version is 3.141592653 (with new versions adding another decimal place as the version tends towards \pi) --- while we're still waiting on the full publication of Vol. 4, it is widely considered that TeX was worth the delay.
The version of this story I heard is in Littlewood's "A Mathematician's Miscellany"[1] and it's a sigma rather than an x. But he tells it as something that happened specifically to him -- he wrote a memo that ended with "thus sigma should be made as small as possible", and that bit was absent but there was in its place a very very tiny sigma. Unless he's outright lying, I think this one actually happened!
[1] The more recent edition is titled "Littlewood's Miscellany"; I am fairly sure this story is in both the older and the newer version.
EDIT: source: took logic as undergrad + wrote on the tractatus which required a lot of pre-reqs to understand. 0 chance a course at undergrad level ever assigns principia mathematica. I don't care if you went to yale or oxford or ecole normale ... 0 chance. Most charitable interepretation: some pages of it + was on a bibliography. not required reading.
if feel embarrassed, that is the consequence for lieing. There is such a thing as intellectual honesty.
Thanks for calling out these sort of posers and charlatans on HN. We should not tolerate these people if we are to discuss/argue/motivate interesting/hard subjects productively.
I automatically discount anybody on HN (until i have looked at their profile/comment history/any personal bio websites etc.) who claim they have read/studied a) Euclid's Elements b) Newton's Principia c) Maxwell's Treatise on Electricity and Magnetism d) Einstein's 1905 Annus Mirabilis papers. e) Principia Mathematica by Russell/WhiteHead f) Godel's Theorem g) Bourbaki's mathematics books etc. etc. They might have browsed it out of curiosity but that is not the same as reading/studying it.
Actual conceptual mathematics/science is intrinsically hard even ignoring the archaic language/notations.
As a good example; the Nobel-prize winning physicist S.Chandrasekhar wrote Newton's Principia for the Common Reader where he explains a subset of the principia (only dealing with gravitation) using modern notation and language. He himself found it quite hard and thus the "common reader" in the title is somebody who has had a good course in calculus and has the motivation to put forth the effort in understanding it.
Einstein's 1905 Annus Mirabilis papers seem like they easiest of the bunch to just read through. I just pulled up 'Über die von der molekularkinetischen Theorie der Wärme geforderte Bewegung von in ruhenden Flüssigkeiten suspendierten Teilchen', the one about Brownian motion, and read the whole thing. It's only 12 pages and fairly accessible; more prose than equations.
(Of course, if you don't read German, you should get yourself a translation.)
I don't think I'm smart enough to casually read and understand original works on General relativity, but the Annus Mirabilis work seems much simpler. The famous E=MC2 paper is only three pages.
About Gödel: if you are interested in the theorems, and not necessarily their original presentation, you can get plenty of rigorous modern treatments. It's very common for mathematicians to work out simpler proofs and more appealing presentations of famous results over time.
See https://dn721807.ca.archive.org/0/items/uber-formal-unentsch... if you want to give one of Gödel's work a go. It's only 26 pages. Footnote 48a is especially interesting. Overall the prose is crisp, but the notation is rather archaic to modern eyes.
I agree with your general sentiment, and your heuristic in general.
My point is that each of the material above (and i forgot to add the original Quantum Mechanics papers) were major watershed moments in science/mathematics and hence are not easy to read/understand. You need a good background in the subject matter(and mathematics) and/or somebody guiding you through them.
So what i do is try and find books which are written for the "educated common reader" by an expert who guides you through the original paper/book. It is still difficult to understand if you do not have the necessary background but at least you have a good starting point.
Some books in my collection;
1) Newton's Principia for the Common Reader by S.Chandrasekhar
2) Maxwell on the Electromagnetic Field: A Guided Study (Masterworks of Discovery) by Thomas Simpson
3) Einstein's Miraculous Year by John Stachel.
4) The Annotated Turing by Charles Petzold.
What we need is for a group of professors to get together and start writing a series on explaining the original papers to the "educated common reader" i.e. not too trivial nor too overwhelming. I think there is a huge market for this since it humanizes how science is done in real life which is fundamental for motivation.
The Annotated Turing is great. Thanks for mentioning the others, I'll check them out. I've read a little of Einstein's original work (in longish excerpts) and it was a nice enough read I'd welcome more of it, especially with expert guidance.
> My point is that each of the material above (and i forgot to add the original Quantum Mechanics papers) were major watershed moments in science/mathematics and hence are not easy to read/understand.
I must dissent. Einstein's Annus Mirabilis papers are really quite approachable. You don't need a book to guide you through.
Though if you are having fun with the book, more power to you! Enjoy!
We have to agree to disagree then. You definitely need a good background in Physics to understand them.
For a general reader, even though they might not get the whole thing they can still get an appreciation for the whole from the commentary/details added by the editor.
The book contains the English translations of the 5 papers with Einstein's original introduction and a short discussion on each, a informative introduction and a foreword by Roger Penrose.
> who claim they have read/studied a) Euclid's Elements
Of the lot, Elements feels misplaced.
Lots of people actually do read Elements as part of their course of study. It's niche but there's a whole cottage industry within academia for that sort of thing. There are probably over a dozen institutions that have either a degree program or a core curriculum that is organized around original texts, with Euclid usually serving as the math distribution of that sequence. So running into people who have read (big chunks of) Elements is not that uncommon. That's true even IRL outside of online discussions forums on thread topics that likely select for such people.
My impression is that this is not really true of the other examples. Except maybe Godel's proofs; I do think a sufficiently motivated instructor could pull a decent chunk of college students through the original text in a semester. Probably better ways to spend everyone's time, though.
Seconding that that one stood out to me. Actually studying at-least large portions of it is typical at a handful of liberal arts colleges that favor the "great books" approach, at least a couple of which have pretty good reputations and are likely to have turned out some folks who work in tech (maybe the programmer next to you... maybe your manager's manager), plus it's pushed in great books home learning programs that surely at least a fair number of people have credibly attempted, even if the overwhelming majority of those who start such programs don't complete them (and it's usually very early in those programs, so even those who gave it a real shot but abandoned it before getting far were likely exposed to quite a bit of Euclid, though maybe they dropped off before On Conic Sections or other texts common in those reading sequences).
... plus it's relatively approachable as such things go, and short enough that closely reading most or all of it isn't a crazy idea, and it was recently-enough widely used as an actual textbook that between that and ongoing modern interest in its use in that capacity, there are tons of study-oriented editions of it floating around and still being published. I mean hell "recreational mathematics" is a thing and lightly-annotated-and-updated Euclid's a pretty solid text for people with that kind of interest to noodle on, with bonus historical appeal since it's super-old and also is assumed background for all educated people into at least the early 20th century, so pops up all the time in historical writing and literature.
Now, Newton? That's more like it. Nobody reads a large amount of his mathematics unless they're some variety of mathematical historian.
As an Oxford undergrad I read a lot of Bourbaki on topology, to supplement the lectures; they were recommended by the lecturer. I loved their style of writing and the cleanliness of the approach. I have not been assigned Gödel's paper but have read them in classes where the proof was demonstrated. Maths is hard tho, I agree on that, and maths reading very hard, and reading these books outside of class where you are forced to keep going till you understanding is only rarely worth it outside of professional life.
I've certainly read and studied material explaining f), but I haven't read the original paper (besides, isn't that in German?). The proofs aren't that hard, as I remember them, maybe they're harder in original form? To be clear: I specialized in logic, formal verification and programming language theory at uni. This was a while ago, and I'm on new parent amounts of sleep, so pls b nice.
I have tried to read some articles and watch some videos "explaining" Godel but never really understood it. Everyone seems to be explaining the mechanics of what Godel did but explaining the Why is lacking i.e. What was it in mathematics that got him even thinking on these lines in the first place? Can this problem be demonstrated with a simple toy axiomatic formal system? How did he hit upon his approach? Answers to these sort of questions is what seems to me the most important thing to understand before following his arguments.
I recently came to know of The Annotated Godel: A Reader's Guide to his Classic Paper on Logic and Incompleteness by Hal Prince which i think i need to sit with :-)
And the reason for Hilbert's program? The problem of "Russel's Paradox" which is a contradiction in naive set theory - https://en.wikipedia.org/wiki/Russell%27s_paradox (Note that there were other paradoxes too).
Hilbert's idea was that by completely formalizing mathematics on a axiomatic/deductive basis, one can mechanically derive proofs so that you don't run into paradoxes/contradictions.
But then Godel showed such a formal system applied to basic mathematics can never be complete (if consistent) and never prove its own consistency.
To me the mechanics and the why are closely intertwined. If you feel like self-referentiality is a way to demonstrate a problem (this is the “why”), it is not a long step to the mechanics of encoding.
The work is in creating the theorem / contradiction from that point, but in the big picture, the approach doesn’t have to come from nowhere.
I don't know the exact curriculum and I'm sure it's changed over the years, but one of my girlfriends from back in the day really did go to a school that had one like this. St. John's College, which has two campuses in Annapolis, MA and Santa Fe, NM. They had no majors and everyone learns by reading the classics directly. They also have to learn classical Latin and Greek and read many in their original languages. I don't know everything they assigned, but I remember at least they actually did learn geometry by reading Euclid and calculus by reading Newton.
Apparently, the history is that the school lost its accreditation and had to shut down during the Great Depression, so to attract investors and reopen, it adopted an extremely unique identity with no watering down of curriculum and commitment to western classics in an attempt to combat the rise of fascism.
They may have learned mechanics by studying Newton but they can’t have learned calculus. Principia includes geometric series and limits etc but given as geometric arguments so you don’t come out of newton’s principia knowing how to do calculus. If they learned the method of fluxions from Newton (which is equivalent to calculus) then I feel very sorry for them missing out on the far better modern presentation of Leibnitz’s calculus that they would get in studying say Spivak or Stewart or any other modern textbook. For the same reason everyone teaches Taylor series (which are fantastically useful) rather than Newton’s wildly inferior series derivation which he used because Taylor series hadn’t been (re)discovered yet.[1]
Euclid isn’t surprising. School children used to learn plane geometry from Euclid until the 1950s or so. I learned geometry at school using a syllabus from Euclid and we learned the modern form of Euclid’s postulates etc but we didn’t study Euclid itself.
[1] Taylor series were developed in the modern form by James Gregory who was trying to reverse engineer how Newton had come up with his series expansions. I say rediscovered above because they were first written down by Madhava of Sangamagrama who gave Taylor series expansions for the trigonometric functions and natural logarithms/exponential function in the 14th century.
I heard about St. John's from a twitter thread and find it deeply baffling.
It's as if a group of monks wanted to keep the quadrivium and trivium but their clock stopped at the 16th century. One of their faculty proudly said they study analysis by reading Descartes! Which I thought was a highbrow joke but nope, dead serious.
There's a reason that 'standing on the shoulders of giants' is a thing. Dive into the classics after you have gained the maturity from modern texts.
Take one of the easier problems from Rudin. Prove that a continuous function from the unit interval [0,1] to itself has a fixed point. I wonder how a student immersed in the 'classics' would even begin to tackle this.
It's not a Mathematics degree. It's not even a Philosophy of Mathematics degree. It's a particular type of Philosophy degree.
So, to be fair: most philosophy majors wouldn't have much luck with Rudin.
> Dive into the classics after you have gained the maturity from modern texts.
Diving into old texts is a skill unto itself. That's why a lot of institutions do the great books thing as a core curriculum (so, maybe 2-3 courses taught in this style, as an alternative to more conventional phil 101/history 101 style distribution requirements). Then a more conventional education from there onward. The theory is that this is a mid-point precisely because it provides lots of transferable skills for diving into the classics in your chosen field, while avoiding the "let's learn analysis from descarte" excesses.
I think their deal is taking seriously the "college is about learning how to learn" thing, and direct engagement with the output of people regarded as greats in their fields on the assumption that, when possible, that's a good idea for obvious reasons (whether that's true or not in some rigorously-provable way, I can't say, but the reasons one might suspect that it is seem clear enough)
Some report it's pretty damn effective at that and leads to an impressive breadth of intellectual confidence in tackling material of almost any sort, but IDK. Anecdotes.
IIRC (it's been a while since I looked into their programs) they do a lot of supplemental reading of newer papers, articles, and book excerpts, and tend to used updated notation when it makes sense. Plus all their classes are heavily discussion-oriented so the reading is potentially enhanced and brought "forward" by whatever their instructors and peers bring to class in their heads.
> Take one of the easier problems from Rudin. Prove that a continuous function from the unit interval [0,1] to itself has a fixed point. I wonder how a student immersed in the 'classics' would even begin to tackle this.
I don't think they tend to train mathematicians, and I think for most students (graduating from any college or university) they never, ever, ever touch the specifics of their more-advanced e.g. math classes (I think this is true even for most programmers or engineers or what have you) any time in the entire rest of their lives, to the point that entirely forgetting most of that stuff by a decade or so later and suffering for that not at all is utterly typical. How much does it matter for students who aren't going into extremely narrow vocations that they come out of them unable to perform this specific task, without first needing to study further?
The usual defense of this fact is "well it's about learning how to learn, expecting the actual content to ever matter for any but a teensy tiny proportion of the students is unreasonable" in which case... see the rest of the post.
When I was a pretentious high schooler with fantasies of being an intellectual, I considered going there. I ended up not even applying. It just seemed too far out of the norm.
Honestly, other than the length and tedious presentation, I don't really think the material in the Principia Mathematica is outside the reach of an advanced undergraduate. As a point of reference, MIT's capstone mathematical logic course[1] has a syllabus that requires at least as much mathematical maturity, and it wouldn't really surprise me that much to see it as an ancillary or excerpted text.
That said, even if the OP was assigned the text at some point as an undergraduate, I remain a bit doubtful it was actually read.
> As a point of reference, MIT's capstone mathematical logic course[1] has a syllabus that requires at least as much mathematical maturity,
The textbooks they use in that course are written in modern notation and are accessible to a knowledgeable reader; neither can be said of the Principia Mathematica. The archaic syntax is a serious issue.
For those who aren't familiar with the great but tragic story of Principia and Russell's quest for the foundation of math (spoiler: there is none), there's a really great graphic novel called Logicomix https://en.wikipedia.org/wiki/Logicomix
I haven't read it in probably ten years, but it's one of those books and stories I spend an inordinate amount of time thinking about, for whatever reason.
There is not a single foundation - you can choose. The differences are rarely important for working mathematicians though. Most know enough of ZFC to get by and ignore foundations tbh
Most foundations are in a sense equivalent. In that sense, "ZFC" is as good a choice as any. I think there might be some confusion around the different meanings of the word "foundation": A foundation is a formal system that suffices, somehow, to encode virtually all of known mathematics. The reason why people (including me!) are interested in other "foundations" like HoTT is because they try to build the same mathematics as ZFC from a different set of building blocks, despite them eventually arriving in the same place. In the case of HoTT, it reduces mathematics to homotopies and fibrations, while also making those weighty-sounding concepts seem easy. If you're interested in homotopies, fibrations, cohomology theories etc. then HoTT is a really helpful way to better understand those concepts.
> Most foundations are in a sense equivalent. Therefore, "ZFC" is as good of an answer as any.
This doesn't follow. The sense in which they are equivalent is that they are equifinal, which doesn't mean isomorphism or even homomorphism. It's a meaningful thing in theory, but not in reality. Otherwise, Turing tarpits wouldn't be a thing.
Every foundation occupies a unique region of proof space. Your foundation, and everything that goes into it, doesn't just affect the shape of what's accessible to you in native semantics, it also effects the way you move through this space. This means by changing foundation, not only can we prove things that we otherwise couldn't in theory (in native semantics), it also means we can prove things we otherwise couldn't in practice (what embedding other foundations as object languages doesn't get you). You can recognize a little bit of this in that it makes some things seem easy, but that's an extremely trivial case of what this relationship implies.
It's all just tools in a toolbelt. Treating them like immutable, universal truths is worth tolerating merely out of human limitation, because it's a lot of work to build intuition for a foundation. If we're talking about philosophy of mathematics though? No, it would be a mistake to pretend like choice isn't meaningful. It is extremely meaningful, and there's a lot to be gained out of realizing they're actually just highly specialized tools. Something to grab when it's useful, and throw away when it's not.
Fair enough. I just wanted to elaborate, because usually that specific phrasing justifies the opposite. I did mention you partially acknowledged the meaningfulness, but I felt like the point needed to be made stronger. The politics around foundations obfuscates a lot of their utility. I'm sure you're aware the tendency for randoms in a mathematics department to roll their eyes when you pay lip service to other foundations. Usually, it's not even about a sense of pragmatics, but irrational identity-protectionism and ZFC dogmatism. Things like HoTT, or any branch of TT, are percieved as "cute, but not something with any real usecase. Not like my perfect ZFC!"
An interesting fact I learned while reading The Dream Machine[1], is that Principia was the basis of Newell, Simon and Shaw’s Logic Theorist (1956), considered to be the “first AI program”. Amusing and amazing to see this in the context of today’s Erdos-slaying LLMs.
Logic Theorist is a computer program completed in 1956 by Allen Newell, Herbert A. Simon, and Cliff Shaw.[1] It was the first program deliberately engineered to perform automated reasoning, and has been described as "the first artificial intelligence program".[1][a] Logic Theorist proved 38 of the first 52 theorems in chapter two of Whitehead and Bertrand Russell's Principia Mathematica, and found a new and shorter proof for Theorem 2.85.[3]
I have a copy and like it much. However, i was always partial to Frege's Begriffschrift. His notation was really creative. It's a shame Russel's deflation of that project has sentenced it to the rubbish heap of history.
The Begriffschrift has in no way been consigned to the rubbish heap of history. What gave you that impression? It is seminal. That it had one unresolved paradox in its set-theoretic foundations does not scupper the philosophical insights, nor the creative notation, nor the more-or-less novel approach of conjoining mathematical functions and logic to give us predicate logic (apologies for this brutally simplified sketch)
i like to think of Frege and the Begriffschrift like this
Boole: logic + algebra = algebraic logic
Frege: logic + functions = predicate logic
ergo, if Boole is rightly deified then so should Frege regardless of minor infelicities (which prompted type theory anyhow) -- again, apologies if this is totally misleading
Instead of spending time beating one’s head against Russell and Whitehead, I would advise reading Homotopy Type Theory (aka the HoTT Book). Dependent types are cool and mind-expanding, but higher inductive types are downright mind-altering.
The Little Schemer/Typer could be used as a preparatory text to gear one up for HoTT.
It also has the advantage of being a bit more applicable to functional programming languages, maybe even more so than Mac Lane’s Categories for the Working Mathematician (which I sometimes see suggested to mathematically-inclined Haskell novices).
I tried to read HoTT. First chapter on type theory is great and pretty easy to follow. The second chapter, I got completely lost. I don't remember why, maybe they fixed it since.
But I find univalence axiom intriguing. I am interested in different approach to types, using triage calculus, which is more "materialist" than "structuralist" - type is given by the structure of the (quoted) term in normal form (unlike lambda calculus, triage calculus makes quoting easy). And I feel like univalence is related to quoting, something like if the two quoted terms are equal under "standard self-interpreter", then they are equal.
I would highly recommend "PROGRAM = PROOF" by Samuel Mimram.
It covers everything from pure lambda calculus through dependent type theory up to homotopy type theory. In comparison to the HoTT book, the book "PROGRAM = PROOF" is oriented less towards mathematicians more towards programmers. It contains also a short introduction to OCaml and Agda.
The book can downloaded from the authors web page:
This is probably a reasonable example of a case where an AI can really help out as an endlessly patient assistant to answer your personal questions in a conversational format.
It is possible it may get something wrong but as long as you keep beating on the wrongness you should eventually be able to work out what it is, and in its own way that would become possibly the best learning exercise there is. And of course, with the math proofs coming through from AIs lately, I wouldn't guarantee you'll see that much wrong stuff. I expect it would be at a low enough rate to keep you learning... after all, anyone who has had serious math education knows the human teachers aren't always completely correct either and there is the occasional impromptu exercise of everyone staring at the board and trying to figure out what went wrong with the demonstration.
Yes, maybe.. I read it like a decade ago though, the AI didn't exist then. Although my current interest in triage and lambda calculus is also fueled by AI.
> I am interested in different approach to types, using triage calculus, which is more "materialist" than "structuralist" - type is given by the structure of the (quoted) term in normal form (unlike lambda calculus, triage calculus makes quoting easy).
Yes. In type theory, the term carrying a type is a metalogical notion. In triage calculus, you can define a typechecking program that operates on a quoted term and normalizes only if the term typechecks.
This means in triage calculus (unlike in lambda calculus, which lacks means to quote programs) you can include expected input data types in your programs.
You can also construct any type theory syntactically by putting together a set of terms in triage calculus which only normalize when composed with correct types.
In triage calculus, you can then study types and propositions as any other programs - using self-interpretation. But I believe, as I detail below, a univalence principle is needed, to postulate the equivalence of metalogical triage calculus and its representation within triage calculus.
Univalence says that equality is equivalent to equivalence, ie, formalizing the notion of when we can use equivalence rather than equality as a step in a proof. In practice, we often only care about proofs “up to equivalence”.
A way to think about this:
- equality is an identity map
- equivalence is an isomorphism
For example, 2 in Z and 2 in R do not have an identity map between them — but do have an isomorphism.
I think the key insight of univalence is not collapsing equivalence into equality — but allowing it to remain a second truth relation.
We don’t want 2 in Z to be equal to 2 in R (because we collapse type distinction), but we do want them to be equivalent — so we can do equivalent reasoning about arithmetic in R to reach conclusions about Z.
Yeah, but a similar thing works with programs (terms in normal forms in triage calculus). There is equality of terms and equivalence with respect to beta reduction.
(I used equal to mean the latter, this is colloquial, so I should watch my language.)
And what I am saying in my version of univalence is not that these two are the same, but rather, we can simulate beta-reduction equivalence using self-interpretation.
My version of the axiom states, that two terms x, y are beta-equivalent iff the term interpret(quote(x)) is beta-equivalent to term interpret(quote(y)).
(Note that quote() is identity function in triage calculus, I only write it for clarity.)
So my axiom postulates that the metalogical notion of equivalence is equivalent to the one we can study using whatever interpret() - a self-interpreter - is.
Whether my axiom is related to univalence in HoTT, I am not sure. But it feels similar.
> maybe even more so than Mac Lane’s Categories for the Working Mathematician (which I sometimes see suggested […])
FWIW, I am very against this recommendation. That book is needlessly opaque. I don’t know a good recommendation for category theory, but that isn’t it.
David Spivak (no relation to Calculus Spivak) wrote a book called _Category Theory for the Sciences_ that could totally serve as the basis for a one-semester undergrad course with some work.
He really likes working in informal categories (like his “ologs”) but I haven’t taught from it yet so I’m not sure if it is more or less confusing to introduce categories that way.
So... the ancient childish attempt to prove mathematics using mathematics (Gödel's Incompleteness slew the challenger) can be used to help me be a better TypeScript programmer? I learned something new today.
Yikes, guys/girls. I got downvoted to -4 points for a misunderstanding or something. Because the author of the website would probably agree with my simple point that although the Principia Mathematica tried to do the impossible, there is still utility for its value as a programming self-teaching resource for serious students of computer science.
Wow. Yeah. You guys ironically didn't just throw out the baby with the bath water thing. You burned me at the stake like a witch for heresy. Due to your cognitive biases and distortions.
You guys are Imperium of Mankind coded or something?
> You burned me at the stake like a witch for heresy.
I think you should try to get a better sense of proportion.
Also:
> my simple point that although the Principia Mathematica tried to do the impossible, there is still utility for its value as a programming self-teaching resource
I don't know what your original intention actually was, but your comment read to me very much as (1) implying that the OP was claiming that PM is useful for making people into better Typescript programmers (which OP very much does not claim) and (2) making fun of the OP for making such a claim while (3) calling the enterprise of which PM was a part "childish".
All of which seems to me like rather the sort of thing that does deserve downvoting to -4, though for what it's worth I didn't downvote you.
Two thoughts on someone who went out of their way to learn math:
1. If you can already program, the worst thing you can do is think of mathematics as learning a programming language. It is not, and you will waste your time being frustrated with things like syntax and notation. You get “used to” mathematics by doing it, and it’s something on its own. Just go with it. It’s ok to be confused.
2. Do the exercises, and stop asking for “solution manuals”, the point is to get you thinking and the struggle is most important part, not whether you got it “right”. Again, I think this is a programmer centric way of looking at things: “how do I know it’s
right if I can’t compile it”.
Maybe that’s why programmers like the foundations of mathematics. Like if somehow they could just go to the bottom of things, the assembler/machine code of sorts, the whole enterprise would make sense. Counterintuitively, the really great mathematicians of yore, did mathematics before it was anywhere close to formalized.
>Again, I think this is a programmer centric way of looking at things: “how do I know it’s right if I can’t compile it”.
I would argue this would only be true for those without formal education. Writing your code on paper is very common in CS courses. You get used to not being able to compile it.
I think your latter comment is kind of analogous to people writing python (or any high-level language) without understanding assembly. I think maybe that reduces the mystery a bit?
"Principia Mathematica is an odd book, worth looking into from a historical point of view as well as a mathematical one. It was written around 1910, and mathematical logic was still then in its infancy, fresh from the transformation worked on it by Peano and Frege. The notation is somewhat obscure, because mathematical notation has evolved substantially since then. And many of the simple techniques that we now take for granted are absent. Like a poorly-written computer program, a lot of Principia Mathematica's bulk is repeated code, separate sections that say essentially the same things, because the authors haven't yet learned the techniques that would allow the sections to be combined into one."
- Mark Dominus (https://blog.plover.com/math/PM.html)
Have someone refactored it into a more concise and modern version?
Possibly pertinent: Principia Mathematica Maps and Table Site (PM-MATS): https://principia.lib.uiowa.edu/about.html - more description in my top-level comment in this page.
It seems like a frontier model LLM could probably do it in day, probably less. Someone would have to read and correct it, though
This was my first thought when I saw the article.
For an accessible introduction before beginning this, consider his _Introduction to Mathematical Philosophy_:
https://en.wikipedia.org/wiki/Introduction_to_Mathematical_P...
and for ease of reading see the various PDF versions at:
https://people.umass.edu/klement/imp/
Of you prefer an even more entertaining approach and a very gentle introduction into the topic, I recommend the comic "Logicomix" which tells Russel's journey (though not historically correct all the time for story telling reasons).
https://en.wikipedia.org/wiki/Logicomix
Just got this from the library, it's a real page turner. Heard about it in this excellent interview: https://www.typetheoryforall.com/episodes/goedel-s-incomplet...
Logicomix is novel, and done well, but flawed … it's deficiencies lie in what it leaves out which may come across as an unfair charge but in this case the charge is warranted. There is a more historically correct and less orthodox work waiting in the wings for whosoever should attempt it.
It's also a bit weird how it makes ahistorical meetings for "drama" -- e.g. Russell and Frege never met in real life -- why show that they did (they do mention this never happened in their notes, but why write such a scene at all?)
new comics recommendation! thanks!
similarly the work itself is available here: https://people.umass.edu/klement/pom/
Principia Mathematica Maps and Table Site (PM-MATS):
https://principia.lib.uiowa.edu/about.html
"The goal of this project is to make clear structural connections between different parts of Principia and to make analyzable data about the theorems, definitions, and primitive postulates in its text. We do this by providing three digital tools ..."
For example here is their take on the celebrated proof in PM that 1 + 1 = 2
https://principia.lib.uiowa.edu/?n=110.643&n=110
You might be interested in Kurt Goedel’s extended book review wherein he proves that Principia cannot do what it sets out to do, nor can any such system.
I do teach PM when I teach theory of computation, but largely to tell the story of how we discovered the limits to computation.
The notation for avoiding parentheses is interesting, and I've thought that it might be useful in programming languages.
To illustrate, suppose you have a non-associative operator $. Rather than write a$(b$c), you can write a$.b$c - the . makes the $ before it be lower precedence on the right side. More dots make things be even lower precedence.
So, for example,
means At least, that's my recollection. It's been over fifty years since I read (significant parts of) it...In what way do you think this is useful over parentheses?
If you can read this book cover-to-cover, you're an absolute hero. Sometimes I wonder if they inserted a big logical error in the middle just to troll people under the assumption nobody would bother to read it.
You mean you don’t have a framed, signed, bug-bounty cheque from Alfred North Whitehead on your wall??
More seriously, there is indeed a huge logical error at the heart of the whole enterprise but it was not discovered until much later by Kurt Gödel.
This is commonly believed, but Gödel didn't identify a logical error at the heart of the whole enterprise, he proved astonishing theorems revealing limitations of any sufficiently powerful formal system. One can kind of think of the Principia as a science experiment to find the extent to which known mathematics could be proven from foundational axioms that could be thought of as "laws of logic". To make their system work, Russell and Whitehead themselves had to add extralogical axioms, such as their Axiom of Reducibility [0] and the Axiom of Infinity, giving empirical evidence (but not a proof) that "laws of logic" alone were not enough. They were also aware of limitations in their own system, such as the inability to define the cardinal $\aleph_\omega$ [1].
Like the article says, what they did was ahead-of-its-time, and a monumental influence on all subsequent work on formal systems, including Gödel's work, regardless of whether Russell and Whitehead achieved their initial aims.
[0] https://en.wikipedia.org/wiki/Axiom_of_reducibility [1] https://www.gutenberg.org/files/78255/78255-h/78255-h.htm#Pa...
Utter nonsense ... there is no known logical error in PM. Gödel proved that Russell and Whitehead's goal was unachievable but that's a totally different matter.
OTOH, Russell found a logical error at the heart of Frege's work, and PM fixed it by introducing the theory of types.
That's not how to spell Ludwig Wittgenstein!
Wittgenstein didn't find logical flaws in the Principia and deeply admired it. He found flaws in Russell's follow up work on Epistemology, "The Theory of Knowledge."
>there is indeed a huge logical error at the heart of the whole enterprise but it was not discovered until much later by Kurt Gödel.
Which leads us to our next borderline impenetrable book, Gödel, Escher, Bach by Douglas Hofstadter.
I read GEB cover to cover and haven’t stopped thinking about it for years. Not a brag, a nudge that it’s not impenetrable and more people should read it.
GEB is not a difficult read. It is delightful!
It is a popular science book which catches the vibe of mathematical logic in an excellent way. It is not a textbook, nor a piece of research. It's all vibes, but high-quality vibes. If you are in the right headspace it can be really inspiring!
I’m working on it every day during lunch break. Good old hardcopy.
I had my copy signed by Prof Hofstadter; a treasure to this day. Led to a maths degree, years of organ playing classes, a career in software, and a Zen practice going on 20 years. And I'm pescatarian. I even wrote a few haiku when my babies were little. Hmm, time for another listen to a Tocatta and Fugue.
I read it cover to cove back in the day and enjoyed it. But I'm not sure more people should read it today.
If they do and enjoy it, good for them! But many parts haven't aged all that well.
However, I can still very warmly recommend 'The Pleasures of Counting' to this very day.
What hasn't aged well? I don't think any of it is dated to any particular time period.
I read it on my honeymoon 25 years ago. That book sticks with you.
I thought the recommended honeymoon reading was Knuth’s _Surreal Numbers_
Are you still married?
finally we shall be able to answer the age old question - does Gödel, Escher, Bach: an Eternal Golden Braid stick with you better than a spouse!
Godel, Escher, Bachelor?
It's been years since I cracked open a copy, maybe I should give it another shot.
If you want to get to the meat of the issue, without the extraneous stuff, you might also tackle: Godel's Theorem Simplified.
https://www.amazon.com/Godels-Theorem-Simplified-Harry-Gensl...
The extraneous stuff is honestly fabulous, IMO of course. Just being able to listen to a four part fugue sensibly is a rare but accessible pleasure. And amusing dialogs as an instantiated dialectic for showing the truth synthesized from apparent opposites, is a great pedagogical learning.
GEB was one of the books that inspired me to study math in college. It made math come to life in way that my high school courses didn't.
I showed up to first day at university and an older student talked to me for like two minutes before declaring that I needed to read GEB. I dutifully went ahead and bought it, and I still work in logic today.
I'm surprised to hear that that was your perspective! I felt that it dealt with otherwise-opaque topics in a very approachable way.
To each their own, I read GEB several times and enjoyed the intellectual challenge and the humour.
Hofstadter wrote a followup book: I am a strange loop.
https://en.wikipedia.org/wiki/I_Am_a_Strange_Loop
He wrote a number of follow-up books. I love GEB, but the follow ups were often disappointing in surprising ways.
He has another book about the beauty and challenges of translating poetry, but it’s actually about the sudden death of his wife and it's been too sad for me to finish.
My brother's favorite book in 6th grade was Godel, Escher, Bach.
Why, yes, he works as a compiler engineer.
> Gödel, Escher, Bach by Douglas Hofstadter.
I gave that book to my mathematician grandma, and she found it so boring she couldn’t finish it - “All this stuff was known for decades”. True anecdote.
Well, it's a pop-sci tome, not a research article.
However, it is pretty dated these days.
How is it dated?
A large chunk of the book is philosophizing about AI and the nature of the mind and intelligence. And when it's betting on the AI that existed pre-AI winter... yeah, that part is quite dated.
You should see his book "Fluid Concepts and Creative Analogies, which is entirely about his experiments with AI in The Fluid Analogies Research Group with his grad students. Although I wonder if those techniques could be paired with LLMs somehow.
Eh, that's just a pop-science tome. Nothing impenetrable about it.
Interestingly, there was a Show HN last year formalizing PM in Lean (https://news.ycombinator.com/item?id=43797256), and the Principia Rewrite project (https://www.principiarewrite.com) verified all 189 propositional logic theorems (sections 1-5) in Coq against the original proof sketches
I believe the Principia Rewrite is at https://principia-rewrite.org/.
Yep, thanks!
I used to wonder how likely it was that the printers made some typesetting errors. Who among us could, say, type a thousand pages of APL symbols without introducing a bug?
There's a reason mathematics was known as "penalty copy" and was notoriously difficult to typeset and even more difficult to turn a profit on.
For a deep dive into both ends of that, see the history of publication of Knuth's TAoCP where the text was originally published traditionally by setting metal type on a composition machine (to the extent possible), then compositors would add the additional characters and spacing material necessary to compose the equations and so forth so as to lay out a galley (which would then be proofed/corrected) --- a successive edition was then typeset using an early imagesetter, which looked so ghastly that DEK considered giving up, but when informed that the imagesetter was controlled by a computer declared, "I am a computer scientist, I can fix that." and expected to knock out a typesetting system over his next sabbatical....
Roughly a decade later, TeX 1.0 was released.... the current version is 3.141592653 (with new versions adding another decimal place as the version tends towards \pi) --- while we're still waiting on the full publication of Vol. 4, it is widely considered that TeX was worth the delay.
> the current version is 3.141592653
Another instance of a "clever" joke that becomes annoying very fast.
Or delightful if you used to have pi digit contests in math camp as a middle schooler.
I suppose that to make it slightly less tedious we could just refer to the version using the number of significant digits: 10
Denote the version with a simple integer? Now that's thinking outside the box!
apocryphally a typesetter saw "make x as small as possible" at the end of a math problem to be typeset, and did exactly that
The version of this story I heard is in Littlewood's "A Mathematician's Miscellany"[1] and it's a sigma rather than an x. But he tells it as something that happened specifically to him -- he wrote a memo that ended with "thus sigma should be made as small as possible", and that bit was absent but there was in its place a very very tiny sigma. Unless he's outright lying, I think this one actually happened!
[1] The more recent edition is titled "Littlewood's Miscellany"; I am fairly sure this story is in both the older and the newer version.
“Find x” <— here it is!
It was required reading for my Logics class in undergrad. Pretty sure it was also on the optionals (aka required) for my Set Theory class as well.
It's also pretty typically a part of History Of Mathematics and Philosophy of Mathematics courses.
You might be thinking of Russell's Principles of Mathematics which is a bit easier going.
No it's not.
No it wasn't.
And you did not read it.
EDIT: source: took logic as undergrad + wrote on the tractatus which required a lot of pre-reqs to understand. 0 chance a course at undergrad level ever assigns principia mathematica. I don't care if you went to yale or oxford or ecole normale ... 0 chance. Most charitable interepretation: some pages of it + was on a bibliography. not required reading.
if feel embarrassed, that is the consequence for lieing. There is such a thing as intellectual honesty.
Well said.
Thanks for calling out these sort of posers and charlatans on HN. We should not tolerate these people if we are to discuss/argue/motivate interesting/hard subjects productively.
I automatically discount anybody on HN (until i have looked at their profile/comment history/any personal bio websites etc.) who claim they have read/studied a) Euclid's Elements b) Newton's Principia c) Maxwell's Treatise on Electricity and Magnetism d) Einstein's 1905 Annus Mirabilis papers. e) Principia Mathematica by Russell/WhiteHead f) Godel's Theorem g) Bourbaki's mathematics books etc. etc. They might have browsed it out of curiosity but that is not the same as reading/studying it.
Actual conceptual mathematics/science is intrinsically hard even ignoring the archaic language/notations.
As a good example; the Nobel-prize winning physicist S.Chandrasekhar wrote Newton's Principia for the Common Reader where he explains a subset of the principia (only dealing with gravitation) using modern notation and language. He himself found it quite hard and thus the "common reader" in the title is somebody who has had a good course in calculus and has the motivation to put forth the effort in understanding it.
Einstein's 1905 Annus Mirabilis papers seem like they easiest of the bunch to just read through. I just pulled up 'Über die von der molekularkinetischen Theorie der Wärme geforderte Bewegung von in ruhenden Flüssigkeiten suspendierten Teilchen', the one about Brownian motion, and read the whole thing. It's only 12 pages and fairly accessible; more prose than equations.
(Of course, if you don't read German, you should get yourself a translation.)
See https://myweb.rz.uni-augsburg.de/~eckern/adp/history/einstei...
I don't think I'm smart enough to casually read and understand original works on General relativity, but the Annus Mirabilis work seems much simpler. The famous E=MC2 paper is only three pages.
See https://myweb.rz.uni-augsburg.de/~eckern/adp/history/einstei...
About Gödel: if you are interested in the theorems, and not necessarily their original presentation, you can get plenty of rigorous modern treatments. It's very common for mathematicians to work out simpler proofs and more appealing presentations of famous results over time.
See https://dn721807.ca.archive.org/0/items/uber-formal-unentsch... if you want to give one of Gödel's work a go. It's only 26 pages. Footnote 48a is especially interesting. Overall the prose is crisp, but the notation is rather archaic to modern eyes.
I agree with your general sentiment, and your heuristic in general.
My point is that each of the material above (and i forgot to add the original Quantum Mechanics papers) were major watershed moments in science/mathematics and hence are not easy to read/understand. You need a good background in the subject matter(and mathematics) and/or somebody guiding you through them.
So what i do is try and find books which are written for the "educated common reader" by an expert who guides you through the original paper/book. It is still difficult to understand if you do not have the necessary background but at least you have a good starting point.
Some books in my collection;
1) Newton's Principia for the Common Reader by S.Chandrasekhar
2) Maxwell on the Electromagnetic Field: A Guided Study (Masterworks of Discovery) by Thomas Simpson
3) Einstein's Miraculous Year by John Stachel.
4) The Annotated Turing by Charles Petzold.
What we need is for a group of professors to get together and start writing a series on explaining the original papers to the "educated common reader" i.e. not too trivial nor too overwhelming. I think there is a huge market for this since it humanizes how science is done in real life which is fundamental for motivation.
The Annotated Turing is great. Thanks for mentioning the others, I'll check them out. I've read a little of Einstein's original work (in longish excerpts) and it was a nice enough read I'd welcome more of it, especially with expert guidance.
> My point is that each of the material above (and i forgot to add the original Quantum Mechanics papers) were major watershed moments in science/mathematics and hence are not easy to read/understand.
I must dissent. Einstein's Annus Mirabilis papers are really quite approachable. You don't need a book to guide you through.
Though if you are having fun with the book, more power to you! Enjoy!
We have to agree to disagree then. You definitely need a good background in Physics to understand them.
For a general reader, even though they might not get the whole thing they can still get an appreciation for the whole from the commentary/details added by the editor.
The book contains the English translations of the 5 papers with Einstein's original introduction and a short discussion on each, a informative introduction and a foreword by Roger Penrose.
> who claim they have read/studied a) Euclid's Elements
Of the lot, Elements feels misplaced.
Lots of people actually do read Elements as part of their course of study. It's niche but there's a whole cottage industry within academia for that sort of thing. There are probably over a dozen institutions that have either a degree program or a core curriculum that is organized around original texts, with Euclid usually serving as the math distribution of that sequence. So running into people who have read (big chunks of) Elements is not that uncommon. That's true even IRL outside of online discussions forums on thread topics that likely select for such people.
My impression is that this is not really true of the other examples. Except maybe Godel's proofs; I do think a sufficiently motivated instructor could pull a decent chunk of college students through the original text in a semester. Probably better ways to spend everyone's time, though.
Seconding that that one stood out to me. Actually studying at-least large portions of it is typical at a handful of liberal arts colleges that favor the "great books" approach, at least a couple of which have pretty good reputations and are likely to have turned out some folks who work in tech (maybe the programmer next to you... maybe your manager's manager), plus it's pushed in great books home learning programs that surely at least a fair number of people have credibly attempted, even if the overwhelming majority of those who start such programs don't complete them (and it's usually very early in those programs, so even those who gave it a real shot but abandoned it before getting far were likely exposed to quite a bit of Euclid, though maybe they dropped off before On Conic Sections or other texts common in those reading sequences).
... plus it's relatively approachable as such things go, and short enough that closely reading most or all of it isn't a crazy idea, and it was recently-enough widely used as an actual textbook that between that and ongoing modern interest in its use in that capacity, there are tons of study-oriented editions of it floating around and still being published. I mean hell "recreational mathematics" is a thing and lightly-annotated-and-updated Euclid's a pretty solid text for people with that kind of interest to noodle on, with bonus historical appeal since it's super-old and also is assumed background for all educated people into at least the early 20th century, so pops up all the time in historical writing and literature.
Now, Newton? That's more like it. Nobody reads a large amount of his mathematics unless they're some variety of mathematical historian.
As an Oxford undergrad I read a lot of Bourbaki on topology, to supplement the lectures; they were recommended by the lecturer. I loved their style of writing and the cleanliness of the approach. I have not been assigned Gödel's paper but have read them in classes where the proof was demonstrated. Maths is hard tho, I agree on that, and maths reading very hard, and reading these books outside of class where you are forced to keep going till you understanding is only rarely worth it outside of professional life.
I've certainly read and studied material explaining f), but I haven't read the original paper (besides, isn't that in German?). The proofs aren't that hard, as I remember them, maybe they're harder in original form? To be clear: I specialized in logic, formal verification and programming language theory at uni. This was a while ago, and I'm on new parent amounts of sleep, so pls b nice.
I have tried to read some articles and watch some videos "explaining" Godel but never really understood it. Everyone seems to be explaining the mechanics of what Godel did but explaining the Why is lacking i.e. What was it in mathematics that got him even thinking on these lines in the first place? Can this problem be demonstrated with a simple toy axiomatic formal system? How did he hit upon his approach? Answers to these sort of questions is what seems to me the most important thing to understand before following his arguments.
I recently came to know of The Annotated Godel: A Reader's Guide to his Classic Paper on Logic and Incompleteness by Hal Prince which i think i need to sit with :-)
I think that Gödel did all of this stuff because of David Hilbert basically posing the challenge to make maths' foundations consistent and complete.
https://en.wikipedia.org/wiki/Hilbert's_program
And the reason for Hilbert's program? The problem of "Russel's Paradox" which is a contradiction in naive set theory - https://en.wikipedia.org/wiki/Russell%27s_paradox (Note that there were other paradoxes too).
Hilbert's idea was that by completely formalizing mathematics on a axiomatic/deductive basis, one can mechanically derive proofs so that you don't run into paradoxes/contradictions.
But then Godel showed such a formal system applied to basic mathematics can never be complete (if consistent) and never prove its own consistency.
To me the mechanics and the why are closely intertwined. If you feel like self-referentiality is a way to demonstrate a problem (this is the “why”), it is not a long step to the mechanics of encoding.
The work is in creating the theorem / contradiction from that point, but in the big picture, the approach doesn’t have to come from nowhere.
I don't know the exact curriculum and I'm sure it's changed over the years, but one of my girlfriends from back in the day really did go to a school that had one like this. St. John's College, which has two campuses in Annapolis, MA and Santa Fe, NM. They had no majors and everyone learns by reading the classics directly. They also have to learn classical Latin and Greek and read many in their original languages. I don't know everything they assigned, but I remember at least they actually did learn geometry by reading Euclid and calculus by reading Newton.
Apparently, the history is that the school lost its accreditation and had to shut down during the Great Depression, so to attract investors and reopen, it adopted an extremely unique identity with no watering down of curriculum and commitment to western classics in an attempt to combat the rise of fascism.
They may have learned mechanics by studying Newton but they can’t have learned calculus. Principia includes geometric series and limits etc but given as geometric arguments so you don’t come out of newton’s principia knowing how to do calculus. If they learned the method of fluxions from Newton (which is equivalent to calculus) then I feel very sorry for them missing out on the far better modern presentation of Leibnitz’s calculus that they would get in studying say Spivak or Stewart or any other modern textbook. For the same reason everyone teaches Taylor series (which are fantastically useful) rather than Newton’s wildly inferior series derivation which he used because Taylor series hadn’t been (re)discovered yet.[1]
Euclid isn’t surprising. School children used to learn plane geometry from Euclid until the 1950s or so. I learned geometry at school using a syllabus from Euclid and we learned the modern form of Euclid’s postulates etc but we didn’t study Euclid itself.
[1] Taylor series were developed in the modern form by James Gregory who was trying to reverse engineer how Newton had come up with his series expansions. I say rediscovered above because they were first written down by Madhava of Sangamagrama who gave Taylor series expansions for the trigonometric functions and natural logarithms/exponential function in the 14th century.
I heard about St. John's from a twitter thread and find it deeply baffling.
It's as if a group of monks wanted to keep the quadrivium and trivium but their clock stopped at the 16th century. One of their faculty proudly said they study analysis by reading Descartes! Which I thought was a highbrow joke but nope, dead serious.
There's a reason that 'standing on the shoulders of giants' is a thing. Dive into the classics after you have gained the maturity from modern texts.
Take one of the easier problems from Rudin. Prove that a continuous function from the unit interval [0,1] to itself has a fixed point. I wonder how a student immersed in the 'classics' would even begin to tackle this.
It's not a Mathematics degree. It's not even a Philosophy of Mathematics degree. It's a particular type of Philosophy degree.
So, to be fair: most philosophy majors wouldn't have much luck with Rudin.
> Dive into the classics after you have gained the maturity from modern texts.
Diving into old texts is a skill unto itself. That's why a lot of institutions do the great books thing as a core curriculum (so, maybe 2-3 courses taught in this style, as an alternative to more conventional phil 101/history 101 style distribution requirements). Then a more conventional education from there onward. The theory is that this is a mid-point precisely because it provides lots of transferable skills for diving into the classics in your chosen field, while avoiding the "let's learn analysis from descarte" excesses.
I think their deal is taking seriously the "college is about learning how to learn" thing, and direct engagement with the output of people regarded as greats in their fields on the assumption that, when possible, that's a good idea for obvious reasons (whether that's true or not in some rigorously-provable way, I can't say, but the reasons one might suspect that it is seem clear enough)
Some report it's pretty damn effective at that and leads to an impressive breadth of intellectual confidence in tackling material of almost any sort, but IDK. Anecdotes.
IIRC (it's been a while since I looked into their programs) they do a lot of supplemental reading of newer papers, articles, and book excerpts, and tend to used updated notation when it makes sense. Plus all their classes are heavily discussion-oriented so the reading is potentially enhanced and brought "forward" by whatever their instructors and peers bring to class in their heads.
> Take one of the easier problems from Rudin. Prove that a continuous function from the unit interval [0,1] to itself has a fixed point. I wonder how a student immersed in the 'classics' would even begin to tackle this.
I don't think they tend to train mathematicians, and I think for most students (graduating from any college or university) they never, ever, ever touch the specifics of their more-advanced e.g. math classes (I think this is true even for most programmers or engineers or what have you) any time in the entire rest of their lives, to the point that entirely forgetting most of that stuff by a decade or so later and suffering for that not at all is utterly typical. How much does it matter for students who aren't going into extremely narrow vocations that they come out of them unable to perform this specific task, without first needing to study further?
The usual defense of this fact is "well it's about learning how to learn, expecting the actual content to ever matter for any but a teensy tiny proportion of the students is unreasonable" in which case... see the rest of the post.
When I was a pretentious high schooler with fantasies of being an intellectual, I considered going there. I ended up not even applying. It just seemed too far out of the norm.
Honestly, other than the length and tedious presentation, I don't really think the material in the Principia Mathematica is outside the reach of an advanced undergraduate. As a point of reference, MIT's capstone mathematical logic course[1] has a syllabus that requires at least as much mathematical maturity, and it wouldn't really surprise me that much to see it as an ancillary or excerpted text.
That said, even if the OP was assigned the text at some point as an undergraduate, I remain a bit doubtful it was actually read.
[1] https://cfreer.org/18.515/
> As a point of reference, MIT's capstone mathematical logic course[1] has a syllabus that requires at least as much mathematical maturity,
The textbooks they use in that course are written in modern notation and are accessible to a knowledgeable reader; neither can be said of the Principia Mathematica. The archaic syntax is a serious issue.
I did give it a try many years ago, I think as undergrad, but gave up after a few pages, because for me it was nearly impossible to parse the syntax.
I'm with you - I hate when people exaggerate their bonafides beyond all belief
LLMs giving some people way too much confidence to conceptually shoot from the hip hehe
- “effort to refute bullshit is order of magnitude more than to refute it”.
Derrida, go back to your grave, you messed up the quote!
Ha! Thanks. True! I'll leave it
(p.s. this whole comment section is wild - the green & getting downvoted accounts? They said the most credible things of anyone )
link the syllabi for the classes
What if they link the axioms for the classes and leave it as an exercise to the reader to derive the syllabi?
This book is an interesting approach to The Principia:
Magnificent Principia (2013), by Colin Pask
https://devontrevarrowflaherty.com/2014/08/26/book-review-pr...
The article is about Russell and Whitehead’s Principia, not Newton’s.
Oops wrong principia :-)
For those who aren't familiar with the great but tragic story of Principia and Russell's quest for the foundation of math (spoiler: there is none), there's a really great graphic novel called Logicomix https://en.wikipedia.org/wiki/Logicomix I haven't read it in probably ten years, but it's one of those books and stories I spend an inordinate amount of time thinking about, for whatever reason.
The foundation of math is (mostly) ZFC.
It is not. The foundation of math is contested -- but afaik it is widely held that HoTT is the, erm, hottest contender to the throne https://en.wikipedia.org/wiki/Homotopy_type_theory
There is not a single foundation - you can choose. The differences are rarely important for working mathematicians though. Most know enough of ZFC to get by and ignore foundations tbh
Most foundations are in a sense equivalent. In that sense, "ZFC" is as good a choice as any. I think there might be some confusion around the different meanings of the word "foundation": A foundation is a formal system that suffices, somehow, to encode virtually all of known mathematics. The reason why people (including me!) are interested in other "foundations" like HoTT is because they try to build the same mathematics as ZFC from a different set of building blocks, despite them eventually arriving in the same place. In the case of HoTT, it reduces mathematics to homotopies and fibrations, while also making those weighty-sounding concepts seem easy. If you're interested in homotopies, fibrations, cohomology theories etc. then HoTT is a really helpful way to better understand those concepts.
> Most foundations are in a sense equivalent. Therefore, "ZFC" is as good of an answer as any.
This doesn't follow. The sense in which they are equivalent is that they are equifinal, which doesn't mean isomorphism or even homomorphism. It's a meaningful thing in theory, but not in reality. Otherwise, Turing tarpits wouldn't be a thing.
Every foundation occupies a unique region of proof space. Your foundation, and everything that goes into it, doesn't just affect the shape of what's accessible to you in native semantics, it also effects the way you move through this space. This means by changing foundation, not only can we prove things that we otherwise couldn't in theory (in native semantics), it also means we can prove things we otherwise couldn't in practice (what embedding other foundations as object languages doesn't get you). You can recognize a little bit of this in that it makes some things seem easy, but that's an extremely trivial case of what this relationship implies.
It's all just tools in a toolbelt. Treating them like immutable, universal truths is worth tolerating merely out of human limitation, because it's a lot of work to build intuition for a foundation. If we're talking about philosophy of mathematics though? No, it would be a mistake to pretend like choice isn't meaningful. It is extremely meaningful, and there's a lot to be gained out of realizing they're actually just highly specialized tools. Something to grab when it's useful, and throw away when it's not.
> This doesn't follow. The sense in which they are equivalent is that they are equifinal, which doesn't mean isomorphism or even homomorphism
That's what I meant. I also tried to provide one justification (out of many) for why looking at other foundations is still useful.
Fair enough. I just wanted to elaborate, because usually that specific phrasing justifies the opposite. I did mention you partially acknowledged the meaningfulness, but I felt like the point needed to be made stronger. The politics around foundations obfuscates a lot of their utility. I'm sure you're aware the tendency for randoms in a mathematics department to roll their eyes when you pay lip service to other foundations. Usually, it's not even about a sense of pragmatics, but irrational identity-protectionism and ZFC dogmatism. Things like HoTT, or any branch of TT, are percieved as "cute, but not something with any real usecase. Not like my perfect ZFC!"
it seems that someone wants to traduce the PM in lean here : https://github.com/l-pommeret/Principia-Mathematica (probably with the use of llms)
"traduce" doesn't have the same meaning in English as it does in Spanish. The translation of "traducir" is "to translate".
It blows my mind that Russell invented (formalized) types. Such an elemental concept, but so useful.
Russell’s types aren’t really the same notion as types in programming: https://planetmath.org/russellstheoryoftypes
I miss modernism!
An interesting fact I learned while reading The Dream Machine[1], is that Principia was the basis of Newell, Simon and Shaw’s Logic Theorist (1956), considered to be the “first AI program”. Amusing and amazing to see this in the context of today’s Erdos-slaying LLMs.
Quoting from Wikipedia:
https://en.wikipedia.org/wiki/Logic_Theorist
Logic Theorist is a computer program completed in 1956 by Allen Newell, Herbert A. Simon, and Cliff Shaw.[1] It was the first program deliberately engineered to perform automated reasoning, and has been described as "the first artificial intelligence program".[1][a] Logic Theorist proved 38 of the first 52 theorems in chapter two of Whitehead and Bertrand Russell's Principia Mathematica, and found a new and shorter proof for Theorem 2.85.[3]
[1] https://press.stripe.com/the-dream-machine
I have a copy and like it much. However, i was always partial to Frege's Begriffschrift. His notation was really creative. It's a shame Russel's deflation of that project has sentenced it to the rubbish heap of history.
The Begriffschrift has in no way been consigned to the rubbish heap of history. What gave you that impression? It is seminal. That it had one unresolved paradox in its set-theoretic foundations does not scupper the philosophical insights, nor the creative notation, nor the more-or-less novel approach of conjoining mathematical functions and logic to give us predicate logic (apologies for this brutally simplified sketch)
i like to think of Frege and the Begriffschrift like this
Boole: logic + algebra = algebraic logic
Frege: logic + functions = predicate logic
ergo, if Boole is rightly deified then so should Frege regardless of minor infelicities (which prompted type theory anyhow) -- again, apologies if this is totally misleading
Tangential but for those who don't know it, Whitehead's Science and the Modern World (1925) is a fascinating read.
Instead of spending time beating one’s head against Russell and Whitehead, I would advise reading Homotopy Type Theory (aka the HoTT Book). Dependent types are cool and mind-expanding, but higher inductive types are downright mind-altering.
The Little Schemer/Typer could be used as a preparatory text to gear one up for HoTT.
It also has the advantage of being a bit more applicable to functional programming languages, maybe even more so than Mac Lane’s Categories for the Working Mathematician (which I sometimes see suggested to mathematically-inclined Haskell novices).
I tried to read HoTT. First chapter on type theory is great and pretty easy to follow. The second chapter, I got completely lost. I don't remember why, maybe they fixed it since.
But I find univalence axiom intriguing. I am interested in different approach to types, using triage calculus, which is more "materialist" than "structuralist" - type is given by the structure of the (quoted) term in normal form (unlike lambda calculus, triage calculus makes quoting easy). And I feel like univalence is related to quoting, something like if the two quoted terms are equal under "standard self-interpreter", then they are equal.
I would highly recommend "PROGRAM = PROOF" by Samuel Mimram.
It covers everything from pure lambda calculus through dependent type theory up to homotopy type theory. In comparison to the HoTT book, the book "PROGRAM = PROOF" is oriented less towards mathematicians more towards programmers. It contains also a short introduction to OCaml and Agda.
The book can downloaded from the authors web page:
https://www.lix.polytechnique.fr/Labo/Samuel.Mimram/teaching...
https://www.lix.polytechnique.fr/Labo/Samuel.Mimram/publicat...
This is probably a reasonable example of a case where an AI can really help out as an endlessly patient assistant to answer your personal questions in a conversational format.
It is possible it may get something wrong but as long as you keep beating on the wrongness you should eventually be able to work out what it is, and in its own way that would become possibly the best learning exercise there is. And of course, with the math proofs coming through from AIs lately, I wouldn't guarantee you'll see that much wrong stuff. I expect it would be at a low enough rate to keep you learning... after all, anyone who has had serious math education knows the human teachers aren't always completely correct either and there is the occasional impromptu exercise of everyone staring at the board and trying to figure out what went wrong with the demonstration.
Yes, maybe.. I read it like a decade ago though, the AI didn't exist then. Although my current interest in triage and lambda calculus is also fueled by AI.
> I am interested in different approach to types, using triage calculus, which is more "materialist" than "structuralist" - type is given by the structure of the (quoted) term in normal form (unlike lambda calculus, triage calculus makes quoting easy).
Interesting, dropping this link here for others: https://treecalcul.us/
Yes. In type theory, the term carrying a type is a metalogical notion. In triage calculus, you can define a typechecking program that operates on a quoted term and normalizes only if the term typechecks.
This means in triage calculus (unlike in lambda calculus, which lacks means to quote programs) you can include expected input data types in your programs.
You can also construct any type theory syntactically by putting together a set of terms in triage calculus which only normalize when composed with correct types.
In triage calculus, you can then study types and propositions as any other programs - using self-interpretation. But I believe, as I detail below, a univalence principle is needed, to postulate the equivalence of metalogical triage calculus and its representation within triage calculus.
HoTT distinguishes equality from equivalence.
Univalence says that equality is equivalent to equivalence, ie, formalizing the notion of when we can use equivalence rather than equality as a step in a proof. In practice, we often only care about proofs “up to equivalence”.
A way to think about this:
- equality is an identity map
- equivalence is an isomorphism
For example, 2 in Z and 2 in R do not have an identity map between them — but do have an isomorphism.
I think the key insight of univalence is not collapsing equivalence into equality — but allowing it to remain a second truth relation.
We don’t want 2 in Z to be equal to 2 in R (because we collapse type distinction), but we do want them to be equivalent — so we can do equivalent reasoning about arithmetic in R to reach conclusions about Z.
Yeah, but a similar thing works with programs (terms in normal forms in triage calculus). There is equality of terms and equivalence with respect to beta reduction.
(I used equal to mean the latter, this is colloquial, so I should watch my language.)
And what I am saying in my version of univalence is not that these two are the same, but rather, we can simulate beta-reduction equivalence using self-interpretation.
My version of the axiom states, that two terms x, y are beta-equivalent iff the term interpret(quote(x)) is beta-equivalent to term interpret(quote(y)).
(Note that quote() is identity function in triage calculus, I only write it for clarity.)
So my axiom postulates that the metalogical notion of equivalence is equivalent to the one we can study using whatever interpret() - a self-interpreter - is.
Whether my axiom is related to univalence in HoTT, I am not sure. But it feels similar.
> maybe even more so than Mac Lane’s Categories for the Working Mathematician (which I sometimes see suggested […])
FWIW, I am very against this recommendation. That book is needlessly opaque. I don’t know a good recommendation for category theory, but that isn’t it.
David Spivak (no relation to Calculus Spivak) wrote a book called _Category Theory for the Sciences_ that could totally serve as the basis for a one-semester undergrad course with some work.
He really likes working in informal categories (like his “ologs”) but I haven’t taught from it yet so I’m not sure if it is more or less confusing to introduce categories that way.
So... the ancient childish attempt to prove mathematics using mathematics (Gödel's Incompleteness slew the challenger) can be used to help me be a better TypeScript programmer? I learned something new today.
Why the belittling language? You actually can prove the completeness and consistency of portions of mathematics.
While axioms were known in ancient times, only Hilbert started the whole "prove Mathematics" thing.
How else would you prove mathematics and why would that be childish to use math? The limitations discovered were quite surprising back then.
Yikes, guys/girls. I got downvoted to -4 points for a misunderstanding or something. Because the author of the website would probably agree with my simple point that although the Principia Mathematica tried to do the impossible, there is still utility for its value as a programming self-teaching resource for serious students of computer science.
Wow. Yeah. You guys ironically didn't just throw out the baby with the bath water thing. You burned me at the stake like a witch for heresy. Due to your cognitive biases and distortions.
You guys are Imperium of Mankind coded or something?
> I got downvoted to -4 points
> You burned me at the stake like a witch for heresy.
I think you should try to get a better sense of proportion.
Also:
> my simple point that although the Principia Mathematica tried to do the impossible, there is still utility for its value as a programming self-teaching resource
I don't know what your original intention actually was, but your comment read to me very much as (1) implying that the OP was claiming that PM is useful for making people into better Typescript programmers (which OP very much does not claim) and (2) making fun of the OP for making such a claim while (3) calling the enterprise of which PM was a part "childish".
All of which seems to me like rather the sort of thing that does deserve downvoting to -4, though for what it's worth I didn't downvote you.
Sometimes it's worth revisiting the site guidelines on comments https://news.ycombinator.com/newsguidelines.html#comments
I'm guessing people downvoted you for snark.
It always amazes me how a random dump of someone who read the first 40 pages of PM attracts dozens comments on HN.
This really must be a very math-starved community of people who wanted to learn math but never quite could.
Two thoughts on someone who went out of their way to learn math:
1. If you can already program, the worst thing you can do is think of mathematics as learning a programming language. It is not, and you will waste your time being frustrated with things like syntax and notation. You get “used to” mathematics by doing it, and it’s something on its own. Just go with it. It’s ok to be confused.
2. Do the exercises, and stop asking for “solution manuals”, the point is to get you thinking and the struggle is most important part, not whether you got it “right”. Again, I think this is a programmer centric way of looking at things: “how do I know it’s right if I can’t compile it”.
Maybe that’s why programmers like the foundations of mathematics. Like if somehow they could just go to the bottom of things, the assembler/machine code of sorts, the whole enterprise would make sense. Counterintuitively, the really great mathematicians of yore, did mathematics before it was anywhere close to formalized.
>Again, I think this is a programmer centric way of looking at things: “how do I know it’s right if I can’t compile it”.
I would argue this would only be true for those without formal education. Writing your code on paper is very common in CS courses. You get used to not being able to compile it.
I think your latter comment is kind of analogous to people writing python (or any high-level language) without understanding assembly. I think maybe that reduces the mystery a bit?
The antidote for that of course is for folks to read Charles Petzold's _Code_:
https://www.goodreads.com/book/show/44882.Code
I'm guessing that that's a lot of people you have in mind.