CSCI 2400  Models of Computation

Spring 2004

Contents

·  Important Messages

·  General Information

·  Class Schedule & Notes

·  Academic Integrity

·  Grading

·  Homeworks

·  Projects

·  Exams

·  Quizes

·  Related Links

·  WebCT
 

Important Messages

 

Exam 3 sample test and practice solutions are posted.

final_pract.   Solutions: final_pract_sol.
Submission for Project 3 can be done using Submission Page

Homework 12 is posted.

Project 3 is posted. - On Tuesday, there will be helper programs to help you finish project 3.

ReadMe and s6.l and s6.y are helper programs to help you finish the project.

Please check your homework, quiz and exam grades in webct - If there are questions, please contact moorthy asap.
Sample Exam 2 is posted below. Exam 2 is on March 29th Monday in class.
Home Work 9 is posted.
Submission for Project 2 can be done using Submission Page
Two sample programs to help with project 2 are posted. They can be compiled by /usr/ccs/bin/lex s4.l;
/usr/ccs/bin/yacc -d s4.y ;
gcc y.tab.c -ly -ll -o myparser

  1. s4.l - Lex Program

    s4.y - Yacc Program

  2. s5.l - Lex Program

    s5.y - Yacc Program

  3. To run yacc in CS machines use /usr/ccs/bin/yacc

Submission for Project 1 can be done using Submission Page

Febrary 18: There is a practice midterm exam posted below. Your graded homeworks are in a box outside my office (Lally 305). There is an example program to have you started in project 1 posted in the projects section.

Feb 17: Your home work and Quiz grades are posted in WebCT. Please check..

Project 2 is posted. Homework 7 is posted

Homework 8 is posted

General Information

 

Location & Time: DCC 318, Monday & Thursday 2:00-3:50pm

Book: "An Introduction to Formal Languages and Automata", Peter Linz,Third Edition, ISBN: 0-7637-1422-4.
 

Instructor & TAs

Name

Email

Phone

Office

Office Hours

Instructor

Moorthy (Mukkai Krishnamoorthy)

moorthy@cs.rpi.edu

x6911

Lally 305

Wednesday 2:00-4:00pm

TA 1

Jing Xi

xij2@cs.rpi.edu

x8465

Bray room, Science Center

Tuesday 4-6:00 pm and Thursday 7-9:00 pm

TA 2

Yu-Shin Cho

choy@rpi.edu

x6397

Bray room,
Science Center

Monday 4-6:00 pm

 

Class Schedule & Notes

 

Thanks to Prof. Costas Busch who has prepared these excellent slides.

Day

Topic

Chapter

Slides

Assignment Post

Assignment Due

Monday January 12

Introduction

--

class0.ppt

 

 

Thursday January 15

Mathematical Preliminaries & Languages

1

class1.ppt

 

 

Thursday
January 22

Finite Automata

2.1

class2.ppt

 Homework 1

 

Monday
January 26

Nondeterministic Finite Automata

2.2 - 2.3

class3.ppt

Quiz 1

 

Thursday
January 29

Properties of Regular Languages

Regular Expressions

4.1

3.1 - 3.2

class4.ppt

Homework 2

 Homework 1

Monday
February 2

Regular Grammars

3.3

class5.ppt

Quiz 2

 

Thursday
February 5

Elementary Questions for Reg. Lang.

Pumping Lemma for Regular Languages

4.2

4.3

class6.ppt

Homework 3

 Homework 2

Monday
February 9

Pumping Lemma Examples
Lex

4.3

class7.ppt

Quiz 3

Project 1

 

Thursday
February 12

Context-Free Languages

5

class8.ppt

Homework 4

 Homework 3

Tuesday
Febraury 17 (follows Monday Schedule)

Simplifications of Context-Free Grammars &

Normal Forms

6

class9.ppt

Quiz 4

 

Thursday Febrary 19

Pushdown Automata

7.1

class10.ppt

Homework 5

Homework 4

Monday
February 23

Exam 1 (Regular Languages)

 

 

 

 

Thursday February 26

Pushdown Automata and Context-Free Lang.

7.2

class11.ppt

Homework 6

 Homework 5

Monday March 1

Deterministic Pushdown Automata
Properties of Context-Free Languages

Yacc

7.3
8.2

class12.ppt

Quiz 5

Project2

Project 1

Thursday March 4

Pumping Lemma for Context-Free Languages

8.1

class13.ppt

Homework 7

Homework 6

Monday March 15

Pumping Lemma Examples

8.1

class14.ppt

Quiz 6

 

Thursday March 18

Turing Machines

9.1-9.2

class15.ppt

Homework 8

Homework 7

Monday
March 22

Turing Thesis

Variations of Turing Machines

9.1

10.1-10.3

class16.ppt

Quiz 7

 

Thursday
March 25

Universal Turing Machines

10.4 - 10.5

class17.ppt

Homework 9

Homework 8

Monday
March 29

Exam 2 (Context-Free Languages)

 

 

 

 

Thursday
April 1

Recursive and Recursively Enumerable Languages

11.1

class18.ppt

Homework 10

Project 3

Homework 9

 

Monday
April 5

Chomsky's Hierarchy
Decidability

11.2-11.4
12.1

class19.ppt

Quiz 8

Project 2

Thursday
April 8

Decidability

12.1-12.2

class20.ppt

Homework 11

 

Monday April 12

The Post-Correspondence Problem 

12.3 - 12.4

class21.ppt

Quiz 9

 

Thursday April 15

Time Complexity

14

class22.ppt

Homework 12

 

Monday April 19

NP-completeness

14 (continuted)

Time Complexity class23.ppt

 

 

Thursday
April 22

Review Class

 

 

Quiz 10

Homework 12

Project 3

Thursday  Monday April 26

Exam 3 (Turing Machines)

 

 

 

 

 

Academic Integrity

Collaboration is not allowed. Any collaboration will be considered cheating. The only allowed collaboration is for the projects between the same team members. If anyone is cought cheating then appropriate severe measures will be taken.
 

Grading

Questions Regarding Assignments and Grading

For any questions regarding homeworks, projects, exams, and quizes, you should post a message on the discussion tool of webCT, and then a TA will answer.  Actually, any student in the class can answer questions of the webCT, as long as no homework or project solutions are revealed. Don't send direct emails to the TAs or instructor, unless you have personal reasons to do so. You can meet with the instructor or the TAs during office hours, which are posted above. For homework or quiz questions you should talk to the appropriate TA who is handling the rerspective homework.

Grading of Assignments


There will be a homework each week. Each homework will consist from two questions. All homeworks should be returned at the beginning of the class on the due date. No late homeworks are accepted.
 


There will be 3 computer projects. First project counts 5% of your grade. You will have almost a month for each project. For the projects you can work with teams of up to 2 people, and this is the only allowed collaboration in the class. No late projects are accepted.
 


There will be three exams. Each counts for 15% of your grade. The exams will be given in class and will be open book.
 


There will be 10 in class quizes. Each quiz is 10 minutes long and counts for 0.5 extra credit point (out of 100). Quizes are open book. Quizes help to compensate for bad grades and are good practice for the exams.

Homeworks


Homeworks should be handed-in in the class, at the end of the class on the due day. 

For questions about homeworks contact the appropriate TA. Solutions can be found on webct.

 

Homework

Grader

homework1

Jing Xi (TA 1)

homework2

Yu-Shin Cho

homework3

Jing Xi

homework4

Yu-shin Cho

homework5

Jing Xi

homework6

Yu-Shin Cho

homework7

Jing Xi

homework8

Yu-Shin Cho

homework9

Jing Xi

homework10

Yu-Shin Cho

homework 11

Jing Xi

homework12

Yu-Shin Cho



 

Projects

Project 1 - Lex

Project 2 – Yacc Interpreter

Two sample programs to help with project 2 are posted. They can be compiled by /usr/ccs/bin/lex s4.l;
/usr/ccs/bin/yacc -d s4.y ;
gcc y.tab.c -ly -ll -o myparser

  1. s4.l - Lex Program

    s4.y - Yacc Program

  2. s5.l - Lex Program

    s5.y - Yacc Program

  3. To run yacc in CS machines use /usr/ccs/bin/yacc

Project 3 – Yacc Compiler


Run "yacc-script filename", where filename.l and filename.y is your lex and yacc program and filename will be the resulting executable.
(Remember to change the permission of the script file to executable before you use it.)

Exams


Midterm 1 (Regular Languages)

Midterm 2 (Context-Free Languages)


Final Exam (Turing Machines)

 

Quizes

 

Quiz

Grader

1.

Yu-Shin Cho (TA 2)

2.

Jing Xi (TA 1)

3.

Yu-Shin cho

4.

Jing Xi

5.

Jing Xi

6.

Yu-Shin cho

7.

Jing Xi

8.

Yu-Shin cho

9.

Jing Xi

 

Quizes with solutions can be found on webct.
 

Related Links

Course Related

Send me any course related link you find and I will post it here

File Viewers

·  Powerpoint Viewer: viewer for powerpoint documents for Microsoft Windows

·  Acrobat Reader: viewer for pdf files

·  GhostView:  viewer for postscript (.ps) and pdf files for Microsoft Windows and Unix

Text Editors

·  Emacs: editor for Microsoft Windows

Text Processors

·  Latex: text processor for Microsoft Windows