Skip to content

Commit 8740e28

Browse files
committed
Updates
1 parent b439b5b commit 8740e28

File tree

3 files changed

+20
-26
lines changed

3 files changed

+20
-26
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
arch: x64
2929
steps:
3030
- uses: actions/checkout@v4
31-
- uses: julia-actions/setup-julia@v1
31+
- uses: julia-actions/setup-julia@v2
3232
with:
3333
version: ${{ matrix.version }}
3434
arch: ${{ matrix.arch }}

src/comparison.jl

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ function compare(a::_TupleOrVector, b::_TupleOrVector, ::Type{Graded{O}}) where
258258
return deg_a - deg_b
259259
end
260260
end
261-
261+
# TODO Backward compat, remove
262262
function compare(a::AbstractMonomial, b::AbstractMonomial, ::Type{Graded{O}}) where {O}
263263
deg_a = degree(a)
264264
deg_b = degree(b)
@@ -291,7 +291,9 @@ struct Reverse{O<:AbstractMonomialOrdering} <: AbstractMonomialOrdering
291291
reverse_ordering::O
292292
end
293293

294-
compare(a, b, ::Type{Reverse{O}}) where {O} = compare(b, a, O)
294+
compare(a::_TupleOrVector, b::_TupleOrVector, ::Type{Reverse{O}}) where {O} = compare(b, a, O)
295+
# TODO Backward compat, remove
296+
compare(a::AbstractMonomial, b::AbstractMonomial, ::Type{Reverse{O}}) where {O} = compare(b, a, O)
295297

296298
"""
297299
ordering(p::AbstractPolynomialLike)
@@ -325,7 +327,7 @@ end
325327
# less than `b`, they are considered sort of equal.
326328
_cmp_coefficient(a, b) = 0
327329

328-
function compare(t1::AbstractTerm, t2::AbstractTerm, ::Type{O}) where {O<:AbstractMonomialOrdering}
330+
function compare(t1::AbstractTermLike, t2::AbstractTermLike, ::Type{O}) where {O<:AbstractMonomialOrdering}
329331
Δ = compare(monomial(t1), monomial(t2), O)
330332
if iszero(Δ)
331333
return _cmp_coefficient(coefficient(t1), coefficient(t2))
@@ -334,6 +336,8 @@ function compare(t1::AbstractTerm, t2::AbstractTerm, ::Type{O}) where {O<:Abstra
334336
end
335337

336338
Base.cmp(t1::AbstractTermLike, t2::AbstractTermLike) = compare(t1, t2, ordering(t1))
339+
# TODO for backward compat, remove in next breaking release
340+
compare(t1::AbstractTermLike, t2::AbstractTermLike) = cmp(t1, t2)
337341

338342
Base.isless(t1::AbstractTermLike, t2::AbstractTermLike) = cmp(t1, t2) < 0
339343

test/commutative/comparison.jl

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -146,31 +146,21 @@
146146
grlex = Graded{lex}
147147
rinvlex = Reverse{InverseLexOrder}
148148
grevlex = Graded{rinvlex}
149-
@test MP.compare([1, 0, 1], [1, 1, 0], grlex) == -1
150-
@test MP.compare([1, 1, 0], [1, 0, 1], grlex) == 1
151149
Mod.@polyvar x y z
152150
# [CLO13, p. 58]
153-
@test MP.compare(1:3, [3, 2, 0], lex) < 0
154-
@test MP.compare(1:3, [3, 2, 0], grlex) > 0
155-
@test MP.compare(1:3, [3, 2, 0], rinvlex) < 0
156-
@test MP.compare(1:3, [3, 2, 0], grevlex) > 0
157-
@test MP.compare([1, 2, 4], [1, 1, 5], lex) > 0
158-
@test MP.compare([1, 2, 4], [1, 1, 5], grlex) > 0
159-
@test MP.compare([1, 2, 4], [1, 1, 5], rinvlex) > 0
160-
@test MP.compare([1, 2, 4], [1, 1, 5], grevlex) > 0
161-
@test MP.compare(x * y^2 * z^3, x^3 * y^2, lex) < 0
162-
@test MP.compare(x * y^2 * z^3, x^3 * y^2, grlex) > 0
163-
@test MP.compare(x * y^2 * z^3, x^3 * y^2, rinvlex) < 0
164-
@test MP.compare(x * y^2 * z^3, x^3 * y^2, grevlex) > 0
165-
@test MP.compare(x * y^2 * z^4, x * y * z^5, lex) > 0
166-
@test MP.compare(x * y^2 * z^4, x * y * z^5, grlex) > 0
167-
@test MP.compare(x * y^2 * z^4, x * y * z^5, rinvlex) > 0
168-
@test MP.compare(x * y^2 * z^4, x * y * z^5, grevlex) > 0
151+
@test compare(x * y^2 * z^3, x^3 * y^2, lex) < 0
152+
@test compare(x * y^2 * z^3, x^3 * y^2, grlex) > 0
153+
@test compare(x * y^2 * z^3, x^3 * y^2, rinvlex) < 0
154+
@test compare(x * y^2 * z^3, x^3 * y^2, grevlex) > 0
155+
@test compare(x * y^2 * z^4, x * y * z^5, lex) > 0
156+
@test compare(x * y^2 * z^4, x * y * z^5, grlex) > 0
157+
@test compare(x * y^2 * z^4, x * y * z^5, rinvlex) > 0
158+
@test compare(x * y^2 * z^4, x * y * z^5, grevlex) > 0
169159
# [CLO13, p. 59]
170-
@test MP.compare(x^5 * y * z, x^4 * y * z^2, lex) > 0
171-
@test MP.compare(x^5 * y * z, x^4 * y * z^2, grlex) > 0
172-
@test MP.compare(x^5 * y * z, x^4 * y * z^2, rinvlex) > 0
173-
@test MP.compare(x^5 * y * z, x^4 * y * z^2, grevlex) > 0
160+
@test compare(x^5 * y * z, x^4 * y * z^2, lex) > 0
161+
@test compare(x^5 * y * z, x^4 * y * z^2, grlex) > 0
162+
@test compare(x^5 * y * z, x^4 * y * z^2, rinvlex) > 0
163+
@test compare(x^5 * y * z, x^4 * y * z^2, grevlex) > 0
174164
# [CLO13] Cox, D., Little, J., & OShea, D.
175165
# *Ideals, varieties, and algorithms: an introduction to computational algebraic geometry and commutative algebra*.
176166
# Springer Science & Business Media, **2013**.

0 commit comments

Comments
 (0)