Re: What inspite FindInstance
- To: mathgroup at smc.vnet.net
- Subject: [mg122736] Re: What inspite FindInstance
- From: Daniel Lichtblau <danl at wolfram.com>
- Date: Wed, 9 Nov 2011 06:23:39 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201111081215.HAA04920@smc.vnet.net>
On 11/08/2011 06:15 AM, Artur wrote:
> Dear Mathematica Gurus,
> Matematical problem is following: find pair of integres {d,x} which fill
> equation (d ^2 +
> 270 d Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^3 -
> 2916 x Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^5 +
> 3645 Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^6 ==
> 0)
>
> FindInstance[(d ^2 +
> 270 d Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^3 -
> 2916 x Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^5 +
> 3645 Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6&, 1]^6 ==
> 0)&& (x d != 0), {x, d}, Integers]
>
> Mathematica report:
> FindInstance::nsmet: The methods available to FindInstance are
> insufficient to find the requested instances or prove they do not exist.>>
>
> First solution is x=2 and d=-1
> I'm looking for next ones. Who have idea what to do?
>
> Best wishes
> Artur
Convert the input lhs so that everything is expressed as a polynomial in
the basic root object. This takes a small amount of work because one
power thereof expands into a sum of lower powers.
In[91]:= expr =
d^2 + 270 d Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6 &, 1]^3 -
2916 x Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6 &, 1]^5 +
3645 Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6 &, 1]^6;
rt = Root[1 - 270 #1^3 - 5832 #1^5 + 3645 #1^6 &, 1];
e2 = expr /. rt^n_. :> ToNumberField[rt^n, rt]
Out[93]= d^2 +
AlgebraicNumber[Root[3125 - 250*#1^3 - 24*#1^5 + #1^6 & , 1],
{-1, 0, 0, 2/25, 0, 24/3125}] +
x*AlgebraicNumber[Root[3125 - 250*#1^3 - 24*#1^5 + #1^6 & , 1],
{0, 0, 0, 0, 0, -(12/3125)}] +
d*AlgebraicNumber[Root[3125 - 250*#1^3 - 24*#1^5 + #1^6 & , 1],
{0, 0, 0, 2/25, 0, 0}]
Integer values of x and d will only move the coefficients in the
AlgebraicNumber objects by integer multiples. So all we need to do at
this point is find {x,d} pairs that make the coefficient vector sums
vanish. To this end I will replace that root by a dummy variable.
In[94]:= e3 =
e2 /. AlgebraicNumber[Root[3125 - 250 #1^3 - 24 #1^5 + #1^6 &, 1],
ll_] :> ll.z^Range[0, Length[ll] - 1]
Out[94]= -1 +
d^2 + (2*z^3)/25 + (2*d*z^3)/25 + (24*z^5)/3125 - (12*x*z^5)/3125]
Now force all polynomial coefficients to zero and solve for {x,d}.
In[95]:= SolveAlways[e3 == 0, z]
Out[95]= {{d -> -1, x -> 2}}
Daniel Lichtblau
Wolfram Research
- References:
- What inspite FindInstance
- From: Artur <grafix@csl.pl>
- What inspite FindInstance