Full control over AI is out of reach.
Control good enough for real work is achievable.
Once AI’s limits are understood.
Could AI be fully controlled? Or contained well enough to deliver repeatable results and earn trust as a tool?
Either way, that control has to come from outside AI.
Mistakes come with AI because of what it is. The same request, with the same settings, can return different outputs,1 and a task AI completes once can fail the next time.2 Control of AI therefore means keeping its mistakes rare and their cost low.
Who decides what “correct” means?
Whether that is possible depends on what counts as control. Telling AI what to do is the obvious candidate. An instruction, however, only sets a direction and leaves the outcome open. Control is a separate act: it checks the result against the goal and fixes it.
An instruction on its own therefore offers a sense of control rather than control itself.
Control over AI’s results comes from programming it.
Programming is the logic behind the instructions: breaking a complex problem down3 until it is clear how to solve it. The written instructions are only its by-product.4 Programming tells a machine what to do5 and what counts as a correct result. AI cannot decide what is correct by itself, because it does not know what its user wants. Only a person can, so control of AI rests with whoever programs it.
Most people use AI through a chat. Each request typed there tells AI what to do and what result to expect, which is, in effect, programming. Most chat users, however, are not programmers. Their requests are also written in plain language, which tolerates ambiguity, while a program has to mean exactly one thing.6
Controlling AI through plain-language requests therefore adds a difficulty of its own: an ambiguous request leaves the goal unclear, and without a clear goal there is nothing to check a result against.
Checks belong outside the model
Before any tool or procedure, control starts with an attitude: being aware that AI will make mistakes and can never be fully controlled. The realistic aim is a set of rules, norms and procedures that makes mistakes rarer and contains the costliest ones, until AI is worth using. Designing the rules requires knowing what AI is, and what it can and cannot do or understand.
AI cannot be left on its own, so a person has to control it first. Some of the checking can be automated, but only from outside the model, because
a model cannot be trusted to judge its own work.7
When a model checks its own answers, the check itself is just one more result nobody has verified. The automated check therefore needs a different model, since another agent built on the same one would make the same judgements. An independent model can reduce the number of results a person has to check.
Cheap to generate, costly to check
The size of the task AI is given affects control as well. A narrow task leaves AI less room for error, so it makes fewer mistakes, up to a point.8 A narrow task is also quicker to check, and an error found in a small task is caught before it spreads into the rest of the work. A large job can therefore be split into small tasks, each with its own check, so that control runs through every stage of the job.
Every check is work too, and it costs time and money. Generating output with AI is cheap and fast, but the full cost of using AI includes the cost of controlling it. Because of that,
AI judged only by generation costs looks cheaper than it really is.
No rule covers every case
Even with narrow tasks and independent checks, mistakes keep coming, and some of them come from the rules themselves. A rule is written for the situations its author can expect. AI applies it to every situation it meets, including unexpected ones, and there the rule can produce an exception or an error of its own. Rules give a sense of control, but every such error and exception has to be recorded and dealt with for as long as AI is in use.
Control is therefore an ongoing process with recurring procedures, never a one-off project.
An off-the-shelf model knows nothing about the job
Because control never ends, it runs in a fixed cycle.
A model, as its provider delivers it, is a generic engine prepared for average tasks.
Before it does any real work, it has to be programmed for the specific job and then tested. The tests show where it still makes mistakes, and the controls are tightened exactly where the tests found them. The cycle then repeats. Each round leaves AI a little more useful, but never fully controlled.
Sources:
- arXiv, Same Prompt, Different Outcomes, 2026.
- arXiv, On the Reliability of Computer Use Agents, 2026.
- E. W. Dijkstra Archive, Notes on Structured Programming, 1970.
- Microprocessing and Microprogramming, Programming as Theory Building, 1985.
- The Computer Journal, Literate Programming, 1984.
- E. W. Dijkstra Archive, On the foolishness of “natural language programming”, 1978.
- ICML, Learning to Self-Verify Makes Language Models Better Reasoners, 2026.
- arXiv, LEAD: Breaking the No-Recovery Bottleneck, 2026.