Opened 19 months ago

Closed 19 months ago

Last modified 19 months ago

#29625 closed enhancement (fixed)

support for weighted term orders in normal_basis

Reported by: gh-mwageringel Owned by:
Priority: minor Milestone: sage-9.1
Component: commutative algebra Keywords: singular
Cc: klee, tscrim, heluani Merged in:
Authors: Markus Wageringel Reviewers: Travis Scrimshaw
Report Upstream: N/A Work issues:
Branch: f0604bd (Commits, GitHub, GitLab) Commit: f0604bdabdea49d78d8312615b3722f4566702b4
Dependencies: Stopgaps:

Status badges

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.

Change History (4)

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:

f0604bd29625: 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.