APD Determinista ( Definición)

APD Determinista ( Definición)

de Nicolás Alejandro Rivoir Malán -
Número de respuestas: 2

Las definiciones de las diapositivas del teórico sobre los APD Deterministas no son muy rigurosas. Según entiendo el APD es determinista si dado un estado y un símbolo de la cima del stack, si tiene una transición épsilón entonces es la única. Suponiendo esto:

La primera definición dice que para todo q : estado y Z : símbolo del stack delta (q , eps , Z) no vacío implica que delta (q , a , Z) es vacío para todo a en Sigma. Pero esto no especifica que no puedan existir 2 transiciones épsilon.

La segunda nos dice que dado un estado q , un símbolo del stack Z y un símbolo de sigma unión épsilon la cantidad de transiciones  puede ser 0 ó 1. Pero esta definición admite que haya una transición para el símbolo épsilon y otra para otro símbolo distinto de esp.

Quiero saber si la intuición descripta arriba está bien y en caso de estarlo, qué modificaciones les hace falta a las definiciones de las diapositivas para estar correctas?

Disculpen la molestia. 

Saludos,

Nicolás

En respuesta a Nicolás Alejandro Rivoir Malán

Re: APD Determinista ( Definición)

de Nicolás Alejandro Rivoir Malán -
Luego de mirarlo por un buen rato me di cuenta que lo que tiene que cumplir las dos. Pensé que se estaban presentando dos definiciones. Ahora si me cierra. Disculpen la molestia
En respuesta a Nicolás Alejandro Rivoir Malán

Re: APD Determinista ( Definición)

de Santiago Gongora -

Buen día Nicolás,

demás que te haya quedado claro. Normalmente la intuición es:

"Si estoy en el estado q, tengo a Z en el top del stack y el siguiente símbolo a leer es a: ¿cuántas opciones de transición tengo?".

Si la respuesta a esa pregunta es, para alguna combinación (estado,tope,entrada), "más de una opción", entonces el APD es no determinista.
Por ejemplo, fijate que en este APD (incompleto, está claro), el no-determinismo se manifiesta dos veces.

Estando en q3, teniendo a X en el tope del stack y "a" como símbolo a leer, tengo dos opciones:

  1. Me muevo a q4 y dejo el stack intacto
  2. Me muevo a q5 y dejo el stack intacto
Por otra parte, en q4, sucede que teniendo a X en el tope del stack y "b" como próximo símbolo a leer, tengo dos opciones:
  1. Leo la b de la entrada, me quedo en q4 y hago POP del stack
  2. No consumo la b de la entrada, me muevo a q6 y dejo el stack intacto.

Para cerrar, algo que comentábamos el otro día en la clase de consulta era que hay que tener cuidado con las transiciones épsilon pues por si mismas, solas, no implican no-determinismo, como sí era el caso en los Autómatas Finitos. Por ejemplo:


Entre q2 y q3 hay una transición épsilon, pero eso no implica no-determinismo: siempre tengo un único camino posible, ya sea consumiendo entrada o no.

Cualquier consulta, a las órdenes.

Saludos,
Santi