### Navigation

- index
- modules |
- next |
- previous |
- Category Theory »

# Graded modules

class `sage.categories.graded_modules.``GradedModules`(base_category)

  Bases: `sage.categories.graded_modules.GradedModulesCategory`

  The category of graded modules.

  EXAMPLES:

      sage: GradedModules(ZZ)
      Category of graded modules over Integer Ring
      sage: GradedModules(ZZ).super_categories()
      [Category of modules over Integer Ring]

  The category of graded modules defines the graded structure which shall be preserved by morphisms:

      sage: Modules(ZZ).Graded().additional_structure()
      Category of graded modules over Integer Ring

  TESTS:

      sage: TestSuite(GradedModules(ZZ)).run()

  class `Connected`(base_category)

    Bases: `sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring`

    TESTS:

        sage: C = Modules(ZZ).FiniteDimensional(); C
        Category of finite dimensional modules over Integer Ring
        sage: type(C)
        <class 'sage.categories.modules.Modules.FiniteDimensional_with_category'>
        sage: type(C).__base__.__base__
        <class 'sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring'>

        sage: TestSuite(C).run()

  class `GradedModules.``ElementMethods`
  class `GradedModules.``ParentMethods`
  class `GradedModules.``SubcategoryMethods`
    `Connected`()

      Return the full subcategory of the connected objects of `self`.

      EXAMPLES:

          sage: Modules(ZZ).Graded().Connected()
          Category of graded connected modules over Integer Ring
          sage: Coalgebras(QQ).Graded().Connected()
          Join of Category of graded connected modules over Rational Field
              and Category of coalgebras over Rational Field
          sage: GradedAlgebrasWithBasis(QQ).Connected()
          Category of graded connected algebras with basis over Rational Field

      TESTS:

          sage: TestSuite(Modules(ZZ).Graded().Connected()).run()
          sage: Coalgebras(QQ).Graded().Connected.__module__
          'sage.categories.graded_modules'

  `GradedModules.``extra_super_categories`()

    Adds `VectorSpaces` to the super categories of `self` if the base ring is a field.

    EXAMPLES:

        sage: Modules(QQ).Graded().extra_super_categories()
        [Category of vector spaces over Rational Field]
        sage: Modules(ZZ).Graded().extra_super_categories()
        []

    This makes sure that `Modules(QQ).Graded()` returns an instance of `GradedModules` and not a join category of an instance of this class and of `VectorSpaces(QQ)`:

        sage: type(Modules(QQ).Graded())
        <class 'sage.categories.graded_modules.GradedModules_with_category'>

    Todo

    Get rid of this workaround once there is a more systematic approach for the alias `Modules(QQ)` -> `VectorSpaces(QQ)`. Probably the later should be a category with axiom, and covariant constructions should play well with axioms.

class `sage.categories.graded_modules.``GradedModulesCategory`(base_category)

  Bases: `sage.categories.covariant_functorial_construction.RegressiveCovariantConstructionCategory`, `sage.categories.category_types.Category_over_base_ring`

  EXAMPLES:

      sage: C = GradedAlgebras(QQ)
      sage: C
      Category of graded algebras over Rational Field
      sage: C.base_category()
      Category of algebras over Rational Field
      sage: sorted(C.super_categories(), key=str)
      [Category of algebras over Rational Field,
       Category of graded modules over Rational Field]

      sage: AlgebrasWithBasis(QQ).Graded().base_ring()
      Rational Field
      sage: GradedHopfAlgebrasWithBasis(QQ).base_ring()
      Rational Field

### Navigation

- index
- modules |
- next |
- previous |
- Category Theory »