Opened 19 months ago

Closed 19 months ago

# support for weighted term orders in normal_basis

Reported by: Owned by: gh-mwageringel minor sage-9.1 commutative algebra singular klee, tscrim, heluani Markus Wageringel Travis Scrimshaw N/A f0604bd f0604bdabdea49d78d8312615b3722f4566702b4

### Description

As a follow-up to #29543, this ticket changes the `normal_basis` method of ideals to handle the case of weighted term orders.

With this change, the degree of the monomials in the normal basis is taken with respect to the weighted degree (which agrees with Sage's notion of degree).

```sage: R.<x,y,z> = PolynomialRing(QQ, order=TermOrder('wdegrevlex', (1, 2, 3)))
sage: I = R.ideal(x*y^2 + x^5, z*y + x^3*y)
sage: I.normal_basis(degree=9)
[x^2*y^2*z, x^3*z^2, x*y*z^2, z^3]
sage: all(f.degree() == 9 for f in _)
True
```

This also came up in an Ask SageMath question.

The implementation uses the Singular function weightKB.

### comment:1 Changed 19 months ago by gh-mwageringel

• Authors set to Markus Wageringel
• Branch set to u/gh-mwageringel/29625
• Commit set to f0604bdabdea49d78d8312615b3722f4566702b4
• Status changed from new to needs_review

New commits:

 ​f0604bd `29625: support weighted term orders in normal_basis`

### comment:2 Changed 19 months ago by tscrim

• Reviewers set to Travis Scrimshaw
• Status changed from needs_review to positive_review

LGTM.

### comment:3 Changed 19 months ago by vbraun

• Branch changed from u/gh-mwageringel/29625 to f0604bdabdea49d78d8312615b3722f4566702b4
• Resolution set to fixed
• Status changed from positive_review to closed

### comment:4 Changed 19 months ago by mkoeppe

• Milestone changed from sage-9.2 to sage-9.1
Note: See TracTickets for help on using tickets.