Automata and Formal Languages (CS 350/550)

Slides:



Advertisements
Similar presentations
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
Advertisements

Formal Languages: main findings so far
Formal Languages: main findings so far A problem can be formalised as a formal language A formal language can be defined in various ways, e.g.: the language.
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Natural Language Processing - Formal Language - (formal) Language (formal) Grammar.
8/25/2009 Sofya Raskhodnikova Intro to Theory of Computation L ECTURE 1 Theory of Computation Course information Overview of the area Finite Automata Sofya.
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
ICE1341 Programming Languages Spring 2005 Lecture #5 Lecture #5 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
ICE1341 Programming Languages Spring 2005 Lecture #4 Lecture #4 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
CS 355 – Programming Languages
CS466 (Prasad)L1Sets1 Introduction Language: Set of Strings.
CS5371 Theory of Computation
Theory of Computation What types of things are computable? How can we demonstrate what things are computable?
CS 490: Automata and Language Theory Daniel Firpo Spring 2003.
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
Finite State Machines Data Structures and Algorithms for Information Processing 1.
1 Introduction to Automata Theory Reading: Chapter 1.
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 9:10-12:10 PM, Monday Place: BL 103.
CSCI 2670 Introduction to Theory of Computing September 28, 2005.
CS/IT 138 THEORY OF COMPUTATION Chapter 1 Introduction to the Theory of Computation.
Categories and Computer Science
Grammars CPSC 5135.
Language: Set of Strings
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 9:10-12:10 PM, Monday Place: BL.
1 / 48 Formal a Language Theory and Describing Semantics Principles of Programming Languages 4.
9.7: Chomsky Hierarchy.
CS130: Theory of Computation An introductory course on the theory of automata and formal languages: models of machines, languages and grammars, relationship.
Models of Computing Regular Expressions 1. Formal models of computation What can be computed? What is a valid program? What is a valid name of a variable.
Why Study Automata? What the Course is About Administrivia 1 Welcome to CSE309.
1 Course Overview Why this course “formal languages and automata theory?” What do computers really do? What are the practical benefits/application of formal.
Lecture 16b Turing Machines Topics: Closure Properties of Context Free Languages Cocke-Younger-Kasimi Parsing Algorithm June 23, 2015 CSCE 355 Foundations.
Introduction to Proofs. The use of Reasoning and Logic in proofs Inductive Reasoning- “reasoning from detailed facts to general principles” – Specific.
C Sc 132 Computing Theory Professor Meiliu Lu Computer Science Department.
CSE 202 – Formal Languages and Automata Theory 1 REGULAR EXPRESSION.
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
CS 154 Formal Languages and Computability May 12 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis (Winter 2016, these slides were also used for Day 33)
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Introduction to Automata Theory
Topic 3: Automata Theory 1. OutlineOutline Finite state machine, Regular expressions, DFA, NDFA, and their equivalence, Grammars and Chomsky hierarchy.
Describing Syntax and Semantics
What is Mathematics? The science (or art?) that deals with numbers, quantities, shapes, patterns and measurement An abstract symbolic communication system.
Why Study Automata Theory and Formal Languages?
CIS Automata and Formal Languages – Pei Wang
Francisco Antonio Doria
Welcome to Automata Theory Course
Why Study Automata? What the Course is About Administrivia
BCS2143 – Theory of Computer Science
Lecture 1 Theory of Automata
CSE 105 theory of computation
Welcome to Automata Theory Course
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
Theory of Computation Theory of computation is mainly concerned with the study of how problems can be solved using algorithms.  Therefore, we can infer.
Turing Machines.
Natural Language Processing - Formal Language -
PUSHDOWN AUTOMATA. PUSHDOWN AUTOMATA Hierarchy of languages Regular Languages  Finite State Machines, Regular Expression Context Free Languages 
Formal Language Theory
CSE322 Chomsky classification
Formal Language.
CSCE 411 Design and Analysis of Algorithms
Intro to Data Structures
Regular Expressions
CS21 Decidability and Tractability
CSE 105 theory of computation
Chapter 1 Introduction to the Theory of Computation
CSC312 Automata Theory Lecture # 2 Languages.
Hopcroft, Motawi, Ullman, Chap 8
CIS Automata and Formal Languages – Pei Wang
Presentation transcript:

Automata and Formal Languages (CS 350/550) Thomas Gilray TA: Jiaqing “Jordan” Yuan gilray.org/classes/fall2018/cs350/

What are Automata?

What are Automata? Formal systems---abstract machines---that model (usually restricted) notions of computation. HMU says “Automata theory is the study of abstract computing devices...before there were computers...” + Finite automata originally proposed to model brain function. + Turing machines preceded, and lead to, the development of modern computers.

David Gelertner Elegance = power + simplicity

David Gelertner Elegance = power + simplicity Expressivity

Class of Automata Class of Formal Languages Finite Automata (Deterministic, Nondeterministic) Pushdown Automata (Automata with an unbounded stack.) Turing Machines (Automata with an unbounded memory.) Regular Languages (Specified using regular expressions) Context-Free Languages (Specified using context-free grammars) Recursively Enumerable Languages (Specified using computable functions; e.g., Python,C)

Class of Automata Class of Formal Languages Regular Languages (Specified using regular expressions) (ab)*c

Class of Automata Class of Formal Languages Regular Languages (Specified using regular expressions) (ab)*c Requires interpretation as a formal language.

Class of Automata Class of Formal Languages Regular Languages (Specified using regular expressions) (ab)*c ...or modeling by a finite automata! Requires interpretation as a formal language.

Syntax vs. Semantics Syntax: Rules governing the order of letters/words/terms in a sentence, independent its meaning. Semantics: The meaning (operation, denotation) of the sentence. For example: 1+2/(1-1) is a syntactically valid arithmetic expression, but is semantically meaningless.

What are Formal Languages?

What are Formal Languages? Languages, defined formally, as (finite or infinite) sets of of strings (over a finite alphabet). E.g., [1-9][0-9]* is a regular expression we interpret as the formal language {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, ...}

What are formal systems? Roughly speaking: A system that precisely specifies its forms and rules that manipulate them, without recourse to intuition or interpretation into another, otherwise understood, system.

What are formal systems? Roughly speaking: A system that precisely specifies its forms and rules that manipulate/relate them, without recourse to intuition or interpretation into another, otherwise understood, system.

Bertrand Russell “Pure mathematics consists entirely of asseverations to the extent that, if such and such a proposition is true of anything, then such and such another proposition is true of anything. It is essential not to discuss whether the first proposition is really true, and not to mention what the anything is, of which it is supposed to be true ... If our hypothesis is about anything, and not about some one or more particular things, then our deductions constitute mathematics. Thus mathematics may be defined as the subject in which we never know what we are talking about, nor whether what we are saying is true.”

Conway’s game of life:

Isomorphism?

{ Isomorphism A structure-preserving bijection. Consider: f(x) = Is f a bijection for the domain ℤ and codomain ℕ? { -2x-1 0 2x x < 0 x = 0 x > 0

Isomorphism 1+1=0 (mod 2) 0+1=1 (mod 2) 1+0=1 (mod 2) 0+0=0 (mod 2) T xor T = F F xor T = T T xor F = T F xor F = F

Is meaning anything other than isomorphism…?

Our textbook: Hopcroft, Motwani, Ullman

Other suggestions...

Syllabus discussion, Pre-test