Homogeneity bug in basis(..., SourceRing => ...)
Nobody has claimed this yet.
- Dominant language
- Macaulay2
- Stars
- 435
- Forks
- 297
- Avg merge
- 4d 20h
- Merged PRs (30d)
- 11
Description
Starting with the same example as in #3077:
```m2
needsPackage "ReesAlgebra"
kk = ZZ/101;
S = kk[x_0..x_4]
I = trim monomialCurveIdeal(S, {2,3,5,6})
R = reesAlgebra I
```
It seems like `basis` loses homogeneity:
```m2
M = R^1
i = 1
B = basis(i, M, SourceRing => S)
isHomogeneous B -- false!!
```
The target (at least in this case) is fine, but the source is wrong:
```m2
source basis(i, M) -- R^7, free, degrees {3:{1, 2}, 4:{1, 3}}
source B -- S^7, free, degrees {7:{0}}
```
So the issue stems from here:
https://github.com/Macaulay2/M2/blob/776fd94fa0060f047234ac837464962d3581609f/M2/Macaulay2/m2/basis.m2#L73-L81
presumably because `DegreeLift` isn't defined in the ring map ... but which ring map? This ring map that the user can't provide:
https://github.com/Macaulay2/M2/blob/776fd94fa0060f047234ac837464962d3581609f/M2/Macaulay2/m2/basis.m2#L200-L203
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the example in the issue, then read M2/Macaulay2/m2/basis.m2 around lines 73-81 and 200-203, focusing on the internal ring map and DegreeLift behavior. The fix is complete when basis(i, M, SourceRing => S) preserves homogeneity and the source degrees match the homogeneous basis shown by source basis(i, M).
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
- 48/100