Releases: semigroups/Semigroups
5.2.0
This release contains a number of fixes and improvements, and one new feature, which is a method for IsSelfDualSemigroup
and related functionality for semigroups satisfying CanUseFroidurePin
:
- m4/find_gap.m4: update by @fingolfin in #887
- Adds method for IsSelfDualSemigroup and related functionality by @james-d-mitchell in #890
- Fix some bugs by @james-d-mitchell in #889
- Fix closure semigroup for non-libsemigroups types by @james-d-mitchell in #891
- Add missing tests and doc for IsSelfDualSemigroup and friends by @james-d-mitchell in #892
- Change
-march=avx
->-mavx
by @james-d-mitchell in #896 - Fix faulty usage of 0-simple RZMS translations code by @flsmith in #893
- build: replace m4/ax_check_hpcombi by @james-d-mitchell in #897
5.1.0
The following major new features have been added in this version:
- extensive support for translations by @flsmith in #720. See Chapter 18 of the manual for details.
- support for
Sims1
in libsemigroups by @james-d-mitchell in #873. This manifests in the new functions:IteratorOfRightCongruences
,IteratorOfLeftCongruences
NumberOfRightCongruences
,NumberOfLeftCongruences
SmalerDegreeTransformationRepresentation
The following bugs were resolved:
IsDualSemigroupRep
is no longer a representation by @flsmith in #863- fix an issue in
SemigroupIsomorphismByImages
by @james-d-mitchell in #866 - set
IsInjective
flag before callingSetNiceMonomorphism
by @ThomasBreuer in #870 - Fix issue 869 (the multiplication table of fp semigroups/monoids was sometimes incorrect) by @james-d-mitchell in #871
- Resolve Issue #868 (there was recursion depth trap error when trying to create an fp monoid from a small semigroup)by @james-d-mitchell in #872
- semifp: add missing methods for fp monoids/semigroups by @james-d-mitchell in #874
- Fix the README to use the correct version of GAP that's required by @james-d-mitchell #876
- Replace gap implementation of
EqualInFreeBand
with C++ implementation from libsemigroups by @reiniscirpons in #877 - Remove an obsolete comment by @fingolfin in #878
- Fix extreme tests by @james-d-mitchell in #880
New Contributors
- @ThomasBreuer made their first contribution in #870
- @reiniscirpons made their first contribution in #877
5.0.2
This is a minor release hopefully resolving some crashes originating in libsemigroups.
5.0.1
5.0.0
This is a major release with several new features and some backwards incompatible changes prompted by changes in GAP 4.12. Note that to use version 5.0.0 of Semigroups GAP 4.12 is required. At the time of writing GAP 4.12 has not yet been released, and so the development version of GAP (in themaster
branch of the git repo hosted on github) is required for Semigroups version 5.0.0.
The backwards incompatible changes in this release related to matrices over the integers or over a finite field. In previous versions of Semigroups there was an implementation of matrices over the integers and over finite fields, because at the time they were written it was not possible to use the matrices in the GAP library. This is no longer the case, and some changes in the GAP library for version 4.12, meant that the implementation in Semigroups had to be removed.
Previously, to create a matrix over the integers you could do:
Matrix(IsIntegerMatrix, [[0, 1], [1, 0]]);
The equivalent in version 5.0.0 of Semigroups is:
Matrix(Integers, [[0, 1], [1, 0]]);
where Integers
is the ring of integers. The changes for matrices over finite fields are mostly internal, and it was, and still is, possible to create such matrices using, for example,
Matrix(GF(4), Z(4) * [[0, 1], [1, 0]]);
In versions of Semigroups before 5.0.0, the filter IsMatrixOverFiniteField
could also be used when constructing matrices, and these features have been removed in version 5.0.0. See: #827
The new features introduced in version 5.0.0 are:
- Add support for partial orders of L/R-classes by Wilf A. Wilson in #415
- Support for homomorphisms was introduced by Artemis Konstantinidi, Chinmay Nagpal, and James D. Mitchell in
#797 and #828
4.0.3
Release for Semigroups
What's Changed
- Update authors + mailmap by @james-d-mitchell in #837
- Resolve issue #835 (implement
MultiplicationTable
for fp semigroups and monoids) by @james-d-mitchell in #838 - Improve ccache hit rate in CI by @james-d-mitchell in #840
- Improve support for quotient semigroups by @james-d-mitchell in #841
- semigrp: remove 2 unnec. methods after #841 by @james-d-mitchell in #843
- congsemigraph: add meet method by @james-d-mitchell in #842
- Remove superfluous strings from error messages by @james-d-mitchell in #845
- Update version numbers etc for 4.0.3 by @james-d-mitchell in #846
Full Changelog: v4.0.2...v4.0.3
4.0.2
This is a minor release that includes a number of minor fixes:
- conglatt: fix ordering issue by @james-d-mitchell in #829
- conglatt: avoid recomputing principal congs by @james-d-mitchell in #832
- semipperm: allow SmallerDegree for other types by @james-d-mitchell in #833
- semipperm: resolve issue 817 by @james-d-mitchell in #834
- Rc v4.0.2 by @james-d-mitchell in #836
Full Changelog: v4.0.1...v4.0.2
4.0.1
This is a minor release that includes a number of changes:
- Avoid using
SIZEOF_VOID_P
by @wilfwilson in #803 - doc: allow manual compile without all deps by @james-d-mitchell in #810
- Bump libsemigroups -> v2.1.4 by @james-d-mitchell in #809
- Change http -> https by @fingolfin in #818
- Remove spurious dependency on libgmp by @fingolfin in #820
- Improve compatibility with GAP's MatrixObj project by @fingolfin in #819
- Better congruence lattices by @james-d-mitchell in #815
- Add more matrix generators by @flsmith in #822
4.0.0
This is a major release which simplifies and improves many aspects of the package. The kernel module has been simplified significantly, to make it easier to incorporate future changes in libsemigroups, and some superfluous functionality was withdrawn.
3.4.2
This is a minor release resolving some issues in v3.4.1 [James D. Mitchell], and with a number of improvements by Wilf A. Wilson.