I will give an eminently practical answer to the philosophical discussion.
It’s too hard to get anywhere close to the mathematical truth, so people have given up on mathematical truth for good reasons, IMO.
I will also say that this is why I wish computability theory had finer distinctions beyond decidable/undecidable, and have more of a complexity theoretic flavor in distinguishing between the hardness of problems, where you cand was more explicit about the fact that many of the impossibility results are relative to a certain set of capabilities, because in a different world, I could see computability theory having much more relevance to this debate.
In essence, I’m arguing for pinning down exactly how hard a problem actually is, closer to the style of how complexity theorists not only care whether a problem is hard, but also how hard the problem exactly is.
I’ll give an example, just to show everyone my position on the matter.
If you could decide the totality problem, you could also decide whether P equaled NP or not, which requires much weaker oracles.
Some examples of such computational models include Turing Machines with the ability to have an infinity of states, Blum Shub Smale machines with arbitrary real constants, and probabilistic Turing Machines with non-recursive biases for the coin.
See these links for more (You can ignore all details about physical plausibility, since it’s not necessary for the complexity and computability results above:)
So I’m pretty firmly on the side of mathematical truth, but with an enormous caveat here, in that what independence proofs show us is that we need new computational capabilities, not new axioms, and thus we can either accept that it’s too hard to get at the truth and move on, or if someone does have a plan to get the computational capacity needed that is actually viable, then we can talk and have more productive discussions on whether the discovery is real and how to exploit it, if applicable.
So the most useful way to say things is that whenever an independence result is published, we should immediately try to figure out how complicated it is to determine the statement is true according to our standard computability hierarchies, and ideally have completeness results along the lines of NP-complete or RE-complete problems, and then give up on proving or disproving it, unless someone proposes a plausible method for getting that computational power.
Edit: I’ve edited out the continuum hypothesis example, since I had misinterpreted what exactly it was saying, and it’s saying that it’s a universal 2 1 conservative extension, not that it actually has that complexity.
Intuitively, the computational models you were suggesting seem like they would only decide statements that are at most second-order; they can really answer third-order arithmetical questions?
The computational models are far, far more powerful than only answering second-order questions.
The infinite state Turing Machine explicitly computes every function from the natural numbers to the natural numbers, which means they can compute any arithmetical question, no matter how large the n-th order arithmetic question gets.
This as a corollary means they can decide any language that is normally defined in complexity theory, and solve a uncountably infinite set of problems.
The same holds for the Blum Shub Smale machine, assuming arbitrary real constants are allowed.
Finally, the probabilistic Turing Machine having a non-recursive bias acting as a universal oracle machine can code any oracle set X as a probability Px such that if it’s given that probability, it can compute any function recursive to the oracle set chosen, and given that the continuum hypothesis is a universal 2 1 statement, we can certainly give a probabilistic Turing Machine a non-recursive probability that corresponds to the oracle for the continuum hypothesis.
And at any rate, the probability could be coded as an oracle set for the truth of third-order arithmetic sentences, which is strictly stronger than an oracle for the continuum hypothesis, so this doesn’t truly matter.
I’m going to stick with BSS because the wikipedia page for that is pretty short and easy to understand. It seems pretty straightforward to construct injections:
configuration space →R
set of possible instruction sets →R
So asking something like “does there exist an n such that this machine with this instruction set hits this configuration in n steps” strikes me as a second order arithmetical question. I’m handwaving here, possibly in a really bad way that’s getting me into trouble, but that’s what’s throwing me off.
What’s throwing you off, I think is that classically defined second order arithmetic questions are computable if we allow any function from N to N, and the set R of real numbers can from a cardinality viewpoint be shown to be equivalent to the power set of the natural numbers, which includes all functions from the natural numbers to the natural numbers.
Given that the Blum Shub Smale machine can compute every function from N to N, this also implies it must compute second-order arithmetical questions as classically defined.
To clarify: I agree that BSS machines can answer second order questions (maybe not the full analytic hierarchy; that’s something I’ll think more about). My confusion is about this:
The infinite state Turing Machine explicitly computes every function from the natural numbers to the natural numbers, which means they can compute any arithmetical question, no matter how large the n-th order arithmetic question gets.
where you said that it all nth-order arithmetic questions can be decided by some such machine. My above comment was why I believed that the questions that are being answered strike me as second order.
Edit for clarifying the relevance here: it strikes me as plausible that questions about BSS machines halting/not halting have inherent truth; if this would imply that third-order arithmetical questions like CH have inherent truth, I would be surprised and update my view about mathematical truth.
The reasoning is pretty similar to the second order case, and the reason here is that no matter how many orders we add to arithmetic like first-order, second-order, nth order, formal languages and theories are always constrained by the usual definition to countably infinite sets of statements and languages, and the ability to compute any function from N to N means that you have an uncountably infinite set of functions to compute, which is always larger than any individual formal languages and theories in the usual definition.
Now that the original comment has changed, I’m more unsure about what you exactly you mean. Can you be more precise about what you mean by being able to compute arbitrary nth-order arithmetical statements? Is there a BSS machine that halts if and only if CH is true? Is there a BSS machine that halts if and only if there’s a choice function on the set of non-empty subsets of R?
I admit, I haven’t found any such explicit examples yet.
I wish this was more of a common practice to give explicit examples of these mathematical statements in more computational terms.
For the Nth order arithmetical statement issue, what I’m talking about is essentially a generalization of the arithmetical hierarchy, where there’s 0 1, 0 2, 0 3 and so on defined here, until it stops at 0^w, which then continues on the analytical hierarchy from 1 1, 1 2, 1 3, until it too stops at 1^w, which can go on essentially forever.
Essentially, I’m talking about this in a generalized form:
The formal reason why a BSS machine can compute all of this comes down, in the end to the fact that it can compute every function from the natural numbers to the natural numbers, which as a set is always larger than any arithmetical hierarchy, which means that the claim that we can always compute nth order arithmetic for any N follows easily.
So I didn’t mean to clarify what you meant by nth-order statements, but rather that BSS statements can decide them, because that seems way too strong to be true. I’m also a bit more skeptical because:
which then continues on the analytical hierarchy
is not true; the first level of the analytic hierarchy sits on top of the hyperarithmetic hierarchy. And my understanding is that finding a way to have an analagous picture of going from something like a “hyperanalytic hierarchy” to the bottom level of third order arithmetic is something highly non-trivial/impossible/ill-defined, but this isn’t my area of math. So I think it’s easier to ignore the hierarchy aspect and just consider nth-order statements that can be finitely expressed in the language of set theory involving the n-1st power set of N and lower. I would be very, very surprised if BSS machines could decide all such third-order statements but if you have a reference that implies it, I’d take a look.
Isn’t the hyperarithmetic hierarchy just contained in 1 1 statements, or equivalently 0^w statements, where you decide the truth of all first-order arithmetic statements?
I will for now retract the claim that BSS machines can decide all third order statements, mostly because I don’t have a reference to the specific fact, but I would be very surprised if BSS machines couldn’t decide all third order arithmetic statements, or any order of arithmetic that can be finitely expressed in the language of set theory, because ZFC can define a truth predicate that works for all arithmetical statements, no matter which order of arithmetic you are considering, for the reason shown below, and all finitely expressible statements in the language of arithmetic or set theory are countable, while the amount of problems they can decide and the amount of functions they can solve are uncountable, so the BSS machine is larger than any formal theory of arithmetic or set theory that is finitary.
Isn’t the hyperarithmetic hierarchy just contained in 1 1 statements, or equivalently 0^w statements, where you decide the truth of all first-order arithmetic statements?
I think you have some significant gaps in your understanding. The 0ω statements contain all first-order arithmetic statements yes. But that’s just the beginning of the hyperarithmetic hierarchy. You can then discuss sentences that have a quantifier over 0ω statements, which are 0ω+1, and iterate this to to get 02ω . Then you can iterate again. Etc. Abstracting that process gets you to 0ω2. And you keep going again and again. This is still very low in the hyperarithmetic hierarchy.
My understanding (again, this is not my area) is that given any computable ordinal (i.e. any well-ordering of the naturals that can be encoded by the outputs of some Turing machine), you can construct a corresponding level of the hyperarithmetic hierarchy. So how do you discuss an arbitrary hyperarithmetical statement? You need to be able to quantify over the Turing machines that spit out well-orderings. Verifying that an ordering is a well-ordering requires quantifying over all subsequences—a second order statement. That’s why the abstraction of the hyperarithemic hierarchy is called the first level of the analytic hierarchy, the 1 1 statements as you said.
I will give an eminently practical answer to the philosophical discussion.
It’s too hard to get anywhere close to the mathematical truth, so people have given up on mathematical truth for good reasons, IMO.
I will also say that this is why I wish computability theory had finer distinctions beyond decidable/undecidable, and have more of a complexity theoretic flavor in distinguishing between the hardness of problems, where you cand was more explicit about the fact that many of the impossibility results are relative to a certain set of capabilities, because in a different world, I could see computability theory having much more relevance to this debate.
In essence, I’m arguing for pinning down exactly how hard a problem actually is, closer to the style of how complexity theorists not only care whether a problem is hard, but also how hard the problem exactly is.
I’ll give an example, just to show everyone my position on the matter.
If you could decide the totality problem, you could also decide whether P equaled NP or not, which requires much weaker oracles.
Some examples of such computational models include Turing Machines with the ability to have an infinity of states, Blum Shub Smale machines with arbitrary real constants, and probabilistic Turing Machines with non-recursive biases for the coin.
See these links for more (You can ignore all details about physical plausibility, since it’s not necessary for the complexity and computability results above:)
https://arxiv.org/abs/math/0209332
https://arxiv.org/abs/cs/0401019
http://www.amirrorclear.net/files/the-many-forms-of-hypercomputation.pdf
So I’m pretty firmly on the side of mathematical truth, but with an enormous caveat here, in that what independence proofs show us is that we need new computational capabilities, not new axioms, and thus we can either accept that it’s too hard to get at the truth and move on, or if someone does have a plan to get the computational capacity needed that is actually viable, then we can talk and have more productive discussions on whether the discovery is real and how to exploit it, if applicable.
So the most useful way to say things is that whenever an independence result is published, we should immediately try to figure out how complicated it is to determine the statement is true according to our standard computability hierarchies, and ideally have completeness results along the lines of NP-complete or RE-complete problems, and then give up on proving or disproving it, unless someone proposes a plausible method for getting that computational power.
Edit: I’ve edited out the continuum hypothesis example, since I had misinterpreted what exactly it was saying, and it’s saying that it’s a universal 2 1 conservative extension, not that it actually has that complexity.
See here for more:
https://en.wikipedia.org/wiki/Conservative_extension#Examples
Intuitively, the computational models you were suggesting seem like they would only decide statements that are at most second-order; they can really answer third-order arithmetical questions?
The computational models are far, far more powerful than only answering second-order questions.
The infinite state Turing Machine explicitly computes every function from the natural numbers to the natural numbers, which means they can compute any arithmetical question, no matter how large the n-th order arithmetic question gets.
This as a corollary means they can decide any language that is normally defined in complexity theory, and solve a uncountably infinite set of problems.
The same holds for the Blum Shub Smale machine, assuming arbitrary real constants are allowed.
Finally, the probabilistic Turing Machine having a non-recursive bias acting as a universal oracle machine can code any oracle set X as a probability Px such that if it’s given that probability, it can compute any function recursive to the oracle set chosen, and given that the continuum hypothesis is a universal 2 1 statement, we can certainly give a probabilistic Turing Machine a non-recursive probability that corresponds to the oracle for the continuum hypothesis.
And at any rate, the probability could be coded as an oracle set for the truth of third-order arithmetic sentences, which is strictly stronger than an oracle for the continuum hypothesis, so this doesn’t truly matter.
Blum Shub Smale machines with arbitrary r
I’m going to stick with BSS because the wikipedia page for that is pretty short and easy to understand. It seems pretty straightforward to construct injections:
configuration space →R
set of possible instruction sets →R
So asking something like “does there exist an n such that this machine with this instruction set hits this configuration in n steps” strikes me as a second order arithmetical question. I’m handwaving here, possibly in a really bad way that’s getting me into trouble, but that’s what’s throwing me off.
What’s throwing you off, I think is that classically defined second order arithmetic questions are computable if we allow any function from N to N, and the set R of real numbers can from a cardinality viewpoint be shown to be equivalent to the power set of the natural numbers, which includes all functions from the natural numbers to the natural numbers.
Given that the Blum Shub Smale machine can compute every function from N to N, this also implies it must compute second-order arithmetical questions as classically defined.
To clarify: I agree that BSS machines can answer second order questions (maybe not the full analytic hierarchy; that’s something I’ll think more about). My confusion is about this:
where you said that it all nth-order arithmetic questions can be decided by some such machine. My above comment was why I believed that the questions that are being answered strike me as second order.
Edit for clarifying the relevance here: it strikes me as plausible that questions about BSS machines halting/not halting have inherent truth; if this would imply that third-order arithmetical questions like CH have inherent truth, I would be surprised and update my view about mathematical truth.
The reasoning is pretty similar to the second order case, and the reason here is that no matter how many orders we add to arithmetic like first-order, second-order, nth order, formal languages and theories are always constrained by the usual definition to countably infinite sets of statements and languages, and the ability to compute any function from N to N means that you have an uncountably infinite set of functions to compute, which is always larger than any individual formal languages and theories in the usual definition.
Now that the original comment has changed, I’m more unsure about what you exactly you mean. Can you be more precise about what you mean by being able to compute arbitrary nth-order arithmetical statements? Is there a BSS machine that halts if and only if CH is true? Is there a BSS machine that halts if and only if there’s a choice function on the set of non-empty subsets of R?
I admit, I haven’t found any such explicit examples yet.
I wish this was more of a common practice to give explicit examples of these mathematical statements in more computational terms.
For the Nth order arithmetical statement issue, what I’m talking about is essentially a generalization of the arithmetical hierarchy, where there’s 0 1, 0 2, 0 3 and so on defined here, until it stops at 0^w, which then continues on the analytical hierarchy from 1 1, 1 2, 1 3, until it too stops at 1^w, which can go on essentially forever.
Essentially, I’m talking about this in a generalized form:
https://en.wikipedia.org/wiki/Arithmetical_hierarchy
The formal reason why a BSS machine can compute all of this comes down, in the end to the fact that it can compute every function from the natural numbers to the natural numbers, which as a set is always larger than any arithmetical hierarchy, which means that the claim that we can always compute nth order arithmetic for any N follows easily.
So I didn’t mean to clarify what you meant by nth-order statements, but rather that BSS statements can decide them, because that seems way too strong to be true. I’m also a bit more skeptical because:
is not true; the first level of the analytic hierarchy sits on top of the hyperarithmetic hierarchy. And my understanding is that finding a way to have an analagous picture of going from something like a “hyperanalytic hierarchy” to the bottom level of third order arithmetic is something highly non-trivial/impossible/ill-defined, but this isn’t my area of math. So I think it’s easier to ignore the hierarchy aspect and just consider nth-order statements that can be finitely expressed in the language of set theory involving the n-1st power set of N and lower. I would be very, very surprised if BSS machines could decide all such third-order statements but if you have a reference that implies it, I’d take a look.
Isn’t the hyperarithmetic hierarchy just contained in 1 1 statements, or equivalently 0^w statements, where you decide the truth of all first-order arithmetic statements?
I will for now retract the claim that BSS machines can decide all third order statements, mostly because I don’t have a reference to the specific fact, but I would be very surprised if BSS machines couldn’t decide all third order arithmetic statements, or any order of arithmetic that can be finitely expressed in the language of set theory, because ZFC can define a truth predicate that works for all arithmetical statements, no matter which order of arithmetic you are considering, for the reason shown below, and all finitely expressible statements in the language of arithmetic or set theory are countable, while the amount of problems they can decide and the amount of functions they can solve are uncountable, so the BSS machine is larger than any formal theory of arithmetic or set theory that is finitary.
I think you have some significant gaps in your understanding. The 0ω statements contain all first-order arithmetic statements yes. But that’s just the beginning of the hyperarithmetic hierarchy. You can then discuss sentences that have a quantifier over 0ω statements, which are 0ω+1, and iterate this to to get 02ω . Then you can iterate again. Etc. Abstracting that process gets you to 0ω2. And you keep going again and again. This is still very low in the hyperarithmetic hierarchy.
My understanding (again, this is not my area) is that given any computable ordinal (i.e. any well-ordering of the naturals that can be encoded by the outputs of some Turing machine), you can construct a corresponding level of the hyperarithmetic hierarchy. So how do you discuss an arbitrary hyperarithmetical statement? You need to be able to quantify over the Turing machines that spit out well-orderings. Verifying that an ordering is a well-ordering requires quantifying over all subsequences—a second order statement. That’s why the abstraction of the hyperarithemic hierarchy is called the first level of the analytic hierarchy, the 1 1 statements as you said.
Alright, I’ll have to do homework today, so I can’t respond for now.