Rule
lhsrhs またはlhsrhs
lhs を rhs に変換する規則を表す.
詳細
- 規則は,式間の変換,サブケース,対応,その他の関係を表すことができる非常に一般的な構造である.
- は,->または∖[Rule]で入力できる.
- lhs->rhs は,rhs を即時に評価する.
- Replaceを使って規則を適用することができる.
- 割当てlhs=rhsは,これが適用する場合には,規則 lhs->rhs を使用することを指定する.
- StandardFormでは,Ruleはを使って出力される.
- lhs にパターンの名前として発生する記号はこの規則に局所的なものとして取り扱われる.この記号が lhs の中の条件子/;の右側に現れたり,スコープ構成の中であっても rhs の中に現れるとこの取扱いが適用される.
- Rule構文は,どのようにもネストすることができる.Ruleはスコープ構文として扱われ,必要に応じて内側の変数が改名される.
予備知識
- Ruleは,1つの式を別の式に変換する規則を表す.式Rule[lhs,rhs]は,短縮形のシンタックスである あるいは を使って書かれ,表示されることが多い.規則ベースのプログラミングは,数多くのプログラムを簡潔明快に書くことを可能にする,非常に強力なパラダイムである.
- 規則は,rhs で示される適切に変換されたバージョン(例:)で置き換えられた lhs 上のパターンを含むことが多い.しかし, は rhs を即座に評価するので,規則が使用された後でのみに rhs が評価されなければならない場合には,代りにRuleDelayed(短縮形では:>あるいはと書かれる)を使わなければならないことに注意する.
- Ruleの置換は,Replace,ReplaceAll,ReplaceRepeated,ReplaceList,ReplacePart,StringReplace等の関数を使って行うことができる.
- Solve,FindInstance,FindRoot等,Wolfram言語の多くの関数は,その結果を規則のリストとして返す.例えば,Solve[x^2-1==0,x]は{{x-1},{x1}}を返す.この形式は,それぞれの変数(特に多変量の場合)を解に関連付け,ReplaceAllや関連関数を通して,もとの変数について解の便利な後退代入を行うことを可能にするので,有益である.
例題
すべて開くすべて閉じる特性と関係 (4)
->は,最初に入力したときに評価される.これに対し:>は使われるときに評価される:
KeyValuePatternを使って規則のリストを変換することができる:
KeyValuePatternはRuleとRuleDelayedを区別する:
Wolfram Research (1988), Rule, Wolfram言語関数, https://reference.wolfram.com/language/ref/Rule.html (1996年に更新).
テキスト
Wolfram Research (1988), Rule, Wolfram言語関数, https://reference.wolfram.com/language/ref/Rule.html (1996年に更新).
CMS
Wolfram Language. 1988. "Rule." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 1996. https://reference.wolfram.com/language/ref/Rule.html.
APA
Wolfram Language. (1988). Rule. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Rule.html