Theory of Computation

Theory of Computation

1 Deterministic Automatons and Languages

1.1 Regular Languages

1.1.1 Deterministic Finite Automaton DFA

A deterministic finite automaton DFA is a 5-tuple:

(Q,Σ,δ,q0,F)

where:

  • Q is a finite set of states
  • Σ is an alphabet
  • δ is a transition function described as δ:Q×ΣQ
  • q0Q is the initial state
  • FQ is a subset of states called accept states

Deterministic Finite Automata

1.2 Context Free Languages Languages

1.2.1 Pushdown Automaton PDA

A pushdown automata PFA is a 6-tuple:

(Q,Σ,Γ,δ,q0,F)

where:

  • Q is a finite set of states
  • Σ is an alphabet
  • Γ is the stack alphabet
  • δ is a transition function described as δ:Q×Σ×ΓP(Q×Γϵ)
  • q0Q is the initial state
  • FQ is a subset of states called accept states

Push Down Automata

1.3 Turing Complete Languages

1.3.1 Basic Turing Machine

A Basic Turing Machine is a 7-tuple:

(Q,Σ,Γ,δ,q0,qaccept,qreject)

where Q,Σ,Γ are all finite sets and:

  • Q is a set of states
  • Σ is an alphabet not containing the blank symbol
  • Γ is the tape alphabet, where Γ and ΣΓ
  • δ is a transition function described as δ:Q×ΣQ×Γ×{L,R}
  • q0Q is the initial state
  • qacceptQ is the accept state
  • qrejectQ is the reject state, where qrejectqaccept

Turing Machine State Diagram

1.4 Context-Sensitve Lanuages

1.4.1 Linear-Bound Automaton (LBA)

To continue.

2 Nondeterministic Automatons and Languages

2.1 Nondeterministic Finite Automaton

A deterministic finite automaton DFA is a 5-tuple:

(Q,Σ,δ,q0,F)

where:

  • Q is a finite set of states
  • Σ is an alphabet
  • δ is a transition function described as δ:Q×ΣϵP(Q)
  • q0Q is the initial state
  • FQ is a subset of states called accept states

2.2 Nondeterministic Turing Machine

To continue.

Cloud A.I.