GUT and P=NP

Ray rjc at gnu.ai.mit.edu
Sat Jul 23 02:56:45 PDT 1994


James A. Donald writes:
> Ray writes
> > 1) By definition, if something can be computed by a turing machine,
> > then it is an algorithm (Lewis and Papadimitriou)
> > 2) a quantum computer can be simulated by a TM with exponential 
> > slowdown. (claimed by you on the Extropians list, but also
> > claimed by Feynmann I believe, not about qm computers, but qm systems
> > in general)
> 
> True.

  Therefore it is an algorithm.
 
> > then by (1) and (2), it follows that
> > 3) quantum computers are algorithmic (if not, it would contradict
> > 2) and possibly 1)
> 
> Suppose our quantum system has thirty two bytes.
> 
> Then a classical simulation of our quantum system would require
> 2^257 words of memory
> 
> The computer would require more matter than exists in the universe.
> 
> Each step of the simulation would require 2^514 steps by the computer,
> which even for a computer constructed of very tiny components out
> of all the matter in the universe would still require vastly longer
> than the entire lifetime of the univers.

   We are not talking about physical computers, we are talking about
turing machines. If there is some *finite* deterministic process to
get from the initial data to the final result, no matter how long it
takes, it is an algorithm. I'm sure I could hand you a composite
number that would require a computer larger and older than the
universe to factor. Does that prove that none of our current factoring
algorithms are actually algorithms, or that brute force isn't an
algorithm?

   If you have a different definition of "algorithm" then perhaps your
argument is right, but to me, an algorithm is a process to
get from A to B, regardless of how long it takes.

> > 
> >    It doesn't matter how slow the turing machine runs the simulation
> > because we allow an arbitrary time along with the infinite tape
> > to complete the computation. 
> > -Ray
> 
> It does not sound like a very useful algorithm, nor is it one
> that is easy to describe.

  Usefulness is a matter of time complexity, not a condition for
membership in the set of algorithms.
 
> The difference is like the difference in my example of light
> flowing through a grid, as against a fourier transform etc,
> but the difference is enormously greater.
> 
> You say it makes no difference by definition.  I say such
> definitions are misleading when we discuss how problems are
> to be solved.

  Those definitions were invented to solve problems in the first
place.

  I can't think of a single thing which is non-algorithmic
except true randomness or non-determinism. Since no finite axiom
system can prove whether a string is truly random, no algorithm is
possible for generating nor proving them.  (anything with
infinite logical depth would also probably suffice) Err, I may
be mistaken since I recall that Chaitin said that you need
N bits of formal axioms to prove that an N-bit string is
"elegant" (the smallest representation), but I also recall
somewhere that a truely random string needs an infinite
set of axioms. Perhaps Tim can shed some light.

  Perhaps another example is a physical process able to solve the
halting problem. Imagine a time traveling UTM. Call it as a
subroutine. All it does is run your algorithm program and wait. If the
program ever halts, it sends the signal back in time, otherwise it
runs forever.  Thus, you feed the TT-UTM the algorithm you want to
check. If the program halts, the signal travels back in time from the
far future to arrive during the next "tick" of your current program.
If you receive no such signal, then either the universe died before
the algorithm halted, the machine broke down, or the algorithm doesn't
halt.

  The traditional "proof by contradiction" of the insoluability of the
halting problem doesn't work here. The algorithm used to test the
contradiction simply doesn't halt. It calls the TT-UTM recursively forever,
and creates an infinite number of them. In fact, this questions
the validity of the halting proof itself since the
contradiction derived isn't a valid input to the halt checking
machine in the first place, or, the halting proof disproves
logically the existence of time travel! Inputing an algorithm
to the halt checker which calls the halt checker should be
considered an exception like "division by zero" In which case,
the halt checking TT-UTM returns "exception: input algorithm  
recurses forever"  Thus, two new classes of algorithms are
developed. Those checkable by a TT-UTM and those which are not.
Those which are not should be left up to an even more
powerful machine. ;-)

(this violates the conditions of Church's thesis since the machine
can perform an infinity of calculation at each step. Oh well.)

-Ray
"Everything is an algorithm, even you!"







More information about the cypherpunks-legacy mailing list