Opened 13 months ago

Last modified 9 months ago

#21262 needs_work enhancement

Center related classes and methods in Skew Polynomials

Reported by: arpitdm Owned by:
Priority: major Milestone: sage-7.4
Component: algebra Keywords:
Cc: tscrim, caruso, jsrn, dlucas Merged in:
Authors: Xavier Caruso Reviewers:
Report Upstream: N/A Work issues:
Branch: u/caruso/centering_methods_skew_polynomials (Commits) Commit: 35f44cbe04b0e3b9def006660283aea5b93ee28e
Dependencies: #13215 Stopgaps:

Description (last modified by caruso)

We propose the addition of the following methods and classes to skew polynomials:

  1. class CenterSkewPolynomial_generic_dense
  2. class SectionSkewPolynomialCenterInjection?
  3. class SkewPolynomialCenterInjection?
  4. class CenterSkewPolynomialRing?
  1. def center in class SkewPolynomialRing_general

In addition, we designed a special class SkewPolynomial_finite_order_dense for dense skew polynomial over fields when the twisting endomorphism has finite order (in which case the centre has finite index). It include the following methods:

  • reduced_trace
  • reduced_norm
  • is_central
  • bound
  • optimal_bound

Note: The original ticket #13215 first introduced this functionality (only for finite fields). That was subsequently modified to support the basic implementation of skew polynomials and the center based methods from that ticket that were removed are being reintroduced here.

Change History (7)

comment:1 Changed 13 months ago by arpitdm

  • Branch set to u/arpitdm/centering_methods_skew_polynomials

comment:2 Changed 13 months ago by arpitdm

  • Commit set to 3d7cd832b429c370bc95ffeb798821c07efbe5ba

Please also note that the current code is more or less just what was in the original patch for #13215 related to Center related methods and classes. No effort has e.g. been made yet to accommodate for changes in #13215 since this addition was factored out.

Last 10 new commits:

9a2fad2merged changes from Tickets 13215 and 21088
eaca253integrated skew polynomial finite field into sage. removed some compile and doctest errors.
7664060removed leftpow and rightpow methods from SkewPolynomial_finite_field_dense class because they require the 'bound' method which in turn requires 'center'. this will be added in another separate ticket with the rest of the center stuff.
a6e93e1added SEEALSO and TODO blocks and made small polishes to the documentation.
130b173improved documentation for skew_polynomials_finite_field.pyx file
15861b9documentation builds successfully.
2d67e0emerging updates
a2c4f06removed unused imports, signal statements. small fixes to documentation.
5547542added karatsuba based methods as is, from the original #13215 ticket
3d7cd83added centering based methods and classes as is, from the original #13215 ticket

comment:3 Changed 13 months ago by caruso

The methods is_central and optimal_bound make sense for skew polynomials over any ring, right? So it is a bit weird (according to me) to define them only in the class SkewPolynomial_finite_field_dense (through *I* very probably do this first).

Similarly the reduced norm makes sense as soon as the twist map has finite order (and in addition I am very interested in using it over a finite extension of Qp). So, I would suggest to move it to the class SkewPolynomial_generic_dense and to raise ValueError or TypeError when the twist map has not finite order.

Last edited 13 months ago by caruso (previous) (diff)

comment:4 Changed 13 months ago by arpitdm

  • Authors set to Xavier Caruso

comment:5 Changed 13 months ago by caruso

  • Branch changed from u/arpitdm/centering_methods_skew_polynomials to u/caruso/centering_methods_skew_polynomials

comment:6 Changed 13 months ago by caruso

  • Commit changed from 3d7cd832b429c370bc95ffeb798821c07efbe5ba to 35f44cbe04b0e3b9def006660283aea5b93ee28e
  • Dependencies changed from #13215, #21088, #21259 to #13215
  • Description modified (diff)
  • Status changed from new to needs_review

As I said before, the features provided by this ticket do not only make sense for finite fields but more generally for fields on which the twisting endomorphism has finite order. I then renamed the class SkewPolynomial_finite_field_dense and called it SkewPolynomial_finite_order_dense. Moreover, I polished the code and made all methods work (e.g. some imports were missing).

Ticket ready for review.

New commits:

891ccfaMerge branch 't/21262/centering_methods_skew_polynomials' into integration
dd53bd1Remove inplace methods and Karatsuba
a29393aReplace "finite fields" by "fields with automorphism of finite order"
35f44cbAdded a method reduced_trace

comment:7 Changed 9 months ago by cheuberg

  • Status changed from needs_review to needs_work

branch does not merge.

Note: See TracTickets for help on using tickets.