{
  "slug": "prooffrog",
  "name": "ProofFrog",
  "tagline": "Checker for game-hopping proofs in provable security",
  "maintainer": "Ross Evans, Douglas Stebila (University of Waterloo)",
  "url": "https://github.com/ProofFrog/ProofFrog",
  "repo": "https://github.com/ProofFrog/ProofFrog",
  "category": "proof-systems",
  "targets": [
    "Game-based security proofs (papers)"
  ],
  "approach": "Custom language (FrogLang) and checker for game transitions; MCP server for AI assistants",
  "license": "Open source",
  "status": "Research (2025)",
  "summary": "ProofFrog checks that the game transitions in a provable-security proof are valid, giving paper authors and reviewers a mechanical check on the skeleton of a reduction. It ships an MCP server so AI assistants can drive it.",
  "details": [
    "It is lighter than EasyCrypt: it verifies the structure of the proof rather than the full semantics, which makes it fast to adopt for paper-style arguments."
  ],
  "strengths": [
    "Low barrier for cryptographers.",
    "AI-assistant integration.",
    "Catches structural proof errors early."
  ],
  "limits": [
    "Not a full computational prover.",
    "Research project.",
    "Limited primitive library."
  ],
  "fit": [
    "Use ProofFrog while writing or reviewing a paper proof; move to EasyCrypt for a full mechanisation."
  ],
  "references": [
    [
      "ProofFrog repository",
      "https://github.com/ProofFrog/ProofFrog"
    ]
  ],
  "category_name": "Proof systems and computational proofs",
  "page": "https://sorryfree.com/frameworks/prooffrog/",
  "updated": "2026-09-13"
}