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/

```

• Prev by Date: Re: Kernel init.m File
• Next by Date: Re: FindRoot cannot find obvious solution
• Previous by thread: Re: Uniform design
• Next by thread: Re: Uniform design