Macaulay2 / Macaulay2/M2

Possible Chern class computation error when pushing forward O(1)

Open
#2,658 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

package issue
Dominant language
Macaulay2
Stars
435
Forks
297
Avg merge
4d 20h
Merged PRs (30d)
11

Description

I have the following code:

loadPackage "Schubert2"
B=base(5,Bundle=>(E,2,"c"))
BR=intersectionRing(B)
PSym2E=projectiveBundle(symmetricPower(2,E))
PSym2ER=intersectionRing(PSym2E)
gamma=PSym2E.StructureMap
chern(gamma_*OO_PSym2E(1))
chern(dual(symmetricPower(2,E)))
chern(symmetricPower(2,E))

Since projectiveBundle uses the classical (Fulton) convention, it should be that gamma_*OO_PSym2E(1)=dual(symmetricPower(2,E)), and thus chern(gamma_*OO_PSym2E(1))=chern(dual(symmetricPower(2,E))), but we get the following two outputs instead:

chern(gamma_*OO_PSym2E(1))=1+6*c1+(11*c1^2+4*c2)+(6*c1^3+8*c1*c2),
chern(dual(symmetricPower(2,E)))= 1-3*c1+(2*c1^2+4*c2)-4*c1*c2.

Just to double check that it wasn't just a sign convention issue, we also have

chern(symmetricPower(2,E))=1+3*c1+(2*c1^2+4*c2)+4*c1*c2.

I did the computation by hand, and I got

chern(dual(symmetricPower(2,E)))= 1-3*c1+(2*c1^2+4*c2)-4*c1*c2, 

so it seems to me that there is some issue with forming the bundle gamma_*OO_PSym2E(1).

This may be related to this issue: https://github.com/Macaulay2/M2/issues/330

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the provided Macaulay2 snippet using the Schubert2 package, focusing on projectiveBundle, StructureMap, and the pushforward of OO_PSym2E(1). Compare its Chern character with dual(symmetricPower(2,E)) and symmetricPower(2,E), then trace where the projective-bundle convention is handled. Done means the pushforward agrees with the stated Fulton convention or the discrepancy is explained and covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.