Skip to content

feat: a non-terminal simp linter#11246

Closed
adomani wants to merge 21 commits intomasterfrom
adomani/ntsLinter
Closed

feat: a non-terminal simp linter#11246
adomani wants to merge 21 commits intomasterfrom
adomani/ntsLinter

Conversation

@adomani
Copy link
Copy Markdown
Contributor

@adomani adomani commented Mar 8, 2024

An implementation of a syntax+InfoTrees linter checking for non-terminal simps.

The linter equates "non-terminal" with "does not strictly decrease the number of goals".

Accompanying PRs squeezing a few of the simps flagged by the linter:

Zulip threads:


Open in Gitpod

@adomani adomani added awaiting-review t-meta Tactics, attributes or user commands labels Mar 8, 2024
mathlib-bors bot pushed a commit that referenced this pull request Mar 8, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
mathlib-bors bot pushed a commit that referenced this pull request Mar 10, 2024
The squeezing continues!  All found by the linter at #11246.
@adomani adomani force-pushed the adomani/ntsLinter branch from 950732f to de6d27f Compare March 11, 2024 18:02
@adomani adomani force-pushed the adomani/ntsLinter branch from de6d27f to 71263f3 Compare March 11, 2024 18:05
kbuzzard pushed a commit that referenced this pull request Mar 12, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
kbuzzard pushed a commit that referenced this pull request Mar 12, 2024
The squeezing continues!  All found by the linter at #11246.
@alexjbest
Copy link
Copy Markdown
Member

This is great!

Is it possible to add a whitelist for some following tactics, for instance it has been agreed on zulip in the past that some patterns like simp; ring shouldn't really count as nonterminal simps as if ring solved the goal before then even if the simp normal form changes a bit ring should still close it (I'm not actually sure if this is 100% true, but it feels like simp; ring is indeed a maintainable pattern)

dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
The squeezing continues!  All found by the linter at #11246.
utensil pushed a commit that referenced this pull request Mar 26, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
utensil pushed a commit that referenced this pull request Mar 26, 2024
The squeezing continues!  All found by the linter at #11246.
@ghost ghost added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Apr 7, 2024
xgenereux pushed a commit that referenced this pull request Apr 15, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
xgenereux pushed a commit that referenced this pull request Apr 15, 2024
The squeezing continues!  All found by the linter at #11246.
uniwuni pushed a commit that referenced this pull request Apr 19, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
uniwuni pushed a commit that referenced this pull request Apr 19, 2024
The squeezing continues!  All found by the linter at #11246.
callesonne pushed a commit that referenced this pull request Apr 22, 2024
This PR accompanies #11246, squeezing some non-terminal `simp`s highlighted by the linter until I decided to stop!
callesonne pushed a commit that referenced this pull request Apr 22, 2024
The squeezing continues!  All found by the linter at #11246.
@joneugster
Copy link
Copy Markdown
Contributor

@adomani: Am I correct that this hass been addressed by the "flexible linter" and therefore this PR can be closed?

Please reopen if I missunderstood that!

@joneugster joneugster closed this Sep 11, 2024
@adomani
Copy link
Copy Markdown
Contributor Author

adomani commented Sep 11, 2024

This is correct: this PR was one of the first iterations of the flexible linter.

@YaelDillies YaelDillies deleted the adomani/ntsLinter branch August 12, 2025 05:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) t-meta Tactics, attributes or user commands

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants