Specula: AI-driven formal specification generation for system code verification
Specula is an autonomous system that generates high-quality formal specifications for intricate system code at the push of a button, facilitating efficient model checking and bug detection. It employs coding agents based on large language models (LLMs) to create TLA+ specifications, which encompass invariants that define correctness properties and formal models with suitable abstractions. This fully self-sufficient system removes the necessity for human knowledge in applying formal methods to practical code. Specula overcomes LLM challenges such as reward hacking and hallucinations through self-improving loops that enhance specification quality by deepening agents' comprehension of system code and behaviors. The system has been evaluated on 48 open-source projects.
Key facts
- Specula is a push-button agentic system for formal specification generation.
- It uses LLM-based coding agents to autonomously develop TLA+ specifications.
- Specula eliminates the barrier of human-centric formal methods.
- It addresses reward hacking and hallucinations via self-evolving loops.
- The system has been tested on 48 open-source projects.
- Specula generates invariants and formal models for system code.
- It enables highly effective model checking and bug finding.
- The system is fully autonomous.
Entities
—