Skip to content

Conversation

@farmanb
Copy link

@farmanb farmanb commented Dec 29, 2025

This PR generalizes Submodule.colon to arguments of type Set M in the second slot and updates the surrounding API accordingly.

Main changes

  • Generalize Submodule.colon to take S : Set M rather than P : Submodule R M.
  • Normalize theorems/lemmas to use Set.univ instead of where appropriate.
  • Strengthen iInf_colon_iSup by removing an unnecessary commutativity assumption.
  • Update monotonicity and inclusion lemmas (e.g. _root_.Ideal.le_colon) to use set inclusions.
  • Add colon_bot' (CommSemiring): identify ⊥.colon S with the annihilator of Submodule.span R S.
  • Adjust annihilator-related proofs to account for the generalized colon, using explicit coercions such as Submodule.top_coe.

Open in Gitpod

blake-farman added 3 commits December 29, 2025 12:04
…alization

* Update IsTwoSided instance to apply only to submodules via coercion to sets.
* Normalize statements to use Set.univ (avoiding ⊤) and fix monotonicity arguments accordingly.
* Remove colon_inf_left in favor of direct use of iInf_colon_iSup.
* Rework colon_inf_eq_left_of_le to use the generalized API.
* Add colon_bot' (CommSemiring): identify ⊥.colon S with the annihilator of span S.
* Tidy annihilator lemmas (Submodule.top_coe) and related rewrites.
@github-actions github-actions bot added new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-ring-theory Ring theory labels Dec 29, 2025
@github-actions
Copy link

PR summary 63afe105e0

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ _root_.Ideal.mem_colon_span_singleton
+ colon_bot'
+ colon_eq_top_of_le
+ colon_inf_eq_left_of_le
+ instance (priority := low) (P : Submodule R M) : (N.colon (P : Set M)).IsTwoSided
+ mem_colon_singleton_set
+ mem_colon_span_singleton
- instance (priority := low) : (N.colon P).IsTwoSided

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 script/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).

@farmanb
Copy link
Author

farmanb commented Dec 29, 2025

WIP

@github-actions github-actions bot added the WIP Work in progress label Dec 29, 2025
@farmanb farmanb marked this pull request as ready for review December 30, 2025 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-ring-theory Ring theory WIP Work in progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant