While not a logical proof, this appears to be a practical disproof of AI.

If it were possible to replace programmers, with all the brainpower and sheer quantities of money directed at computer science we'd have discovered an algorithm to replace programmers by this point. But we haven't. Instead, the number of programmers is increasing rapidly.

Therefore, programmers can solve a class of problems that algorithms cannot. Since AI is a kind of algorithm, true AI that replicates human intelligence is impossible.

Is there any evidence to the contrary?

NOTE: Giving credit where credit is due, this argument I took from the following paper where it is argued much better: http://www.blythinstitute.org/images/data/attachments/0000/0041/bartlett1.pdf

  • 2
    I wouldn't call AI a kind of algorithm. Much of today's working AI depends on knowledge bases (which are not algorithms). Algorithms without knowledge bases are very limited.
    – obelia
    Jun 14, 2014 at 0:01
  • @obelia the fact that knowledge bases are created by humans doesn't make the fact that all of AI are governed by algorithms any less true.
    – user132181
    Jun 14, 2014 at 12:10
  • @user132181 AI systems aren't governed by algorithms, algorithms are a component of (most) AI systems. And not all knowledge bases are created by humans.
    – obelia
    Jun 14, 2014 at 16:38
  • @obelia you're right about knowledge databases, my bad. But still, I strongly disagree that AI systems are not entirely governed by algorithms. They are as governed by algorithms as your computer, mobile device, refrigerator, etc. are. That is - entirely. Your computer doesn't "know" how to compute, it follows strict algorithms to carry out calculations (it is true though that it takes inputs from a human). Same for the other pieces of technology...
    – user132181
    Jun 14, 2014 at 17:05
  • 2
    Also, if it were possible to power a loom with a steam engine, with all the brainpower and sheer quantities of money directed at textile production, we'd have discovered a way to do it long before the 18th century. And if personal computers were actually useful for anything, Aristotle would have had one.
    – WillO
    Jun 17, 2014 at 15:12

3 Answers 3


Your argument is of the following form:

  • Premise 1: x hasn't happened yet.
  • Premise 2: If x was possible, x would have happened by now.
  • Conclusion: x isn't possible.

Perfectly valid (it's just modus ponens). Premise 1 is obviously true in this case. But what about Premise 2? There are all sorts of obvious counterexamples of the same form:

  1. A manned mission to Mars
  2. Building a building taller than 1km tall
  3. A single core processor running at 10GHz
  4. ...

All of these things are almost certainly possible (and if you think they aren't, go back ten years and pick some achievement that's only been made in the last ten years). And it's not for want of trying or lack of utility (well, maybe in the case of 2). But we've been getting closer and closer.

I'd say that that's just the situation with AI. Depending on just what you mean by AI, improvements have been made. Especially, perhaps, in the case of programming. Compilers (which convert human readable programming languages into machine code) do lots and lots of optimisation of code. This amounts more or less to doing some programming of their own, albeit as one 'programmer' on a team of two or more. In some cases (particularly functional programming languages) a human written program can look more like a description of the problem than a program. The compiler essentially writes a whole new programme which solves that problem.

(An interesting comparison would also be automated theorem proving, in which a human gives a program a theorem to prove, and the program will try to find a proof for it. In fact, given the Curry-Howard correspondence, you might even think that these are exactly the same thing.)

  • This is a good breakdown. However, if programmers were being replaced by algorithms, we would be getting less, not more. For example, in car factories robots have replaced assembly line workers.
    – yters
    Jun 14, 2014 at 0:10
  • But we're also writing a lot more programs, with a lot more lines of code. If my analogy of optimising compilers being like an additional programmer on the team is right, we wouldn't expect this to replace programmers completely (but maybe you need a few fewer, if you don't need somebody to go through writing assembly to optimise stuff)
    – J.P.
    Jun 14, 2014 at 0:15
  • We're also driving a lot more cars :) At any rate, your response is the best description of the standard response that people are giving, to the effect that time taken should not be an indicator whether a problem is unsolvable.
    – yters
    Jun 14, 2014 at 0:16
  • 1
    The only difference is that AI is never going to happen. One can look at the lengthy history of utter and dismal failure in the field over the past 40 years, which is masked by constantly redefining the problem
    – user4894
    Jun 14, 2014 at 0:52
  • 3
    One can argue that the redefining is going the other way: programs that switch telephone calls and thereby replace human operators aren't real AI the problem is too simple; a computer that can play chess was once thought to require AI, but now its just a game; a program that answers Jeopardy questions by having compiled information off the internet isn't "real" AI ... It seems like "real AI" is defined as the complex information processing stuff we haven't managed to do with a computer yet.
    – Dave
    Jun 14, 2014 at 12:46

The majority of programmers aren't attempting to work themselves out of a job. The majority of programming jobs are not even in the AI field.

You could make a similar parallel between ancient Egypt and visiting the moon: "If all these centuries of humans haven't figured out how to fly yet, does that mean visiting the moon is impossible?"

Technology builds over time. We don't know whether AI is possible now, but that doesn't mean we won't look back and laugh in a thousand years at how trivial answering this question with a "Yes" has become.

I can't honestly say that a prediction made now of whether or not true AI is possible has any merit.

  • Well, the programmer that did discover such an algorithm would become filthy rich :) Your argument by analogy is a common one, but it is also confirmation bias. What about all the technologies they thought could exist, yet do not exist today? We may look back and wonder why people wasted so much time on a technology that's obviously impossible, like how we look at astrology and alchemy today.
    – yters
    Jun 13, 2014 at 23:00
  • Oh, certainly. I was a bit worried about that while writing the answer, but the hinge of what I'm saying is not the analogy: it's the prediction. History looks much simpler now than it did when it was happening, but I rather doubt alchemists generally believed their goal to be unobtainable. If we declare AI to be impossible, we're far less likely to accomplish it in the off chance that we were wrong. The secondary point of my argument is that having not experienced something does not make it impossible. Really, that doesn't tell us very much at all.
    – Magus
    Jun 13, 2014 at 23:13
  • Proving a theory wrong opens the floor to new theories. That is very fruitful. For example, if the above argument is correct, then programmers are Turing Oracles, at least to a limited extent. That is a truly groundbreaking result, and has numerous real world implications..
    – yters
    Jun 13, 2014 at 23:18
  • 1
    True, but you generally need some proof for that. Deciding something is impossible after an arbitrary amount of time has passed without a solution is foolishness.
    – Magus
    Jun 13, 2014 at 23:20
  • @yters, there is no algorithm to discover. Just as we don't discover new houses but build them brick by brick, creating an artificial intelligence is not a matter of discovering an algorithm, but building it from line after line of code.
    – gnasher729
    Mar 27, 2015 at 13:36

There are many intelligent people in the world who are not very good as programmers, or who don't have any interest in writing software. So if we created an Artificial Intelligence, what reason is there to think it would be a good, or decent, or at least not completely incompetent programmer?

What reason is there to think it would be capable of being a programmer without growing up for close to 20 years, followed by some significant amount of training?

What reason is there to think Artificial Intelligences capable of writing software would be able to do it in such huge amounts at a cost that making them replace all programmers would be cost effective? If I needed to pay a $1 million dollar bill a year for servers to run an "Artificial Intelligence" program that can replace a single programmer, why would anyone pay that money?

There is a huge gap between an Artificial Intelligence, and an Artificial Intelligence capable of replacing a programmer cost effectively. Same as there is a huge gap between an Artificial Intelligence that can create a simple melody, and one that is better than Beethoven at composing music.

At some point in 100 years or so, when a group of AIs goes through all the StackExchange questions and supplies perfect answers to all the questions, we'll get an answer that can express my thoughts on the subject much better than I can.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .