Agentic interpretation: Lattice-based LLM analysis boosts program reasoning
LLMs track evidence like static analyzers, improving code analysis reliability.
Large language models can consult dynamic information—documentation, security advisories, version metadata—that fixed static analyzers cannot, making them attractive for program analysis. However, asking an LLM for a one-shot whole-program analysis is brittle because it compresses multiple evidence-dependent judgments into a single opaque answer. In a new arXiv paper, Jacqueline Mitchell and Chao Wang introduce 'agentic interpretation', a framework that brings the discipline of lattice-based static analysis to LLM reasoning. It decomposes a high-level analysis goal into localized claims and tracks the LLM's judgment about each claim in a finite-height lattice, governed by a worklist algorithm that evolves claims and judgments during analysis.
The approach is formalized and illustrated with a worked example analyzing code that depends on opaque third-party components. By structuring evidence in a lattice, the method exposes which conclusions are supported or disputed and uses intermediate findings to guide later searches—unlike one-shot analysis. This design space opens new possibilities for LLM-based program analysis that is more robust, transparent, and capable of handling incomplete or dynamic information. The paper is 27 pages, includes 6 figures, and spans software engineering, AI, and programming languages.
- Decomposes high-level analysis into localized claims tracked in a finite-height lattice.
- Uses a worklist algorithm to manage evolving LLM judgments and intermediate findings.
- Demonstrates robustness for opaque third-party components and dynamic advisories.
Why It Matters
Brings rigorous lattice-based discipline to LLM analysis, enabling reliable dependency auditing and security checks.