Let's assume that the universe and humans are deterministic, and that I can perfectly predict the future based on the laws of physics and the environment. This means I can predict what you will do next. Now let's say you hate the idea, and will do anything to prevent my prediction coming true. For example, if I predict you that you will turn left, you will turn right instead. But this will contradict the initial prediction!
To simplify further, we can reduce this to a scenario with two computers, $A$ (me) and $B$ (you). $A$ is fed the electronic schematic of both machines, as well as the electronic state of each machine. $A$ can either output a positive or negative voltage. $B$ inverts the voltage of $A$ in order to replicate the scenario above.
Now $A$ is programmed to simulate the machines, and to output the voltage of $B$. This seems to create a halting-problem-like contradiction. If $A$ predicts $B$ outputs positive, then $B$ will actually output negative, and vice versa!
Unlike the algorithm in the halting problem, we already have algorithms to simulate electrical circuits. Yet it still seems yield a paradoxical result. What have I missed? Is the machine analogy equivalent to the first paragraph?
Follow up
As user341440 has commented, the paradox probably arises due to the false assumption that $A$ can simulate $A$ and $B$.
- For example, to store the memory for the schematic of $A$ alone would likely use up all the available memory.
- If we used a more powerful computer $C$, we would have to simulate $C$ as well, so that wouldn't work.
Possible conclusions:
- $A$ cannot definitively predict the future state of systems which it can strongly influence.
- $A$ cannot definitively predict its own state in the future. Only some external machine $A'$, which does not interact much with $A$ (directly or indirectly), is able to do that.