NFA-Lambda

2 min read Last updated Thu Jun 11 2026 13:19:10 GMT+0000 (Coordinated Universal Time)

A variant of NFA where Λ\Lambda-transitions are allowed. Denoted as NFA-Λ\Lambda.

A 5-tuple: M=(Q,Σ,q0,A,δ)M = (Q, \Sigma, q_0, A, \delta) where:

  • QQ - finite set of states
  • Σ\Sigma - input alphabet
  • q0q_0 - start state
  • AA - set of accepting states
  • δ:Q×(ΣΛ)2Q\delta: Q \times (\Sigma \cup {\Lambda}) \rightarrow 2^Q - transition function

The only difference from a standard NFA is that the transition function δ\delta can also take Λ\Lambda as input.

More flexible than an NFA. Does not increase computational power compared to DFA or NFA. Useful for simplifying automata construction, especially when building from regular expressions.

Lambda Transition

A type of transition where the automaton can move from one state to another without consuming any input symbol. Denoted as Λ\Lambda-transition. Labelled as Λ\Lambda on the transition diagram.

Lambda-Closure

Set of all states reachable from a given state (or set of states) using only Λ\Lambda-transitions. Referred to as Λ\Lambda-Closure.

Suppose SS is a set of states (SQS \subset Q). Λ(S)\Lambda(S) satisfies:

  • SΛ(S)S \subset \Lambda(S)
    Every state in SS is included in Λ(S)\Lambda(S)
  • pΛ(S)p \in \Lambda(S) iff qSq \in S and δ(q,Λ)=p\delta(q, \Lambda) = p
  • No other states are included

Transition Function

δ:Q×(ΣΛ)2Q\delta: Q \times (\Sigma \cup {\Lambda}) \rightarrow 2^Q.

Extended Transition Function

δ:Q×Σ2Q\delta^* : Q \times \Sigma^* \rightarrow 2^Q

Properties:

  • δ(q,Λ)=Λ(q)\delta^*(q, \Lambda) = Λ(q)
  • δ(q,ya)=Λ(rδ(q,y)δ(r,a))\delta^*(q, ya) = Λ \left( \bigcup_{r \in δ^*(q,y)} δ(r,a) \right)

Acceptance

A string is accepted iff there exists a sequence of transitions (including Λ\Lambda-transitions) from the start state to an accepting state that corresponds to the input string. That is:

δ(q0,x)A\delta^{*}(q_0, x) \cap A \neq \emptyset

Complement

Convert to NFA and then to DFA, then complement.

Was this helpful?