ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

isAlways

方程式または不等式を変数のすべての値に適用できるかどうかをチェック

isAlways は決定不可能な入力に対して false を返す際、警告を発します。警告が出ないようにするには、isAlways(cond,'Unknown','false') のように Unknown オプションを false に設定します。詳細は、決定不可能条件に対する出力処理を参照してください。

構文

  • isAlways(cond)
  • isAlways(cond,Name,Value)

説明

isAlways(cond) は、条件 condcond のシンボリック変数のすべての値で有効かどうかをチェックします。cond を検証する際、関数 isAlwayscond の変数に対しあらゆる仮定を考慮します。条件が成り立つ場合、isAlways は論理値 1 (true) を返します。その他の場合は論理値 0 (false) を返します。

isAlways(cond,Name,Value) は、1 つ以上の Name,Value 引数のペアによって指定された追加オプションを使用します。

テスト条件

次の不等式が x のすべての値で有効かどうかをチェックします。

syms x
isAlways(abs(x) >= 0)
ans =
     1

isAlways は、論理値 1 (true) を返し、不等式 abs(x) >= 0x のすべての値で有効であることを示します。

次の方程式が x のすべての値で有効かどうかをチェックします。

isAlways(sin(x)^2 + cos(x)^2 == 1)
ans =
     1

isAlways は、論理値 1 (true) を返し、この不等式が x のすべての値で有効であることを示します。

複数の条件のいずれか 1 つが有効かどうか調べる

2 つの条件のうち、少なくとも一方が有効であるかどうかをチェックします。複数の条件のうち少なくとも 1 つが有効であることをチェックするには、論理演算子 or またはそのショートカット | を使用して、条件を組み合わせます。

syms x
isAlways(sin(x)^2 + cos(x)^2 == 1 | x^2 > 0)
ans =
     1

両方の条件が有効であるかチェックします。複数の条件が有効であることをチェックするには、論理演算子 and またはそのショートカット & を使用して、条件を組み合わせます。

isAlways(sin(x)^2 + cos(x)^2 == 1 & abs(x) > 2*abs(x))
ans =
     0

決定不可能条件に対する出力処理

以下の条件をテストします。isAlways は、条件が有効であることを判断できない場合、既定では論理値 0 (false) を返して警告を発します。

syms x
isAlways(2*x >= x)
Warning: Cannot prove 'x <= 2*x'.
ans =
     0

この既定の動作を変更するには、Unknown を使用します。たとえば、条件の有効性を判断できない場合に警告を抑制し、isAlways が論理値 0 (false) を返すようにするには、Unknownfalse に指定します。

isAlways(2*x >= x,'Unknown','false')
ans =
     0

false の代わりに、error を指定してエラーを返したり、true を指定して論理値 1 (true) を返すようにも設定できます。

仮定を使用した条件のでテスト

x が正であるという仮定の下で、次の不等式をチェックします。isAlways が方程式または不等式をテストする場合、その方程式または不等式の変数に対する仮定が考慮されます。

syms x
assume(x < 0)
isAlways(2*x < x)
ans =
     1

計算を続けるため x に設定された仮定を消去します。

syms x clear

入力引数

すべて折りたたむ

チェックする条件。シンボリックな条件、あるいはシンボリックな条件のベクトル、行列、または多次元配列として指定します。

名前/値のペアの引数

オプションの Name,Value の引数ペアをコンマ区切りで指定します。ここで、Name は引数名で、Value は対応する値です。Name は単一引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前/値のペア引数を、任意の順番で指定できます。

例: isAlways(cond,'Unknown',true) は、指定された条件が決定不可能な場合に isAlways が論理値 1 (true) を返すようにします。

すべて折りたたむ

決定不可能条件に対する戻り値。'Unknown' とこれらのいずれかの値から成るコンマ区切りのペアとして指定します。

falseWithWarning (既定値)決定不可能な入力に対しては論理値 0 (false) および論証不能警告を返します。
false決定不可能な入力に対して論理値 0 (false) を返します。
true決定不可能な入力に対して論理値 1 (true) を返します。
error決定不可能な入力に対してエラーを返します。

R2012a で導入

この情報は役に立ちましたか?