Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

Re^2: Equivalency of Code

by Anonymous Monk
on Feb 07, 2005 at 19:48 UTC ( #428794=note: print w/replies, xml ) Need Help??

in reply to Re: Equivalency of Code
in thread Equivalency of Code

In general, you can't, as that will mean solving the halting problem.

You can't solve this problem in general, but not for the reasons you state.

The halting problem doesn't apply to finite state machines. Any computer that exists today is a finite state machine: it can only store a finite number of states, not an infinite number. Even quantum computers only probabilistically distinguish a finite number of probabilities, though they do enable massive parallelism.

You can, in theory, determine whether any two finite state machines do the same thing.

However, you still can't always do this in practice, because you may not have enough states in your machine: memory is costly, and a given computation might require more states than, say, the galaxy has particles. "Finite" can still mean "mind-bogglingly huge", at times.

Sorry, but one of the things that annoys me is when people reason about modern computers as if they were Turing machines. It's sometimes very useful to think of them that way, but they're simply not the same.

Unless you're an immortal with an infinite lifespan, with infinite resources to construct an infinitely large computer, you just can't build a Turing machine. And really, if you're an immortal, don't you have something better to do with your infinite lifespan than to site around waiting literally forever for your Turing machine to halt? I know I'd be out smiting people, or creating life, or something fun instead. :-)


Replies are listed 'Best First'.
Re^3: Equivalency of Code
by Boots111 (Hermit) on Feb 08, 2005 at 03:53 UTC

    It turns out that after a couple trillion years you get bored of the smiting and creating. But oddly enough, exploring the limits of math remains interesting...

    Computer science is merely the post-Turing decline of formal systems theory.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://428794]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (6)
As of 2017-06-24 04:28 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (556 votes). Check out past polls.