UNKNOWN
Булев постоянный UNKNOWN
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
MuPAD® использует логику с тремя состояниями с булевыми константами TRUE
, FALSE
и UNKNOWN
.
Булевы константы TRUE
, FALSE
, UNKNOWN
имеет доменный тип DOM_BOOL
.
Смотрите и, или, не для логических правил MuPAD логика с тремя состояниями.
Булевы константы возвращены системными функциями, такими как bool
и is
. Эти функции выполняют Булевы выражения, такие как уравнения и неравенства.
Булевы константы могут быть объединены через and
, or
и not
:
(TRUE and (not FALSE)) or UNKNOWN
Функциональный bool
служит для сокращения Булевых выражений, таких как уравнения или неравенства к одной из булевых констант:
bool(x = x and 2 < 3 and 3 <> 4 or UNKNOWN)
Функциональный is
выполняет символьные Булевы выражения со свойствами:
assume(x > 2): is(x^2 > 4), is(x^3 < 0), is(x^4 > 17)
unassume(x):
Булевы константы происходят в условной части структур программного управления, таких как if
, repeat
или операторы while
. Следующий цикл ищет самый маленький Mersenne, главный больше, чем 500 (см. numlib::mersenne
для деталей). Функциональный isprime
возвращает TRUE
, если его аргумент является началом, и FALSE
в противном случае. Если главный Mersenne найден, while
- цикл прерван оператором break
:
p := 500: while TRUE do p := nextprime(p + 1): if isprime(2^p - 1) then print(p); break; end_if; end_while:
Обратите внимание на то, что условная часть if
, repeat
и операторов while
должна оценить к TRUE
или FALSE
. Любое другое значение приводит к ошибке:
if UNKNOWN then "true" else "false" end_if
Error: Unable to evaluate to Boolean. [if]
delete p: