### Navigation

- index
- modules |
- next |
- previous |
- General Rings, Ideals, and Morphisms »

# Generic implementation of one- and two-sided ideals of non-commutative rings.

Generic implementation of one- and two-sided ideals of non-commutative rings.

AUTHOR:

- Simon King (2011-03-21), <simon.king@uni-jena.de>, trac ticket #7797.

EXAMPLES:

    sage: MS = MatrixSpace(ZZ,2,2)
    sage: MS*MS([0,1,-2,3])
    Left Ideal
    (
      [ 0  1]
      [-2  3]
    )
     of Full MatrixSpace of 2 by 2 dense matrices over Integer Ring
    sage: MS([0,1,-2,3])*MS
    Right Ideal
    (
      [ 0  1]
      [-2  3]
    )
     of Full MatrixSpace of 2 by 2 dense matrices over Integer Ring
    sage: MS*MS([0,1,-2,3])*MS
    Twosided Ideal
    (
      [ 0  1]
      [-2  3]
    )
     of Full MatrixSpace of 2 by 2 dense matrices over Integer Ring

See `letterplace_ideal` for a more elaborate implementation in the special case of ideals in free algebras.

TESTS:

    sage: A = SteenrodAlgebra(2)
    sage: IL = A*[A.1+A.2,A.1^2]; IL
    Left Ideal (Sq(2) + Sq(4), Sq(1,1)) of mod 2 Steenrod algebra, milnor basis
    sage: TestSuite(IL).run(skip=['_test_category'],verbose=True)
    running ._test_eq() . . . pass
    running ._test_not_implemented_methods() . . . pass
    running ._test_pickling() . . . pass

class `sage.rings.noncommutative_ideals.``IdealMonoid_nc`(R)

  Bases: `sage.rings.ideal_monoid.IdealMonoid_c`

  Base class for the monoid of ideals over a non-commutative ring.

  Note

  This class is essentially the same as `IdealMonoid_c`, but does not complain about non-commutative rings.

  EXAMPLES:

      sage: MS = MatrixSpace(ZZ,2,2)
      sage: MS.ideal_monoid()
      Monoid of ideals of Full MatrixSpace of 2 by 2 dense matrices over Integer Ring

class `sage.rings.noncommutative_ideals.``Ideal_nc`(ring, gens, coerce=True, side='twosided')

  Bases: `sage.rings.ideal.Ideal_generic`

  Generic non-commutative ideal.

  All fancy stuff such as the computation of Groebner bases must be implemented in sub-classes. See `LetterplaceIdeal` for an example.

  EXAMPLES:

      sage: MS = MatrixSpace(QQ,2,2)
      sage: I = MS*[MS.1,MS.2]; I
      Left Ideal
      (
        [0 1]
        [0 0],
      <BLANKLINE>
        [0 0]
        [1 0]
      )
       of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
      sage: [MS.1,MS.2]*MS
      Right Ideal
      (
        [0 1]
        [0 0],
      <BLANKLINE>
        [0 0]
        [1 0]
      )
       of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
      sage: MS*[MS.1,MS.2]*MS
      Twosided Ideal
      (
        [0 1]
        [0 0],
      <BLANKLINE>
        [0 0]
        [1 0]
      )
       of Full MatrixSpace of 2 by 2 dense matrices over Rational Field

  `side`()

    Return a string that describes the sidedness of this ideal.

    EXAMPLES:

        sage: A = SteenrodAlgebra(2)
        sage: IL = A*[A.1+A.2,A.1^2]
        sage: IR = [A.1+A.2,A.1^2]*A
        sage: IT = A*[A.1+A.2,A.1^2]*A
        sage: IL.side()
        'left'
        sage: IR.side()
        'right'
        sage: IT.side()
        'twosided'

### Navigation

- index
- modules |
- next |
- previous |
- General Rings, Ideals, and Morphisms »