Skip to content

Comments

chore: avoid passing explicit lemmas to grind and (terminal) simp_all where unnecessary#35693

Open
euprunin wants to merge 1 commit intoleanprover-community:masterfrom
euprunin:golf-dcxii
Open

chore: avoid passing explicit lemmas to grind and (terminal) simp_all where unnecessary#35693
euprunin wants to merge 1 commit intoleanprover-community:masterfrom
euprunin:golf-dcxii

Conversation

@euprunin
Copy link
Collaborator

The goal of this PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.

Trace profiling results (differences <30 ms considered measurement noise):

  • SimpleGraph.Walk.IsCycle.getVert_injOn: 684 ms before, 596 ms after 🎉
  • List.HasPeriod.gcd: 846 ms before, 807 ms after 🎉
  • List.Sublist.orderedInsert_sublist: unchanged 🎉
  • Affine.Simplex.exists_forall_dist_eq_iff_exists_excenterExists_and_eq_excenter: unchanged 🎉
  • Matrix.pow_apply_pos_iff_nonempty_path: unchanged 🎉
  • RootPairing.Hom.coweightHom_injective: unchanged 🎉
  • RootPairing.isReduced_iff': unchanged 🎉
  • Set.Ico_eq_Ico_iff: unchanged 🎉
  • Set.Ioc_eq_Ioc_iff: unchanged 🎉

Profiled using set_option trace.profiler true in.

This PR is batched under the following guidelines:

  • Up to ~5 changed files per PR
  • Up to ~25 changed declarations per PR
  • Up to ~100 changed lines per PR

Open in Gitpod

@github-actions
Copy link

github-actions bot commented Feb 23, 2026

PR summary 82ad986957

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

No declarations were harmed in the making of this PR! 🐙

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for scripts/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

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