There are a few (isomorphic) ways to formulate questions as UTMs. You could provide a description of how to interpret final states as a scoring measure, and ask for the highest-scoring input. Or you could provide a UTM that you know halts and ask what part of its final state will be. These are equally powerful, given a genie with infinite computational resources, since there are trivial wrapper programs to convert between them; but the former degrades better under resource constraints.
Turing machines might not be the best way to think about it, since we don’t usually talk about retrieving outputs (other than halts/doesn’t halt) from them, although there’s no reason why we can’t in principle. Perhaps a better alternative to talk about reducing to would be a simple recursive language like lambda calculus. But it’s moot anyways, since we wouldn’t actually perform the reduction, just confirm that it exists and doesn’t involve any intractable steps like simulating a human that we haven’t uploaded.
One approach—in the post—is to interpret a program as a scoring measure, and the “question” is to find an input that scores well.
I don’t really care if you use that particular UTM, or some other UTM, or some other programming language, or a tractable mathematical definition, because they are all the same modulo the constant effort required to translate (which seems to be within human reach, if only barely, at this point).
Then only programs for that particular UTM are “precisely formulated”. How do you interpret them as questions, even?
There are a few (isomorphic) ways to formulate questions as UTMs. You could provide a description of how to interpret final states as a scoring measure, and ask for the highest-scoring input. Or you could provide a UTM that you know halts and ask what part of its final state will be. These are equally powerful, given a genie with infinite computational resources, since there are trivial wrapper programs to convert between them; but the former degrades better under resource constraints.
Turing machines might not be the best way to think about it, since we don’t usually talk about retrieving outputs (other than halts/doesn’t halt) from them, although there’s no reason why we can’t in principle. Perhaps a better alternative to talk about reducing to would be a simple recursive language like lambda calculus. But it’s moot anyways, since we wouldn’t actually perform the reduction, just confirm that it exists and doesn’t involve any intractable steps like simulating a human that we haven’t uploaded.
One approach—in the post—is to interpret a program as a scoring measure, and the “question” is to find an input that scores well.
I don’t really care if you use that particular UTM, or some other UTM, or some other programming language, or a tractable mathematical definition, because they are all the same modulo the constant effort required to translate (which seems to be within human reach, if only barely, at this point).