Releases: GDeLaurentis/syngular
Releases · GDeLaurentis/syngular
v0.2.4
[0.2.4] - 2024-12-18
Added
zero_ideal
andrandom_point
functions forRing
class.DEGBOUNDs
parameters containing list of degree bounds to use in iterated computations.
Changed
- Improved stability of
point_on_variety
when using arbitrary precision floats.
Fixed
- Fixed issue when parsing complex floats with imaginary part in scientific notation.
- Fixed bug in primality test where if the deg. bounded computation was inconclusive the deg. bounded Groebner basis was still being using in the computation without a degree bound, causing erroneous failures.
v0.2.3
[0.2.3] - 2024-08-20
Added
- Added warning to
point_on_variety
ifdirections
are specified when the field is a finite field (and thus the directions cannot be imposed). - Support for
wp
weighted reverse lex order from Singular. test_primality
allows to skip to a givenprojection_number
(optional keyword argument)
Fixed
- Fixed issue where TIMEOUT was not being correctly set after removing mutableint.
- Fixed issue in README where the example could not be copy-pasted into code (missing quotation marks).
Deprecated
- Python 3.8 no longer supported.
v0.2.2
[0.2.2] - 2024-06-06
Added
- Custom
Monomial
andPolynomial
classes, to better handle polynomials with coefficients in any of$\mathbb{C}, \mathbb{F}_p, \mathbb{Q}_p$ . - DOI.
-
Ideal.point_on_variety
now checks whether the provideddirections
are consistent with the given variety. - Added support for rational field,
Field('rational', 0, 0)
. - Tentatively introducing shorter aliases for field names, such as
C
,Qp
andFp
. - Continuous deployment of Documentation via GitHub Pages.
- CI checks several python versions.
Changed
Ideal.point_on_variety
no longer relies onsympy
for parsing the polynomials, resulting in a drastic performance boost for complicated systems of polynomials. Interface should be unchanged.- Splitting CI Test and CI Lint.
- Breaking:
syngular.TIMEOUT
andsyngular.DEGBOUND
are now normal integers (instead of mutableints) (.set()
will not work any longer). Removedmutableint
because it breaks with python3.12 and might not be needed in the first place.
Fixed
- Improved logic for call to
Singular
with long commands requiring the writing of a file. As a consequence, parallelised calls should now have much better stability.
Deprecated
Field.random_element
is now deprecated. UseField.random
instead.
v0.2.1
[0.2.1] - 2024-05-04
Added
QRing
is an alias forQuotientRing
.test_primality
accepts optionalkwarg
,iterated_degbound_computation
, with defult valueFalse
. Behaviour is unchanged on default setting. If set toTrue
, the codimensions of ideals involving f-poly factors are computed with subsequently looser degree bounds, until either a given degree (18) is exceeded or the codim is greater than that of the original ideal. Use is recommended only for ideals that are expected to be prime and for which the computation without degree bound fails.
Changed
- Default
max_tries
forIdeal.point_on_variety
increased to 100 from 10: needed when generating a large number of points.
Fixed
- Occasinally, when generating a
point_on_variety
with multi-precision complex (mpc
) thelex_groebner_basis
computation can return the unit ideal, due to precision loss. Introduced a newRootPrecisionError
exception and added this to the retry logic.
v0.2.0
v0.2.0 - 2023-12-27
Added
- Ideal method to generate points of varieties,
Ideal.point_on_variety
. - Field object (moved from lips)
Fixed
- Syntax consistency when printing polynomials over rings with single-character variables (forced
short=0
always). - Import path in Singular for
poly.lib
is nowpolylib.lib
.
v0.1.3
v0.1.3