RulePlot
詳細とオプション
- 使用可能な計算系 sys
-
CellularAutomaton[spec] セルオートマトン TuringMachine[spec] チューリングマシン SubstitutionSystem[spec] 置換系 BooleanFunction[spec] ブール関数 - TuringMachine[{rule,s,k}]を使って,rule が各 s k の可能な構成について一意的な変化を指定はしないが,にもかかわらず s のヘッドの状態と k のテープの色を仮定して描画するチューリングマシンが指定できる.
- RulePlotは1Dと2Dの系に使うことができる.
- オプション
-
Appearance Automatic 全体的な外観 ColorRules Automatic 値から色を決定する規則 Frame Automatic 規則の周囲に枠を描くかどうか FrameStyle Automatic 枠のスタイル Mesh Automatic メッシュを描くかどうか MeshStyle Automatic メッシュのスタイル PlotLegends None 凡例 PlotMarkers Automatic チューリングマシン等のマーカー PlotTheme $PlotTheme 規則のプロットの全体的なテーマ Spacings Automatics 水平方向と垂直方向の間隔 - 使用可能な外観要素
-

"Contiguous" 状態間にスペースを入れない 
"Stacked" 状態間に小さいスペースを入れる 
"Arrow" 状態間に矢印を描画する 
"Squares" セルに使う正方形 
"Bricks" セルに使う長方形 
"Hexagons" セルに使う六角形 
"Simplified" 簡約した規則 
"Short" 省略形の規則のリストを表示する - 使用可能なプロットの凡例形式
-
"Icon" アイコンを凡例として使う "Text" テキストを凡例として使う expr 任意のプロットの凡例を使う - RulePlot[sys,evol]の形では特定の規則が無視されることが多い.色,状態等の数についての明示的あるいは暗示的な指定のみが使われる.
例題
すべて開く すべて閉じる例 (5)
RulePlot[CellularAutomaton[30]]RulePlot[CellularAutomaton[30], {{1}, 0}, 10]RulePlot[CellularAutomaton[30], {{1}, 0}, 10, PlotLegends -> "Icon"]RulePlot[TuringMachine[{596440, 2, 3}], {1, {{}, 0}}, 20]RulePlot[TuringMachine[{596440, 2, 3}]]evolution = TuringMachine[{596440, 2, 3}, {1, {{}, 0}}, 5]RulePlotを使い,形を決定する規則についての情報を使って過程を表示する:
RulePlot[TuringMachine[{596440, 2, 3}], evolution]RulePlot[SubstitutionSystem[{1 -> {1, 0}, 0 -> {0, 1}}], Appearance -> "Arrow"]スコープ (42)
系の規則 (31)
CellularAutomaton (11)
RulePlot[CellularAutomaton[90]]RulePlot[CellularAutomaton[{679458, 3}]]RulePlot[CellularAutomaton[{1234, 2, 2}]]RulePlot[CellularAutomaton[{9, 2, 3 / 2}]]RulePlot[CellularAutomaton[{1599, {3, 1}}]]RulePlot[CellularAutomaton[{1000, {3, {3, 1, 3}}}]]RulePlot[CellularAutomaton[{23571113171923, 2, {1, 1}}]]RulePlot[CellularAutomaton[{20, {2, {{0, 1, 0}, {1, 1, 1}, {0, 1, 0}}}, {1, 1}}]]RulePlot[CellularAutomaton[{111, {2, {{1, 1, 1}, {1, 1, 1}, {1, 1, 1}}}, {1, 1}}]]RulePlot[CellularAutomaton[{222, {2, {{2, 2, 2}, {2, 1, 2}, {2, 2, 2}}}, {1, 1}}]]RulePlot[CellularAutomaton[<|"RuleNumber" -> 30|>]]RulePlot[CellularAutomaton[<|"TotalisticCode" -> 14, "Dimension" -> 2|>]]RulePlot[CellularAutomaton[<|"OuterTotalisticCode" -> 110, "Dimension" -> 2, "Neighborhood" -> 5|>]]TuringMachine (8)
RulePlot[TuringMachine[2506]]RulePlot[TuringMachine[{600720, 3}]]RulePlot[TuringMachine[{596440, 2, 3}]]RulePlot[TuringMachine[{{1, 2} -> {1, 1, -1}, {1, 1} -> {1, 2, -1}, {1, 0} -> {2, 1, 1}, {2, 2} -> {1, 0, 1}, {2, 1} -> {2, 2, 1}, {2, 0} -> {1, 2, -1}}]]同じ繊維規則について,状態数 s と色数 k の値を明示的に指定する:
rules = {{1, 1} -> {2, 0, -1}, {1, 0} -> {2, 1, 1}, {2, 1} -> {1, 0, 1}, {2, 0} -> {1, 1, -1}};RulePlot[TuringMachine[{rules, 2, 2}]]RulePlot[TuringMachine[{rules, 3, 3}]]RulePlot[TuringMachine[{{1, 1} -> {1, 0, -1}, {1, 0} -> {1, 0, -1}}]]RulePlot[TuringMachine[{{{1, 1} -> {1, 0, -1}, {1, 0} -> {1, 0, -1}}, 2, 2}]]指定不足のチューリングマシンは s k 入力構成のすべてに対しては規則を持たない:
RulePlot[TuringMachine[{{1, 0} -> {2, 1, 1}, {2, 1} -> {1, 0, 1}, {2, 0} -> {1, 1, -1}}]]非決定性のチューリングマシンは同じ入力構成に対して異なる規則を指定する:
RulePlot[TuringMachine[{{1, 0} -> {1, 0, -1}, {1, 0} -> {1, 0, 1}}]]SubstitutionSystem (8)
RulePlot[SubstitutionSystem[{"a" -> "ba", "b" -> "aa"}]]RulePlot[SubstitutionSystem[{"a" -> "ba", "b" -> "da", "c" -> "ca", "d" -> "bc"}]]RulePlot[SubstitutionSystem[{"aa" -> "bc", "ab" -> "aa", "ba" -> "ab", "cb" -> "ac", "cc" -> "ba"}]]RulePlot[SubstitutionSystem[{"aa" -> "ba", "ab" -> "c", "bac" -> "aba", "bba" -> "b", "c" -> "bc"}]]RulePlot[SubstitutionSystem[{0 -> {0, 1}, 1 -> {0, 0}}]]RulePlot[SubstitutionSystem[{0 -> {0, 1}, 1 -> {2, 3}, 2 -> {1, 2}, 3 -> {2, 0}}]]RulePlot[SubstitutionSystem[{0 -> {0, 1, 3}, 1 -> {2, 3}, 2 -> {1}, 3 -> {2, 0}}]]RulePlot[SubstitutionSystem[{0 -> {{0, 0}, {0, 0}}, 1 -> {{0, 1}, {1, 1}}}]]RulePlot[SubstitutionSystem[{0 -> {{0, 0, 0}, {0, 0, 0}}, 1 -> {{1, 0, 0}, {1, 1, 1}}}]]BooleanFunction (4)
RulePlot[BooleanFunction[8, 2]]RulePlot[BooleanFunction[251084, 5]]RulePlot[BooleanFunction[{True, True, True, False, False, False, False, False}]]RulePlot[BooleanFunction[{
{True, True, True} -> 0, {True, True, False} -> 0,
{True, False, True} -> 0, {True, False, False} -> 1,
{False, True, True} -> 0, {False, True, False} -> 0,
{False, False, True} -> 1, {False, False, False} -> 1
}]]系の進化 (11)
CellularAutomaton (5)
RulePlot[CellularAutomaton[30], {0, 0, 1, 1, 1, 0, 0}, 10]RulePlot[CellularAutomaton[30], {{1}, 0}, 50]RulePlot[CellularAutomaton[{679458, 3}], {{1}, 0}, 120]RulePlot[CellularAutomaton[{679458, 3}], {{1}, {0, 1, 1, 0}}, 120]RulePlot[CellularAutomaton[{2049, {3, 1}}], {{1}, 0}, 100]RulePlot[CellularAutomaton[{50010, {3, {3, 1, 3}}}], {{1}, 0}, 100]RulePlot[CellularAutomaton[<|"RuleNumber" -> 23898, "Range" -> 3 / 2|>], {{1}, 0}, 80]RulePlot[CellularAutomaton[<|"TotalisticCode" -> 1599, "Colors" -> 3|>], {{1}, 0}, 200]TuringMachine (6)
4つの0のテープから始まる,2状態,2色のチューリングマシンの進化:
RulePlot[TuringMachine[2506], {1, {0, 0, 0, 0}}, 20]RulePlot[TuringMachine[2506], {1, {{}, 0}}, 20]RulePlot[TuringMachine[{956440, 3}], {1, {{}, 0}}, 20]RulePlot[TuringMachine[{956440, 3}], {1, {{1}, 0}}, 20]RulePlot[TuringMachine[{596440, 2, 3}], {1, {{}, 0}}, 20]RulePlot[TuringMachine[{596440, 2, 3}], {2, {{}, 0}}, 20]反復する021ブロックを背景とする,規則で指定されたチューリングマシンの進化:
RulePlot[TuringMachine[{
{1, 0} -> {1, 2, 1}, {1, 1} -> {1, 2, 1}, {1, 2} -> {2, 0, -1},
{2, 0} -> {2, 1, -1}, {2, 1} -> {1, 2, 1}, {2, 2} -> {2, 0, -1}
}], {1, {{}, {0, 2, 1}}}, 50]非決定性のチューリングマシンは規則順によって異なる進化を与えることがある:
RulePlot[TuringMachine[{{1, 0} -> {1, 0, -1}, {1, 0} -> {1, 0, 1}}], {1, {{}, 0}}, 10, PlotLegends -> "Icon"]RulePlot[TuringMachine[{{1, 0} -> {1, 0, 1}, {1, 0} -> {1, 0, -1}}], {1, {{}, 0}}, 10, PlotLegends -> "Icon"]指定不足のチューリングマシンは s k 入力構成すべてに対しては規則を持たない:
RulePlot[TuringMachine[{{1, 0} -> {2, 1, 1}, {2, 1} -> {1, 0, 1}, {2, 0} -> {1, 1, -1}}], {1, {{}, 0}}, 10]RulePlot[TuringMachine[{{1, 1} -> {2, 0, -1}, {1, 0} -> {2, 1, 1}, {2, 1} -> {1, 0, 1}, {2, 0} -> {1, 1, -1}}], {1, {{}, 0}}, 10]オプション (19)
Appearance (4)
RulePlot[CellularAutomaton[{9, 2, 1 / 2}], Appearance -> "Hexagons"]RulePlot[CellularAutomaton[{9, 2, 1 / 2}], Appearance -> "Bricks"]値が重要ではないセルが,簡約された結果が得られることがある:
RulePlot[CellularAutomaton[30], Appearance -> "Simplified"]RulePlot[CellularAutomaton[{31469, 5}], Appearance -> "Short"]ColorRules (1)
FrameStyle (2)
Mesh (1)
MeshStyle (2)
PlotLegends (3)
RulePlot[CellularAutomaton[30], PlotLegends -> "Text"]RulePlot[CellularAutomaton[30], {{1}, 0}, 20, PlotLegends -> "Icon"]RulePlot[CellularAutomaton[30], {{1}, 0}, 100, PlotLegends -> Placed[Text["complex behavior"], Below]]PlotMarkers (2)
RulePlot[TuringMachine[{596440, 2, 3}], {1, {{}, 0}}, 20, PlotMarkers -> Gray]RulePlot[TuringMachine[{596440, 2, 3}], {1, {{}, 0}}, 20, PlotMarkers -> Directive[EdgeForm[{Black, AbsoluteThickness[1]}],
FaceForm[]]]PlotTheme (2)
RulePlot[CellularAutomaton[30], PlotTheme -> "Web"]RulePlot[CellularAutomaton[30], PlotTheme -> "Web", Mesh -> False]RulePlot[TuringMachine[{
{1, 0} -> {1, 2, 1}, {1, 1} -> {1, 2, 1}, {1, 2} -> {2, 0, -1},
{2, 0} -> {2, 1, -1}, {2, 1} -> {1, 2, 1}, {2, 2} -> {2, 0, -1},
{3, 0} -> {5, 2, -1}, {3, 1} -> {3, 2, 1}, {3, 2} -> {3, 1, 1},
{4, 0} -> {5, 0, -1}, {4, 1} -> {4, 1, 1}, {4, 2} -> {4, 0, 1},
{5, 0} -> {5, 1, 0}, {5, 1} -> {5, 2, -1}, {5, 2} -> {5, 0, -1},
{6, 0} -> {3, 2, 1}, {6, 1} -> {5, 0, -1}, {6, 2} -> {6, 0, -1}
}], PlotTheme -> "Scientific"]アプリケーション (2)
ArrayPlotを使ってルール30を可視化し,RulePlotを使ってCellularAutomatonのルールをプロットする:
ArrayPlot[CellularAutomaton[30, {{1}, 0}, 50], PlotTheme -> "Web"]RulePlot[CellularAutomaton[30], PlotTheme -> "Web"]RulePlotを使ってCellularAutomatonの進化に凡例を付ける:
RulePlot[CellularAutomaton[30], {{1}, 0}, 50, PlotLegends -> "Icon"]特性と関係 (2)
ArrayPlotでセルオートマトンの進化をプロットする:
ArrayPlot[CellularAutomaton[90, {{1}, 0}, 50]]RulePlotを使って進化と規則アイコンをプロットする:
RulePlot[CellularAutomaton[90], {{1}, 0}, 50, PlotLegends -> "Icon"]ArrayPlotでチューリングマシンの進化をプロットする:
ArrayPlot[Last /@ TuringMachine[2506, {1, {{}, 0}}, 20]]RulePlotを使って進化とマシンのヘッドをプロットする:
RulePlot[TuringMachine[2506], {1, {{}, 0}}, 20]関連するガイド
-
▪
- ブール計算 ▪
- 計算系 ▪
- 反復写像とフラクタル ▪
- 離散数学
テキスト
Wolfram Research (2016), RulePlot, Wolfram言語関数, https://reference.wolfram.com/language/ref/RulePlot.html (2021年に更新).
CMS
Wolfram Language. 2016. "RulePlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/RulePlot.html.
APA
Wolfram Language. (2016). RulePlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/RulePlot.html
BibTeX
@misc{reference.wolfram_2026_ruleplot, author="Wolfram Research", title="{RulePlot}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/RulePlot.html}", note=[Accessed: 31-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_ruleplot, organization={Wolfram Research}, title={RulePlot}, year={2021}, url={https://reference.wolfram.com/language/ref/RulePlot.html}, note=[Accessed: 31-October-2026]}