I imagine a conversation which proceeds something on this wise:
Alice: "I have discovered the existence of a program
halts? p that returns true when program p halts, and false when program p loops forever."
Bob: "But you know something like that just isn't possible! After all, the existence of
halts? p would imply the existence of another program, trick, whose definition might be something like this:
(define trick
(cond ((halts? trick) (loop-forever))
(t nil)))
but that would imply a contradiction. So the program you are describing cannot exist."
Alice: "Not so fast! You haven't proven that
halts? cannot exist. All you have done is prove the existence of an unsatisfiable pair. In other words, you have proven that the existence of
halts? and
trick form an inconsistent set. But that doesn't mean we have to declare
halts? does not exist. After all, it may well be that
trick does not exist."
Bob: "But that doesn't make any sense. After all, I even gave you a definition of
trick! What makes you think you can just go and say it can't exist? After all, there isn't anything about
trick that seems impossible, other than its invocation of
halts?, which I am trying to prove cannot exist. Nothing says I can't invoke
trick on some other program, even something simple that returns the empty set or true all the time. All that's changed is I invoked
halts? instead."
Alice: "Ah, but this depends on something questionable, like David Lewis's Patchwork Principle. You are trying to prove that just because
trick might exist under other circumstances, it can also exist and try to invoke
halts?. But that doesn't follow merely from the definition of
trick."
Bob: "So what happens if I try to invoke
trick really? Nothing is stopping me from typing the program into my computer."
Alice: "Hell if I know. Maybe Louis the Bald necessarily revives from the dead and smashes your computer before it can run the program. Anything to prevent the contradiction after all!"
Now obviously, there is something wrong with Alice's line of reasoning in this conversation. IN fact, I would like to think that she deserves some kind of lobotomy but maybe someone else might not be as harsh as myself. But there is a point to my very silly story. This sort of reasoning is the same idea people try to prove the existence of time travel and other absurdities. When it is demonstrated that, if time travel could exist, then some contradictory scenario (such as the grandfather-killing scenario) could exist, most rightly conclude this makes time travel logically impossible. However, some people hold on and accept instead the UPD. So my question is, what makes the time travel supporter's reasoning any different from Alice's in this case?