Usando los conceptos anteriores hemos podido representar la evolución de un autómata celular lineal reversible; sin embargo, la pregunta que se presenta es: ¿este proceso funciona para representar a todo tipo de sistemas de esta clase?. En esta sección trataremos de dar respuesta a dicha cuestión.
Una de las primeras preguntas que surgen es: ¿qué sucede cuando el tamaño de vecindad es par, o sea si el valor de no es entero?. En el proceso de Kari, se definen las biyecciones y , las cuales son fundamentales para definir la permutación en bloque.
Tomemos el siguiente ejemplo, un autómata reversible , es decir de estados y , con la regla de evolución el cual es un corrimiento a la derecha, y cuya regla inversa es la un corrimiento a la izquierda.
En este caso en que ; el conjunto de estará formado por todas las posibles secuencias de longitud , es decir, secuencias de célula y media de longitud, lo que trae consigo el problema de partir las células. Para solventar este problema, lo que se puede hacer es que en vez de tomar el valor de para el cual ambas reglas son reversibles, utilizaremos el valor , en donde es la función techo de , el menor entero mayor o igual a . Este paso es válido ya que con esto se tomará un valor que es mayor o igual al mínimo para el cual el autómata es reversible y por lo tanto seguirá cumpliendo con serlo con la ventaja de que ya tendrá siempre un valor entero.
En el ejemplo, aplicando , entonces llevemos al autómata reversible a un autómata , agregando una célula más a cada vecindad y siguiendo con el comportamiento de corrimiento a la derecha para y de corrimiento a la izquierda para que corresponden a las reglas y repectivamente.
|
Con este cambio, tenemos ahora que el tamaño de las secuencias de el conjunto siempre será entero; pero, observemos las nuevas reglas generadas. La regla original tiene como característica que los valores de sus índice de Welch son y , lo cual nos lleva a una segunda pregunta con respecto a la definición de Kari: ¿qué sucede si los índices de Welch son distintos entre sí ?.
Veamos una vez mas como definimos las permutaciones en bloque; cada permutación de un bloque de longitud consiste en aplicar a los elementos izquierdos la composición y aplicar a los elementos derechos la composición . Sabemos que tanto como mapean de manera biyectiva los elementos de los conjuntos y al mismo conjunto , es decir, ambos conjuntos y tienen la misma cardinalidad, ya que y , esto indica que , o que ambos índices de Welch son iguales.
Tomemos el caso en que esto no ocurra, tendremos que , y las biyecciones y no podrán aplicarse, pongamos como ejemplo el autómata anteriormente presentado, el valor de y , sabemos también que . Tenemos que el conjunto tiene elementos, el conjunto tiene elementos y el conjunto tiene elementos; si deseáramos aplicar los mapeos y , en el primer caso tenemos que mapear de un conjunto de elementos a uno de , es decir, nos sobran elementos a mapear en , lo cual no puede ser muy importante, pero en el segundo caso, debemos mapear elementos de un conjunto a otro con sólo elementos, aquí nos faltan elementos y por lo tanto las permutaciones no se pueden definir.
En la demostración de su teorema, Kari toma el valor del índice como base para definir las biyecciones y . El que indica que a la vez ya que , recordando que y .
Entonces, podemos redefinir a los índices y , haciendo un uso explícito de los índices de Welch y , quedando entonces:
(4.10) |
Esta pequeña redefinición provoca que tanto como siempre valgan y por lo tanto, se puedan definir las biyecciones y , ahora bien, dichas biyecciones ya no serán hacia el conjunto , sino que quedarán definidas como sigue:
(4.11) | |||
(4.12) |
Debemos señalar con cuidado algo, la definición de y parece ser muy sencilla, sin embargo tienen mucha más relevancia de lo que uno podría suponer a primera vista, el que estas biyecciones vayan al conjunto indica, primero, que la longitud de cada secuencia en este conjunto es de , y en segunda, indica de que longitud debe ser el corrimiento a realizar entre la primera y la segunda permutación en bloque. Hemos visto que esto funciona muy bien en el caso en donde los índices de Welch y son iguales, pero cuando no lo son, y ya no pueden mapear al conjunto , sino deben mapear a otros conjuntos de secuencias de cuyas cardinalidades deben ser y respectivamente para definir una biyección con y . En principio, la pregunta que planteamos es: ¿qué longitud deben tener entonces las secuencias en ambos conjuntos?.
Tomemos primero el caso izquierdo, para conocer esto debemos poner a la expresión en forma de un exponente de , aplicando logaritmos
(4.13) |
resultando
(4.14) |
Procediendo de la misma forma para el lado derecho
(4.15) |
De lo anterior se desprende que la longitud de las secuencias en y son:
respectivamente.
Además, el corrimiento debe tener una longitud de entre la primera y la segunda permutación en bloque.
Retomando nuestro ejemplo del autómata , vemos que los índices de Welch son y , con cardinalidades , . De las ecuaciones 4.16 y 4.17 tenemos
(4.18) |
entonces
(4.19) |
Por consecuencia las biyecciones
y
están bien definidas al igual que las longitudes de las secuencias tanto para como para , siendo y respectivamente. Por último, el corrimiento entre la primera y la segunda permutación en bloque debe ser de longitud .
Asignemos el mapeo de la siguiente manera:
Ahora asignemos el mapeo .
Sabemos que y que , es decir, podemos obtener a y a por medio de y respectivamente, esto se hace intercambiando la posición de los bloques en cada elemento de y de , por supuesto, se deben conservar los mismos mapeos y ; basándonos en la biyección en , asignemos ésta misma al conjunto .
Por último, asignemos en a .
El proceso funcionará de la siguiente manera, tomemos una secuencia de estados y veamos como evoluciona bajo la regla .
Observamos el típico comportamiento de un corrimiento a la derecha, ya tenemos una configuración inicial y conocemos su evolución, veamos si llegamos al mismo resultado utilizando la nueva definición de las biyecciones, apliquemos a la configuiración inicial la permutación en bloque .
Así hemos obtenido una nueva secuencia de estados, a continuación apliquemos a esta secuencia la permutación con un corrimiento de tamaño 2.
En la Figura 4.14 se observa que al aplicar los bloques de tamaño generan construcciones de longitud ocurriendo lo mismo para los bloques de tamaño . Por consecuencia las biyecciones se tienen que realinear para conservar la simetría con las permutaciones en bloque de .
Al final se ha obtenido una secuencia la cual concuerda con la evolución de la configuración inicial bajo la regla ; entonces el resultado de este proceso ha sido poder representar la evolución de este autómata como la composición de dos permutaciones en bloque , pero redefiniendo y y con un corrimiento entre ambas permutaciones de tamaño .
En la Figura 4.15 se observa de manera simplificada este proceso en donde las permutaciones aparece de color negro y las permutaciones en color gris.
Las redefiniciones hechas anteriormente han brindado al proceso de Kari una generalidad mayor, sin embargo, propongamos el siguiente escenario; tomemos un autómata celular lineal reversible , en el cual se cumple que ; por lo tanto, valores factibles de los índices de Welch pueden ser y , hemos dicho que la expresión define tanto la longitud de las secuencias en que se van a mapear los elementos de bajo así como el tamaño del corrimiento entre las permutaciones en bloque, retomando el ejemplo, si sustituimos , y en la expresión obtenemos que el resultado es .
El valor obtenido es correcto, el conjunto tendrá tantos elementos como , si no exite ninguna equivocación esto debe ser igual a , sustituyamos los valores, encontramos que , sin embargo, no podemos representar secuencias de longitud ni podemos hacer un corrimiento de ese tamaño en un espacio discreto donde el autómata celular se desenvuelve, entonces, aunque analíticamente no hay error, es imposible representar todos los autómatas celulares lineales reversibles con estas redefiniciones.
Se podría pensar en utilizar nuevamente para hacer entero este valor, sin embargo, en algunos casos tendríamos el problema de que las permutaciones serían de bloques de tamaño a bloques de una longitud mayor, trayendo consigo problemas de realineación entre las permutaciones en bloque para representar correctamente la evolución del autómata.
Otra posible solución entonces sería llevar a todo autómata reversible a una forma en donde sus índices de Welch sean iguales, y el valor de sea entero para poder utilizar el proceso descrito por Kari sin modificación alguna, esto podría hacerse tomando valores de más grandes que el inicial de ser necesario, o haciendo productos cartesiano de la regla de evolución original con su reflexión para igualar los índices de Welch, por supuesto, esto trae los inconvenientes de manejar un mayor tamaño de vecindad y/o un mayor número de estados, pero es factible en teoría.
El problema que se ha visto con las redefiniciones es que, ni la longitud de las secuencias ni el corrimiento son siempre representables. Esto se debe por una parte a que las biyecciones y mapean y al conjunto y respectivamente, los cuales no siempre pueden formar secuencias de longitud exactamente igual a o según corresponda. Tampoco es posible aplicar siempre un corrimiento entre las permutaciones en bloque de tamaño . Si es así entonces surge la pregunta: ¿por qué no tomar otros conjuntos a donde mapear y ?.
La importancia de este proceso radica en las diferencias de los ancestros que guardan y en un autómata reversible; es decir, contabilizan de alguna forma los índices de Welch, y las biyecciones y solo enumeran dichos conjuntos, pero hemos visto que hasta ahora la manera de enumerarlos no siempre es factible por medio de secuencias del conjunto , entonces busquemos enumerarlos de alguna otra forma que siempre sea factible.
Definamos los siguientes conjuntos:
(4.20) | |||
(4.21) |
claramente, y ; tomemos nuevamente las definiciones de y como:
(4.22) |
Volvamos al resultado de Kari y reescribamos su prueba.
Prueba: Considere a tal que representa a las vecinades de y . Debido a que y , las biyecciones
(4.23) | |||
(4.24) |
existen, el mapeo puede ser cualquiera siempre y cuando cumpla con ser biyectivo.
Ahora bien, si consideramos
como ya han definido en la sección 4.2 y sean
las funciones correspondientes para la regla inversa .
Tanto con las funciones para como para nosotros podemos encontrar las permutaciones y de dados por:
(4.25) | |||
(4.26) |
Obteniendo una evolución de un autómata reversible.
|
Cada elemento en y representa a una longitud .
resulta ser la permutación en bloque definida para un bloque de tamaño en la primera configuración de estados, aplicándole a este bloque la permutación . es la permutación en bloque definida para un bloque de tamaño en la segunda configuración y haciendo un corrimiento de longitud en la secuencia
correspondiente a un corrimiento de longitud en la segunda configuración.
Entonces tenemos que .