Re: Re: Uniform design

*To*: mathgroup at smc.vnet.net*Subject*: [mg48183] Re: [mg48170] Re: Uniform design*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>*Date*: Mon, 17 May 2004 03:21:51 -0400 (EDT)*References*: <c7nnc7$dm5$1@smc.vnet.net> <200405130408.AAA26737@smc.vnet.net> <c81has$4rj$1@smc.vnet.net> <200405150756.DAA00995@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

On 15 May 2004, at 16:56, Maxim wrote: > Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote in message > news:<c81has$4rj$1 at smc.vnet.net>... >> On 13 May 2004, at 13:08, Maxim wrote: >> >>> Also, it's strange that Solve accepts intervals (Mathematica Help for >>> Interval even gives such an example), but doesn't really support >>> them: >>> >>> In[7]:= >>> Solve[1/(x - 1) == Interval[{-1, 1}]] >>> >>> Out[7]= >>> {{x -> Interval[{-Infinity, Infinity}]}} >>> >>> Not much point in treating this equation as Solve[1/(x-1)==a,x] and >>> giving incorrect result. >>> >> I agree that it seems strange that this sort of thing was included in >> the help browser, without additional comment, for it can certainly >> only be misleading. Interval arithmetic is strange and does not obey >> usual rules: >> >> 1 + 1/Interval[{-1, 1}] >> >> Interval[{-Infinity, 0}, {2, Infinity}] >> >> and >> >> (1 + Interval[{-1, 1}])/Interval[{-1, 1}] >> >> Interval[{-Infinity, Infinity}] >> >> This means that the answer returned by Solve will depend on how you >> choose to write your equation: >> >> >> Solve[1/(x - 1) == Interval[{-1, 1}]] >> >> >> {{x -> Interval[{-Infinity, Infinity}]}} >> >> >> Solve[x - 1 == 1/Interval[{-1, 1}]] >> >> {{x -> Interval[{-Infinity, 0}, {2, Infinity}]}} >> >> >> (What is actually weird is that >> >> >> Solve[1/(x - 1) == Interval[{-1, 1}], x] >> >> {} >> >> while >> >> >> Solve[x - 1 == 1/Interval[{-1, 1}], x] >> >> {{x -> Interval[{-Infinity, 0}, {2, Infinity}]}}) >> >> >> Whether the original answer should be considered wrong or only >> excessively "pessimistic" depends on the context. The usual context in >> which interval arithmetic is used is for error estimation, where it >> is >> most important that it should not return an interval smaller than the >> correct one and at least in this case it does not. >> >> >> >> Andrzej Kozlowski >> Chiba, Japan >> http://www.mimuw.edu.pl/~akoz/ > > The only problem with that kind of explanation is that it's made with > hindsight. > > In[1]:= > Solve[1/(x - 1) == Interval[{-1, 0}]] > > Out[1]= > {{x -> -1}} > > What happened to "pessimistic interval" here? > > Maxim Rytin > m.r at prontomail.com > > The obvious problem is not with my hindsight but with your knowledge of mathematics and in particular of interval arithmetic. The answer Mathematica should have given here is: Solve[1/(x - 1) == z, x] /. z -> Interval[{-1, 0}] Out[8]= {{x -> Interval[{-Infinity, 0}]}} This is almost certainly just a bug. Andrzej Kozlowski Andrzej Kozlowski Chiba, Japan http://www.mimuw.edu.pl/~akoz/

**References**:**Re: Uniform design***From:*ab_def@prontomail.com (Maxim)

**Re: Uniform design***From:*ab_def@prontomail.com (Maxim)

**Re: Kernel init.m File**

**Re: FindRoot cannot find obvious solution**

**Re: Uniform design**

**Re: Uniform design**