Wolfram Language

Linguagem de núcleo

Sistema de substituição

SubstitutionSystem gera uma lista que representa a evolução de um determinado estado inicial seguindo as aplicações iterativas de um conjunto de regras.

Considere o seguinte estado inicial e conjunto de regras.

In[1]:=
Click for copyable input
init = "\[Wolf]"; rules = {"\[HappySmiley]" -> "\[Wolf]\[HappySmiley]", "\[Wolf]" -> "\[HappySmiley]"};

Use SubstitutionSystem para obter a sua evolução em 8 iterações.

In[2]:=
Click for copyable input
SubstitutionSystem[{"\[HappySmiley]" -> "\[Wolf]\[HappySmiley]", "\[Wolf]" -> "\[HappySmiley]"}, "\[Wolf]", 8] // Column
Out[2]=

Use um conjunto de duas dimensões de regras para construir o Tapete de Sierpiński.

In[3]:=
Click for copyable input
rules2D = {1 -> {{1, 1, 1}, {1, 0, 1}, {1, 1, 1}}, 0 -> ConstantArray[0, {3, 3}]};

Visualize este sistema de substituição usando RulePlot.

In[4]:=
Click for copyable input
RulePlot@SubstitutionSystem[rules2D]
Out[4]=

Gere o Tapete de Sierpiński.

In[5]:=
Click for copyable input
ArrayPlot /@ SubstitutionSystem[rules2D, {{1}}, 5]
Out[5]=

Exemplos Relacionados

de en es fr ja ko ru zh