Skip to content

[Merged by Bors] - feat(AlgebraicGeometry/Birational): composition of rational maps#39445

Closed
justus-springer wants to merge 37 commits into
leanprover-community:masterfrom
justus-springer:justus/rationalMap_composition
Closed

[Merged by Bors] - feat(AlgebraicGeometry/Birational): composition of rational maps#39445
justus-springer wants to merge 37 commits into
leanprover-community:masterfrom
justus-springer:justus/rationalMap_composition

Conversation

@justus-springer

@justus-springer justus-springer commented May 15, 2026

Copy link
Copy Markdown
Collaborator

@github-actions github-actions Bot added the t-algebraic-geometry Algebraic geometry label May 15, 2026
@github-actions

github-actions Bot commented May 15, 2026

Copy link
Copy Markdown

PR summary 99cf452522

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.AlgebraicGeometry.Birational.Composition (new file) 2464

Declarations diff (regex)

+ PartialMap.id_comp
+ RationalMap.id
+ RationalMap.id_comp
+ RationalMap.id_compHom
+ _root_.AlgebraicGeometry.Scheme.Hom.toPartialMap_compHom
+ compHom_id
+ comp_def
+ comp_equiv_of_equiv
+ comp_equiv_of_equiv_left
+ comp_equiv_of_equiv_right
+ comp_restrict_left
+ comp_restrict_right
+ comp_toPartialMap
+ comp_toRationalMap
+ equiv.refl
+ equiv.symm
+ equiv.trans
+ equiv_of_restrict_eq
+ id
+ id_compHom
+ instance (f : X ⟶ Y) [IsDominant f] : IsDominant f.toPartialMap.hom := by
+ instance (f : X ⤏ Y) [f.IsDominant] (g : Y ⤏ Z) [g.IsDominant] : (f.comp g).IsDominant := by
+ inv_preimage
+ isDominant_comp_hom
+ isOver_comp
+ toRationalMap_comp
++ comp
++ comp_assoc
++ comp_id

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.

Declarations diff (Lean)

Lean-aware diff — post-build, computed from the Lean environment (commit 89f3c49).

  • +36 new declarations
  • −0 removed declarations
+AlgebraicGeometry.Scheme.Hom.inv_preimage
+AlgebraicGeometry.Scheme.Hom.toPartialMap_compHom
+AlgebraicGeometry.Scheme.PartialMap.comp
+AlgebraicGeometry.Scheme.PartialMap.comp.congr_simp
+AlgebraicGeometry.Scheme.PartialMap.compHom_id
+AlgebraicGeometry.Scheme.PartialMap.comp_assoc
+AlgebraicGeometry.Scheme.PartialMap.comp_domain
+AlgebraicGeometry.Scheme.PartialMap.comp_equiv_of_equiv
+AlgebraicGeometry.Scheme.PartialMap.comp_equiv_of_equiv_left
+AlgebraicGeometry.Scheme.PartialMap.comp_equiv_of_equiv_right
+AlgebraicGeometry.Scheme.PartialMap.comp_hom
+AlgebraicGeometry.Scheme.PartialMap.comp_id
+AlgebraicGeometry.Scheme.PartialMap.comp_restrict_left
+AlgebraicGeometry.Scheme.PartialMap.comp_restrict_right
+AlgebraicGeometry.Scheme.PartialMap.comp_toPartialMap
+AlgebraicGeometry.Scheme.PartialMap.equiv.refl
+AlgebraicGeometry.Scheme.PartialMap.equiv.symm
+AlgebraicGeometry.Scheme.PartialMap.equiv.trans
+AlgebraicGeometry.Scheme.PartialMap.equiv_of_restrict_eq
+AlgebraicGeometry.Scheme.PartialMap.id
+AlgebraicGeometry.Scheme.PartialMap.id_comp
+AlgebraicGeometry.Scheme.PartialMap.id_compHom
+AlgebraicGeometry.Scheme.PartialMap.instIsDominantHomToPartialMap
+AlgebraicGeometry.Scheme.PartialMap.isDominant_comp_hom
+AlgebraicGeometry.Scheme.RationalMap.comp
+AlgebraicGeometry.Scheme.RationalMap.comp.congr_simp
+AlgebraicGeometry.Scheme.RationalMap.comp_assoc
+AlgebraicGeometry.Scheme.RationalMap.comp_def
+AlgebraicGeometry.Scheme.RationalMap.comp_id
+AlgebraicGeometry.Scheme.RationalMap.comp_toRationalMap
+AlgebraicGeometry.Scheme.RationalMap.id
+AlgebraicGeometry.Scheme.RationalMap.id_comp
+AlgebraicGeometry.Scheme.RationalMap.id_compHom
+AlgebraicGeometry.Scheme.RationalMap.instIsDominantComp
+AlgebraicGeometry.Scheme.RationalMap.isOver_comp
+AlgebraicGeometry.Scheme.RationalMap.toRationalMap_comp

Increase in strong tech debt: (relative, absolute) = (11.00, 0.00)
Current number Change Type (strong)
4532 11 backward.defeqAttrib.useBackward
Increase in weak tech debt: (relative, absolute) = (1.00, 0.00)
Current number Change Type (weak)
4976 1 exposed public sections

Current commit 99cf452522
Reference commit b2b4255167

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/scripts/reporting/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).

justus-springer and others added 10 commits May 21, 2026 13:29
Co-authored-by: Christian Merten <christian@merten.dev>
Co-authored-by: Christian Merten <christian@merten.dev>
Co-authored-by: Christian Merten <christian@merten.dev>
Co-authored-by: Christian Merten <christian@merten.dev>
mathlib-bors Bot pushed a commit that referenced this pull request May 27, 2026
Add a predicate `RationalMap.IsDominant` and add basic API. This is in preparation for defining composition of rational maps (see #39445). See also [stacks#01RR](https://stacks.math.columbia.edu/tag/01RR).

- [x] depends on: #39316
- [x] depends on: #39656
mathlib-bors Bot pushed a commit that referenced this pull request May 27, 2026
These will be used later to define composition of rational maps in #39445.
@mathlib-merge-conflicts mathlib-merge-conflicts Bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label May 30, 2026
@mathlib-merge-conflicts

Copy link
Copy Markdown

This pull request has conflicts, please merge master and resolve them.

@github-actions github-actions Bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label May 30, 2026
grunweg pushed a commit to grunweg/mathlib4 that referenced this pull request May 30, 2026
…r-community#39317)

Add a predicate `RationalMap.IsDominant` and add basic API. This is in preparation for defining composition of rational maps (see leanprover-community#39445). See also [stacks#01RR](https://stacks.math.columbia.edu/tag/01RR).

- [x] depends on: leanprover-community#39316
- [x] depends on: leanprover-community#39656
grunweg pushed a commit to grunweg/mathlib4 that referenced this pull request May 30, 2026
b-mehta pushed a commit to b-mehta/mathlib4 that referenced this pull request Jun 2, 2026
…r-community#39317)

Add a predicate `RationalMap.IsDominant` and add basic API. This is in preparation for defining composition of rational maps (see leanprover-community#39445). See also [stacks#01RR](https://stacks.math.columbia.edu/tag/01RR).

- [x] depends on: leanprover-community#39316
- [x] depends on: leanprover-community#39656
b-mehta pushed a commit to b-mehta/mathlib4 that referenced this pull request Jun 2, 2026
@justus-springer justus-springer added awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. and removed awaiting-author A reviewer has asked the author a question or requested changes. labels Jun 27, 2026
@github-actions github-actions Bot added merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) and removed awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. labels Jun 27, 2026
@github-actions github-actions Bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jun 28, 2026
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label Jun 30, 2026

@chrisflav chrisflav left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Modulo the remaining question above, LGTM!

@justus-springer justus-springer added awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. and removed awaiting-author A reviewer has asked the author a question or requested changes. labels Jun 30, 2026
@github-actions github-actions Bot removed the awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. label Jun 30, 2026
@chrisflav

Copy link
Copy Markdown
Member

Thanks!
maintainer merge

@github-actions

Copy link
Copy Markdown

🚀 Pull request has been placed on the maintainer queue by chrisflav.

@mathlib-triage mathlib-triage Bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Jun 30, 2026
@riccardobrasca

Copy link
Copy Markdown
Member

Thanks!

bors merge

@mathlib-bors mathlib-bors Bot added the ready-to-merge This PR has been sent to bors. label Jul 10, 2026
@mathlib-triage mathlib-triage Bot removed the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Jul 10, 2026
mathlib-bors Bot pushed a commit that referenced this pull request Jul 10, 2026
)

Define composition of partial and rational maps.

- [x] depends on: #39442
- [x] depends on: #39443
- [x] depends on: #39317
- [x] depends on: #40189
@mathlib-bors mathlib-bors Bot added the bors-staging This PR is currently being built by bors on the staging branch. label Jul 10, 2026
@mathlib-bors

mathlib-bors Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

@mathlib-bors mathlib-bors Bot changed the title feat(AlgebraicGeometry/Birational): composition of rational maps [Merged by Bors] - feat(AlgebraicGeometry/Birational): composition of rational maps Jul 10, 2026
@mathlib-bors mathlib-bors Bot closed this Jul 10, 2026
Kha added a commit to leanprover-community/mathlib4-nightly-testing that referenced this pull request Jul 11, 2026
…parency`

Master's leanprover-community#39445 (composition of rational maps) added `RationalMap.id_compHom` /
`equiv.refl` and the whole `Birational/Composition` file, none of which carry a
nightly guard. Without one the defeq is not accepted at `implicit` transparency,
so `simp`/`simp_rw` are left with goals like `⊤.ι ≫ f = 𝟙 _ ≫ ⊤.ι ≫ f` and even
`f.hom = f.hom`.

Add `set_option backward.isDefEq.respectTransparency false in` to the affected
declarations, as the rest of these files already do. With the guard in place
`simp_rw` closes `comp_toPartialMap` outright, so its trailing `rfl` is now
dead and is removed.
michaellee94 pushed a commit to michaellee94/mathlib4 that referenced this pull request Jul 11, 2026
mpacholski pushed a commit to mpacholski/mathlib4 that referenced this pull request Jul 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bors-staging This PR is currently being built by bors on the staging branch. ready-to-merge This PR has been sent to bors. t-algebraic-geometry Algebraic geometry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants