-
-
Notifications
You must be signed in to change notification settings - Fork 703
Description
This introduce an axiom FinitelyGeneratedAsMagma, as well as related
categories with axioms for magmas, semigroups and groups::
sage: Groups().FinitelyGeneratedAsMagma()
Category of finitely generated groups
For ease of notations, when there is no ambiguity, one can do::
sage: Groups().FinitelyGenerated()
Category of finitely generated groups
One motivation for this change (for #8678) is that finite semigroups
in Sage used to be automatically endowed with an EnumeratedSets
structure; the default enumeration is then obtained by iteratively
multiplying the semigroup generators. This forced any finite semigroup
to either implement an enumeration, or provide semigroup generators;
this was often inconvenient.
Instead, finite semigroups that provide a distinguished finite set of
generators with semigroup_generators should now explicitly declare
themselves in the category of FinitelyGeneratedSemigroups:
sage: Semigroups().FinitelyGenerated()
Category of finitely generated semigroups
This is a backward incompatible change.
TODO:
- Use the occasion to migrate TransitiveIdeal to RecursivelyEnumeratedSet
Depends on #10668
Depends on #15852
CC: @tscrim @sagetrac-sage-combinat @darijgr @avirmaux
Component: categories
Keywords: days64
Author: Nicolas M. Thiéry
Branch/Commit: 19ceb81
Reviewer: Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/17160