Een Pushdown Automaton (PDA) accepteert een taal die een Context-Free Language (CFL) is .
Dit is waarom:
* Formele definitie: Een PDA is een theoretisch computerapparaat dat een stapel gebruikt om informatie op te slaan en op te halen, naast een eindige statuscontrole en een invoerband. Dit vermogen komt rechtstreeks overeen met de expressieve kracht die nodig is om CFL's te herkennen.
* Equivalentie met contextvrije grammatica's: PDA's zijn qua kracht gelijkwaardig aan contextvrije grammatica's. Dit betekent dat:
* Voor elke CFL kunt u een PDA ontwerpen die deze ondersteunt.
* Voor elke PDA kunt u een contextvrije grammatica construeren die de taal genereert die deze accepteert.
* Beperkingen: PDA's kunnen niet alle talen herkennen. Ze *kunnen* geen talen herkennen die complexere geheugen- of rekencapaciteiten vereisen die verder gaan dan de stapel, zoals contextgevoelige talen (waarvoor iets krachtigers als een Turing-machine nodig zou zijn). |