evalb - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Programming : Logic : Boolean : evalb

evalb

evaluate as a Boolean expression

 

Calling Sequence

Parameters

Description

Thread Safety

Examples

Calling Sequence

evalb(x)

Parameters

x

-

expression

Description

• 

The evalb command forces the evaluation of expressions involving relational operators, using a three-valued logic system.  The return values are true, false, and FAIL. If evaluation is not possible, an unevaluated expression is returned.

• 

Normally expressions containing the relational operators =, <>, <, <=, >, and >= are treated as algebraic equations or inequalities by Maple.  However, when passed as arguments to the evalb command (or when appearing in a Boolean context in an if or while statement), they are evaluated to true or false if possible.

• 

Note that expressions involving > and >= are converted into equivalent expressions involving < and <=, respectively.

• 

An evalb call using <, <=, >, or >= returns evaluated only with arguments of type extended_numeric or complex.

  

Important: The evalb command does not simplify expressions. It may return false for a relation that is true. In such a case, apply a simplification to the relation before using evalb.

  

Important: The evalb command does not perform arithmetic for inequalities involving <, <=, >, or >=. It may return unevaluated when a relation is true. In such a case, perform the arithmetic operations before using evalb.

Thread Safety

• 

The evalb command is thread-safe as of Maple 15.

• 

For more information on thread safety, see index/threadsafe.

Examples

x&equals;x

x&equals;x

(1)

evalbx&equals;x

true

(2)

evalbx&equals;y

false

(3)

a2&colon;

b2&colon;

evalba&equals;b

true

(4)

evalbFloat&infin;<&infin;

false

(5)

evalbFloatundefined<undefined

false

(6)

evalb&real;x&real;x&plus;1

true

(7)

The evalb command cannot be used in some cases.

evalby<x

y<x

(8)

evalb2&plus;3I<3&plus;4I

FAIL

(9)

In some cases, you must subtract the right-hand side from the left-hand side before evaluating inequalities that use <, <=, >, or >=.

evalb&real;x<&real;x&plus;1

&real;x<1&plus;&real;x

(10)

evalb&real;x&real;x&plus;1<0

true

(11)

The evalb command uses address tests to determine equality.

evalb&real;x&real;x

true

(12)

You must convert symbolic arguments to floating-point values when using the evalb command for inequalities that use <, <=, >, or >=.

evalb2<5

2<5

(13)

evalb2<evalf5

true

(14)

Alternately, in this case you could use the is command to evaluate the boolean expression, without using evalf.

is2<5

true

(15)

The evalb command can be used in combination with any number of packages.

evalbStringTools&lsqb;Search&rsqb;2&comma;This sentence does not contain any numbers.&equals;0

true

(16)

The evalb command can be used to check if an equation has an x-term.

evalbcoeffx3&plus;2x25&comma;x0

false

(17)

evalbcoeffx3&plus;2x25&comma;x20

true

(18)

See Also

Boolean

is

testeq

type/complex

type/extended_numeric

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam