Fundamentals 3 min read

Software Engineering's Core Laws vs. LLM Limits: The Agent Boundary Question

The article examines software engineering's fundamental complexity laws, large language model limitations including context constraints and hallucination, Rice's Theorem implications, and questions the boundaries of AI agents in solving real software problems despite improved memory, tools, and context organization.

Thought Artisan
Thought Artisan
Thought Artisan
Software Engineering's Core Laws vs. LLM Limits: The Agent Boundary Question

Software Engineering's First Law: Complexity

The article opens with the First Law of Software Engineering: the Law of Complexity . Essential complexity is inherent; accidental complexity cannot be eliminated.

Large Model First Law: Knowledge Compression and Probabilistic Uncertainty

The First Law of Large Models states that they are a form of knowledge compression characterized by probabilistic uncertainty.

Inherent Limitations of Large Models in Software Engineering

Context limits – fixed context window size.

Probabilistic uncertainty and hallucination – a p% hallucination problem.

Lack of tacit knowledge – the implicit, experience-based knowledge that engineers hold.

Lack of decision knowledge – the ability to make design trade-offs.

Linear understanding limitation – models process tokens sequentially, while software design is a three-dimensional thinking process.

The Software Engineer's Design Process

When designing software, engineers work within the limits of human working memory. The process is three-dimensional: abstract thinking is the foundation, structural construction is the method, constraints and trade-offs are the wisdom . Code is merely the final linear representation; the high-level mental model of the software resides in the designer's mind. This concept is explored further in the referenced article "Constructing Software's Mental Representation" .

Rice's Theorem and Its Implications

The article cites Rice's Theorem (referenced in "Rice's Theorem Tells You Why" ) to underscore fundamental undecidability results that affect what any automated system — including LLMs — can guarantee about program properties.

Agent and LLM Boundaries in Software Work

Given these essential limitations, the author asks: what is the true boundary of agents and LLMs in software work? Even if agent memory management is perfected (recalling programming history), tools are excellent (code checking, testing), and context organization is superior (code location, spec-driven approaches), which real-world software problems can actually be solved?

Diagram illustrating software engineering laws and LLM limitations
Diagram illustrating software engineering laws and LLM limitations
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

AI agentslarge language modelsSoftware Engineeringsoftware designhallucinationtacit knowledgecomplexity theoryRice's Theorem
Thought Artisan
Written by

Thought Artisan

I think, therefore I am; recording insights from daily life and technology.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.