Dijkstra on AI: Why Computers Think Like Submarines Swim
Computer science pioneer Edsger W. Dijkstra famously remarked that asking whether machines can think is as relevant as asking whether submarines can swim. This article explores the philosophy behind Dijkstra’s critique of artificial intelligence, demonstrating how the comparison exposes the flaws of anthropomorphism, highlights the purely mechanical nature of computation, and argues that defining machine capabilities in human terms is fundamentally meaningless.
The Trap of Anthropomorphism
Dijkstra used the submarine analogy to illustrate a flaw in human language and perception. When humans invented boats and later submarines, they did not build mechanical fish that wiggled their tails to propel themselves through water. Instead, they used propellers, ballast tanks, and hydrodynamics to achieve underwater navigation. Calling this mechanical process "swimming" is a linguistic choice, not a biological reality.
Similarly, Dijkstra argued that trying to label advanced data processing as "thinking" is a trap of anthropomorphism—attributing human characteristics to non-human objects. Just as a submarine moves through water differently than a human or a fish, a computer processes information differently than a biological brain.
Functional Results Over Imitation
A key point of Dijkstra's critique is that engineering succeeds when it abandons the strict imitation of nature. Early aviation pioneers failed when they tried to build flying machines with flapping wings. Success only came when engineers focused on aerodynamics and fixed wings. Planes fly, and submarines navigate underwater, yet neither mimics the biological equivalents of birds or fish.
In the realm of artificial intelligence, Dijkstra believed that trying to mimic the human brain was a distraction. Computers do not need to replicate human consciousness or cognitive patterns to be useful. They perform rapid, algorithmic symbol manipulation. Expecting them to "think" like humans misses the point of what makes computers powerful: their ability to execute strict, logical operations at a scale and speed humans cannot match.
Redefining Words Changes Nothing
Dijkstra pointed out that if you want to say a submarine swims, you first have to redefine the word "swim" to include mechanical propulsion. Once you strip the biological meaning from the word, the statement becomes trivial.
The same applies to the Turing Test and the broader field of AI. To say a machine "thinks," one must redefine "thinking" to mean the algorithmic execution of code and data processing. Dijkstra argued that debating this semantics game does not advance computer science. The reality of what the machine is doing—executing deterministic instructions—remains unchanged regardless of what poetic label humans attach to it.
Focus on the Science, Not the Myth
Ultimately, Dijkstra wanted computer scientists to take responsibility for their systems through mathematical rigor rather than hiding behind the mystique of "artificial intelligence." By comparing thinking machines to swimming submarines, he stripped away the science-fiction glamour of AI. He reminded the world that computers are tools designed for specific tasks, and evaluating them by human biological standards is entirely irrelevant to their actual function.