Macaulay2 / Macaulay2/M2

Error in tensor(Ring, Ring, Join => false)

Open
#2,905 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Here's an unexpected error:
```m2
i1 : S1 = QQ[x,y, DegreeRank => 1];

i2 : S2 = QQ[x,y, DegreeRank => 2];

i3 : tensor(S1, S2, Join => false)
stdio:3:1:(3): error: with Join => false, expected degree map to return a list of length at most 1

i4 : tensor(S2, S1, Join => false)

o4 = QQ[x , y , x , y ]
0 0 1 1

o4 : PolynomialRing
```
Looking at the code, I can't figure out what was the intention here:
https://github.com/Macaulay2/M2/blob/5572c8a245d187f6c22f8eaa0b03cac0b8d86e02/M2/Macaulay2/m2/monoids.m2#L703-L705

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 two tensor calls from the issue, then inspect the linked monoids.m2 code around lines 703–705. Compare the degree-map behavior for the two ring orderings and determine the intended behavior for Join => false. Done should include a consistent result and a regression test for the reported examples.

Written by the indexing model from the issue text.

Assessment

Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.