AgentSkillsCN

loop-invariant-generator

自动生成并验证循环不变式,以支持算法正确性证明

SKILL.md
--- frontmatter
name: loop-invariant-generator
description: Automatically generate and verify loop invariants for algorithm correctness proofs
allowed-tools:
  - Bash
  - Read
  - Write
  - Edit
  - Glob
  - Grep
metadata:
  specialization: computer-science
  domain: science
  category: algorithm-analysis
  phase: 6

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

  1. Code Analysis: Analyze loop structure and identify key properties
  2. Candidate Generation: Generate candidate invariants from code patterns
  3. Verification: Check initialization, maintenance, termination
  4. Strengthening: Refine invariants to prove desired properties
  5. Export: Generate proof obligations for theorem provers

Tools/Libraries

  • Dafny
  • Why3
  • SMT solvers (Z3, CVC5)
  • Static analysis frameworks