La sección tres del trabajo de Kari [Kari 96] nos dice que todo autómata celular lineal reversible puede ser generado por medio de permutaciones en bloque y corrimiento parciales. Nosotros en esta sección daremos un paráfrasis del resultado de Kari, mediante el ejemplo del autómata reversible regla , visualizando paso a paso algunos resultados parciales que encontramos en el proceso.
El autómata reversible regla tiene la siguiente evolución.
La regla de evolución es la siguiente.
Como se puede observar en la Figura 4.1 la regla de evolución consiste en copiar el elemento central de la vecindad, por lo que a esta regla también se le conoce como la regla identidad.
La multiplicidad uniforme nos dice que cada secuencia tendrá tantos ancestros como ; los valores de los índices de Welch de esta regla de evolución son y , cumpliendo con que . Además, tenemos que la regla inversa es la misma regla debido a que solo se copia el elemento central de la vecindad.
Vamos a empezar ahora con la selección del radio de vecindad. Sabemos que si un autómata es reversible, para un radio de vecindad , éste lo seguirá siendo para otros radios de vecindad mayores que . De esta manera, seleccionaremos el valor de mayor, entre la regla original y la regla inversa , teniendo la seguridad que para ambos casos la reversibilidad se mantendrá. En el ejemplo como tanto la regla original como la inversa es la misma, entonces .
Para la regla original , definamos ahora dos conjuntos, el y el . Estos se forman con todas las posibles cadenas de tamaño y las terminaciones izquierdas y derechas respectivamente de todos los posibles ancestros de cada cadena, siendo cada una de estas terminaciones también de tamaño .
Para obtener dichos conjuntos y , formemos todas aquellas secuencias posibles de tamaño , para obtener posteriormente su evolución, la cual será una secuencia de tamaño . Finalmente tomaremos de dichas secuencias los siguientes elementos según indiquen y .
Sabemos que dicho autómata es reversible con un radio de vecindad ; de este modo, si un bloque de tamaño define una única célula central en sus ancestros, un bloque de tamaño define a su vez un único bloque central de tamaño en sus ancestros, dejando las discrepancias de los mismos en los extremos, dichas diferencias estarán contenidas en los conjuntos y .
Del ejemplo tomemos todas las secuencias de tamaño , es decir, de 4 células y sus ancestros.
|
Ahora de estas secuencias obtengamos los conjuntos y .
En este punto, en el cual nos encontramos, el primer resultado que vamos a parafrasear es el (Lema 3.1) de [Kari 96] en el que señala que .
Los conjuntos y se obtuvieron de las secuencias de tamaño y sus ancestros, existiendo tantas secuencias distintas de esta forma como . Debido a que el autómata es reversible cumple con el principio de multiplicidad uniforme y cada una de estas secuencias tiene ancestros, dando como resultado un total de construcciones de este tipo.
Como se menciono anteriormente, cada bloque de tamaño tienen en sus ancestros una única parte central de tamaño , dejando las diferencias en sus partes izquierdas y derechas, cuantificadas por los índices y respectivamente. Por medio de y obtenemos los conjuntos y , formados por bloques de tamaño y los extremos de sus ancestros también de tamaño .
En el caso de existen tantos bloques de tamaño como y tantos extremos diferentes de ancestros como ; teniéndose lo mismo en el caso análogo . Con lo que respecta a la cardinalidad de estos conjuntos está dada por
(4.1) |
multiplicando
(4.2) |
Debido a que el autómata es reversible por lo que:
(4.3) |
justamente lo que Kari señala.
En el ejemplo del autómata vemos que , , obteniendo con el producto
. Justamente es el resultado que dá Kari con .
Kari define dos indices y , que se pueden tomar como una normalización de y respectivamente.
(4.4) |
Se puede observar que uno es el recíproco del otro.
(4.5) |
El segundo resultado importante de Kari es el (Lema 3.2), señalando que
(4.6) |
para dos reglas de evolución reversibles y en un autómata celular; siendo esto igual para . Esto es fácil de ver en el siguiente diagrama:
Observamos en la Figura 4.3 que mientras la primera y la segunda línea son miembros del conjunto , la segunda y tercer línea son miembros de . Sin embargo, los bloques en gris claro, son determinados de manera única por el segundo bloque ya que son reglas reversibles; lo que significa finalmente que solo depende de .
Mostremos esto con el autómata regla como y otro autómata reversible regla , como .
|
Observemos en detalle como hacen evolucionar en composición ambas reglas un secuencia de estados.
Analizando la Figura 4.4, para formar un elemento primero de la secuencia inicial, tomaremos en cuenta dos bloques de tamaño con dos bloques de la segunda secuencia; producto de aplicar la regla con la , obteniendo dos elementos del conjunto . Después, estos dos bloques junto con otros dos de igual longitud de la última línea, son elementos de . Los dos bloques en la segunda línea tienen definidos de manera única a los bloques con fondo gris tanto en la primera y tercer línea. Lo anterior debido a que la longitud de estos dos bloques les permite tener una única parte central en sus ancestros tanto en el sentido original como en el inverso y que estos ancestros muestren sus diferencias a los extremos, de lado derecho en los bloques con margen negro y del lado izquierdo con los bloques con margen gris.
Tomando estos resultados preliminares como base, llegamos al resultado más importante del trabajo de Kari [Kari 96].
Definamos una permutación en bloque dada como . primero divide la configuración en secuencias de longitud , empezando en la posición ; posteriormente mediante la composición aplicamos la permutación a cada secuencia (donde Kari denota la aplicación de con ) obteniendo una nueva configuración de estados.
La prueba se basa en que el valor de establece que los conjuntos y tienen el mismo número de elementos el cual es , por lo que cual podemos definir cualquier tipo de biyecciones
(4.7) |
Las permutaciones estarán dadas de la siguiente manera:
(4.8) | |||
(4.9) |
Es decir, realizar cada una de ellas será una composición en donde primero se aplica a cada secuencia de tamaño las funciones y , después, cada miembro de y se mapea con la biyección que se haya estipulado en y respectivamente. En síntesis, la permutación mapea una secuencia de estados de tamaño a otra secuencia del mismo tamaño formada por dos elementos de y queda representada en la Figura 4.5.
Entonces, en la evolución de un autómata reversible el paso de una configuración a otra por la regla de evolución puede ser definido por dos permutaciones en bloque, la primera, , la cual divide la configuración antecesora en bloques de tamaño , empezando desde la posición y aplicando a cada bloque la permutación . Y la segunda permutación, , la cual divide la configuración sucesora en bloques de tamaño , empezando desde la posición y aplicando a cada bloque la permutación .
Al final en ambos casos, las permutaciones coinciden en parte con un desfase de posiciones (bloque gris en la Figura 4.6), aplicándolas desde el sentido original y el inverso. El mapeo global entre configuraciones inducido por la regla de evolución puede representarse como la composición de dos permutaciones en bloque .
|
Veamos este proceso tomando el autómata regla . Primero formemos asignando al conjunto un mapeo biyectivo con el conjunto ; como la regla de evolución original y la inversa es la misma, ambas tienen los mismos conjuntos y ; además, tenemos que se cumple que y , por lo que para este caso. De este modo, dado el mapeo , el mapeo queda definido al mismo tiempo.
Tomemos ahora una configuración inicial cualquiera y su evolución con la regla .
Apliquemos ahora las permutaciones y , es decir, dividamos dichas configuraciones en bloques de tamaño , en este caso en bloques de longitud ; posteriormente hacemos un corrimiento de estas divisiones entre la primera y segunda configuración de tamaño o de tamaño . Por último apliquemos a cada bloque de la primera configuración la permutación y a cada bloque de la segunda configuración la permutación .
Hagamos más claro este proceso, asignemos a cada posible configuración de tamaño sus permutaciones correspondientes a y , dado que en este autómata las reglas de evolución original e inversa son idénticas, las permutaciones y lo son también, por lo que basta enumerar sólo una de ellas.
Tomemos una configuración inicial aleatoria, dividamos esta en bloques de tamaño y permutemos cada bloque como lo indica .
Hemos obtenido una nueva configuración resultado de las permutaciones de cada bloque. Esta nueva configuración la dividimos también en bloques de tamaño pero empezando ahora posiciones más a la derecha de donde comenzamos a dividir la configuración inicial y a cada bloque resultante lo permutamos como indica .
Por último, observemos la configuración inicial y la configuración producida al aplicar las permutaciones en bloque y .
Como podemos verificar, esta construcción corresponde a la evolución de la configuración inicial bajo la regla ; es decir, hemos podido representar dicha evolución por medio de corrimientos y permutaciones en bloque, siguiendo el proceso descrito por Kari.