Skip to content

Commit

Permalink
Add test from CLO05
Browse files Browse the repository at this point in the history
  • Loading branch information
ooinaruhugh committed Aug 27, 2024
1 parent 042d951 commit 1c1e1de
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 28 deletions.
49 changes: 34 additions & 15 deletions test/generic-walk.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,41 @@
G1 = groebner_walk(I1; algorithm=:generic) |> gens |> Oscar.IdealGens
@test is_groebner_basis(G1; ordering=lex(R1))

I2 = ideal([z^3 - z^2 - 4])
G2 = groebner_basis(I2)
I2 = ideal([
x^2 - y,
x*z - y^2 + y*z
])
os = weight_ordering([5,4,1], degrevlex(R1))
ot = weight_ordering([6,1,3], lex(R1))
G2 = groebner_walk(I2, ot, os)

I3 = ideal([x^6 - 1])
G3 = groebner_basis(I3)
F2 = [
x*z + y*z - y^2,
x^2 - y,
x*y^2 - y^3 + y^2*z - y*z,
y^2*z^2 - 2y^3*z + y^4 - y*z^2
]

#@test bounding_vectors(G1) == Vector{ZZRingElem}.([[1,1,-2],[2,-1,-1], [-1,2,-1]])
#@test next_weight(G1, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,1,1])

GW2 = groebner_walk(I2; algorithm=:generic)
@test is_groebner_basis(GW2; ordering=lex(R1))
#@test bounding_vectors(G2) == ZZ.([[0,0,1],[0,0,3]])

GW3 = groebner_walk(I3; algorithm=:generic)
@test is_groebner_basis(GW3; ordering=lex(R1))
#@test bounding_vectors(G3) == ZZ.([[6,0,0]])
#@test next_weight(G3, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,0,0])
isGB = all(F2) do f
f in G2
end
@test isGB==true
# I2 = ideal([z^3 - z^2 - 4])
# G2 = groebner_basis(I2)
#
# I3 = ideal([x^6 - 1])
# G3 = groebner_basis(I3)
#
# #@test bounding_vectors(G1) == Vector{ZZRingElem}.([[1,1,-2],[2,-1,-1], [-1,2,-1]])
# #@test next_weight(G1, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,1,1])
#
# GW2 = groebner_walk(I2; algorithm=:generic)
# @test is_groebner_basis(GW2; ordering=lex(R1))
# #@test bounding_vectors(G2) == ZZ.([[0,0,1],[0,0,3]])
#
# GW3 = groebner_walk(I3; algorithm=:generic)
# @test is_groebner_basis(GW3; ordering=lex(R1))
# #@test bounding_vectors(G3) == ZZ.([[6,0,0]])
# #@test next_weight(G3, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,0,0])
end

38 changes: 25 additions & 13 deletions test/standard-walk.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,33 @@
# To test whether the generators really form a GB, we recreate the object.
G1 = groebner_walk(I1) |> gens |> Oscar.IdealGens
@test is_groebner_basis(G1; ordering=lex(R1))

I2 = ideal([x^2 - y, x*z - y^2 + y*z])
os = weight_ordering([5,4,1], degrevlex(R1))
ot = weight_ordering([6,1,3], lex(R1))
G2 = groebner_walk(I2, ot, os)

I2 = ideal([z^3 - z^2 - 4])
G2 = groebner_basis(I2)
F2 = [x*z + y*z - y^2,x^2 - y,x*y^2 - y^3 + y^2*z - y*z,y^2*z^2 - 2y^3*z + y^4 - y*z^2]

I3 = ideal([x^6 - 1])
G3 = groebner_basis(I3)
isGB = all(F2) do f
f in G2
end
@test isGB==true

#@test bounding_vectors(G1) == Vector{ZZRingElem}.([[1,1,-2],[2,-1,-1], [-1,2,-1]])
#@test next_weight(G1, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,1,1])

@test is_groebner_basis(groebner_walk(I2); ordering=lex(R1))
#@test bounding_vectors(G2) == ZZ.([[0,0,1],[0,0,3]])

@test is_groebner_basis(groebner_walk(I3); ordering=lex(R1))
#@test bounding_vectors(G3) == ZZ.([[6,0,0]])
#@test next_weight(G3, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,0,0])
# I2 = ideal([z^3 - z^2 - 4])
# G2 = groebner_basis(I2)
#
# I3 = ideal([x^6 - 1])
# G3 = groebner_basis(I3)
#
# #@test bounding_vectors(G1) == Vector{ZZRingElem}.([[1,1,-2],[2,-1,-1], [-1,2,-1]])
# #@test next_weight(G1, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,1,1])
#
# @test is_groebner_basis(groebner_walk(I2); ordering=lex(R1))
# #@test bounding_vectors(G2) == ZZ.([[0,0,1],[0,0,3]])
#
# @test is_groebner_basis(groebner_walk(I3); ordering=lex(R1))
# #@test bounding_vectors(G3) == ZZ.([[6,0,0]])
# #@test next_weight(G3, ZZ.([1,1,1]), ZZ.([1,0,0])) == ZZ.([1,0,0])
end

0 comments on commit 1c1e1de

Please sign in to comment.