Macaulay2 / Macaulay2/M2

issues with Hom(CoherentSheaf, CoherentSheaf) for sheaves with zero-dimensional support

Open
#3,954 2 comments 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

The following Hom calculation is giving `error: matrix not invertible`:
```
S = QQ[x,y,z]
P = sheaf comodule ideal(x, y)
M = sheaf comodule ideal(x^2, y^2)
Hom(M,P)
```
The issue is that `Hom(M,P)` is calculating `prune sheafHom(module M, module P)` and trying to invert the pruning map, which it can't because it calculated the pruning map as multiplication by $z^2$. (Mathematically, `sheafH(M,P)` is supported at the point $[0,0,1]$, so $z^2$ is a unit on this module.)

I think this is really only a problem in the zero-dimensional case, because the point is that $
\sheafHom(module M, module P)$ is giving us $\mathrm{coker}\ (x\,y)$ in degree 2, and prune is giving us the same module but in degree 0. These are isomorphic because the support is zero-dimensional, so shifting the grading doesn't change the sheaf. So here prune is doing something "unnecessary" and which can't be inverted... (The code above works if $S = QQ[x,y,z,w]$.)

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 issue with the supplied QQ[x,y,z] example, then trace the Hom(M,P) path through sheafHom and prune, focusing on the pruning map inversion. Compare the failing three-variable case with the working QQ[x,y,z,w] case; done means the zero-dimensional-support calculation no longer reports a non-invertible matrix.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.