Skip to content

Update Rocq to 9.2.0#832

Merged
stepchowfun merged 4 commits into
mainfrom
update-rocq-9.2.0
Jul 2, 2026
Merged

Update Rocq to 9.2.0#832
stepchowfun merged 4 commits into
mainfrom
update-rocq-9.2.0

Conversation

@stepchowfun

Copy link
Copy Markdown
Owner

Update the Rocq pins from 9.0.0 to rocq-core 9.2.0 and rocq-stdlib 9.1.0 (the stdlib is now versioned independently of the prover core; rocq-prover moves to its meta.1 marker version). The upgrade entails:

  • Removing the Loose Hint Behavior flag, which no longer exists in 9.2, from _RocqProject and the lint commands.
  • Adapting proofs in icbics.v, local_closure.v, and opening.v: the search tactic now closes goals under 9.2 that previously required manual steps, so those steps became dead code that the ! goal selector rejects.
  • Importing Stdlib.Vectors.FinFun in icbics.v, since Permutation_nth moved there.
  • Explicitly creating the main hint databases (regular and rewrite) in tactics.v, and generating the rewriting schemes for the tutorial's custom equality via Scheme Rewriting for eq in lesson3_logic.v — implicit creation of both is deprecated since 9.2. The generated eq_sym scheme shadows Logic.eq_sym, so one use is now qualified. The implicit-creation warnings are escalated to errors so lint-imports recognizes hint-database dependencies (this is also why kleene_data.v now requires main.tactics instead of implicitly creating the databases).
  • Removing ten Require imports across nine files that the new stdlib renders unnecessary (flagged by lint-imports).

Verified locally: clean make with zero warnings, tagref, lint-general, and both lint-imports passes.

Status: Ready

Fixes: N/A

🤖 Generated with Claude Code

stepchowfun and others added 4 commits July 2, 2026 12:31
Pin rocq-core 9.2.0 and rocq-stdlib 9.1.0 (the stdlib is now versioned
independently of the prover core). This entails:

- Removing the 'Loose Hint Behavior' flag, which no longer exists.
- Adapting proofs in icbics.v, local_closure.v, and opening.v, where the
  stronger 'search' tactic now closes goals that previously required
  manual steps.
- Importing Stdlib.Vectors.FinFun in icbics.v, where Permutation_nth
  moved.
- Explicitly creating the 'main' hint databases in tactics.v and
  generating the rewriting schemes for the custom equality in
  lesson3_logic.v, as implicit creation is deprecated since 9.2. The
  implicit-creation warnings are escalated to errors so that
  lint-imports recognizes hint-database dependencies.
- Removing imports that are no longer needed with the new stdlib.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Unlike "9.0.0", opam doesn't recognize "meta.1" as a version, so
without an explicit kind it interprets the pin target as a path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The build is warning-free, so this enforces that it stays that way.
This subsumes the implicit-create-hint-db escalations and also turns
unknown options, deprecated definitions, etc. into hard errors.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
'Printing Primitive Projection Parameters' is off by default.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@stepchowfun stepchowfun merged commit 96f9281 into main Jul 2, 2026
1 check passed
@stepchowfun stepchowfun deleted the update-rocq-9.2.0 branch July 2, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant