Loop Invariant Generator
Purpose
Provides expert guidance on generating and verifying loop invariants for algorithm correctness proofs using formal methods.
Capabilities
- •Infer candidate loop invariants from code structure
- •Verify initialization, maintenance, and termination conditions
- •Generate formal proof templates
- •Handle nested loops and complex data structures
- •Export to theorem provers (Dafny, Why3)
- •Suggest invariant strengthening
Usage Guidelines
- •Code Analysis: Analyze loop structure and identify key properties
- •Candidate Generation: Generate candidate invariants from code patterns
- •Verification: Check initialization, maintenance, termination
- •Strengthening: Refine invariants to prove desired properties
- •Export: Generate proof obligations for theorem provers
Tools/Libraries
- •Dafny
- •Why3
- •SMT solvers (Z3, CVC5)
- •Static analysis frameworks