saturate, Module, Ideal is broken
- Dominant language
- Macaulay2
- Stars
- 435
- Forks
- 297
- Avg merge
- 4d 20h
- Merged PRs (30d)
- 11
Description
saturate(M,J) should form a presentation M = F/R, with F free, and return F/R', where R' = R: J^\infty.
I *think* that what it is actually doing is ignoring J and returning F/R'', where R'' = R:(ideal vars R)^\infty.
for example, the following fails (aturate(M, ideal(c,d,e)) should return S^1/ideal(a,b).
kk =ZZ/101
S = kk[a..e]
I = intersect(ideal(a,b), ideal(c,d,e))
M = S^1/I
assert (saturate(M, ideal(c,d,e)) == S^1/ideal(a,b))
@mahrud
Because of this, topComponents, Module is also not working.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the reproducer in the issue and trace the implementation of saturate for Module objects, checking how the supplied ideal is used. Verify the assertion for S^1/ideal(a,b), then investigate the reported topComponents, Module failure and add or run coverage for both behaviors.
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
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100