map not homogeneous
Macaulay2, version 1.14
with packages: ConwayPolynomials, Elimination, IntegralClosure, InverseSystems, LLLBases, PrimaryDecomposition, ReesAlgebra, TangentCone, Truncations
i1 : S=QQ[x_1..x_3]
o1 = S
o1 : PolynomialRing
i2 : F=S^{2,0}
2
o2 = S
o2 : S-module, free, degrees {-2, 0}
i3 : f_1=(x_1^3+x_1*x_2^2)*F_0
o3 = | x_1^3+x_1x_2^2 |
| 0 |
2
o3 : S
i4 : f_2=(x_1^2*x_3)*F_0+x_1*F_1
o4 = | x_1^2x_3 |
| x_1 |
2
o4 : S
i5 : f_3=(x_2*x_3^2)*F_1
o5 = | 0 |
| x_2x_3^2 |
2
o5 : S
i6 : isHomogeneous f_1
o6 = true
i7 : isHomogeneous f_2
o7 = true
i8 : isHomogeneous f_3
o8 = true
i9 : genM=matrix{f_1,f_2,f_3}
o9 = {-2} | x_1^3+x_1x_2^2 x_1^2x_3 0 |
{0} | 0 x_1 x_2x_3^2 |
2 3
o9 : Matrix S <--- S
i10 : isHomogeneous oo
o10 = false <<<<==========
i11 : source o9
3
o11 = S
o11 : S-module, free
Isn't this already raised in #607 and #736? I mostly did it in #924 but used tensoring as a shift operator somewhat lower in the stack, and that seemed to cause a slight performance hit.
A quick workaround would be to implement the shift operator for free modules on the engine level, expose it, and use it. Let me know if that's something you'd want to add.
I think #607 and #736 are related but don't include what's reported here.
If you want to volunteer to fix it, I'll assign the task to you, gladly.
By the way, I don't see how "the shift operator for free modules on the engine level" would help in this. It would be enough to set the degrees of the basis elements of the source of the map appropriately, and that can easily be done at top level.
Hi Dan, I wanted to use a shift operator to replace the tensor operator I used in this line: https://github.com/Macaulay2/M2/pull/924/files#diff-ed9184bbe9534e118783b9f1208967daR378.
You can assign it to me — I'll pick up from where I left.
How does that shift operator help, though? The source degrees take various values.
I meant shift by a multi degree, sorry. In that case, to shift by (d_1..d_n) would have the exact same effect as to tensor product with R^{d_1..d_n}, up to degree sign, just cheaper. Anyway, I'll have to take a look again. Thanks!