You are on page 1of 26

IT110

Automata and Language Theory

INTRODUCTION TO THE COURSE

DONABELL S. HERNANDEZ
College of Computer Studies
Manuel S. Enverga University Foundation - Lucena City

Course Description
Course Code: IT110
Course Title: Automata and
Language Theory
Course Credit: 3 units
Course Description:
The course discusses abstract machines
and languages; finite automata, regular
expressions, pushdown automata, context
free languages, turing machines and
recursively innumerable languages.

General Objectives
Upon completion of this course,
students will be able to:
Understand the underlying
principles, theories and applications
of Automata and Language Theory.
Describe and analyse the dynamic
behaviour of discrete systems.
Determine the ways how the system
is constructed from storage.

Course Requirements(grading)
Requirements
Examination
Lab Exercises and Quizzes
Assignment and Research
Oral Presentation and
Seatwork
TOTAL

Grade
Percentage
20%
10%
10%

60%
40%

100%

Course
Requirements(grading)
GRADING SYSTEM PER PERIOD:
A. Computation of Grade for Midterm Period
Major Exams = 60%
Class Requirements = 40%
[PE * 30%] + [ME * 30%] + [Q * 20%] + [A/R *10%] + [SW * 10%] = 100%
(Midterm Grade)

B. Computation of Grade for the Final Period


Major Exams = 60%
Class Requirements = 40%
[SE * 30%] + [FE * 30%] + [Q * 20%] + [A/R *10%] + [SW * 10%] = 100%

Previous (Midterm Grade) = 100% * 40%


Present Grade (Final Period)
= 100% * 60%
Final Grade = 100% (Equivalent Grade Point)

Course Outline (Prelim)


Background and Preliminaries
Basics Automata Theory
Brief History
Preliminaries

Sets
Set Theory
Operations on Set
Set Builder Notation
Rules of Algebra of Sets
Venn Diagram

Course Outline (Midterm)


Languages
Mathematical Preliminaries and Notation
Languages
Three Basic Issues in a Language
Operations on Languages

Regular Expressions
Regular Expressions
Equivalence of Finite Automata and
Regular Expressions

Course Outline (Semi-Final)


Context
Free Grammar

Context Free Grammars


Chomsky Normal Form

Finite Automata
Finite Automata (FA)
Nondeterministic Finite Automata (NFA)
The equivalence of DFAs and NFA
Finite Automata with
Equivalence of NFAs With and Without

Course Outline (Final)


Finite Automata with Output
Moore Machines
Mealy Machines
Moore=Mealy

Pushdown Automata
Introduction
Pushdown Automata

BACKGROUND
AND

Basics
of
Automata
The theory of finite automata is the mathematical
theory of a simple class of algorithms that are
important in mathematics and computer science.
Started during 20th century
Mathematicians began developing both
theoretically and literally- machines which imitated
certain features of man, completing calculations
more quickly and reliably.

Automaton, is closely related to automation,


denotes automatic processes carrying out the
production of specific processes.

Automata Theory
When it started automata theory
deals with the logic of computation
with respect to simple machines,
referred to as automata.
Through this computer scientist are
able to understand how machines
compute functions and solve
problems.
Functions can be defined as computable
and questions can be describes as

Automaton
Automatons are abstract models of machines
that perform calculations on an input by
moving the a series of states or
configurations.
At each state of computation, a transition function
determines the next configuration in the basis of
a finite portion of the present configuration.
As a result, once the computation reaches an
accepting configuration, it accepts that input.

Turing machine is the general and most


powerful automata.

Brief History
The first people to consider concepts
of finite state machine included a
team of
Biologists, psychologists,
mathematicians, engineers and some of
the first computer scientists.
Common interest: model the human
thought process

Brief History
Warren McCulloch and Walter Pitts-

nuerophysiologists, present the first


description of finite automata in 1943.
A Logical Calculus Immanent in
Nervous Activity, made a significant
contributions in the study os neural
network theory, theory of automata,
theory of computation and cybernetics.

Brief History
G.H. mealy and E.F. Moore genralized
the the theory to a much more
powerful machines in 1955-56
Mealy machine determines its outputs
throught the current state and the input
Moore machines output is based upon
the current state alone.

Brief History
Alan Turing conceived the first infinite (unbound)
model of computation: TURING MACHINE, in
1936 to solve the Entscheinsproblem.
Turing machine is a control unit equipped with an
infinite storage consist of an infinite number of
one-dimensional array of cells.
This machine is essentially an abstract model of
modern-day computer execution and storage,
developed in order to provide a precise
mathematical definition of an algorithm or
mathematical procedure.

Applications of Automata and


Formal Languages
It serves as a preparation and
introduction to circuit design.
Important in compiler design
Regular expressions is useful for
programmers
Searching patterns in text
Useful in natural language processing
Algebraic theory of recognizable
language

SET THEORY

Sets
A set is a collection of objects called
elements of the set
Set is well-defined
Example
A={a,b,c,d,e,f,g}. Set A is a set with 7
distinct elements
B={0,1,2,,10}. Set B has 11 distinct
elements

Sets
A set is a group of objects
represented as a unit.
It may contain any type of object,
including numbers, symbols and
even other sets.
Sets can be described by listing their
elements inside braces.

Elements of the Set


Each entity or data contain in the set
A={1,2,3}

Ordering of the elements does not


matter
{11,13,17,19}={19,17,13,11}

Repetition do not count


{11,13,17,19}={11,17,17,13,19,13}

Set Builder Notation


A={red, green,
blue}

I+ = {1, 2, 3, 4, 5, }

enclose all elements use commas to separate


of the set in brackets elements of the set
implies more elements
using obvious pattern

A, R, I+, N, use capital letters to


represent
sets

a, b, c, x, .use lower case letters to


represent
elements of sets

x A, 5 I+, .. means is an element of

y R, -5 I+, .. means is not an


element of

Defining Sets
1. Using a sentence
The set A, containing all the non-negative integers less
than ten
The set B of students enrolled in Compiler Design
The set R of all real numbers
The set C of sets E and F

2. Explicitly include the elements of the set in brackets


A = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I + = {1, 2, 3, 4, 5, }
T = {0, 2, 4, 6, 8, , 98}
C = { {Rod, Leah } , {1, 4, 3} }

Defining Sets
3. State the properties of the elements of the set
A = {x | x is an integer, 0 x < 10 }
means such that

means logical and operator

M = {m | m T, m < 50 }
represents any member of the set

4. Using a recursive formula


A = { x0 = 0 , xi+1 = xi + 1, i = 0, 1, 29 }

IT110

Automata and Language Theory

INTRODUCTION TO THE COURSE

DONABELL S. HERNANDEZ
College of Computer Studies
Manuel S. Enverga University Foundation - Lucena City

You might also like