1 welcome to cpts 317 background course outline textbook syllabus (see class web site to important...

Post on 19-Jan-2016

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Welcome to CptS 317Background

Course OutlineTextbookSyllabus

(see class web site to important information on disabilities, cheating

and safety)Grades

Nuts and Bolts

2

CptS 317Automata Theory, Languages and

ComputationFall 2014

Instructor: John Miller, West 134Ejhmiller@tricity.wsu.edu

Class web page can be found athttp://www/tricity.wsu.edu/~jhmiller

3

Background

In 1930s A.Turing studied abstract machines (Turing machine) with properties like modern computers.

His objective was to discover what computers could and could not do.

This subject now called “deciability” If problem can be solved by

computer, it is “decidable”

4

Background (2) In 40s and 50s, simple machines

called “finite automata” were studied as models of brain function.

Although not good brain models, they turned out to be useful for other reasons.

In 1950s, N. Chomsky introduced the concept of “grammars” that is closely related to finite automata.

5

Background (3)

In 1969 S. Cook extended Turing work. He devised ways to separate computer

problems into those that could be solved efficiently (tractable) from those that took so much time that computers are useless (intractable or NP-hard).

CptS 317 is about these classical issues in the theory of computing.

6

Course Outline

Regular Languages and their descriptors: Finite automata, nondeterministic

finite automata, regular expressions. Algorithms to decide questions about

regular languages, e.g., is it empty? Closure properties of regular

languages.

7

Course Outline – (2)

Context-free languages and their descriptors: Context-free grammars, pushdown

automata. Decision and closure properties.

8

Course Outline – (3)

Recursive and recursively enumerable languages. Turing machines, decidability of

problems. The limit of what can be computed.

Intractable problems. Problems that (appear to) require

exponential time. NP-completeness and beyond.

9

Text

Introduction to Automata Theory, Languages, and Computation 3rd Edition, Hopcroft, Motwani, Ullman,

10

Likely course content

Chapter 1: IntroductionChapter 2: Finite AutomataChapter 3: Regular Expressions and LanguagesChapter 4: Properties of Regular LanguagesMidterm examChapter 5: Context-Free Grammars and LanguagesChapter 6: Pushdown AutomataChapter 7: Properties of Context-Free LanguagesChapter 8: Introduction to Turing MachinesFinal exam

11

Grades

Homework 25% Weekly quizzes 25%: Midterm exam 25% Final exam 25%

12

Comments About Homework The intent is that everyone will get

homework 100% correct. You are allowed to try as many

times as you like. Only the last try counts.

Don’t be afraid to guess and try again.

You’ll get some advice if you make a mistake.

13

Quizzes: when and why

End of class on Fridays Questions about the material covered in

during that week Open textbook and lecture slides

Reward students who come to class, read text and review lecture slides

14

Why Study Automata?

Finite automata are models for protocols, electronic circuits, etc.

Regular expressions are essential for all types of computing

Context-free grammars are used to describe the syntax of almost every programming language.

15

Why? – (2) When developing solutions to real

problems, we often confront the limitations of what software can do. Undecidable things no program can

do Intractable things programs can do

but but no fast programs exist.

16

Practical Application

“Intractable” problems should not be addressed “head on” (i.e. write code based on rigorous step-by-step method)

Look for an approximate method Try “heuristic” approach (likely to

give the correct answer by no guarantee)

17

18

Gradiance Problems The “class token” is 8E58F2FF. Register it at www.gradiance.com/service See Texts p35 for discussion and 1st set of

problems Pearson no longer supports Gradiance Jeffery Ullman offers service free of charge Find Ullman’s online course at

infolab.stanford.edu/~ullman/ialc.html My lecture slides were developed from his

top related