Boolean constant TRUE

MuPAD® notebooks will be removed in a future release. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.


MuPAD® uses a three state logic with the Boolean constants TRUE, FALSE, and UNKNOWN.

The Boolean constants TRUE, FALSE, UNKNOWN are of domain type DOM_BOOL.

See and, or, not for the logical rules of the MuPAD three state logic.

Boolean constants are returned by system functions such as bool and is. These functions evaluate Boolean expressions such as equations and inequalities.


Example 1

The Boolean constants may be combined via and, or, and not:

(TRUE and (not FALSE)) or UNKNOWN

Example 2

The function bool serves for reducing Boolean expressions such as equations or inequalities to one of the Boolean constants:

bool(x = x and 2 < 3 and 3 <> 4 or UNKNOWN)

The function is evaluates symbolic Boolean expressions with properties:

assume(x > 2): is(x^2 > 4), is(x^3 < 0), is(x^4 > 17)


Example 3

Boolean constants occur in the conditional part of program control structures such as if, repeat, or while statements. The following loop searches for the smallest Mersenne prime larger than 500 (see numlib::mersenne for details). The function isprime returns TRUE if its argument is a prime, and FALSE otherwise. Once a Mersenne prime is found, the while-loop is interrupted by the break statement:

p := 500:
while TRUE do
  p := nextprime(p + 1):
  if isprime(2^p - 1) then

Note that the conditional part of if, repeat, and while statements must evaluate to TRUE or FALSE. Any other value leads to an error:

if UNKNOWN then "true" else "false" end_if
Error: Unable to evaluate to Boolean. [if]
delete p:

See Also

MuPAD Domains

MuPAD Functions