Reduce
Reduce[expr,vars]
vars について方程式あるいは不等式を解き,限定子を除去することで,命題 expr を簡約する.
詳細とオプション
- 命題 expr は次の論理結合のいずれでもよい.
-
lhs==rhs 等しい lhs!=rhs 等しくない lhs>rhs または lhs>=rhs 不等式 expr∈dom 定義域指定 {x,y,…}∈reg 値域指定 ForAll[x,cond,expr] 全称記号 Exists[x,cond,expr] 存在記号 - Reduce[expr,vars]の結果は常に expr と全く等しい数学的な集合を表す.
- Reduce[{expr1,expr2,…},vars]はReduce[expr1&&expr2&&…,vars]と等価である.
- Reduce[expr,vars]は,デフォルトで,不等式に代数的に現れる限定子は実数で,その他の限定子は複素数であると仮定する.
- Reduce[expr,vars,dom]は,すべての変数とパラメータを定義域 dom に属するものに限る.
- dom がRealsであるか,あるいはIntegersやRationalsのような部分集合の場合,すべての定数と関数の値もまた実数に限られる.
- Reduce[expr&&vars∈Reals,vars,Complexes]は実数と仮定される変数の簡約を行うが,関数の値は複素数であっても構わない.
- Reduce[expr,vars,Integers]は整数についてディオファントス(Diophantus)方程式を簡約する.
- Reduce[…,x∈reg,Reals]は,x が値域 reg になるように制限する.x の異なる座標にはIndexed[x,i]を使って言及することができる.
- Reduce[expr,{x1,x2,…},…]は,実質的に expr を x1, x2, …に対する制約条件の論理結合として表現する.ただし各条件は直前ののみが関連するものとする.
- expr 中のを含まない代数的変数は独立パラメータとして扱われる.
- Reduce[expr,…]の結果にLogicalExpandを適用すると,という形式の式が与えられる.ただし,各 は expr が定義する集合中の個々の構成要素であると考えられる.
- は解体してはならないが,異なる次元を持つことはできる.LogicalExpandの後,各 は という形式になる.
- LogicalExpandがなければ,Reduceはデフォルトで の条件をネストしたものを連続したレベルでOrとAndを交互に組み合せて返す.
- expr が実数あるいは複素数の定義域の整方程式と不等式のみを含む場合は,Reduceは原則的に常にすべての について直接解くことができる.
- expr が超越条件や整数の定義域を含んでいる場合,Reduceはしばしば結果に付加的なパラメータを導入する.
- expr が多項式条件のみを含む場合,Reduce[expr,vars,Reals]は expr の柱状代数分解(CAD)を与える.
- Reduceは整数についてのすべての線形方程式と不等式の明示的な解の表示を与えることができ,文献中のディオファントス方程式の大部分を解くことができる.
- expr が実数または複素数の定義域で多項式条件のみを含む場合,Reduce[expr,vars]は結果に数量的変数が含まれないように常に限定子を除去する.
- 指定可能なオプション
-
Backsubstitution False 逆置換によってほどいた結果を与えるか否か » Cubics False すべての三次関数を解くために明示的な根号を使うか否か » GeneratedParameters C 生成したパラメータの命名法 » Modulus 0 整数に仮定するモジュール » Quartics False 四次方程式を解くために明示的な根号を使うか否か » - Reduce[expr,{x1,x2,…},Backsubstitution->True]は,特定の の条件が以前の に最低限しか依存しないように,のために以前に生成された方程式の値が逆置換された形を与える. »
例題
すべて開くすべて閉じるスコープ (83)
基本的な用法 (5)
ToRulesおよびReplaceRepeated (//.)を使って解をリストにする:
複素領域 (16)
実領域 (26)
整数領域 (13)
混合領域 (4)
オプション (6)
Backsubstitution (1)
GeneratedParameters (1)
Reduceは,解を表すために新たなパラメータを導入することがある:
GeneratedParametersを使ってパラメータの生成方法を制御する:
WorkingPrecision (1)
WorkingPrecision->100を使うと,Reduceは速く解を求められるようになるが,求まった解は正しくないかもしれない:
アプリケーション (9)
多項式の根に関する問題 (1)
整数問題 (3)
2ドル27セントの郵送料を払うための,10セント,23セント,27セントの切手の組合せ方を求める:
IntegerPartitionsを使っても同じタスクを行うことができる:
正 面体の各面は 本の辺に囲まれているが,どの辺も共有されていて2回ずつ数えられる:
正 面体の各面には 個の頂点があるが,頂点は共有されていて 回ずつ数えられる:
オイラー(Euler)の公式 を使って面の数を求めることができる:
この最後の公式がうまく定義されるためには分母が正の整数である必要がある:
これをPolyhedronDataの実際の数と比較する:
特性と関係 (10)
ToRulesとReplaceRepeatedを使って有限解集合を置換し直すことができる:
Expandを使って簡単な根基を含む置換の結果を簡約する:
代数的数を含む式の簡約にRootReduceを使う:
FindInstanceを使って解の例を求める:
Solveは複雑な方程式の解を置換規則で表す:
Solveはパラメータについての方程式を含む解を除外する:
超越方程式については,Solveがすべての解を与えないことがある:
逆関数を使うとSolveがある種の解を求めるのが速くなる:
完全な解を求めるのには時間がかかり,解自体も長くなることがある:
SolveAlwaysは複雑な式が常に真であるパラメータの値を返す:
次は,同じ問題をReduceを使って解く:
Resolveは限定子を除去するが,必ずしも結果の限定子を含まない式を解く訳ではない:
Eliminateは複雑な方程式の系から変数を除去する:
以下では同じ問題をResolveを使って解いている:
Reduceは結果の方程式も解く:
テキスト
Wolfram Research (1988), Reduce, Wolfram言語関数, https://reference.wolfram.com/language/ref/Reduce.html (2024年に更新).
CMS
Wolfram Language. 1988. "Reduce." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/Reduce.html.
APA
Wolfram Language. (1988). Reduce. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Reduce.html