Empirical Computation: Prompting versus Programming
This vision paper proposes "empirical computation" as a new paradigm where Large Language Models solve computational problems via prompting rather than traditional programming, arguing that its unique capabilities and limits require the software engineering community to develop new foundational theories and techniques for analyzing correctness and fundamental boundaries.
Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine you have two ways to get a job done: Programming and Prompting.
The Old Way: Programming (The Strict Architect)
Think of traditional programming like hiring a strict, by-the-book architect. You give them a blueprint with exact measurements, specific materials, and a step-by-step plan.
- How it works: You tell the computer exactly how to solve a problem, like sorting a list of numbers. You say, "Use this specific algorithm (Merge Sort), take these inputs, and follow these rules."
- The Result: If the architect makes a mistake, you can find the exact broken brick in the blueprint, fix it, and know for a fact the building will stand correctly next time.
- The Limit: The time it takes to build depends on the complexity of the math. Sorting a huge list of numbers takes a predictable amount of time based on the size of the list (specifically, ).
The New Way: Prompting (The Intuitive Artist)
Now, imagine you hire a brilliant, intuitive artist instead. You don't give them a blueprint. You just say, "Hey, here's a messy pile of numbers, could you sort them for me?"
- How it works: You use natural language (a "prompt") to describe the problem. The "computer" (a Large Language Model or LLM) doesn't follow a strict set of rules. Instead, it guesses the most likely answer based on everything it has ever read on the internet. It's like a chef tasting a soup and guessing the ingredients rather than following a recipe.
- The Result: The answer comes back fast, but it's a guess, not a guarantee. It's the "most likely" answer, not the "proven correct" answer.
What the Paper Found: The "Empirical" Surprise
The authors of this paper ran experiments to see how well this "Intuitive Artist" performs on classic math problems like sorting numbers or finding items in a list. Here is what they discovered:
1. Time doesn't work the same way
- Programming: If you double the number of items to sort, the time it takes goes up in a specific, mathematical way.
- Prompting: The time it takes the LLM to sort numbers goes up linearly (just a straight line) as the list gets bigger. Why? Not because the math is harder, but because the LLM has to read and write more words (tokens) to handle the longer list. It's like reading a longer book; it takes more time to read the words, not because the story is more complex.
2. Accuracy drops as things get bigger
- Programming: A correct program is 100% correct every time.
- Prompting: The LLM is great at small tasks but gets confused as the list grows.
- For a list of 50 numbers, the LLM got it right about 90% of the time.
- For a list of 150 numbers, it only got it right about 58% of the time.
- If you ask it to find a specific pattern in a short string, it might fail almost immediately if the string gets slightly longer.
- The "Thinking" Mode: When the LLM is allowed to "think" (reason step-by-step) before answering, it stays very accurate, but it takes much longer.
3. The Language Game
- Programming: It doesn't matter if you write the code in English or German; the computer reads the symbols the same way.
- Prompting: The LLM is biased by what it has read on the internet.
- If you ask the LLM to sort numbers written as English words ("one, two, three"), it does a great job.
- If you ask it to sort numbers written in German ("eins, zwei, drei"), it fails almost completely.
- Why? The LLM has seen millions of English examples on the internet but far fewer German ones. It's like asking a chef to cook a dish they've never seen before; they might guess wrong.
4. The "Broken Brick" Problem
- Programming: If a program fails, you can find the bug, fix the code, and the problem is solved forever.
- Prompting: If the LLM gives a wrong answer, you can't easily find "the bug." You can't point to a specific line of code to fix. You might try changing your prompt or asking it to "think harder," but there is no guarantee it will work next time. It's like trying to fix a dream by changing the dreamer's mood.
The Big Takeaway
The paper argues that we are entering a new era called "Empirical Computation."
In the old world, we trusted computers because they followed strict rules (Rationalist framework). In this new world, we are trusting computers because they make "educated guesses" based on data (Empirical framework).
The authors are calling on software engineers to stop trying to analyze these AI systems like old-school programs. We need new tools to measure, test, and understand how these "guessing machines" work, because the old rules of math and logic don't fully apply to them anymore. We need to figure out how to trust a result that is "probably right" rather than "definitely right."
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.