SlideShare a Scribd company logo
CSC312
Automata Theory
Lecture # 1
Introduction
Course Objectives:
This course is designed to enable the students to
study and mathematically model various abstract
computing machines that serve as models for
computations and examine the relationship between
these automata and formal languages.
Course Outline
Regular expressions, TG, DFA and NFAs. Core
concepts of Regular Languages and Finite
Automata; Moore and Mealy Machines, Decidability
for Regular Languages; Non-regular Languages;
Transducers (automata with output). Context-free
Grammar and Languages; Decidability for Context-
free Languages; Non-context-free Languages;
Pushdown Automata, If time allows we will also
have a short introduction to Turing machines.
Course Organization
Text Book:
i) Denial I. A. Cohen Introduction to Computer Theory,
Second Edition, John Wiley & Sons.
Reference Books:
i) Automata, Computability and Complexity: Theory and
Applications, by Elaine Rich, 2011
ii) An Introduction to Formal Languages and Automata, by Peter
Linz, 4th edition, Jones & Bartlett Publishers, 2006
iii)Theory of Automata, Formal Languages and Computation, by S.
P. Eugene, Kavier, 2005, New Age Publisher
Weights: Assignments 10%
Quizzes 5%
Mid-term 25%
Final Exam 60%
Schedule of Lectures
Lect.# Topics/Contents
1 Introduction to Automata theory, Its background, Mathematical Preliminaries,
Sets, Functions, Graphs, Proof Techniques
2 Formal Languages, Introduction to defining languages, alphabet, language,
word, null string, length of a string, reverse of a string, Palindrome, Kleene
closure.
3 Formal definition of Regular Expressions, Defining languages with regular
expressions, Languages associated with regular expressions.
4 Equality of Regular Expressions, Introducing the language EVEN-EVEN.
5 More examples related to regular expressions.
6 Introducing Finite Automata., Defining languages using Finite Automata.
Constructing Finite Automata for different languages.
7 Recognizing the language defined by the given Finite Automata.
8 More examples related to Finite Automata.
9 Transition Graphs with examples, Generalized Transition Graphs, Non-
determinism in case of Transition Graphs.
10 Non-deterministic FA’s. Differences between FA, TG and NFA.
11 Sessional I
Schedule of Lectures
Lect.# Topics/Contents
12 Discussion on the solution of S-I
13 Kleene’s Theorem, Algorithm for turning TGs into REs
14 Kleene’s Theorem, Algorithm for turning REs into FAs
15 Different Rules for turning Res into FAs
16 Nondeterminism, NFA, converting NFA into FA. Union of two FAs using
NFA.
17 Finite Automata with output, Moore’s machines and Mealy machines with
examples. 1’s Complement machine, Increment machine.
18 Theorems for Converting Moore machines into Mealy machines and vice
versa.
19 Transducers as models of sequential circuits.
20 Regular Languages, Closure properties (i.e. , Concatenation and Kleene
closure) of Regular Languages with examples.
21 Complements and Intersections of Regular Languages, Theorems relating to
regular languages and the related examples.
22 Non-Regular Languages, The pumping Lemma, Examples relating to
Pumping Lemma.
Schedule of Lectures
23 Sessional-II
24 Decidability, decision procedure, Blue-paint method, Effective decision
procedure to prove whether two given RE’s or FA’s are equivalent. Myhill-
Nerode theorem, Related Examples.
25 Context-Free Grammars, CFG’s for Regular Languages with examples.
CFG’s for non-regular languages.
26 CFG’s of PALINDROME, EQUAL and EVEN-EVEN languages, Backus-
Naur Form.
27 Parse Trees, Examples relating to Parse Trees, Lukasiewicz notation, Prefix
and Postfix notations and their evaluation.
28 Ambiguous and Unambiguous CFG’s, Total language tree. Regular
Grammars, Semi-word, Word, Working String, Converting FA’s into
CFG’s.
29 Regular Grammars, Constructing Transition Graphs from Regular
Grammars. Killing null productions. Killing unit productions,
30 Chomsky Normal form with examples, Left most derivations.
Pushdown Automata, Constructing PDA’s for FA’s, Pushdown stack.
Some basics
• Automaton = A self-operating machine or
mechanism (Dictionary definition), plural is
Automata.
• Automata = abstract computing devices
• Automata theory = the study of abstract
machines (or more appropriately, abstract
'mathematical' machines or systems), and the
computational problems that can be solved
using these machines.
• Mathematical models of computation
• Finite automata
• Push-down automata
• Turing machines
History
• 1930s : Alan Turing defined machines more powerful
than any in existence, or even any that we could
imagine – Goal was to establish the boundary
between what was and was not computable.
• 1940s/1950s : In an attempt to model “Brain
function” researchers defined finite state
machines.
• Late 1950s : Linguist Noam Chomsky began the
study of Formal Grammars.
• 1960s : A convergence of all this into a formal
theory of computer science, with very deep
philosophical implications as well as practical
applications (compilers, web searching, hardware,
A.I., algorithm design, software engineering,…)
10
Computation
CPU memory
11
CPU
input memory
output memory
Program memory
temporary memory
12
CPU
input memory
output memory
Program memory
temporary memory
3
)
( x
x
f 
compute x
x
compute x
x 
2
Example:
13
CPU
input memory
output memory
Program memory
temporary memory
3
)
( x
x
f 
compute x
x
compute x
x 
2
2

x
14
CPU
input memory
output memory
Program memory
temporary memory
3
)
( x
x
f 
compute x
x
compute x
x 
2
2

x
4
2
*
2 

z
8
2
*
)
( 
z
x
f
15
CPU
input memory
output memory
Program memory
temporary memory
3
)
( x
x
f 
compute x
x
compute x
x 
2
2

x
4
2
*
2 

z
8
2
*
)
( 
z
x
f
8
)
( 
x
f
16
Automation
CPU
input memory
output memory
Program memory
temporary memory
Automation
17
Different Kinds of Automata
Automata are distinguished by the temporary memory
• Finite Automata: no temporary memory
• Pushdown Automata: stack
• Turing Machines: random access memory
18
input memory
output memory
temporary memory
Finite
Automaton
Finite Automaton
Example: Automatic Door, Vending Machines
(small computing power)
19
input memory
output memory
Stack
Pushdown
Automaton
Pushdown Automaton
Example: Compilers for Programming Languages
(medium computing power)
Push, Pop
20
input memory
output memory
Random Access Memory
Turing
Machine
Turing Machine
Examples: Any Algorithm
(highest computing power)
21
Finite
Automata
Pushdown
Automata
Turing
Machine
Power of Automata
Less power More power
Solve more
computational problems
22
Mathematical Preliminaries
• Sets
• Functions
• Relations
• Graphs
• Proof Techniques
23
}
3
,
2
,
1
{

A
A set is a collection of elements
SETS
}
,
,
,
{ airplane
bicycle
bus
train
B 
We write
A

1
B
ship
24
Set Representations
C = { a, b, c, d, e, f, g, h, i, j, k }
C = { a, b, …, k }
S = { 2, 4, 6, … }
S = { j : j > 0, and j = 2k for some k>0 }
S = { j : j is nonnegative and even }
finite set
infinite set
25
A = { 1, 2, 3, 4, 5 }
Universal Set: all possible elements
U = { 1 , … , 10 }
1 2 3
4 5
A
U
6
7
8
9
10
26
Set Operations
A = { 1, 2, 3 } B = { 2, 3, 4, 5}
• Union
A U B = { 1, 2, 3, 4, 5 }
• Intersection
A B = { 2, 3 }
• Difference
A - B = { 1 }
B - A = { 4, 5 }
U
A B
2
3
1
4
5
2
3
1
Venn diagrams
4
5
27
A
• Complement
Universal set = {1, …, 7}
A = { 1, 2, 3 } A = { 4, 5, 6, 7}
1
2
3
4
5
6
7
A
A = A
28
0
2
4
6
1
3
5
7
even
{ even integers } = { odd integers }
odd
Integers
29
DeMorgan’s Laws
A U B = A B
U
A B = A U B
U
30
Empty, Null Set:
= { }
S U = S
S =
S - = S
- S =
U
= Universal Set
31
Subset
A = { 1, 2, 3} B = { 1, 2, 3, 4, 5 }
A B
U
Proper Subset: A B
U
A
B
32
Disjoint Sets
A = { 1, 2, 3 } B = { 5, 6}
A B =
U
A B
33
Set Cardinality
• For finite sets
A = { 2, 5, 7 }
|A| = 3
(set size)
34
Powersets
A powerset is a set of sets
Powerset of S = the set of all the subsets of S
S = { a, b, c }
2S
= { , {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} }
Observation: | 2S
| = 2|S|
( 8 = 23
)
35
Cartesian Product
A = { 2, 4 } B = { 2, 3, 5 }
A X B = { (2, 2), (2, 3), (2, 5), ( 4, 2), (4, 3), (4, 5) }
|A X B| = |A| |B|
Generalizes to more than two sets
A X B X … X Z
36
FUNCTIONS
domain
1
2
3
a
b
c
range
f : A -> B
A B
If A = domain
then f is a total function
otherwise f is a partial function
f(1) = a
4
5
37
Let A & B be sets. A binary relation “R” from A to B
R = {(x1, y1), (x2, y2), (x3, y3), …}
Where and
R ⊆ A x B
xi R yi to denote
e. g. if R = ‘>’: 2 > 1, 3 > 2, 3 > 1
RELATIONS
A
xi  B
yi 
R
b
a 
)
,
(
38
GRAPHS
A directed graph
• Nodes (Vertices)
V = { a, b, c, d, e }
• Edges
E = { (a,b), (b,c), (b,e),(c,a), (c,e), (d,c), (e,b), (e,d) }
node
edge
a
b
c
d
e
39
Labeled Graph
a
b
c
d
e
1 3
5
6
2
6
2
40
Walk
a
b
c
d
e
Walk is a sequence of adjacent edges
(e, d), (d, c), (c, a)
41
Path
a
b
c
d
e
Path is a walk where no edge is repeated
Simple path: no node is repeated
42
Cycle
a
b
c
d
e
1
2
3
Cycle: a walk from a node (base) to itself
Simple cycle: only the base node is repeated
base
43
Euler Tour
a
b
c
d
e
1
2
3
4
5
6
7
8 base
A cycle that contains each edge once
44
Hamiltonian Cycle
a
b
c
d
e
1
2
3
4
5 base
A simple cycle that contains all nodes
45
Trees
root
leaf
parent
child
Trees have no cycles
46
root
leaf
Level 0
Level 1
Level 2
Level 3
Height 3
47
Binary Trees

More Related Content

PPT
lecture 1 Introduction to language theory and finite automata
PDF
Automata languages and computation
PDF
Automata And Computability Solutions To Exercises Fall 2016
PPTX
Unit -I Toc.pptx
PDF
Theory of Computation Lecture Notes
PDF
Formal language & automata theory
PDF
Automata
PDF
Automata
lecture 1 Introduction to language theory and finite automata
Automata languages and computation
Automata And Computability Solutions To Exercises Fall 2016
Unit -I Toc.pptx
Theory of Computation Lecture Notes
Formal language & automata theory
Automata
Automata

Similar to Theory of Automata (20)

DOCX
Cs6503 theory of computation syllabus
PDF
Theory ofcomputation
PPT
Dfa h11
PPTX
Unit-1 (Mathematical Notations) Theory of Computation PPT
PPTX
Class Orientation CS3452-Theory of computation.pptx
PPTX
Discrete Math IP4 - Automata Theory
PPTX
Ip 5 discrete mathematics
DOC
Flat notes iii i (1)(7-9-20)
PPTX
Lecture 0 CSE322 updated LPU 5th SEM.pptx
PDF
toc1.pdf the theory of computation for master of computer applications
PDF
Teori automata lengkap
PDF
Cs6503 theory of computation book notes
PDF
TOC in 8 hours.pdfvdvbnnhgfsxcvbmnvxsdfvb
PPTX
Lecture1.pptxjendfkdmdmmdmmedhf bf fbbd ed
PPTX
Power of authomata
PPTX
Theory of Introduction in Computer Science
PPT
PDF
THEORY_OF_COMPUTER_SCIENCE_Automata_Lang.pdf
PDF
Basic Foundations of Automata Theory
PPTX
Theory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Cs6503 theory of computation syllabus
Theory ofcomputation
Dfa h11
Unit-1 (Mathematical Notations) Theory of Computation PPT
Class Orientation CS3452-Theory of computation.pptx
Discrete Math IP4 - Automata Theory
Ip 5 discrete mathematics
Flat notes iii i (1)(7-9-20)
Lecture 0 CSE322 updated LPU 5th SEM.pptx
toc1.pdf the theory of computation for master of computer applications
Teori automata lengkap
Cs6503 theory of computation book notes
TOC in 8 hours.pdfvdvbnnhgfsxcvbmnvxsdfvb
Lecture1.pptxjendfkdmdmmdmmedhf bf fbbd ed
Power of authomata
Theory of Introduction in Computer Science
THEORY_OF_COMPUTER_SCIENCE_Automata_Lang.pdf
Basic Foundations of Automata Theory
Theory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Ad

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Empathic Computing: Creating Shared Understanding
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
A Presentation on Artificial Intelligence
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Cloud computing and distributed systems.
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Empathic Computing: Creating Shared Understanding
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Network Security Unit 5.pdf for BCA BBA.
The Rise and Fall of 3GPP – Time for a Sabbatical?
Encapsulation_ Review paper, used for researhc scholars
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Mobile App Security Testing_ A Comprehensive Guide.pdf
Spectral efficient network and resource selection model in 5G networks
sap open course for s4hana steps from ECC to s4
A Presentation on Artificial Intelligence
MIND Revenue Release Quarter 2 2025 Press Release
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Cloud computing and distributed systems.
Ad

Theory of Automata

  • 2. Course Objectives: This course is designed to enable the students to study and mathematically model various abstract computing machines that serve as models for computations and examine the relationship between these automata and formal languages.
  • 3. Course Outline Regular expressions, TG, DFA and NFAs. Core concepts of Regular Languages and Finite Automata; Moore and Mealy Machines, Decidability for Regular Languages; Non-regular Languages; Transducers (automata with output). Context-free Grammar and Languages; Decidability for Context- free Languages; Non-context-free Languages; Pushdown Automata, If time allows we will also have a short introduction to Turing machines.
  • 4. Course Organization Text Book: i) Denial I. A. Cohen Introduction to Computer Theory, Second Edition, John Wiley & Sons. Reference Books: i) Automata, Computability and Complexity: Theory and Applications, by Elaine Rich, 2011 ii) An Introduction to Formal Languages and Automata, by Peter Linz, 4th edition, Jones & Bartlett Publishers, 2006 iii)Theory of Automata, Formal Languages and Computation, by S. P. Eugene, Kavier, 2005, New Age Publisher Weights: Assignments 10% Quizzes 5% Mid-term 25% Final Exam 60%
  • 5. Schedule of Lectures Lect.# Topics/Contents 1 Introduction to Automata theory, Its background, Mathematical Preliminaries, Sets, Functions, Graphs, Proof Techniques 2 Formal Languages, Introduction to defining languages, alphabet, language, word, null string, length of a string, reverse of a string, Palindrome, Kleene closure. 3 Formal definition of Regular Expressions, Defining languages with regular expressions, Languages associated with regular expressions. 4 Equality of Regular Expressions, Introducing the language EVEN-EVEN. 5 More examples related to regular expressions. 6 Introducing Finite Automata., Defining languages using Finite Automata. Constructing Finite Automata for different languages. 7 Recognizing the language defined by the given Finite Automata. 8 More examples related to Finite Automata. 9 Transition Graphs with examples, Generalized Transition Graphs, Non- determinism in case of Transition Graphs. 10 Non-deterministic FA’s. Differences between FA, TG and NFA. 11 Sessional I
  • 6. Schedule of Lectures Lect.# Topics/Contents 12 Discussion on the solution of S-I 13 Kleene’s Theorem, Algorithm for turning TGs into REs 14 Kleene’s Theorem, Algorithm for turning REs into FAs 15 Different Rules for turning Res into FAs 16 Nondeterminism, NFA, converting NFA into FA. Union of two FAs using NFA. 17 Finite Automata with output, Moore’s machines and Mealy machines with examples. 1’s Complement machine, Increment machine. 18 Theorems for Converting Moore machines into Mealy machines and vice versa. 19 Transducers as models of sequential circuits. 20 Regular Languages, Closure properties (i.e. , Concatenation and Kleene closure) of Regular Languages with examples. 21 Complements and Intersections of Regular Languages, Theorems relating to regular languages and the related examples. 22 Non-Regular Languages, The pumping Lemma, Examples relating to Pumping Lemma.
  • 7. Schedule of Lectures 23 Sessional-II 24 Decidability, decision procedure, Blue-paint method, Effective decision procedure to prove whether two given RE’s or FA’s are equivalent. Myhill- Nerode theorem, Related Examples. 25 Context-Free Grammars, CFG’s for Regular Languages with examples. CFG’s for non-regular languages. 26 CFG’s of PALINDROME, EQUAL and EVEN-EVEN languages, Backus- Naur Form. 27 Parse Trees, Examples relating to Parse Trees, Lukasiewicz notation, Prefix and Postfix notations and their evaluation. 28 Ambiguous and Unambiguous CFG’s, Total language tree. Regular Grammars, Semi-word, Word, Working String, Converting FA’s into CFG’s. 29 Regular Grammars, Constructing Transition Graphs from Regular Grammars. Killing null productions. Killing unit productions, 30 Chomsky Normal form with examples, Left most derivations. Pushdown Automata, Constructing PDA’s for FA’s, Pushdown stack.
  • 8. Some basics • Automaton = A self-operating machine or mechanism (Dictionary definition), plural is Automata. • Automata = abstract computing devices • Automata theory = the study of abstract machines (or more appropriately, abstract 'mathematical' machines or systems), and the computational problems that can be solved using these machines. • Mathematical models of computation • Finite automata • Push-down automata • Turing machines
  • 9. History • 1930s : Alan Turing defined machines more powerful than any in existence, or even any that we could imagine – Goal was to establish the boundary between what was and was not computable. • 1940s/1950s : In an attempt to model “Brain function” researchers defined finite state machines. • Late 1950s : Linguist Noam Chomsky began the study of Formal Grammars. • 1960s : A convergence of all this into a formal theory of computer science, with very deep philosophical implications as well as practical applications (compilers, web searching, hardware, A.I., algorithm design, software engineering,…)
  • 11. 11 CPU input memory output memory Program memory temporary memory
  • 12. 12 CPU input memory output memory Program memory temporary memory 3 ) ( x x f  compute x x compute x x  2 Example:
  • 13. 13 CPU input memory output memory Program memory temporary memory 3 ) ( x x f  compute x x compute x x  2 2  x
  • 14. 14 CPU input memory output memory Program memory temporary memory 3 ) ( x x f  compute x x compute x x  2 2  x 4 2 * 2   z 8 2 * ) (  z x f
  • 15. 15 CPU input memory output memory Program memory temporary memory 3 ) ( x x f  compute x x compute x x  2 2  x 4 2 * 2   z 8 2 * ) (  z x f 8 ) (  x f
  • 16. 16 Automation CPU input memory output memory Program memory temporary memory Automation
  • 17. 17 Different Kinds of Automata Automata are distinguished by the temporary memory • Finite Automata: no temporary memory • Pushdown Automata: stack • Turing Machines: random access memory
  • 18. 18 input memory output memory temporary memory Finite Automaton Finite Automaton Example: Automatic Door, Vending Machines (small computing power)
  • 19. 19 input memory output memory Stack Pushdown Automaton Pushdown Automaton Example: Compilers for Programming Languages (medium computing power) Push, Pop
  • 20. 20 input memory output memory Random Access Memory Turing Machine Turing Machine Examples: Any Algorithm (highest computing power)
  • 21. 21 Finite Automata Pushdown Automata Turing Machine Power of Automata Less power More power Solve more computational problems
  • 22. 22 Mathematical Preliminaries • Sets • Functions • Relations • Graphs • Proof Techniques
  • 23. 23 } 3 , 2 , 1 {  A A set is a collection of elements SETS } , , , { airplane bicycle bus train B  We write A  1 B ship
  • 24. 24 Set Representations C = { a, b, c, d, e, f, g, h, i, j, k } C = { a, b, …, k } S = { 2, 4, 6, … } S = { j : j > 0, and j = 2k for some k>0 } S = { j : j is nonnegative and even } finite set infinite set
  • 25. 25 A = { 1, 2, 3, 4, 5 } Universal Set: all possible elements U = { 1 , … , 10 } 1 2 3 4 5 A U 6 7 8 9 10
  • 26. 26 Set Operations A = { 1, 2, 3 } B = { 2, 3, 4, 5} • Union A U B = { 1, 2, 3, 4, 5 } • Intersection A B = { 2, 3 } • Difference A - B = { 1 } B - A = { 4, 5 } U A B 2 3 1 4 5 2 3 1 Venn diagrams 4 5
  • 27. 27 A • Complement Universal set = {1, …, 7} A = { 1, 2, 3 } A = { 4, 5, 6, 7} 1 2 3 4 5 6 7 A A = A
  • 28. 28 0 2 4 6 1 3 5 7 even { even integers } = { odd integers } odd Integers
  • 29. 29 DeMorgan’s Laws A U B = A B U A B = A U B U
  • 30. 30 Empty, Null Set: = { } S U = S S = S - = S - S = U = Universal Set
  • 31. 31 Subset A = { 1, 2, 3} B = { 1, 2, 3, 4, 5 } A B U Proper Subset: A B U A B
  • 32. 32 Disjoint Sets A = { 1, 2, 3 } B = { 5, 6} A B = U A B
  • 33. 33 Set Cardinality • For finite sets A = { 2, 5, 7 } |A| = 3 (set size)
  • 34. 34 Powersets A powerset is a set of sets Powerset of S = the set of all the subsets of S S = { a, b, c } 2S = { , {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} } Observation: | 2S | = 2|S| ( 8 = 23 )
  • 35. 35 Cartesian Product A = { 2, 4 } B = { 2, 3, 5 } A X B = { (2, 2), (2, 3), (2, 5), ( 4, 2), (4, 3), (4, 5) } |A X B| = |A| |B| Generalizes to more than two sets A X B X … X Z
  • 36. 36 FUNCTIONS domain 1 2 3 a b c range f : A -> B A B If A = domain then f is a total function otherwise f is a partial function f(1) = a 4 5
  • 37. 37 Let A & B be sets. A binary relation “R” from A to B R = {(x1, y1), (x2, y2), (x3, y3), …} Where and R ⊆ A x B xi R yi to denote e. g. if R = ‘>’: 2 > 1, 3 > 2, 3 > 1 RELATIONS A xi  B yi  R b a  ) , (
  • 38. 38 GRAPHS A directed graph • Nodes (Vertices) V = { a, b, c, d, e } • Edges E = { (a,b), (b,c), (b,e),(c,a), (c,e), (d,c), (e,b), (e,d) } node edge a b c d e
  • 40. 40 Walk a b c d e Walk is a sequence of adjacent edges (e, d), (d, c), (c, a)
  • 41. 41 Path a b c d e Path is a walk where no edge is repeated Simple path: no node is repeated
  • 42. 42 Cycle a b c d e 1 2 3 Cycle: a walk from a node (base) to itself Simple cycle: only the base node is repeated base
  • 43. 43 Euler Tour a b c d e 1 2 3 4 5 6 7 8 base A cycle that contains each edge once
  • 44. 44 Hamiltonian Cycle a b c d e 1 2 3 4 5 base A simple cycle that contains all nodes