Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Can computers only do what we tell them to?

  1. Jan 18, 2007 #1
    Is it true to say "computers only do what we tell them to"? If we write any program and we know all the inputs then surely we ought to be able to predict the outputs so long as we know all initial states (including the seed in any pseudo random generator as well as the generator taps).

    If we introduce a real random element (like the input devices based on thermal noise) then it's pretty obvious that programs could be written that didn't produce predictable outputs e.g. PRINT get_random_from_hardware()

    ...I want to know if there's an algorithmic equivalent to this.

    (mods: I couldn't decide between computers or maths so I plumped for philosophy to ask this. please move if its a problem here.)
  2. jcsd
  3. Jan 18, 2007 #2


    User Avatar
    Homework Helper

    An algorithm can't invent randomness. A similar thing concerns GUID's. How does an algorithm come up with a globally unique identifier? It doesn't, it uses the MAC address on your network card and that contains the global uniqueness. These things come from outside.

    This leads to the intuition that the universe can't have a true source of randomness, because that randomness would need to be from outside (or that it just happened to be random).
    Last edited: Jan 18, 2007
  4. Jan 18, 2007 #3
    Hmm, it seems that not even the mind can be random. If it could be considered a computer.
  5. Jan 19, 2007 #4
    I knew it would be a philosophical question ;) Admitting randomness in the form of thermal noise is only pushing the problem back (albeit a virtually infinite way) if we consider the universe as a whole to be deterministic. I bet there's a dozen threads here regarding determinism and no resolution in sight.

    But for my purposese, a computer connected to a thermal noise source will do. Surely, For All Practical Purposes that's how we can think of the mind as well.

    It's just that some people say it's obvious that computers will never be able to think for themselves becuase they can only do what their programmers tell them to do. Why a programmer can't tell a computer to "think for itself" is escaping me at the moment.
  6. Jan 19, 2007 #5
    ...it depends on what you mean by "Can computers only do what we tell them to"?
    Can a 2-4 year old child only do what we tell them to do? What is the difference between a child and AI? Is there some commonality amongst them?

    What are the properties of "thinking for yourself"?
  7. Jan 19, 2007 #6


    User Avatar
    Gold Member

    You could use a Schrodinger's Cat type box as a seed for randomness. That would be internal. There is surely a compact, digital electronic way of tapping into quantum uncertainty.

    There's an invention for you that'll make you millions!
  8. Jan 19, 2007 #7
    Computer = Life: Do what the creators tell them to.

    Subject: Computer = Life: Do what the creators tell them to.

    Thank you, Prof. Droog and Prof. Bannon, for your fundamental philosophical comments on the destiny of mankind and the purpose of its existence.

    The obvious algorithmic equivalent to this is the origin of life developed from non-living materials, if we believe in evolution. If we believe in creation or self-creation, we can see from your comments a very important, if not the most important, conclusion for our existence: The design specification (what we tell them to do) of our creation (computer), particularly, of our self-creation reveals the purpose of our existence and the meaning of our lives (do what they are designed to do; from know thyself to be thyself). [Chien Yi Lee from Self-creation of the living system.]
  9. Jan 19, 2007 #8


    User Avatar
    Homework Helper

    So the meaning of our lives is determined by our design? Well then, I guess the meaning of my life is to eat, sleep and...
  10. Jan 19, 2007 #9
    Why aren't you satisfied with using the 16 digit system clock as a seed for a random number generater? Surely the time measured in miliseconds is as random as thermal noise, although the two are not wholly unconnected.
  11. Jan 20, 2007 #10


    User Avatar
    Science Advisor

    The phrase "emergent properties" used in logic and sometime mathematics might be useful here. We can have a completely determinant logical or mathematical system, so that every theory is "contained" in the axioms and yet get results that surprise us.

    A computer can (or robot- questions like this used to be asked about robots), in fact, only do what we tell them to do. But if the basic programming is complicated enough, a computer (or robot) can do things that we did not intend.
  12. Jan 20, 2007 #11
    HallsofIvy is correct in saying this. You might, for instance, use a pseudo-random noise generator to drive the process of genome mutation in a genetic algorithm. The overall parameters of the program might be known, but the results may still be a surprise. If the fitness factor is sufficiently general (survive at any cost, say), and the model sufficiently rich, the outcome may be quite unpredictable.
  13. Jan 20, 2007 #12
    Verty... An algorithm can take a number of random-ish seeds (say the bottom bit of keyboard click interval measurements) and produce a result that is probabilistically likely to be unique.
  14. Jan 20, 2007 #13


    User Avatar
    Gold Member

    But that is still a completely deterministic system. At the most basic level, the results only surprise us because we haven't analyzed the system well enough. With enough analysis, we could predict the exact results.

    Even thermal noise as a seed is simply a very complex yet determiministic inout.
  15. Jan 20, 2007 #14
    In principle yes, but only for an ideal, and thus non-physical, computer.
    There is a small but finite probability that a physical computer will fail to provide the expected result.
  16. Jan 20, 2007 #15
    Doesn't one of the tenets of computability theory claim that a system can only be completely modelled by a system more powerful than itself?

    What I'm saying is that, deterministic or not, some systems are complex enough that analysis becomes if not actually impossible, then prohibitively expensive.

    Chaotic systems, for example. A model of some chaotic system (say, the weather) may well be deterministic, but in order to 'predict' the behaviour of the system, you must either run *it*, or something able to comprehend it in its entirety.

    It may be possible in principle, but in principle, you could move the Earth with a sufficiently large lever.
  17. Jan 20, 2007 #16
    You can make an analogy with the trap-door functions used to implement public/private key encryption. It's quite certain that your trap-door function is entirely deterministic, but it's *hard* to reverse. And trap-door functions are designed to be fast enough (and thence simple enough) to be used, for example, in key-exchange protocols operating across networks.
  18. Jan 20, 2007 #17
    also it depends on what you define as a computer? IF its an ordinary desktop ...probably not given that its only inputs are possible your camera/mic/keybaord/mouse. For a server/cluster/array it will depend on what the inputs were.

    IN biopsych, the inputs to the system are an extrmeely concept for child development (the whole concept of the richer the environment -- the more stimuli -- the more a child will take in and be flexible to)

    So if you give a computer such inputs and some basic code design(large vector space of small functions) to handle the input...there's no teling what it can do...
  19. Jan 20, 2007 #18


    User Avatar
    Science Advisor

    I think that it's more like "we only let computers do what we tell them to do". We can have a computer act fairly randomly by having it interact with its environment in some form, possibly chaotic, and we might say that then the computer is doing what it wants.
    From an external viewpoint a computer does what it wants. It's a self contained unit and its internal mechanisms decide what it does next, of course in conjunction with its environment which may or may not include a human and a keyboard, much like us.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook