Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -229,8 +229,13 @@ globally; use `letI` or a wrapper carrier.

- Do not raise `maxHeartbeats` or `maxRecDepth` to make a proof pass; a
heartbeat limit is a symptom to diagnose.
- Do not use `decide` or `native_decide` in new proofs or checks. For small
test vectors, use ordinary kernel-checked equality and simplification proofs.
- Do not use `native_decide`, `bv_decide` or any other native evaluation in a
proof, and do not use plain `decide`, which evaluates in the elaborator. A
computation certificate or a test vector stated as a proposition may use
`decide +kernel`: the kernel evaluates it, and it adds no axiom; small ones
can also use ordinary equality and simplification proofs. Known-answer tests
may run by evaluation with `#guard`, as the Commons tests do: they check the
code, and no proof depends on them.
- Do not introduce `Fintype I` or enumerate `Fin n` merely to shorten a proof.
- Prefer `Nat`-indexed traces and explicit finite-support witness sets for long
hybrids. Keep dependent transcript values out of instance search.
Expand Down
Loading