#20387: Deprecate support for finite rings in `LinearCode`
-------------------------+-------------------------------------------------
   Reporter:  jsrn       |            Owner:
       Type:  defect     |           Status:  new
   Priority:  major      |        Milestone:  sage-7.2
  Component:  coding     |         Keywords:  linear_code, finite_ring,
  theory                 |  ring_code
  Merged in:             |          Authors:
  Reviewers:             |  Report Upstream:  N/A
Work issues:             |           Branch:
     Commit:             |     Dependencies:
   Stopgaps:             |
-------------------------+-------------------------------------------------
 Purportedly, `LinearCode` supports making codes over finite rings. The
 documentation states only that the ring needs to support "various methods"
 such as matrices over the ring has a `rank` function.

 However, the underlying assumption in almost all of the code in
 `LinearCode` is and has always been that the code is over a finite field.
 Just because one or two random methods don't (currently) blow up on a code
 over a finite ring doesn't mean we should claim to support finite rings
 since all the other functions *do* blow up or, worse, return wrong or non-
 sensical results. No-one writing methods for `LinearCode` is ever thinking
 of finite rings.

 Concrete functions that don't properly work over (most) finite rings:
 `dimension`, `cardinality`, `automorphism_*`, `unencode`,
 `canonical_representative`, `characteristic_polynomial`,
 `parity_check_matrix`. And there are many more.

 The only sensible way forward is to honestly say that we don't support
 finite rings. If someone really needs finite rings, it is clear that this
 is yet to be implemented, and that person would hopefully do it. Note that
 #19345 provides a step in this direction.

--
Ticket URL: <http://trac.sagemath.org/ticket/20387>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to