OK, here’s my current candidate Loebian solution. It might be wrong and I don’t have any proof for it yet.
Let’s call a program “safe” if Quirrell can’t make it self-destruct in any number of steps. For example, a quining solution is safe, and that fact is easily provable in PA.
Let N be a large number. Our program a(p) will enumerate all proofs in PA up to length N that the statement “a is safe” implies “p is safe”. If such a proof is found, the program doubles down, otherwise it takes winnings.
The above program will double down on quining programs, and also on logical equivalents of itself. I don’t yet know whether it will double down on versions of itself with higher values of N, or on alternate implementations of the same algorithm (which isn’t the same as logical equivalents of itself, due to quining).
ETA: ok, sorry, scratch this for now. I can’t even figure out how to prove that the program is safe, and maybe it isn’t.
OK, here’s my current candidate Loebian solution. It might be wrong and I don’t have any proof for it yet.
Let’s call a program “safe” if Quirrell can’t make it self-destruct in any number of steps. For example, a quining solution is safe, and that fact is easily provable in PA.
Let N be a large number. Our program a(p) will enumerate all proofs in PA up to length N that the statement “a is safe” implies “p is safe”. If such a proof is found, the program doubles down, otherwise it takes winnings.
The above program will double down on quining programs, and also on logical equivalents of itself. I don’t yet know whether it will double down on versions of itself with higher values of N, or on alternate implementations of the same algorithm (which isn’t the same as logical equivalents of itself, due to quining).
ETA: ok, sorry, scratch this for now. I can’t even figure out how to prove that the program is safe, and maybe it isn’t.