Jump to content

Time loop logic

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Bryan Derksen (talk | contribs) at 19:14, 20 July 2003 (writing an initial article off the top of my head, based on some articles I remember reading once. Corrections and additions most welcome.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

Temporal logic is a system of computation that requires the computer to be able to send data backwards through time, and relies upon the Novikov self-consistency principle to force the result of a computation sent backwards through time to be correct. This approach can overcome many limitations on traditional algortihmic complexity.

A program exploiting temporal logic can be quite simple in outline. For example, to find a factor for a large number:

  • wait for the result to be transmitted from the future.
  • upon recieving the result, test whether it is a factor by dividing the input number by it.
    • if the recieved result is indeed a correct factor of the number, send the result back in time.
    • else if the recieved result is not a correct factor of the number (or no result is recieved at all within the desired timeframe), generate a number different from the recieved result and send it back in time. Note that this results in a paradox, since the result sent back is not the same as the one that was recieved.

Since the Novikov principle states that it is impossible for any sequence of events to result in a paradox, the second clause of the conditional statement can never happen and the result sent from the future is guaranteed to be the correct one. If no result is possible - the subject number is prime, for example - then some event will occur to prevent the program from running in the first place, or prevent it from running correctly. An event that prevents the program from running in the first place would also satisfy Novikov's principle even if a correct result does exist, so it is important to limit the opportunities for such errors so that the "most likely" way the system will remain consistent is to provide the correct result as desired.

Of course, temporal logic is a purely theoretical exercise at this point. It is not known whether time travel is possible, or if it is whether Novikov's principle really applies to it.