Blog

Insights, tutorials, and updates on high-assurance AI systems, neuro-symbolic programming, and vericoding.

by gavin

AI-Guided Certified Program Refinement

Software's core problem is knowing what it should do. AI-guided certified program refinement — vericoding — makes specification the artefact we tinker with, and lets AI guess program transformations that a theorem prover certifies.

vericodingrefinementspecificationtheorem provingAI
Read
by gavin

From Vibecoding to Vericoding: A Gradient, Not a Jump

You do not have to go from zero to verified in one step. You can start with Gherkin scenarios, graduate to executable contracts with specsaver, and then bring in a theorem prover when you are ready. Contracts are the bridge.

vericodingcontractsBDDspecsaveraxiomanderverification
Read
by gavin

Proof as Commodity

We proved type preservation for PCF — a classic typed lambda calculus benchmark — using two frontier LLMs and rocq-piler. DeepSeek v4 completed it in 21 minutes for $0.06. Claude Opus 4.8 took 14 minutes for $6.80. Either way, mechanised proof is no longer expensive.

verificationtheorem provingRocqLLMsbenchmarksrocq-piler
Read
by gavin

Code Will Become Opaque — And That's Fine

Most software developers haven't twigged the real potential of automated theorem proving with LLMs. If provers are powerful enough, you no longer need to understand the code — only the contracts at the interface.

verificationLLMstheorem provingvericodingsoftware engineering
Read
by gavin

Axiomander: Robots on Rails

Contracts as plain assert statements. Verification via Coq and SMT. Zero imports, zero decorators, zero runtime overhead. Bringing theorem-prover-grade verification to real Python programmers.

verificationneuro-symbolicPythonCoqMCP
Read

Vericoding Services

Prove the program correct. Then make it faster.

Models now write more code than you can review line by line. You specify what the program must do. We prove the implementation meets that specification, and where latency or compute cost is the problem, we replace it with a faster program that still does.

See the services
Code checked by a proof, then measured for speed