Skip to content

feat(AlgebraicGeometry): Pushforward of algebraic cycles#26304

Open
Raph-DG wants to merge 2 commits into
leanprover-community:masterfrom
Raph-DG:Raph-DG-AlgebraicCycle
Open

feat(AlgebraicGeometry): Pushforward of algebraic cycles#26304
Raph-DG wants to merge 2 commits into
leanprover-community:masterfrom
Raph-DG:Raph-DG-AlgebraicCycle

Conversation

@Raph-DG
Copy link
Copy Markdown
Collaborator

@Raph-DG Raph-DG commented Jun 23, 2025

In this PR we define a notion of the "pushfoward of functions with locally finite support". We give this PR the suggestive title "pushforward of algebraic cycles" because we will go on to model algebraic cycles on a scheme X as functions from X to the integers with locally finite support.


Open in Gitpod

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 23, 2025

PR summary 4bea9a0394

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.Topology.LocallyFinsupp.Pushforward (new file) 938

Declarations diff

+ coe_mk
+ map
+ map_apply
+ map_homogeneous
+ map_id
+ toFun_eq_coe

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.


No changes to strong technical debt.
No changes to weak technical debt.

@mathlib4-dependent-issues-bot mathlib4-dependent-issues-bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Jun 23, 2025
@Raph-DG Raph-DG added the RFC Request for comment label Jun 23, 2025
@leanprover-community-bot-assistant
Copy link
Copy Markdown
Collaborator

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

@leanprover-community-bot-assistant leanprover-community-bot-assistant added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jul 27, 2025
@grunweg grunweg added the t-algebraic-geometry Algebraic geometry label Aug 4, 2025
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
@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 18, 2026
@mathlib-dependent-issues mathlib-dependent-issues Bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Feb 18, 2026
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp.lean
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
Comment thread Mathlib/AlgebraicGeometry/AlgebraicCycle.lean Outdated
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label Feb 24, 2026
@mathlib-dependent-issues mathlib-dependent-issues Bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Feb 26, 2026
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label Feb 26, 2026
@chrisflav
Copy link
Copy Markdown
Member

After some discussion with Andrew, the following is my suggestion for this PR:

  • Define a pushforward for Function.locallyFinsupp for prespectral and sober topological spaces taking a weight function as an argument X → R, which is what replaces the mapAux (the proof might require some more topological assumptions, of which we can of course assume the ones that are true in the application).
  • Given s : Set X, t : Set Y and a Function.locallyFinsupp with support in s, there should be a lemma showing that, under some compatibility with the weights, the image of the pushforward has support in t.
  • This will then induce a map between the "homogeneous cycles", which is just the additive submonoid of cycles with support in a given set.

In the next PR, I would suggest to:

  • Add the abbrev for AlgebraicCycle as it is done here.
  • Define the weights function for a morphism of schemes as you do here, but make it Nat-valued. This will still allow to apply the above construction by coercing the Nats to elements of the coefficient ring.
  • Remove Grading and HasDegree.

@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label Mar 7, 2026
mathlib-bors Bot pushed a commit that referenced this pull request Mar 12, 2026
…lyFinsuppWithin (#35807)

In this PR, we generalised the various instances for locally fin supp functions. These changes were originally made on the PR #26304 about algebraic cycles, but it was decided that these changes are more appropriate in their own PR.

Co-authored-by: Raph-DG <raphaeldouglasgiles@gmail.com>
@mathlib-merge-conflicts
Copy link
Copy Markdown

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

@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 Mar 12, 2026
@mathlib-dependent-issues mathlib-dependent-issues Bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Mar 12, 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 Mar 25, 2026
@Raph-DG Raph-DG removed awaiting-author A reviewer has asked the author a question or requested changes. RFC Request for comment labels Apr 1, 2026
@Raph-DG Raph-DG changed the title feat(AlgebraicGeometry): Definition of algebraic cycles feat(AlgebraicGeometry): Pushforward of algebraic cycles Apr 8, 2026
@Raph-DG
Copy link
Copy Markdown
Collaborator Author

Raph-DG commented Apr 22, 2026

After some discussion with Andrew, the following is my suggestion for this PR:

  • Define a pushforward for Function.locallyFinsupp for prespectral and sober topological spaces taking a weight function as an argument X → R, which is what replaces the mapAux (the proof might require some more topological assumptions, of which we can of course assume the ones that are true in the application).
  • Given s : Set X, t : Set Y and a Function.locallyFinsupp with support in s, there should be a lemma showing that, under some compatibility with the weights, the image of the pushforward has support in t.
  • This will then induce a map between the "homogeneous cycles", which is just the additive submonoid of cycles with support in a given set.

In the next PR, I would suggest to:

  • Add the abbrev for AlgebraicCycle as it is done here.
  • Define the weights function for a morphism of schemes as you do here, but make it Nat-valued. This will still allow to apply the above construction by coercing the Nats to elements of the coefficient ring.
  • Remove Grading and HasDegree.

What's here I think fulfils this, but I now think it's probably more sensible design-wise to directly use Function.locallyFinsuppWithin to talk about locally finsupp functions with support in s. I'm temporarily making this PR WIP to try and do such a refactor.

Edit: Christian already knows this, but for anyone else who happens to be reading this, we realised this idea does not quite work so I've reverted this to the state it was in before I attempted the refactor and have removed the WIP label

@Raph-DG Raph-DG added WIP Work in progress and removed WIP Work in progress labels Apr 22, 2026
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean
@joelriou joelriou added the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 28, 2026
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 28, 2026
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 30, 2026
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label May 1, 2026
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label May 1, 2026
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label May 4, 2026
Comment thread Mathlib/Topology/Compactness/Compact.lean Outdated
Comment thread Mathlib/Topology/Spectral/ConstructibleTopology.lean Outdated
Comment thread Mathlib/Topology/Spectral/ConstructibleTopology.lean Outdated
Comment thread Mathlib/Topology/Spectral/ConstructibleTopology.lean Outdated
Comment on lines +161 to +163
instance [PrespectralSpace X] [T0Space X] [QuasiSober X] :
T2Space <| WithConstructibleTopology X where
t2 := by
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.

If I remember correctly, I showed you how to rewrite this using wlog some time ago, but this proof looks like the old one. Could you please restore the wlog version or is that lost in time?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Yes unfortunately I couldn't find this old version of the lemma (in fact I couldn't find the other proof either, I just rewrote this and I suppose I made the same mistake again). I'll try and rewrite it using wlog, but I'm a little bit hazy on the details of how that improvement to the code went tbh

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

I had a go using wlog for this proof. I think what's there is definitely conceptually cleaner and there is less repetition, but it's still less clean than I remember the proof you showed me

Comment thread Mathlib/Topology/Spectral/ConstructibleTopology.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label May 8, 2026
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label May 11, 2026
Comment thread Mathlib/Topology/Spectral/ConstructibleTopology.lean Outdated
Comment thread Mathlib/Topology/LocallyFinsupp/Pushforward.lean Outdated
@chrisflav chrisflav added the awaiting-author A reviewer has asked the author a question or requested changes. label May 20, 2026
@Raph-DG Raph-DG force-pushed the Raph-DG-AlgebraicCycle branch 3 times, most recently from 9bb061e to d5f980c Compare May 21, 2026 19:31
@Raph-DG Raph-DG removed the awaiting-author A reviewer has asked the author a question or requested changes. label May 21, 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.

6 participants