==>, _implies

Логическое значение

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

b1 ==> b2
_implies(b1, b2)

Описание

b1 ==> b2 представляет логическое значение Булевых выражений b1, b2.

a ==> b эквивалентен not a or b. Смотрите Пример 1.

_implies(a, b) эквивалентен a ==> b.

MuPAD® использует логику с тремя состояниями с булевыми константами TRUE, FALSE и UNKNOWN. Они обрабатываются можно следующим образом:

andTRUEFALSEUNKNOWN
TRUETRUEFALSEUNKNOWN
FALSEFALSEFALSEFALSE
UNKNOWNUNKNOWNFALSEUNKNOWN

Булевы выражения могут состоять из этих констант, а также из произвольных арифметических выражений. Как правило, уравнения, такие как x = y и неравенства, такие как x <> y, x < y, x <= y, используются, чтобы создать Булевы выражения.

Комбинации констант TRUE, FALSE, UNKNOWN в Булевом выражении упрощен автоматически. Однако символьные булевы подвыражения, равенства и неравенства не оценены и упрощены логическими операторами. Используйте bool, чтобы выполнить такие выражения к одной из булевых констант. Обратите внимание, однако, что bool может оценить неравенства x < y, x <= y, и так далее, только если они состоят из количеств типа Type::Real.

Используйте simplify с опцией logic, чтобы упростить выражения, включающие символьные булевы подвыражения. Смотрите Пример 1.

Приоритеты логических операторов следующие. Если в сомнении, используйте круглые скобки, чтобы гарантировать, что выражение анализируется, как желаемый.

  • Оператор not является более сильной привязкой, чем and, то есть, not b1 and b2 = (not b1) and b2.

  • Оператор and является более сильной привязкой, чем xor, то есть, b1 and b2 or b3 = (b1 and b2) xor b3.

  • Оператор xor является более сильной привязкой, чем or, то есть, b1 xor b2 or b3 = (b1 xor b2) or b3.

  • Оператор or является более сильной привязкой, чем ==>, то есть, b1 or b2 ==> b3 = (b1 or b2) ==> b3.

  • Оператор ==> является более сильной привязкой, чем <=>, то есть, b1 ==> b2 <=> b3 = (b1 ==> b2) <=> b3.

В условном контексте if, repeat и операторов while, Булевы выражения выполнены через “отложенные вычисления” (см. _lazy_and, _lazy_or). В любом другом контексте оценены все операнды.

Примеры

Пример 1

a ==> b эквивалентен not a or b.

simplify((a ==> b), logic)

not a or b

Параметры

b1, b2

Булевы выражения

Возвращаемые значения

Булево выражение.

Перегруженный

b, b_1, b_2

Смотрите также

Функции MuPAD