CSci 301 Lecture Notes

Week One, Thursday: Nondeterminism

A DFA in a given state reads an input symbol. We know its next state, determined by the state transition function. This is called deterministic computation. Nondeterminism is a generalization of determinism: several choices may exist at any "point" (step) in the computation.

Examples 1.14, 1.15, and 1.16.

Formal Definition of an NFA

Let P(Q) be the power set of Q:

A nondeterministic finite automaton is a 5-tuple (Q, S, d, q0, F), where

  1. Q is a finite set called the states.
  2. S (capital Sigma) is a finite set called the alphabet.
  3. d (lowercase delta) is a mapping from Q x (S union epsilon) to P(Q) called the transition function.
  4. q0 is the start state, an element of Q.
  5. F is a subset of Q called the set of accept states.

Example 1.18.

The formal definition of computation for an NFA is similar to that of a DFA: A machine accepts its input if all the input is consumed and the machine ends in an accept state.

Equivalence of NFAs and DFAs

Theorem 1.19, proof idea and proof.

Example 1.21.

Closure under the Regular Operations

Theorems 1.22, 1.23, and 1.24.

Homework Assignment

Assigned Thursday, September 10, due Thursday, September 17, at beginning of class.

Chapter 1: Exercises 1.1, 1.2, 1.3, 1.4, 1.5.


Email: Richard dot J dot Wagner at gmail dot com

notes01b.htm, this hand crafted HTML file created August 31, 1998.
Last updated May 14, 2011, by Rick Wagner. Copyright © 1998-2011, all rights reserved.