CS420: Introduction to the Theory of Computation
Spring 2018

Sections 1, 50C

Monday Wednesday, 4:00-5:15, Y-2-2300

Department of Computer Science, UMass Boston


Professor

Peter Fejer
email: fejer@cs.umb.edu
Office: S-3-184
Office Hours: M,W 2:00-3:00, 5:30-6:00, Tu,Th 1:00-2:00 and by appt.

TA

Quynh Vo

Email: kingvo at cs.umb.edu

Office: S-3-124

Office Hours: Tu,Th 2:00-4:00


General Information

Introduction to theoretical aspects of computing, including models of computation, inherent limits on computation, and feasible computation.

Prerequisites:  CS 320L (or equivalent).


 

Day-by-Day Syllabus

·         For some topics in the course, I am using slides prepared by Prof. Emanuele Viola of Northeastern University. These slides are used with his kind permission. The slides are organized by chapter rather than by section of the textbook. Links to these slides on Prof. Viola’s webpage are given in the syllabus below.

·         This course is in the UMB Blackboard and in piazza. You can log into Blackboard with your UMB ID at umb.umassonline.net. The piazza page is accessible from Blackboard, but can also be reached directly at piazza.com/umb/spring2018/cs420/home. Both Blackboard and piazza contain links to this page.

·         Class lectures are being recorded using the Echo 360 system. You can find the class recordings in Blackboard.

 

 

Date

Topic

Textbook Section(s)

Slides

Homework and Solutions

Test Study Material and Solutions

Jan 22

Finite Automata I

Section 1.1

How to Succeed in CS 420

Introduction

Regular Languages

 

 

Jan 24

Finite Automata II

Section 1.1

 

Homework 1

Solutions

 

Jan 29

Nondeterministic Finite Automata I

Section 1.2

 

 

 

Jan 31

Nondeterministic Finite Automata II

Section 1.2

 

Homework 2

Solutions

 

Feb 5

Nondeterministic Finite Automata III

Regular Expressions

Section 1.2

 

Section 1.3

 

 

 

Feb 7

Non-Regular Languages

Section 1.4

 

 

 

 

 

Homework 3

Solutions

 

Feb 12

Context-Free Grammars I

Section 2.1

Context-Free Languages

 

Feb 14

Context-Free Grammars II

Section 2.1

 

Homework 4

Solutions

 

Feb 19

Presidents’ Day

 

 

 

 

Feb 21

Context-Free Grammars III

Section 2.1

 

Homework 5

 

Feb 26

Pushdown Automata I

Section 2.2

 

 

 

Feb 28

Pushdown Automata II

Section 2.2

 

 

 

Mar 5

Pushdown Automata III

Non-Context-Free Languages I

Section 2.2

 

Section 2.3

 

 

 

Mar 7

Non-Context-Free Languages II

Section 2.3

 

 

Mar 12--16

Spring Break

 

 

 

 

Mar 19

Turing Machines I

Section 3.1

Computability

 

Mar 21

Turing Machines II

Section 3.2

 

 

 

Mar 26

Turing Machines III

Section 3.3

 

 

Practice Questions

 

Practice Question Solutions

 

 

Mar 28

First Test

 

 

 

Apr2

Decidable Languages I

Section 4.1

 

 

Apr 4

Decidable Languages II

Undecidability I

Section4.1

 

Section 4.2

 

 

 

Apr 9

Undecidability II

Section 4.2

 

 

Apr 11

Undecidability

Undecidable Problems in Language Theory I

Section 4.2

 

Section 5.1

 

 

Apr 16

Undecidable Problems in Language Theory II

Section 5.1

 

 

Apr 18

Patriots’ Day

 

 

 

 

Apr 23

Undecidable Problems in Language Theory III

Section 5.1

 

 

 

Apr 25

Mapping Reducibility I

Section 5.3

 

 

 

 

 

Apr 30

Mapping Reducibility I

Measuring Complexity I

Section 5.3

 

Section 7.1

 

 

 

May 2

Second Test

 

 

 

 

Practice Questions

 

Practice Question Solutions

 

 

May 7

Measuring Complexity II

The Class P I

Section 7.1

Section 7.2

 

 

 

May 9

The Class P II

The Class NP

NP Completeness

Section 7.2

Section 7.3

Section 7.4

 

 

May 16

Final Exam

3:00-6:00

 

 

 

 

Practice Questions

 

Practice Question Solutions



Interesting Links

·        Here is the web site for the textbook . (Third Edition, Second Edition) (You should print out the list of errata for the textbook.)



Accessing this page from your home PC

Some files will be available in Postscript format only.  If you want to view and print Postscript files at home, you need Ghostscript and Ghostview. You can get them by clicking here.

·                     Download Ghostscript and GSview for reading PostScript files.