Formal Abstracts – express mathematical publications in a computer-readable form
formalabstracts.github.io
formalabstracts.github.io
And I wonder about whether certain mathematical truths will be inherently difficult to locate because they are far away from the space of other existing problems, and thus subject to problems of a search algorithm getting stuck in a local maximum.
In any case, an accelerated search through this space sounds really promising and exciting!
I’m not a mathematician, but aren’t some fundamental terms in mathematics NOT clearly defined? For example a set?
With set theory, it looks like there was some reformulating of the fundamental terms to prevent paradox, but I'm not quite clear on whether that leaves us with a consistent formal system in the end: https://en.wikipedia.org/wiki/Zermelo%E2%80%93Fraenkel_set_t...
Note that even were ZFC be proven to be inconsistent it would probably not be a huge issue practically speaking for most mathematicians. This Math Overflow answer describes it best: https://mathoverflow.net/a/41030
Sets, functions, and integers all have precise definitions. They are respectively provided by ZFC set theory, ZFC set theory again, and the Peano axioms (with your chosen method of extending the natural numbers to the integers, the easiest being an algebraic extension, or you could use equivalence classes of pairs).
Here's one of the basics of FOL.
Formula = PrimitiveFormula | Formula Connective Formula | not Formula | Quantifier Variable Formula
VariableList = Variable | Variable,VariableList
PrimitiveFormula = Predicate(VariableList)
Term = Constant | Variable
Connective = implies | and | or
Quantifier = forall | exists
Constant = c | c Constant
Variable = v | v Constant
Predicate = p | p Predicate
It's adapted and formalized from https://web.engr.oregonstate.edu/~afern/classes/cs532/notes/.... Note I've left out function symbols so as to minimize confusion. Function symbols are not functions themselves, but they can be represented by predicates with an additional argument so I've left them out for clarity.
It's kind of restricted in that variables are now called v, vv, vvv, etc., predicates are called p, pp, ppp, etc., but that seems minor and I was being lazy.
I think your objection is to the fact that most treatments of first order logic informally talk about a "set of variables indexed by the natural numbers" or something of that sort, but that's informal, and it's understood that really what's going on is an algorithm "under the hood." Crucially I'm using recursion here, but a recursive definition has no need to appeal to sets, functions, or integers. In fact since we're on HN it's worth pointing out all that recursion is is a while loop, and I could've done that instead. In that case though I wouldn't have provided a BNF and I instead would need to provide a full program (which is definitely possible, this is what tools like bison do for you automatically).
If what you're concerned about is the "interpret" part (i.e. the model part of model theory), that's a far deeper philosophical question that touches on whether it's possible to define anything at all.
Modern mathematics can be thought of as simply a syntactic game. That's why it can be formalized by computers. Philosophically this may be troubling because it doesn't explain why certain results are interesting or why an application of math to real-world objects "works," but like I said, that's starting to touch on the broader issue of whether it's possible to define anything at all and what exactly language is and that's a deep deep deep philosophical hole that affects the entirety of human language. This is where you have to start closely scrutinizing what the word "is" really, well, is.
Perhaps it's first useful to sort out an example of a definition of anything that you find is watertight, compare and contrast, and discuss from there?
Precisely my point.
> an example of a definition of anything that you find is watertight
There is no such definition. The existence of anumeric languages suggests that my worrying about this is important for pedagogy, not just philosophy.
From my experience, if you want to have students understand the meat of an "intro to proofs" or first real analysis course, then you have to avoid the discussion of what "is" really is. Undergraduates love that crap as it's a distraction from fighting with the new symbols they're attempting to learn. But at the end of the day (or ideally, in the first few lectures), the student must realize three things: there's always a next integer, a set is a bag of distinct objects and a function assigns each object in one bag to an object in another (or possibly the same) bag.
Many students are never explicitly told that there a few fundamental, undefinable building blocks of mathematics - the most important being set, function and natural number. And like the person who never learned numeric words, their understanding is hindered.
My list of fundamental, undefinable building blocks are existence, reference, equality, and memory (the capability to store multiple statements at once), which holds for all definitions ever, not just mathematical ones (this is what I meant by a definition of anything, I meant really a definition of literally anything, mathematical or not). It's important to note that reference is not a relabeling of function, nor is memory a relabeling of natural number and set. It's a bit hard to describe why this is true in English because this is touching on such meta-linguistic foundational issues, but the best example I can give is any formal theorem prover. Those define sets, functions, and natural numbers using existence, reference, (implicit) equality, and memory instead of the other way around. Another example of this is that reference can be used to define both functions and relations. As for memory, although you could use sets to model memory, it's important to note that the notion of memory is an artifact independent of sets, in the same way that ZFC can be modeled by an outer series of sets in an "external" ZFC, but exists independently and could be modeled by something else (see model-theoretic reflection).
Taking a page from Wittgenstein and moving away from the ineffable, let's turn our attention to pedagogy. Pedagogically it makes it impossible to explain why first order logic is the logic used for set theory, especially in the face of various model-theoretic problems with first order logic (e.g. Lowenheim-Skolem), instead of second order logic. Namely first-order logic, as I was hoping to show with the BNF syntax, is NOT dependent on a understanding of sets, but second order logic is (which would make using it to define set theory circular). It makes it hard to teach the significance of the Peano axioms. It makes the presentation of logical relations (and functions as a special case thereof) problematic. It makes it difficult to see why basing mathematics on set theory is NOT a trivial, obvious choice and why alternatives might exist.
If you're talking about the Piraha language (and other languages like it), now you're talking about very very philosophical issues that also really sit at the cross-section of all epistemology and language, not just mathematics.
There are philosophical questions around what it means to "define" something. But if you want to go there, well then nothing is clearly defined.
For example, if mathematicians say (https://www.britannica.com/science/Peano-axioms):
“Zero is a natural number.”
they don’t say what is a means. Even before that, the statement there’s a concept called ‘natural number’” builds on shared understanding of what there’s* and concept mean.Mathematicians have worked hard on minimizing the amount of common understanding needed, though.
Certainly, the fairly complex concept “set” gets a clear, unambiguous definition.