From f97090c9974cb7d3b33b06396f5aeb84dcf620de Mon Sep 17 00:00:00 2001 From: Aaron Fenyes Date: Thu, 8 Feb 2024 01:58:12 -0500 Subject: [PATCH] Try a cut that goes through the trivial solution The previous cut was supposed to do this, but I was missing some parentheses. --- engine-proto/Engine.jl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/engine-proto/Engine.jl b/engine-proto/Engine.jl index b5eee96..41d3ed7 100644 --- a/engine-proto/Engine.jl +++ b/engine-proto/Engine.jl @@ -262,8 +262,8 @@ println("Two points on a sphere: ", Engine.dimension(ideal_ab_s), " degrees of f cut = [ sum(vcat(a.coords, (s.coords - [0, 0, 0, 0, 1]))) - sum(vcat([2, 1, 1] .* a.coords, [1, 2, 1, 1, 1] .* s.coords - [0, 0, 0, 0, 1])) - sum(vcat([1, 2, 0] .* a.coords, [1, 1, 0, 1, 2] .* s.coords - [0, 0, 0, 0, 1])) + sum(vcat([2, 1, 1] .* a.coords, [1, 2, 1, 1, 1] .* (s.coords - [0, 0, 0, 0, 1]))) + sum(vcat([1, 2, 0] .* a.coords, [1, 1, 0, 1, 2] .* (s.coords - [0, 0, 0, 0, 1]))) ] cut_ideal_ab_s = Generic.Ideal(base_ring(ideal_ab_s), [gens(ideal_ab_s); cut]) cut_dim = Engine.dimension(cut_ideal_ab_s) @@ -283,7 +283,7 @@ if cut_dim == 0 # test corresponding witness set cut_matrix = [1 1 1 1 0 1 1 0 1 1 0; 1 2 1 2 0 1 1 0 1 1 0; 1 1 0 1 0 1 2 0 2 0 0] - cut_subspace = LinearSubspace(cut_matrix, [1, 1, 1]) + cut_subspace = LinearSubspace(cut_matrix, [1, 1, 2]) witness = witness_set(System(eqns_ab_s, variables = vbls), cut_subspace) println("witness solutions:") for wtns in solutions(witness)