Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: FindInstance puzzler

  • To: mathgroup at smc.vnet.net
  • Subject: [mg83636] Re: [mg83633] FindInstance puzzler
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Tue, 27 Nov 2007 06:04:47 -0500 (EST)
  • References: <200711260849.DAA29897@smc.vnet.net>

On 26 Nov 2007, at 17:49, Mark Fisher wrote:

> Hi all,
>
> I'm puzzled by the results of FindInstance which seems to restrict its
> results to a subregion of the valid space.
>
> conds = And @@
>   Append[Thread[(Abs[L] /. Solve[1 - z1 L - z2 L^2 == 0, L]) >= 1],
>    z1 + z2 >= 0];
>
> RegionPlot[conds, {z1, -.75, 2.25}, {z2, -1.25, 1.25}, PlotPoints ->
> 90,
>  Epilog ->  Point[{z1, z2} /. FindInstance[conds, {z1, z2}, Reals,
> 10^3]]]
>
> I suppose this isn't a bug, because the results of FindInstance are
> all valid, but nevertheless I find it unpleasing (to say the least)
> that part of the valid space seems to get no representation. It means
> that FindInstance is of limited use for exploring such spaces.
>
> --Mark
>
>

It seems to me that you have found a more serious problem than just  
"unpleasing" behaviour of FindInstance. In fact, this looks to me  
like a quite serious bug in Reduce. The easiest way to see it is this:

conds = And @@
    Append[Thread[(Abs[L] /. Solve[1 - z1 L - z2 L^2 == 0, L]) >= 1],
     z1 + z2 >= 0];

conds1 = Reduce[conds, {z1, z2}, Reals];

Now, conds1 ought to be equivalent (over the reals) to conds. But it  
is not! For example:

conds /. Thread[{z1, z2} -> {3/2, -3/5}]
True

but

conds1 /. Thread[{z1, z2} -> {3/2, -3/5}]
False

This certianly should not happen! How is this related to your  
problem? You can see this immediately by looking at:


RegionPlot[conds1, {z1, -.75, 2.25}, {z2, -1.25, 1.25}, PlotPoints ->  
90,  Epilog -> Point[{z1, z2} /. FindInstance[conds1, {z1, z2},  
Reals, 10^3]]]

Note that conds was replaced by conds1, which ought to be equivalent  
to it over the reals (but is not). So unless I have had a sudden  
attack of insanity there is a serious bug in Reduce and it was not  
intrduced in Mathematica 6 as the same behaviour is present in 5.2


Andrzej Kozlowski








  • Prev by Date: PlotLabel - SubscriptBox - Vers. 6: FontColor not working?
  • Next by Date: Palette Entry - Recognize Style Sheet?
  • Previous by thread: FindInstance puzzler
  • Next by thread: Re: FindInstance puzzler