Open blegat opened 7 years ago
Did you intend to move all 6 of the child issues to the 0.1.0 milestone as well? Are you opposed to releasing a 0.0.1 release in the meantime? I have some time over the next few days to help get things in shape for that.
Glad to hear that! I created the two milestones 0.0.1 and 0.1.0 to split issues that are a priority or easier with the other issues that might take more time to address. Of course, we might want to split 0.0.1 into 0.0.1 and 0.0.2. The child issues in the 0.0.1 milestone weren't assigned by mistake but they can certainly be reassigned to 0.0.2
Let's check the different way we can implement the SOS constraint
There are basically two ways to handle this:
q(x) + qmodule(g_1(x), ..., g_p(x)) ∈ ⟨f_1(x), ..., f_m(x)⟩
q(x) + preorder(g_1(x), ..., g_p(x)) ∈ ⟨f_1(x), ..., f_m(x)⟩
where
qmodule(g_1(x), ..., g_p(x)) = {s_1(x) g_1(x) + ... + s_p(x) g_p(x) | s_i(x) is SOS}
#9,preorder(g_1(x), ..., g_p(x)) = {sum s_i(x)g_i(x) + sum s_ij(x) g_i(x)g_j(x) + ... + s_1..p g_1(x) ... g_p(x) | s_i(x) is SOS}
(e.g.preorder(g_1(x), g_2(x)) = {s_1(x)g_1(x) + s_2(x)g_2(x) + s_12(x) s_12(x)g_1(x)g_2(x) | s_1(x), s_2(x), s_12(x) is SOS}
#10 and⟨f_1(x), ..., f_m(x)⟩ = {r_1(x) f_1(x) + ... + r_p(x) f_p(x) | r_i(x) is a polynomial}
is the ideal off_1(x), ..., f_m(x)
#11.See section 3.1.6 of
For the ideal, we can do something else than creating the coefficients
r_i(x)
:Not let's look at the equality constraint
If
p
is zero then we can simply doq(x) ∈ ⟨f_1(x), ..., f_m(x)⟩
using either of the 3 possible ways to handle ideas. But ifp
is not zero, what do we do ? Throw an error ? Replace it byq(x) >= 0
andq(x) <= 0
(by throwing a warning ?) ? Compute the variety determined by an algebraic set ? Any idea ?I have split each separate task in a separate issue.
qmodule
#9preorder
#10