#11068: Basic implementation of one- and twosided ideals of non-commutative
rings,
and quotients by twosided ideals
-------------------------------------------------------------------------------+
Reporter: SimonKing
| Owner: AlexGhitza
Type: enhancement
| Status: needs_work
Priority: major
| Milestone: sage-4.7.2
Component: algebra
| Keywords: onesided twosided ideal noncommutative ring
Work_issues: Print quotient ring elements if the cover has no variable names
| Upstream: N/A
Reviewer:
| Author: Simon King
Merged:
| Dependencies: #10961, #9138, #11115
-------------------------------------------------------------------------------+
Changes (by SimonKing):
* status: needs_review => needs_work
* work_issues: Shall one move code from ring.pyx to rings.py? => Print
quotient ring elements if the cover has
no variable names
Comment:
It turns out that, although the variable names are available, Q does not
know its generators. And that's clearly strange: MS knows its generators,
and hence the quotient Q could simply be generated by the equivalence
classes of the generators of MS:
{{{
sage: MS.gens()
(
[1 0] [0 1] [0 0] [0 0]
[0 0], [0 0], [1 0], [0 1]
)
sage: Q.variable_names()
('a', 'b', 'c', 'd')
sage: Q.ngens()
4
sage: Q.gens()
ERROR: An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line statement', (359, 0))
---------------------------------------------------------------------------
ValueError Traceback (most recent call
last)
...
ValueError: variable names have not yet been set using
self._assign_names(...)
}}}
Actually, it seems that the problem simply is ''printing'' the elements:
{{{
sage: L = Q.gens()
sage: L[0]
ERROR: An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line statement', (359, 0))
---------------------------------------------------------------------------
ValueError Traceback (most recent call
last)
...
ValueError: variable names have not yet been set using
self._assign_names(...)
}}}
Indeed, it seems that the printing method of quotient ring elements
expects that the cover ring uses variable names in order to print its
elemennts; the variable names of the quotient rings are used to replace
the variable names of the cover ring.
However, the elements of MS are not printed using any variable names.
I think that's a bug that could be fixed here (I wouldn't open a new
ticket for it).
Thank you for spotting it!
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11068#comment:25>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.