P. 1
Lecture 01

Lecture 01

|Views: 2|Likes:
Published by Nauman Naseer

More info:

Published by: Nauman Naseer on Mar 19, 2012
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less






Personal Introduction

Theory o f Automata

Educational Background
[2011] PhD (Information Technology) from Malaysia [2006] MS (Digital Media) from Germany [2001] MSc (Computer Science) from MAJU

Working Experience
[2008] Assistant Professor at Bahria University [2007] Visiting Lecturer at Bahria University [2006] Assistant Professor at RIU [2005] Research work for 3D models optimization in Germany [2002] Principal at ICMS [2001] Lecturer at AIOU and PIMSAT

Course Assessment Criteria
Final Exam Midterm Quizzes
• 7 best quizzes out of 10

Course contents in brief
50 % 20 % 10 % 10 % 05 % 05 % 100 %
Finite State Models: Language definitions preliminaries Regular expressions/Regular languages, Finite automata (FAs), Transition graphs (TGs), NFAs, kleene’s theorem, Transducers (automata with output), Pumping lemma and non regular language Grammars and PDA Context free grammars, Derivations, ambiguity, Simplifying CFLs, derivation trees and

Assignments Presentation Class Participation Total

Normal form grammars and parsing, Push-down Automata, Pumping lemma and non-context free languages, Decidability, Chomsky’s hierarchy of grammars Turing Machines Theory: Turing machines, Post machine, Variations on TM, TM encoding, Universal Turing Machine Context sensitive Grammars, Defining Computers by TMs.

Recommended Books
Introduction to Computer Theory, Denial Cohen, John Wiley & Sons, Inc. Theory of Automata By C.J. Martin Introduction to Automata Theory, Languages & Computation, J Hopcraft, D. Ullman Languages & Machines, An Into to the Theory of Computer Science, 2/e Thomas A. Sudkamp, Addison Wesley.

Overview of the course contents
CPU memory


2/15/2012 Example: f ( x) = x temporary memory temporary memory input input CPU output Program memory Program memory compute compute CPU output 3 x∗x x2 ∗ x f ( x) = x temporary memory input 3 temporary memory z = 2*2 = 4 f ( x) = z * 2 = 8 f ( x) = x3 input x=2 CPU output Program memory compute compute Program memory CPU x=2 output compute compute x∗x x∗x x2 ∗ x x2 ∗ x temporary memory z = 2*2 = 4 f ( x) = z * 2 = 8 f ( x) = x3 Automaton temporary memory input x=2 CPU Automaton input CPU output Program memory f ( x) = 8 Program memory compute compute x∗x x ∗x 2 output 2 .

memory Stack Push. Pop Finite Automaton input Pushdown Automaton input output Example: Elevators. Vending Machines (small computing power) output Example: Compilers for Programming Languages (medium computing power) Turing Machine Temp. memory Power of Automata Simple problems More complex problems Hardest problems Random Access Memory input Turing Machine Finite Automata Pushdown Automata Turing Machine output Less power Examples: Any Algorithm (highest computing power) More power Solve more computational problems 3 .2/15/2012 Automaton temporary memory Automaton input Different Kinds of Automata Automata are distinguished by the temporary memory • Finite Automata: • Pushdown Automata: no temporary memory stack random access memory output transition • Turing Machines: state Finite Automaton temporary memory Pushdown Automaton Temp.

light. Resolve ambiguity Interpret according to context Supporting aids such as Facial expressions and body language etc.2/15/2012 Language Letters. How to Communicate with Machines? Need a language: what sort? Machines don’t have human mind though may have its partial imitation Would fail on incorrect or ambiguous input Some recovery or input corrections may be proposed but again very limited Summary of Languages Three aspects/specifications Lexical Defines valid words/units of a language Syntactic Defines rules for combining the units to form valid sentences (computer programs in context of machines) Semantic Concerned with the interpretation or meaning of a sentence (what output to produce in context of machines) Affected by ambiguity the most Thus need a precise. idiom. Raises ambiguity Interpretation varies with region Same words have multiple meanings Like. dialect etc. Words. Sentences Alphabets join to form words Words combine to form sentences Sentences combine to form paragraphs and so on Languages How can we tell whether a given sentence belongs to a particular language Black is cat the The water is cold I like chocolates two much Rules give a clue to forming as well as validating sentences Informal Languages Natural languages are generally defined informally Human brains are capable to understand incoherent even invalid sentences We school daily go to Informal Languages Incoherent strings are also understandable Slang. Rectify grammatical errors etc. base etc. explicit and universal definition of communication language 4 .

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->