### Navigation

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

# Schemes

class `sage.categories.schemes.``Schemes`(s=None)

  Bases: `sage.categories.category.Category`

  The category of all schemes.

  EXAMPLES:

      sage: Schemes()
      Category of schemes

  `Schemes` can also be used to construct the category of schemes over a given base:

      sage: Schemes(Spec(ZZ))
      Category of schemes over Integer Ring

      sage: Schemes(ZZ)
      Category of schemes over Integer Ring

  Todo

  Make `Schemes()` a singleton category (and remove `Schemes` from the workaround in `category_types.Category_over_base._test_category_over_bases()`).

  This is currently incompatible with the dispatching below.

  TESTS:

      sage: TestSuite(Schemes()).run()

  class `Homsets`(category, *args)

    Bases: `sage.categories.homsets.HomsetsCategory`

    TESTS:

        sage: from sage.categories.covariant_functorial_construction import CovariantConstructionCategory
        sage: class FooBars(CovariantConstructionCategory):
        ...       _functor_category = "FooBars"
        sage: Category.FooBars = lambda self: FooBars.category_of(self)
        sage: C = FooBars(ModulesWithBasis(ZZ))
        sage: C
        Category of foo bars of modules with basis over Integer Ring
        sage: C.base_category()
        Category of modules with basis over Integer Ring
        sage: latex(C)
        \mathbf{FooBars}(\mathbf{ModulesWithBasis}_{\Bold{Z}})
        sage: import __main__; __main__.FooBars = FooBars # Fake FooBars being defined in a python module
        sage: TestSuite(C).run()

    `extra_super_categories`()

      EXAMPLES:

          sage: Schemes().Homsets().extra_super_categories()
          []
          sage: Schemes().Homsets().super_categories()
          [Category of objects]

      Todo

      What category structure is there on Homsets of schemes?

      Todo

      check that the result above is correct now

  `Schemes.``super_categories`()

    EXAMPLES:

        sage: Schemes().super_categories()
        [Category of sets]

class `sage.categories.schemes.``Schemes_over_base`(base, name=None)

  Bases: `sage.categories.category_types.Category_over_base`

  The category of schemes over a given base scheme.

  EXAMPLES:

      sage: Schemes(Spec(ZZ))
      Category of schemes over Integer Ring

  TESTS:

      sage: C = Schemes(ZZ)
      sage: TestSuite(C).run()

  `base_scheme`()

    EXAMPLES:

        sage: Schemes(Spec(ZZ)).base_scheme()
        Spectrum of Integer Ring

  `super_categories`()

    EXAMPLES:

        sage: Schemes(Spec(ZZ)).super_categories()
        [Category of schemes]

### Navigation

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