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]:=
init = "\[Wolf]";
rules = {"\[HappySmiley]" -> "\[Wolf]\[HappySmiley]",
"\[Wolf]" -> "\[HappySmiley]"};Use SubstitutionSystem para obter a sua evolução em 8 iterações.
In[2]:=
SubstitutionSystem[{"\[HappySmiley]" -> "\[Wolf]\[HappySmiley]",
"\[Wolf]" -> "\[HappySmiley]"}, "\[Wolf]", 8] // ColumnOut[2]=

Use um conjunto de duas dimensões de regras para construir o Tapete de Sierpiński.
In[3]:=
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]:=
RulePlot@SubstitutionSystem[rules2D]Out[4]=

Gere o Tapete de Sierpiński.
In[5]:=
ArrayPlot /@ SubstitutionSystem[rules2D, {{1}}, 5]Out[5]=
