Repository navigation
Macaulay2 v1.26.05
·
1016 commits
to stable
since this release
New GitHub Contributors and Package Authors
- Abhay Goel
- Alexandra Seceleanu @aseceleanu made their first contribution in #4056
- Anna Natalie Chlopecki
- Anne Fayolle
- Aolong Li
- Burt Totaro @btotaro made their first contribution in #4099
- Cheng Chen
- Eamon Quinlan-Gallego
- Joel Dodge @joel-dodge made their first contribution in #4252
- Manav Batavia
- Michael DeBellevue
- Michael Perlman @michaelPerlman made their first contribution in #4132
- Penelope Beall
- Ross George @coolcuber made their first contribution in #4223
- Teppei Takamatsu
- Wanchun / Rosie Shen
- Will Huang
- Xiangru Zeng @Jazengm made their first contribution in #4045
- Yu Olivier Li
ChangeLog
- new packages:
- EliminationTemplates, a package by Manav Batavia, Cheng Chen, Wanchun / Rosie Shen, Anna Natalie Chlopecki, Tim Duff, Will Huang, and Aolong Li for elimination templates, has been added.
- MacaulayPosets, a package by Penelope Beall and Yu Olivier Li for Macaulay posets, has been added.
- MRDI, a package by Doug Torrance for serializing algebraic data with .mrdi files, has been added.
- Padic, a package by Doug Torrance for p-adic numbers, has been added.
- SimplicialModules, a package by Keller VandeBogert and Michael DeBellevue for working in the category of simplicial modules, has been added.
- WittVectors, a package by Anne Fayolle, Abhay Goel, Devlin Mallory, Eamon Quinlan-Gallego, and Teppei Takamatsu for computations with Witt vectors, Frobenius lifts, and quasi-F-splittings, has been added.
- packages that have been published and certified:
-
ThinSincereQuivers, a package by Mary Barker and Patricio Gallardo for constructing flow polytopes and their associated quivers, has been published.
-
- improved packages:
-
BettiCharacters has been updated to version 2.6. Changes include significant optimizations of the core algorithm, a new option for semidirect products of finite groups acting on tori, and methods for hyperoctahedral groups. This version introduces breaking changes to the
Charactertype, making it incompatible with previous versions. - CellularResolutions has been updated to version 1.1 with improved documentation.
-
Complexes has been updated to version 1.0 and is now the default homological algebra package. To construct a complex, use complex, which returns a Complex object. This replaces chainComplex and ChainComplex. For the legacy behavior, the OldChainComplexes package is still available. Add
HomologicalAlgebraPackage = "OldChainComplexes"to your initialization file to make it the default. - DGAlgebras has been updated to version 2.0, introducing DGModule and related types with core homological operations, adding minimal semifree DG resolutions, overhauling documentation of key constructors with examples, and expanding test coverage.
- ForeignFunctions has been updated to version 0.7 with improved garbage collection of GMP and MPFR objects.
-
InvariantRing has been updated to version 2.4, which includes a new algorithm for invariants of elementary abelian
$p$ -groups, as well as bugfixes and documentation improvements. ThepermutationMatrixmethod now takes arrays as inputs. - JSON has been updated to version 0.6 with significant improvements to parsing speed thanks to the Jansson library.
- JSONRPC has been updated to version 0.2 with improved error messages.
- LieAlgebraRepresentations has been updated to version 1.01, adding a dual construction for representations, fixing Cartan-basis inconsistencies in spin and half-spin matrix computations, and updating documentation to reflect a now-proven formula.
- MatchingFields has been updated to version 1.3 with overhauls to the internals of the main datatype, simpliyfing the logic and removing duplicated code.
- PieriMaps has been updated to version 2.0, adding dual (projection-direction) Pieri and Littlewood-Richardson maps with point evaluators, supporting multiple basis conventions with conversions, and providing equivariance/well-definedness checks and symbolic representations of maps.
- Probability has been updated to version 0.7 with minor updates.
-
RInterface has been updated to version 0.2, adding hash table-environment conversion, string-based evaluation via RValue (missing documentation)
, a persistent RContext (missing documentation)
for shared environments, formula construction with RObject ~ RObject (missing documentation)
, and improved documentation and testing. - SchurComplexes has been updated to version 1.2, fixing a bug with function schurComplex keeps track of homological degree. Also, schurComplex has been updated to output a graded complex, based on the grading on the input complex.
- SchurFunctors has been updated to version 1.0, adding a full Weyl-functor framework parallel to the Schur side (with new modules, operations, and characters), augmenting Schur-side utilities, fixing decomposition and predicate bugs, improving straightening performance, and expanding documentation.
- SchurRings has been updated to version 2.0, adding new character ring variants for symplectic, orthogonal, and rational GL groups (with full API support, branching/specialization maps, and inter-conversions), introducing a monomial-basis option with Kostka-based multiplication, and including minor efficiency improvements while preserving existing functionality.
- SpecialFanoFourfolds has been updated to version 2.8, adding support for the DoublySpecialCubicFourfold class (cubic fourfolds in the intersection of two Hassett divisors).
- SpectralSequences has been updated to version 2.02 and now uses the Complexes package.
-
Tableaux has been updated to version 0.6, merging the class
SkewTableauinto YoungTableau and bringing in several features from the package SpechtModule. - TerraciniLoci has been updated to version 0.5 with minor updates to citation and author info.
- Visualize has been updated to version 1.9 and now uses updated versions of various JavaScript libraries.
-
BettiCharacters has been updated to version 2.6. Changes include significant optimizations of the core algorithm, a new option for semidirect products of finite groups acting on tori, and methods for hyperoctahedral groups. This version introduces breaking changes to the
- functionality added or improved:
- The Mutex class has been added to help prevent race conditions in multithreaded code.
- Multiple assignment may now be used to assign to elements of mutable lists and hash tables and for using and installing assignment methods. In addition, null entries may be used on the left-hand side to skip assignment. For example, if x is a mutable list and y is a mutable hash table, then
(x#0, , y.a) = (1, 2, 3)is equivalent tox#0 = 1; y.a = 3, ignoring the 2. - The polylog function has been added for computing polylogarithms.
- The trap keyword and the
except/do
options to try have been added for improved error handling. In particular, it is now possible to "trap" an error as an Error object instead of raising it. - It is now possible to install a nullary (0-argument) method using the syntactic sugar
f() := () -> ... - It is now possible to construct a mutable list with a specific number of null entries using new MutableList from ZZ.
- The parse function has been added for viewing the parse tree of Macaulay2 code.
- The norm function now supports computing
$\ell^p$ norms for finite$p$ . - The shuffle function has been added for shuffling lists and the randomElement function for selecting random elements from lists. Note that random(List), which currently behaves like shuffle, will have its behavior changed to that of randomElement in a future release.
- A new number type, CCi, has been added for working with complex intervals.
- functionality changed in a way that could break code:
- The
operator is now a binary or prefix unary operator instead of a postfix unary operator. Use ^ for sheafification. - The
OldPolyhedraandOldToricVectorBundlespackages are no longer distributed. Use Polyhedra and ToricVectorBundles instead. - It is no longer possible to promote from RR to QQ.
- Matrix multiplication now preserves degree.
- The VisibleList _ List method for subsetting lists now preserves class, e.g.,
[1,2,3,4]_{0,1}now returns an Array, not a List, as it did previously. - The
NonminimalComplexesandPruneComplexpackages have been removed. Their functionality has been moved to Complexes. - The
resolutionfunction (and its synonym,res) are now synonyms for freeResolution. The LengthLimit option is required for rings where there are infinite free resolutions such as quotients of polynomial rings and skew commutative polynomial rings. Also,Strategy => NonminimalreplacesFastNonminimal => true.
- The
Full Changelog: release-1.25.11...release-1.26.05
