As title says:
julia> Q = Quiver("1---------2,1-3,2---3"); d = [1, 2, 3];
julia> nu = [5, -1, -1]; theta = canonical_stability(Q, d)
3-element StaticArraysCore.SVector{3, Int64} with indices SOneTo(3):
21
0
-7
julia> git_equivalent(Q, d, nu, theta)
true
But this cannot be true, as theta lies on a wall and nu does not:
julia> W = vgit_walls(Q, d; top_dimension=false); map(QuiverTools.Oscar.dim, W)
5-element Vector{Int64}:
1
1
0
1
1
julia> map(w -> theta in w, W)
5-element Vector{Bool}:
0
1
0
0
0
julia> map(w -> nu in w, W)
5-element Vector{Bool}:
0
0
0
0
0
This is caused by a malfunction of Oscar.dim when applied to Oscar.intersect(line, w):
julia> map(QuiverTools.Oscar.rays, W)
5-element Vector{Oscar.SubObjectIterator{Oscar.RayVector{Nemo.QQFieldElem}}}:
[[0, 1, -2//3]]
[[1, 0, -1//3]]
0-element Oscar.SubObjectIterator{Oscar.RayVector{Nemo.QQFieldElem}}
[[1, -1//2, 0]]
[[1, 1, -1]]
julia> # clearly W[2] is the half-line through the origin and (3, 0, -1)
julia> L = QuiverTools.Oscar.convex_hull(nu, theta); QuiverTools.Oscar.dim(L)
1
julia> map(w -> QuiverTools.Oscar.dim(intersect(L, w)), W)
5-element Vector{Int64}:
-1
-1
-1
-1
-1
julia> # but the second intersection is not empty!
As title says:
But this cannot be true, as
thetalies on a wall andnudoes not:This is caused by a malfunction of
Oscar.dimwhen applied toOscar.intersect(line, w):