Skip to content

feat(AlgebraicGeometry): category of schemes affine over a base#34015

Open
erdOne wants to merge 10 commits intoleanprover-community:masterfrom
erdOne:erd1/affineOver
Open

feat(AlgebraicGeometry): category of schemes affine over a base#34015
erdOne wants to merge 10 commits intoleanprover-community:masterfrom
erdOne:erd1/affineOver

Conversation

@erdOne
Copy link
Member

@erdOne erdOne commented Jan 15, 2026


Open in Gitpod

@github-actions
Copy link

github-actions bot commented Jan 15, 2026

PR summary c5134ef9dc

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.AlgebraicGeometry.Morphisms.Affine 2240 2246 +6 (+0.27%)
Import changes for all files
Files Import difference
5 files Mathlib.AlgebraicTopology.ModelCategory.Over Mathlib.CategoryTheory.Limits.Constructions.Over.Basic Mathlib.CategoryTheory.Limits.Constructions.Over.Connected Mathlib.CategoryTheory.Limits.MorphismProperty Mathlib.CategoryTheory.Limits.Shapes.Pullback.EquifiberedLimits
1
Mathlib.AlgebraicGeometry.Sites.Etale 4
Mathlib.AlgebraicGeometry.Morphisms.FlatDescent Mathlib.AlgebraicGeometry.Morphisms.FlatMono 5
30 files Mathlib.AlgebraicGeometry.AffineSpace Mathlib.AlgebraicGeometry.AffineTransitionLimit Mathlib.AlgebraicGeometry.Artinian Mathlib.AlgebraicGeometry.Cover.QuasiCompact Mathlib.AlgebraicGeometry.Fiber Mathlib.AlgebraicGeometry.IdealSheaf.Functorial Mathlib.AlgebraicGeometry.Morphisms.AffineAnd Mathlib.AlgebraicGeometry.Morphisms.Affine Mathlib.AlgebraicGeometry.Morphisms.ClosedImmersion Mathlib.AlgebraicGeometry.Morphisms.Descent Mathlib.AlgebraicGeometry.Morphisms.Etale Mathlib.AlgebraicGeometry.Morphisms.Finite Mathlib.AlgebraicGeometry.Morphisms.Flat Mathlib.AlgebraicGeometry.Morphisms.FormallyUnramified Mathlib.AlgebraicGeometry.Morphisms.Immersion Mathlib.AlgebraicGeometry.Morphisms.Integral Mathlib.AlgebraicGeometry.Morphisms.Proper Mathlib.AlgebraicGeometry.Morphisms.QuasiFinite Mathlib.AlgebraicGeometry.Morphisms.Separated Mathlib.AlgebraicGeometry.Morphisms.Smooth Mathlib.AlgebraicGeometry.Morphisms.UniversallyClosed Mathlib.AlgebraicGeometry.Morphisms.UniversallyOpen Mathlib.AlgebraicGeometry.Noetherian Mathlib.AlgebraicGeometry.PointsPi Mathlib.AlgebraicGeometry.ProjectiveSpectrum.Proper Mathlib.AlgebraicGeometry.QuasiAffine Mathlib.AlgebraicGeometry.RationalMap Mathlib.AlgebraicGeometry.Sites.QuasiCompact Mathlib.AlgebraicGeometry.SpreadingOut Mathlib.AlgebraicGeometry.ValuativeCriterion
6
Mathlib.AlgebraicGeometry.AffineOver (new file) 2278

Declarations diff

+ CoequifiberedAlgCat
+ CoequifiberedAlgCat.gluingData
+ CoequifiberedAlgCat.ι_gluingData_toBase
+ CoequifiberedAlgCatEquivOver
+ CoequifiberedAlgCatEquivOver_inverse_map_unop_hom_right_app
+ CoequifiberedAlgCatEquivOver_inverse_obj_unop_obj_hom_app
+ CoequifiberedAlgCatEquivOver_inverse_obj_unop_obj_right_map
+ CoequifiberedAlgCatEquivOver_inverse_obj_unop_obj_right_obj
+ CoequifiberedAlgCatEquivOver_unitIso_hom_app_unop_hom_right_app
+ CoequifiberedAlgCatForget
+ CoequifiberedAlgCatOfOver
+ CoequifiberedAlgCatRestrict
+ CoequifiberedAlgCatToOver
+ IsOpenImmersion.presheafIso
+ Scheme.AffineZariskiSite.preimage
+ image
+ instance : CreatesColimits X.CoequifiberedAlgCatForget
+ instance : HasColimits X.CoequifiberedAlgCat
+ instance : HasLimits (MorphismProperty.Over @IsAffineHom ⊤ X)
+ instance : PreservesLimits (MorphismProperty.Over.forget @IsAffineHom ⊤ X) := by
+ instance : PreservesLimits (MorphismProperty.Over.pullback @IsAffineHom ⊤ f) := by
+ instance : ReflectsLimits (MorphismProperty.Over.forget @IsAffineHom ⊤ X)
+ instance [IsConnected J] {B : C} : PreservesColimitsOfShape J (Under.forget B) := by
+ instance [IsConnected J] {B : C} : ReflectsColimitsOfShape J (Under.forget B) := by
+ instance [IsOpenImmersion f] :
+ instance {F : X.AffineZariskiSiteᵒᵖ ⥤ CommRingCat}
+ instance {X : Scheme.{u}} (F : X.CoequifiberedAlgCat) (U : X.AffineZariskiSite) :
+ instance {f : MorphismProperty.Over @IsAffineHom ⊤ X} : IsAffineHom f.hom := f.prop
+ isLimitOverOfOpenCover
+ relativeGluingData_toBase_preimage

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

@sgouezel sgouezel removed their assignment Jan 19, 2026
@erdOne erdOne added the t-algebraic-geometry Algebraic geometry label Jan 20, 2026
@mathlib4-merge-conflict-bot mathlib4-merge-conflict-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 Jan 20, 2026
@mathlib4-merge-conflict-bot
Copy link
Collaborator

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 Jan 20, 2026
congr 1
refine hc₁.hom_ext fun i ↦ ?_
dsimp
erw [← (α.app i).right.naturality_assoc, hc₂.fac]
Copy link
Contributor

Choose a reason for hiding this comment

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

This erw, the two noted defeq abuses earlier in the proof, and the length of the proof, suggest to me that we should try to build some small custom API and break it down into smaller pieces. Do you think this is feasible?

Copy link
Member Author

Choose a reason for hiding this comment

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

I have removed this proof.

Comment on lines 53 to 55
This is essentially the category of quasi-coherent `𝒪ₓ`-algebras.
Also see `Scheme.preservesLocalizationCatEquivOver` for the (contravariant) equivalence to
affine `X`-schemes. -/
Copy link
Contributor

Choose a reason for hiding this comment

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

"essentially" -- is this the official mathlib definition of the category of quasi-coherent 𝒪ₓ-algebras, or does that definition exist elsewhere, or are there plans to add it?

Copy link
Member Author

Choose a reason for hiding this comment

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

We are quite far from the "official mathlib definition" so we can only make do with this ad-hoc definition for the time being. I think this is fine because once we have the "official definition" we would still want to show that it is isomorphic to this category and then use the API here.

@dagurtomas dagurtomas added the awaiting-author A reviewer has asked the author a question or requested changes. label Jan 22, 2026
Co-authored-by: Dagur Asgeirsson <dagurtomas@gmail.com>
@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 Feb 4, 2026
@mathlib-merge-conflicts
Copy link

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 Feb 6, 2026
@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 Feb 6, 2026
@mathlib-merge-conflicts
Copy link

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 Feb 6, 2026
@erdOne erdOne removed the awaiting-author A reviewer has asked the author a question or requested changes. label Feb 7, 2026
@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 Feb 11, 2026
@mathlib-merge-conflicts
Copy link

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 Feb 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

t-algebraic-geometry Algebraic geometry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants