deterministic pushdown automaton (original) (raw)

Formally, a deterministic pushdown automaton, or DPDA for short, is a non-deterministic pushdown automaton M=(Q,Σ,Γ,T,q0,⊥,F) where the transition function T has the following properties: for any p∈Q, a∈Σ, and A∈Γ,

    1. T⁢(p,a,A)∪T⁢(p,λ,A) is at most a singleton,
    1. T⁢(p,a,A)∩T⁢(p,λ,A)=∅.

The properties can be interpreted as follows: given any configuration of M, if there is a transition to the next configuration, the transition must be unique. The second property just insures that T⁢(p,a,A)≠T⁢(p,λ,A), so that when a λ-transition is possible for a given (p,A), no other transitions are possible for the same (p,A).

The way a DPDA works is exactly the same as an NPDA, with several modes of acceptance: acceptance on final state, acceptance on empty stack, and acceptance on final state and empty stack. However, unlike a NPDA, these acceptance methods are not equivalentMathworldPlanetmathPlanetmathPlanetmathPlanetmath. It can be shown that the set ℰ of languagesPlanetmathPlanetmath accepted on empty stack is a proper subsetMathworldPlanetmathPlanetmath of the set ℱ of languages determined on final state. In fact, every language in ℰ is prefix-free, while some languages in ℱ are not.

Some examples: the set of palindromes {u∈Σ*∣u=rev⁡(u)} is unambiguous, but not deterministic. The language {am⁢bn∣m≥n≥0} is deterministic, but not prefix-free, and hence can not be accepted by any DPDA on empty stack. The language {an⁢bn∣n≥0} can be accepted by a DPDA on empty stack, but is not regular.

Any formal grammar that generates a deterministic language is said to be deterministic context-free. A deterministic context-free grammar can be described by what is known as the L⁢R⁢(k) (http://planetmath.org/LRk) grammars.

The family of deterministic languages is closed under complementation, intersectionMathworldPlanetmath with a regular language, but not arbitrary (finite) intersection, and hence not union.

Remark. The reason why ℰ≠ℱ can be traced back to the definition of a DPDA: it allows for the following possibilities for a DPDA M:

Some authors consider these imperfections of M as being “non-deterministic”, and put additional constraints on M, such as making sure T is a total functionMathworldPlanetmath, the stack is never empty, and delimiting input strings.

References

Title deterministic pushdown automaton
Canonical name DeterministicPushdownAutomaton
Date of creation 2013-03-22 18:56:00
Last modified on 2013-03-22 18:56:00
Owner CWoo (3771)
Last modified by CWoo (3771)
Numerical id 14
Author CWoo (3771)
Entry type Definition
Classification msc 03D10
Classification msc 68Q42
Classification msc 68Q05
Synonym DPDA
Related topic ContextFreeLanguage
Related topic AmbiguousGrammar
Defines deterministic
Defines deterministic language
Defines deterministic context-free