CS420: Introduction to the Theory of Computation
Fall 2017

Section 1

Tuesday Thursday 12:30-1:45, W-2-200

Department of Computer Science, UMass Boston


Professor

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

TA

Quynh Vo

Email: kingvo at cs.umb.edu

Office: S-3-124

Office Hours: TT 2:00-3: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/fall2017/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

Sep 5

Finite Automata I

Section 1.1

How to Succeed in CS 420

Introduction

Regular Languages

 

 

Sep 7

Finite Automata II

Section 1.1

 

Homework 1

 

Solutions

 

Sep 12

Nondeterministic Finite Automata I

Section 1.2

 

 

 

Sep 14

Nondeterministic Finite Automata II

Section 1.2

 

Homework 2

 

Solutions

 

Sep 19

Nondeterministic Finite Automata III

Regular Expressions

Section 1.2

 

Section 1.3

 

 

 

Sep 21

Non-Regular Languages I

Section 1.4

 

 

 

 

 

Homework 3

 

Solutions

 

Sep 26

Context-Free Grammars I

Section 2.1

Context-Free Languages

 

Sep 28

Context-Free Grammars II

Section 2.1

 

Homework 4

 

Solutions

 

Oct 3

Context-Free Grammars III

Section 2.1

 

 

 

Oct 5

Pushdown Automata I

Section 2.2

 

Homework 5

 

Solutions

 

Oct 10

Pushdown Automata II

Section 2.2

 

 

 

Oct 12

Pushdown Automata III

Non-Context-Free Languages I

Section 2.2

 

Section 2.3

 

Homework 6

 

Solutions

 

Oct 17

Non-Context-Free Languages II

Section 2.3

 

 

Oct 19

Turing Machines I

Section 3.1

Computability

Homework 7

Solutions

 

Oct 24

Turing Machines II

Section 3.2

 

 

 

Oct 26

First Test

 

 

Study Guide

 

Practice Questions

 

Practice Question Solutions

 

Test Solutions

Oct 31

Turing Machines III

Section 3.3

 

 

 

Nov 2

Decidable Languages I

Section 4.1

 

Homework 8

Solutions

 

Nov 7

Decidable Languages II

Undecidability I

Section4.1

 

Section 4.2

 

 

 

Nov 9

Undecidability II

Section 4.2

 

Homework 9

Solutions

 

Nov 14

Undecidability

Undecidable Problems in Language Theory I

Section 4.2

 

Section 5.1

 

 

Nov 16

Undecidable Problems in Language Theory II

Section 5.1

 

Homework 10

Solutions

 

Nov 21

Undecidable Problems in Language Theory III

Section 5.1

 

Homework 11

 

Solutions

 

Nov 23

Thanksgiving

 

 

 

 

Nov 28

Mapping Reducibility I

Section 5.3

 

 

 

 

 

Nov 30

Mapping Reducibility I

Measuring Complexity I

Section 5.3

 

Section 7.1

 

 

 

Dec 5

Second Test

 

 

 

Study Guide

 

Practice Questions

 

Practice Question Solutions

 

Test Solutions

Dec 7

Measuring Complexity II

The Class P I

Section 7.1

Section 7.2

 

 

 

Dec 12

The Class P II

The Class NP

NP Completeness

Section 7.2

Section 7.3

Section 7.4

 

 

Supplemental Homework

Supplemental Homework Solutions

Dec 21

Final Exam

 

 

 

Study Guide

 

 



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.