Re: inconsistent refinement behavior
- To: mathgroup at smc.vnet.net
- Subject: [mg131375] Re: inconsistent refinement behavior
- From: Alex Krasnov <akrasnov at cory.eecs.berkeley.edu>
- Date: Tue, 16 Jul 2013 05:56:45 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-outx@smc.vnet.net
- Delivered-to: mathgroup-newsendx@smc.vnet.net
- References: <20130714054806.AEA91636F@smc.vnet.net>
Refine treats Reals as a subset of Complexes, as expected:
In: Assuming[Element[x, Reals], Refine[Element[x, Complexes]]]
Out: True
Of course, the same holds for the other two examples:
In: Assuming[x>0, Refine[Element[x, Complexes]]]
Out: True
In: Assuming[x>=0, Refine[Element[x, Complexes]]]
Out: True
However, Refine recognizes that the stronger condition Element[x, Reals]
holds for all three examples.
Alex
On Sun, 14 Jul 2013, Bill Rowe wrote:
> On 7/12/13 at 2:49 AM, akrasnov at cory.eecs.berkeley.edu (Alex Krasnov)
> wrote:
>
>> Firstly, x==0 also implicitly assumes that x is in Reals, since 0 is
>> in Reals, as the following examples demonstrate:
>
>> In: Assuming[x==0, Refine[Element[x, Reals]]] Out: True
>
>> In: Assuming[{Element[x, Reals], x==0}, Refine[Infinity/x]]
>> Out: ComplexInfinity
>
> No so. Consider
>
> In[1]:= Assuming[x == 0, Refine[Element[x, Complexes]]]
>
> Out[1]= True
>
>
- References:
- Re: inconsistent refinement behavior
- From: Bill Rowe <readnews@sbcglobal.net>
- Re: inconsistent refinement behavior