       Re: Solving equations and inequalities with Reduce - how?

• To: mathgroup at smc.vnet.net
• Subject: [mg87715] Re: Solving equations and inequalities with Reduce - how?
• From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
• Date: Wed, 16 Apr 2008 05:01:30 -0400 (EDT)
• Organization: The Open University, Milton Keynes, UK
• References: <fu1tuf\$ogc\$1@smc.vnet.net>

```Marc Heusser wrote:

> I tried to solve equations with Reduce and somehow did not quite
> formulate it right, so Reduce complains with
> "Reduce::ivar: 1 is not a valid variable".
>
> This is what I tried:
>
> Wanted: A six digit number satisfying the following conditions:
> The first digit is not zero.
> If you take the first two digits and move them to the end of the number,
> the resulting number must be twice the original number.
>
> In:=Reduce[200000a +20000 b +2000 c+200 d+20 e  +       2 f
> \[Equal]100000c +10000 d +1000 e+100 f+10 a  + b ,  {a,b,c,d,e,f},
> Modulus\[Rule]9]
>
> I did solve the problem through exhaustive search:
>
> In:=Timing[Select[Range[10^6],    FractionalPart[#/10000] 1000000 +
> IntegerPart[#/10000]\[Equal] 2  #&]]
> Out={34.2848 Second,{142857,285714,428571}}
>
> but would like to understand how to use Reduce (or another function) to
> solve such a set of equations.

Marc,

First, one of your variables had been set to the value one before you
tried Reduce[].

Second, the option Modulus->9 is not doing what you may have in mind
(the solution yield by Reduce[] does not fulfill your original criteria ).

Third, using FindInstance[] may help to formulate and check your problem
in an algebraic way.

For instance, starting with a fresh kernel,

In:= eqn =
200000 a + 20000 b + 2000 c + 200 d + 20 e + 2 f ==
100000 c + 10000 d + 1000 e + 100 f + 10 a + b;

In:= Reduce[eqn && a != 0, {a, b, c, d, e, f}, Modulus -> 9]

Out= a != 0 && a == C && b == C && c == C && d == C &&
e == C && f == 8 C + 8 C + 8 C + 8 C + 8 C

In:= FindInstance[eqn && a != 0, {a, b, c, d, e, f},
Modulus -> 10]
eqn /. %[]

Out= {{a -> 1, b -> 0, c -> 0, d -> 0, e -> 0, f -> 0}}

Out= False

In:= FindInstance[eqn && a != 0, {a, b, c, d, e, f}, Integers]
eqn /. %[]

Out= {{a -> 1, b -> 4, c -> 0, d -> 0, e -> 0, f -> 2857}}

Out= True

Regards,
-- Jean-Marc

```

• Prev by Date: ListPlot & lots 'o dots.
• Next by Date: Re: Re: Deleting Integrate[] transformation rule (some
• Previous by thread: Re: Solving equations and inequalities with Reduce - how?
• Next by thread: Re: Deleting Integrate[] transformation rule (some progress)