Explicate

Expand complex Acorn proofs by inserting explicit derivation steps.

59|24|Updated Oct 3, 2024
One-click install
npx skills add https://github.com/acornprover/acornlib --skill explicate
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Explicate
Source: https://github.com/acornprover/acornlib/tree/main/.agents/skills/explicate
Command: npx skills add https://github.com/acornprover/acornlib --skill explicate

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Valid proofs can exist, but some proofs are so complex that the prover cannot re-discover them if the original certificate is lost. Explicate adds detailed steps to the module's Acorn file so the prover can re-create the proof and verify it again.

Core Features & Use Cases

  • Identify lines that cannot be reproved using acorn reprove --fail-fast and select the relevant statements to expand.
  • Insert non-deleting supporting statements into the .ac file to explain steps without altering the original structure.
  • Verify the expanded module with acorn verify to ensure continued provability after explicating.

Quick Start

Start by checking a module with acorn check MODULENAME, then explicate a line and reprove with --fail-fast before verifying the entire module.

Frequently Asked Questions about Explicate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make formal verification proofs reprovable after losing the original certificate?

Formal verification proofs become reprovable when you insert explicit derivation steps to expand complex Acorn proofs. This adds detailed supporting statements into the module file so the prover can re-create and verify the proof again.

How do I identify which proof steps are failing during theorem proving?

Identify failing proof steps during theorem proving by running acorn reprove --fail-fast on your module. This command locates the specific statements that cannot be reproduced and require additional derivation steps.

Can I add supporting statements to a proof without altering the original structure?

Yes, you can insert non-deleting supporting statements into the .ac file to explain proof steps. This expands the formal verification proof without deleting existing statements, preserving the original module structure.

What is the best way to ensure continued provability after expanding a proof module?

The best way to ensure continued provability after expanding a proof module is to run acorn verify. This verifies the updated module to guarantee that the newly inserted derivation steps maintain overall provability.

Why does the prover fail to re-discover formal verification proofs when they are complex?

The prover fails to re-discover complex formal verification proofs because it cannot infer intermediate steps without the original certificate. Explicating solves this by explicitly inserting detailed derivation steps into the Acorn file.

Do I need to run a module check before explicating formal verification proofs?

Yes, you should run a module check using acorn check MODULENAME before explicating formal verification proofs. This validates the initial state before you explicate a line and reprove with the fail-fast flag.