Sequential
Sequential Machine
Machine Theory
Theory
Prof. K. J. Hintz
Department of Electrical and Computer
Engineering
Lecture 1
http://cpe.gmu.edu/~khintz
Adaptation to this class and
additional comments by Marek
Perkowski
Why
Why Sequential
Sequential Machine
Machine Theory
Theory
(SMT)?
(SMT)?
Sequential Machine Theory SMT
Some Things Cannot be Parallelized
Theory Leads to New Ways of Doing
Things
Understand Fundamental FSM Limits
Minimize FSM Complexity and Size
Find the Essence of a Machine
Why
Why Sequential
Sequential Machine
Machine Theory?
Theory?
Discuss FSM properties that are
unencumbered by Implementation Issues
Technology is Changing Rapidly, the core
of the theory remains forever.
Theory is a Framework within which to
Understand and Integrate Practical
Considerations
Hardware/Software
Hardware/Software
There Is an Equivalence Relation Between
Hardware and Software
Anything that can be done in one can be done
in the otherperhaps faster/slower
System design now done in hardware
description languages without regard for
realization method
Hardware/software/split decision deferred until later
stage in design
Hardware/Software
Hardware/Software
Hardware/Software equivalence extends to
formal languages
Different classes of computational machines are
related to different classes of formal languages
Finite State Machines (FSM) can be
equivalently represented by one class of
languages
Formal
Formal Languages
Languages
Unambiguous
Can Be Finite or Infinite
Can Be Rule-based or Enumerated
Various Classes With Different Properties
Finite
Finite State
State Machines
Machines
Equivalent to One Class of Languages
Prototypical Sequence Controller
Many Processes Have Temporal
Dependencies and Cannot Be Parallelized
FSM Costs
Hardware: More States More Hardware
Time: More States, Slower Operation
Goal
Goal of
of this
this set
set of
of lectures
lectures
Develop understanding of
Hardware/Software/Language Equivalence
Understand Properties of FSM
Develop Ability to Convert FSM
Specification Into Set-theoretic Formulation
Develop Ability to Partition Large Machine
Into Greatest Number of Smallest Machines
This reduction is unique
Machine/Mathematics
Machine/Mathematics Hierarchy
Hierarchy
AI Theory
Intelligent Machines
Computer Theory
Computer Design
Automata Theory
Boolean Algebra
Combinational Logic
10
Combinational
Combinational Logic
Logic
Feedforward
Output Is Only a Function of Input
No Feedback
No memory
No temporal dependency
11
Finite
Finite State
State Machine
Machine
Feedback
Behavior Depends Both on Present State
and Present Input
State Minimization Well-known With
Guaranteed Minimum
Realization Minimization
Unsolved problem of Digital Design
12
Computer
Computer Design
Design
Defined by Turing Computability
Can compute anything that is computable
Some things are not computable
13
Intelligent
Intelligent Machines
Machines
Ability to Learn
Possibly Not Computable
14
Automata,
Automata, aka
aka FSM
FSM
Concepts of Machines:
Mechanical
Computer programs
Political
Biological
Abstract mathematical
15
Abstract
Abstract Mathematical
Mathematical
Discrete
Continuous system can be discretized to any
degree of resolution
Finite State
Input/Output
Some cause, some result
16
Set
Set Theoretic
Theoretic Formulation
Formulation of
of Finite
Finite
State
State Machine
Machine
S , I , O, ,
S:
I:
O:
17
Types
Types of
of FSMs
FSMs
Moore
Output is a function of state only
Mealy
Output is a function of both the present state
and the present input
18
Types
Types of
of FSMs
FSMs
Finite State Acceptors, Language
Recognizers
Start in a single, specified state
End in particular state(s)
Pushdown Automata
Not an FSM
Assumed infinite stack with access only to
topmost element
19
Computer
Computer
Turing Machine
20
Review
Review of
of Set
Set Theory
Theory
Element: a, a single object with no
special property
Set: A, a collection of elements, i.e.,
a A
Enumerated Set:
A1 2,5,7,4
A 2 a1, a2 , a3 ,
21
Sets
Sets
Infinite set
A5 R real numbers
A 6 I integers
Set of sets
A 7 A3 , A 6
22
Subsets
Subsets
All elements of B are elements of A and
there may be one or more elements of A
that is not an element of B
BA
A6 A7
A7
A3
A6
Larry,
integers
Curly,
Moe
23
Proper
Proper Subset
Subset
All elements of B are elements of A and
there is at least one element of A that is not
an element of B
BA
24
Set
Set Equality
Equality
Set A is equal to set B
AB
iff
AB
and
BA
25
Sets
Sets
Null Set
A set with no elements,
26
Operations
Operations on
on Sets
Sets
Intersection
C AB
C a| a A a B
Union
D AB
D a| a A a B
27
Operations
Operations on
on Sets
Sets
Set Difference
E AB
E a| a A a B
F AB
F x, y | x A y B
28
Special
Special Sets
Sets
Powerset: set of all subsets of A
P A 2 a , b
e. g., let
A 0, 1
then
P A , 0 , 1 , 0, 1
*no braces around the null set since the symbol represents the set
29
Special
Special Sets
Sets
Disjoint sets: A and B are disjoint if
AB
Cover:
A set of sets, B B1 , B 2,
covers another set A
if
A Bi
all i
30
Properties
Properties of
of Operations
Operations on
on Sets
Sets
Commutative, Abelian
Associative
AB BA
AB BA
A B C A B C
A B C A B C
Distributive
LHD A B C A B A C
RHD A B C A C B C
31
Partition
Partition of
of aa Set
Set
Properties
A p | p P A
and,
a) p are disjoint,
b)
A,
c) pi
32
Relations
Relations Between
Between Sets
Sets
If A and B are sets, then the relation from A
R:A B
to B,
is a subset of the Cartesian product of A and
B, i.e.,
R AB
not necessarily a proper subset
R-related:
a, b R
33
Domain
Domain of
of aa Relation
Relation
Dom R : A B a A | a , b R for some b B
Domain of R
a
A
B
b
34
Range
Range of
of aa Relation
Relation
Range R:A B b B| a , b R for some a A
Range of R
A
a
35
-1
-1
Inverse
Relation,
R
Inverse Relation, R
Given
R :AB
then
R 1 b, a B A | a, b R B A
a
A
R-1
B
b
36
Partial
Partial Function,
Function, Mapping
Mapping
A single-valued relation such that
if
a , b R
and
b
a
A
a , b R
then
b b
37
Partial
Partial Function
Function
Also called the Image of a under R
Only one element of B for each element of A
Single-valued
Can be a many-to-one mapping
38
Function
Function
A partial function with
Dom R : A B A
39
Function
Function Example
Example
let A 1, 2, 3, 4
then let
B u, v , w
R 1 u, R 2 v , R 3 v , R 4 w
or,
R 1, u , 2, v , 3, v , 4, w
40
Surjective,
Surjective, Onto
Onto
Range of the relation is B
At least one a is related to each b
R
a
41
Injective,
Injective, One-to-One
One-to-One
A relation between 2 sets such that pairs
can be removed, one member from each set,
until both sets have been simultaneously
exhausted.
given a, b R
and
a ', b R
then
a a'
42
Injective,
Injective, One-to-One
One-to-One
a could map to b
also if it were not at
least a partial function
which implies
single-valued
R
b
43
Bijective
Bijective
A function which is both Injective and
Surjective is Bijective.
Also called one-to-one and onto
44
Function
Function Examples
Examples
Monotonically increasing
B
if injective
Not one-to-one,
but single-valued
A
B
b
a a
A
45
Function
Function Examples
Examples
Multivalued, but one-to-one
b
B
b
b
a
46
The
The End
End of
of the
the Beginning
Beginning