MathGroup Archive 2007

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

Search the Archive

Re: Logical Expression

  • To: mathgroup at smc.vnet.net
  • Subject: [mg73439] Re: [mg73385] Logical Expression
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Fri, 16 Feb 2007 01:05:49 -0500 (EST)
  • References: <200702150956.EAA04579@smc.vnet.net>

On 15 Feb 2007, at 10:56, Martin Schoenecker wrote:

> Common sense tells me that the statement that "something is equal to
> zero, and unequal to zero at the same time" is a false statement:
>
> In[1]:= a == 0 && a != 0
> Out[1]= a\[Equal]0&&a=E2=89=A00
>
> In[2]:= LogicalExpand[%]
> Out[2]= False
>
> The same, in my opinion, applies to "something is equal to zero and
> greater than zero at the same time".  Why doesn't Mathematica think  
> so,
> and how to convince it to evaluate the following?
>
> In[3]:= a == 0 && a > 0
> Out[3]= a\[Equal]0&&a>0
>
> In[4]:= LogicalExpand[%]
> Out[4]= a\[Equal]0&&a>0
>
>
> Thanks in advance,
> Martin
>


Mathematica knows that but LogicalExpand is not the right thing to  
use when you are dealing with inequalities. You have to use one of  
the functions that can deal with inequalities, for example:


CylindricalDecomposition[a == 0 && a > 0,a]

False

or

Reduce[a == 0 && a > 0]

False

or

Simplify[a==0&&a>0]


False


or if you want something more in the line of "logic" use Resolve:


Resolve[Exists[a,Element[a,Reals],a == 0 && a > 0]]

False

Andrzej Kozlowski


  • Prev by Date: Re: Logical Expression
  • Next by Date: Re: Removing constant multiples from polynomials
  • Previous by thread: Re: Logical Expression
  • Next by thread: real function argument