Message Boards Message Boards

0
|
4421 Views
|
7 Replies
|
0 Total Likes
View groups...
Share
Share this post:

How to use SolveAlways for long multivariable polynomials

Dear friends I have tried to use SolveAlways to find values of parameters that make valid a polynomial of two variables of degree 9. It has 55 monomials and the coefficients of the monomial are nonlinear combinations of unknown parameters ais. After sometime of running, Mathematica returns and empty list {}. Is this because there is not a set of ais that makes pol(x,y)==0 or Mathematica is failing to solve the problem? Can any one tell what kind of polynomial theories support SolveAlways?

I didn't know how to include my polynomial here, but this is an screen shot with part of it.

Thanks for any help! Jesus

enter image description here

7 Replies

Okay. I am not exactly sure what it is you want next. If you are looking for values of {a0,a1,...} that make EVERY coefficient in z1^j*z2^k vanish (for all possible exponent pairs {j,k} that is), then that cannot be done (I checked). If you are looking for values of {z1,z2} in terms of {a1,...} so that the polynomial is zero, that's a very different thing.

POSTED BY: Daniel Lichtblau

Daniel I found in the Wolfram Documentation the following example

SolveAlways[(a - b) x + (a^2 - b + 1) x y + (a d - c + 2) x y z + 
   a b - c d == 0, {x, y, z}]

and the solution is

{{a -> (-1)^(1/3), b -> (-1)^(1/3), c -> 2 - (-1)^(1/3) + (-1)^(2/3), 
  d -> -1 + (-1)^(1/3)}, {a -> (-1)^(1/3), b -> (-1)^(1/3), 
  c -> 2 - (-1)^(1/3) + (-1)^(2/3), 
  d -> -1 + (-1)^(1/3)}, {a -> -(-1)^(2/3), b -> -(-1)^(2/3), c -> 1, 
  d -> -(-1)^(1/3)}, {a -> -(-1)^(2/3), b -> -(-1)^(2/3), c -> 1, 
  d -> -(-1)^(1/3)}}

So, for some examples, it seems to be possible to find the coefficients to make the polynomial == 0

That is what I want to do with my polynomial. I guess that is going to be impossible.

Thanks anyway Jesus

Ah. Yes, that is more or less what I tried. I did it a bit differently but got in effect the same result you did with SolveAlways; there is no set of parameter values that will make the polynomial uinformly vanish. So you had it correct from the beginning (for better or worse, depending on what you had hoped to do with this polynomial).

POSTED BY: Daniel Lichtblau

Daniel Sorry to bother again. In my question, if I were looking into writing z1 and z2 in termos of {a0,a1,....} what should I do? That may help for what I am trying to do with the polynomial. Thanks for any feedback.

Jesus

You cannot quite do that. You have one equation in two variables, the others being regarded as unspecified parameters. You can solve for one var in terms of the other plus the params. But you'll need another equation in order to solve for both vars.

POSTED BY: Daniel Lichtblau

Daniel

Here is my polynomial in terms of vars: z1 and z2. I hope this would gel to explain myself better.

Thanks

0. + a9^3 + (-a8 + 3 a5 a9^2) z1 + (-a4 + 3 a5^2 a9 + 
    3 a2 a9^2) z1^2 + (-a1 + a5^3 + 6 a2 a5 a9 + 
    3 a0 a9^2) z1^3 + (3 a2 a5^2 + 3 a2^2 a9 + 
    6 a0 a5 a9) z1^4 + (3 a2^2 a5 + 3 a0 a5^2 + 
    6 a0 a2 a9) z1^5 + (a2^3 + 6 a0 a2 a5 + 
    3 a0^2 a9) z1^6 + (3 a0 a2^2 + 3 a0^2 a5) z1^7 + 3 a0^2 a2 z1^8 + 
 a0^3 z1^9 + (a5 - 3. a9^2 + 3 a8 a9^2) z2 + (2 a2 - 2 a7 - 
    6. a5 a9 + 6 a5 a8 a9 + 3 a4 a9^2) z1 z2 + (3 a0 - 2 a3 - 
    3. a5^2 + 3 a5^2 a8 - 6. a2 a9 + 6 a4 a5 a9 + 6 a2 a8 a9 + 
    3 a1 a9^2) z1^2 z2 + (-6. a2 a5 + 3 a4 a5^2 + 6 a2 a5 a8 - 
    6. a0 a9 + 6 a2 a4 a9 + 6 a1 a5 a9 + 
    6 a0 a8 a9) z1^3 z2 + (-3. a2^2 - 6. a0 a5 + 6 a2 a4 a5 + 
    3 a1 a5^2 + 3 a2^2 a8 + 6 a0 a5 a8 + 6 a1 a2 a9 + 
    6 a0 a4 a9) z1^4 z2 + (-6. a0 a2 + 3 a2^2 a4 + 6 a1 a2 a5 + 
    6 a0 a4 a5 + 6 a0 a2 a8 + 6 a0 a1 a9) z1^5 z2 + (-3. a0^2 + 
    3 a1 a2^2 + 6 a0 a2 a4 + 6 a0 a1 a5 + 
    3 a0^2 a8) z1^6 z2 + (6 a0 a1 a2 + 3 a0^2 a4) z1^7 z2 + 
 3 a0^2 a1 z1^8 z2 + (a4 + 3. a9 - 6. a8 a9 + 3 a8^2 a9 + 
    3 a7 a9^2) z2^2 + (2 a1 + 3. a5 - 3 a6 - 6. a5 a8 + 3 a5 a8^2 - 
    6. a4 a9 + 6 a5 a7 a9 + 6 a4 a8 a9 + 
    3 a3 a9^2) z1 z2^2 + (3. a2 - 6. a4 a5 + 3 a5^2 a7 - 6. a2 a8 + 
    6 a4 a5 a8 + 3 a2 a8^2 - 6. a1 a9 + 3 a4^2 a9 + 6 a3 a5 a9 + 
    6 a2 a7 a9 + 6 a1 a8 a9) z1^2 z2^2 + (3. a0 - 6. a2 a4 - 
    6. a1 a5 + 3 a4^2 a5 + 3 a3 a5^2 + 6 a2 a5 a7 - 6. a0 a8 + 
    6 a2 a4 a8 + 6 a1 a5 a8 + 3 a0 a8^2 + 6 a2 a3 a9 + 6 a1 a4 a9 + 
    6 a0 a7 a9) z1^3 z2^2 + (-6. a1 a2 - 6. a0 a4 + 3 a2 a4^2 + 
    6 a2 a3 a5 + 6 a1 a4 a5 + 3 a2^2 a7 + 6 a0 a5 a7 + 6 a1 a2 a8 + 
    6 a0 a4 a8 + 3 a1^2 a9 + 6 a0 a3 a9) z1^4 z2^2 + (-6. a0 a1 + 
    3 a2^2 a3 + 6 a1 a2 a4 + 3 a0 a4^2 + 3 a1^2 a5 + 6 a0 a3 a5 + 
    6 a0 a2 a7 + 6 a0 a1 a8) z1^5 z2^2 + (3 a1^2 a2 + 6 a0 a2 a3 + 
    6 a0 a1 a4 + 3 a0^2 a7) z1^6 z2^2 + (3 a0 a1^2 + 
    3 a0^2 a3) z1^7 z2^2 + (-1. + a3 + 3. a8 - 3. a8^2 + a8^3 - 
    6. a7 a9 + 6 a7 a8 a9 + 3 a6 a9^2) z2^3 + (3. a4 - 6. a5 a7 - 
    6. a4 a8 + 6 a5 a7 a8 + 3 a4 a8^2 - 6. a3 a9 + 6 a5 a6 a9 + 
    6 a4 a7 a9 + 6 a3 a8 a9) z1 z2^3 + (3. a1 - 3. a4^2 - 6. a3 a5 + 
    3 a5^2 a6 - 6. a2 a7 + 6 a4 a5 a7 - 6. a1 a8 + 3 a4^2 a8 + 
    6 a3 a5 a8 + 6 a2 a7 a8 + 3 a1 a8^2 + 6 a3 a4 a9 + 6 a2 a6 a9 + 
    6 a1 a7 a9) z1^2 z2^3 + (-6. a2 a3 - 6. a1 a4 + a4^3 + 
    6 a3 a4 a5 + 6 a2 a5 a6 - 6. a0 a7 + 6 a2 a4 a7 + 6 a1 a5 a7 + 
    6 a2 a3 a8 + 6 a1 a4 a8 + 6 a0 a7 a8 + 6 a1 a3 a9 + 
    6 a0 a6 a9) z1^3 z2^3 + (-3. a1^2 - 6. a0 a3 + 6 a2 a3 a4 + 
    3 a1 a4^2 + 6 a1 a3 a5 + 3 a2^2 a6 + 6 a0 a5 a6 + 6 a1 a2 a7 + 
    6 a0 a4 a7 + 3 a1^2 a8 + 6 a0 a3 a8) z1^4 z2^3 + (6 a1 a2 a3 + 
    3 a1^2 a4 + 6 a0 a3 a4 + 6 a0 a2 a6 + 
    6 a0 a1 a7) z1^5 z2^3 + (a1^3 + 6 a0 a1 a3 + 
    3 a0^2 a6) z1^6 z2^3 + (3. a7 - 6. a7 a8 + 3 a7 a8^2 - 6. a6 a9 + 
    3 a7^2 a9 + 6 a6 a8 a9) z2^4 + (3. a3 - 6. a5 a6 - 6. a4 a7 + 
    3 a5 a7^2 - 6. a3 a8 + 6 a5 a6 a8 + 6 a4 a7 a8 + 3 a3 a8^2 + 
    6 a4 a6 a9 + 6 a3 a7 a9) z1 z2^4 + (-6. a3 a4 - 6. a2 a6 + 
    6 a4 a5 a6 - 6. a1 a7 + 3 a4^2 a7 + 6 a3 a5 a7 + 3 a2 a7^2 + 
    6 a3 a4 a8 + 6 a2 a6 a8 + 6 a1 a7 a8 + 3 a3^2 a9 + 
    6 a1 a6 a9) z1^2 z2^4 + (-6. a1 a3 + 3 a3 a4^2 + 3 a3^2 a5 - 
    6. a0 a6 + 6 a2 a4 a6 + 6 a1 a5 a6 + 6 a2 a3 a7 + 6 a1 a4 a7 + 
    3 a0 a7^2 + 6 a1 a3 a8 + 6 a0 a6 a8) z1^3 z2^4 + (3 a2 a3^2 + 
    6 a1 a3 a4 + 6 a1 a2 a6 + 6 a0 a4 a6 + 3 a1^2 a7 + 
    6 a0 a3 a7) z1^4 z2^4 + (3 a1^2 a3 + 3 a0 a3^2 + 
    6 a0 a1 a6) z1^5 z2^4 + (3. a6 - 3. a7^2 - 6. a6 a8 + 3 a7^2 a8 + 
    3 a6 a8^2 + 6 a6 a7 a9) z2^5 + (-6. a4 a6 - 6. a3 a7 + 
    6 a5 a6 a7 + 3 a4 a7^2 + 6 a4 a6 a8 + 6 a3 a7 a8 + 
    6 a3 a6 a9) z1 z2^5 + (-3. a3^2 - 6. a1 a6 + 3 a4^2 a6 + 
    6 a3 a5 a6 + 6 a3 a4 a7 + 6 a2 a6 a7 + 3 a1 a7^2 + 3 a3^2 a8 + 
    6 a1 a6 a8) z1^2 z2^5 + (3 a3^2 a4 + 6 a2 a3 a6 + 6 a1 a4 a6 + 
    6 a1 a3 a7 + 6 a0 a6 a7) z1^3 z2^5 + (3 a1 a3^2 + 3 a1^2 a6 + 
    6 a0 a3 a6) z1^4 z2^5 + (-6. a6 a7 + a7^3 + 6 a6 a7 a8 + 
    3 a6^2 a9) z2^6 + (-6. a3 a6 + 3 a5 a6^2 + 6 a4 a6 a7 + 
    3 a3 a7^2 + 6 a3 a6 a8) z1 z2^6 + (6 a3 a4 a6 + 3 a2 a6^2 + 
    3 a3^2 a7 + 6 a1 a6 a7) z1^2 z2^6 + (a3^3 + 6 a1 a3 a6 + 
    3 a0 a6^2) z1^3 z2^6 + (-3. a6^2 + 3 a6 a7^2 + 
    3 a6^2 a8) z2^7 + (3 a4 a6^2 + 6 a3 a6 a7) z1 z2^7 + (3 a3^2 a6 + 
    3 a1 a6^2) z1^2 z2^7 + 3 a6^2 a7 z2^8 + 3 a3 a6^2 z1 z2^8 + 
 a6^3 z2^9

Regarding entering an expression, you can cut and paste the actual code. Then highlight and use the top left icon to make it format as code. Will be better if you avoid subscripts though.

POSTED BY: Daniel Lichtblau
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract