Re: Question about Reduce
- To: mathgroup at smc.vnet.net
- Subject: [mg63913] Re: [mg63897] Question about Reduce
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Sun, 22 Jan 2006 00:52:28 -0500 (EST)
- References: <200601210650.BAA11292@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On 21 Jan 2006, at 07:50, Mark Fisher wrote: > The following behavior of Reduce puzzles me. > > conds = (5*Abs[67/30 - Sqrt[4489/900 - (18*(1 + x/3))/5]])/9 > 1 && > (5*Abs[67/30 + Sqrt[4489/900 - (18*(1 + x/3))/5]])/9 > 1; > > conds /. x -> 2 > > returns True > > but > > Reduce[conds && x â?? Reals, {x}, Complexes] /. x -> 2 > > returns False. > > Is that a bug or do I just not understand what Reduce should do? > > --Mark > It is clear that what reduce is doing is simply this: Reduce[conds, {x}, Reals] x < -(62/5) || Inequality[1, Less, x, LessEqual, 1249/1080] IN other words, it is not attempting to solve the inequalities over the complexes as requested and this is very likely a bug. I think you can solve the problem with Reduce if you explicitly introduce another variable z that is allowed to take complex values. sol = FullSimplify[First /@ Reduce[z^2 == 4489/900 - (18/5)*(x/3 + 1) && (5/9)*Abs[67/30 - z] > 1 && (5/9)*Abs[ z + 67/30] > 1 && x â?? Reals, {x, z}]] x < -(62/5) || x > 1 Let's check on some numerical values: conds /. x -> 1 False conds /. x -> 1.1 True = conds /. x -> -62/5 False conds /. x -> -63/5 True So it looks pretty convincing. Andrzej Kozlowski
- References:
- Question about Reduce
- From: Mark Fisher <mark@markfisher.net>
- Question about Reduce