A continuación daremos un pequeño tutorial para poder simular autómatas
en jflap(8.0 beta).
Crear automata
Depues de
descargar ejecutamos y nos aparecerá lo siguiente:
Damos
click en la opción finite Automaton lo que nos desplegara el siguiente menú
El botón que
está señalado por la flecha es el botón que nos permite crear los estados para
los autómatas dando click en la parte donde los queremos, en nuestro caso
hace dos clics para obtener los estados q0 y q1 con lo que nuestro espacio de
trabajo quedaría
Después
hacemos click en la herramienta atribute editor, si hacemos click sobre un
estado y lo mantenemos nos permite mover al estado de lugar en cambio nos
muestra lo siguiente al dar click secundario sobre el estado
Dimos
click al estado q0 en la opción de final e initial nos permite configurar ese
estado como estado inicial o final, en change label nos permite crear un
pequeño cuadro de texto con la descripción del estado y en set name nos permite
cambiar el nombre del estado, ente caso seleccionaremos initial para hacer al
estado qo el estado inicial y final para convertir a q1 como el estado
final después nuestro espacio de trabajo quedara
Seguidamente
nos vamos a la opción transition creator donde creamos las transiciones de
estado. Para crear una transición hacemos cilck desde el estado inicial
hasta el estado destino, si queremos una ciclo estrella hacemos un movimiento
en u desde el estado que queremos que tenga el ciclo en ese caso nos saldrá lo
siguiente
Al
momento de crear una transición la opción por defecto es una transición con
lambda, si queremos cambiarla oprimimos el símbolo con el que queremos la transición,
entes caso hice una transición con a y me quedo de la siguiente manera
En la
parte de abajo de la ventana tenemos sigma que se va llenando conforme
agregamos nuevos símbolos a las transiciones.
Después
creamos una transición de q0 a q1 con a b y c, para hacer una transición con más
de un símbolo simplemente se hace una transición por cada símbolo, cuando
hacemos eso nos queda de la siguiente manera
Por
ultimo creamos una transición con a desde q1 a q0, un ciclo con b y c de
q1 para que nuestro autómata quede así
Para
eliminar cualquier transición o estado oprimes el botón deleter
Cuando
nos acercamos a un estado o transición el cursor cambiara a una x y si hacemos
click sobre ellos serán borrados.
Probar cadenas
Para
probar cadenas en el autómata poseemos 3 opciones la primera que probaremos es
step by step
Para
seleccionarla iremos al menú de input
-> step by step y nos aparecerá lo siguiente
En la
ventana tecleamos la abb que será la cadena que vamos a probar y damos en
aceptar los cual nos aparecerá lo
siguiente
al hacer
click en step en el recuadro azul aparecerá lo siguiente
La
primera letra a se puso en gris y nos indica que ya probo ese símbolo, el q0
que aparece nos indica en el estado en el que se ubica el autómata después de
evaluar la letra al seguir apretando step obtendremos lo siguiente
Al probar b nos lleva al estado q1
Al probar la segunda b nos deja en q1, como es el último
símbolo y nos dejó en q1 que es estado de aceptación la ventana se puso
verde indicando que la cadena fue aceptada por el autómata caso contrario el
cuadro se pone en rojo.
Para
salir oprimes la x en la ventana de simulación
Para el
siguiente método nos vamos a input->fast run y nos aparecerá
Volvemos
agregar la cadena abb y damos en aceptar para obtener
Donde
tenemos lo mismo que se hizo paso a paso pero de manera automática, si acepamos
click en keep looking nos dirá si la cadena probada fue aceptada o no antes de
cerrar la ventana y si seleccionamos i'm done simplemente cerrara la ventana.
Para el
tercer método nos vamos a input-->múltiple run para obtener
Hacemos
click en cuadro de input y tecleamos abb luego damos enter y tecleamos acc, enter
aba, para correr las entradas damos click en run inputs y nos aparecerá
En la
ventana nos dirá si las cadenas fueron aceptadas o rechazadas por el autómata.
Con esto
terminamos el tutorial crear y correr un autómata en jflap.
No hay comentarios:
Publicar un comentario