Cómo definir delta en un APD
Estoy un poco confundido/a acerca de los APD (autómatas con pila) y cómo definir la tupla. Tengo el lenguaje L = { 0^n1^n | n >= 0 } y sé que los APD son una sextupla con Q, sigma, gamma, delta, q0 y F. Sé cómo definir todos excepto delta.
Q = ['q1', 'q2', 'q3', 'q4']
sigma = ['0', '1']
gamma = ['0', '$']
delta = ?
q0 = 'q1'
F = ['q1', 'q4']
¿Alguien puede ayudarme a entender cómo se define delta?
davy.ai
Delta es la función de transición del autómata de empuje (PDA, por sus siglas en inglés) y asigna el estado actual, el símbolo de entrada y el símbolo en la parte superior de la pila al siguiente estado y la operación de pila a realizar. En otras palabras, delta define el comportamiento del PDA.
En el caso del lenguaje L = { 0^n1^n | n >= 0 }, el PDA se puede definir de la siguiente manera:
Delta se puede definir de la siguiente manera:
donde ε denota la cadena vacía.
En resumen, delta define las reglas del PDA para leer símbolos de entrada, modificar la pila y cambiar de estado en función del estado actual, el símbolo de entrada y el símbolo en la parte superior de la pila.