CS 341: Foundations of Computer Science II Fall 2014, Face-to-Face Section

Similar documents
ASTRONOMY 2801A: Stars, Galaxies & Cosmology : Fall term

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown


Beginning and Intermediate Algebra, by Elayn Martin-Gay, Second Custom Edition for Los Angeles Mission College. ISBN 13:

Class Meeting Time and Place: Section 3: MTWF10:00-10:50 TILT 221

Penn State University - University Park MATH 140 Instructor Syllabus, Calculus with Analytic Geometry I Fall 2010

MTH 215: Introduction to Linear Algebra

Math 181, Calculus I

Course Content Concepts

Spring 2015 Natural Science I: Quarks to Cosmos CORE-UA 209. SYLLABUS and COURSE INFORMATION.

San José State University Department of Psychology PSYC , Human Learning, Spring 2017

MATH 1A: Calculus I Sec 01 Winter 2017 Room E31 MTWThF 8:30-9:20AM

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

Visual Journalism J3220 Syllabus

PHY2048 Syllabus - Physics with Calculus 1 Fall 2014

San José State University

FINN FINANCIAL MANAGEMENT Spring 2014

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

ECON492 Senior Capstone Seminar: Cost-Benefit and Local Economic Policy Analysis Fall 2017 Instructor: Dr. Anita Alves Pena

Instructor. Darlene Diaz. Office SCC-SC-124. Phone (714) Course Information

MTH 141 Calculus 1 Syllabus Spring 2017

CS 3516: Computer Networks

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

Class Mondays & Wednesdays 11:00 am - 12:15 pm Rowe 161. Office Mondays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

GERM 3040 GERMAN GRAMMAR AND COMPOSITION SPRING 2017

English Grammar and Usage (ENGL )

Biology 10 - Introduction to the Principles of Biology Spring 2017

CS Course Missive

General Physics I Class Syllabus

Required Materials: The Elements of Design, Third Edition; Poppy Evans & Mark A. Thomas; ISBN GB+ flash/jump drive

ACCT 100 Introduction to Accounting Course Syllabus Course # on T Th 12:30 1:45 Spring, 2016: Debra L. Schmidt-Johnson, CPA

THE GEORGE WASHINGTON UNIVERSITY Department of Economics. ECON 1012: PRINCIPLES OF MACROECONOMICS Prof. Irene R. Foster

INTERMEDIATE ALGEBRA Course Syllabus

Physics Experimental Physics II: Electricity and Magnetism Prof. Eno Spring 2017

BA 130 Introduction to International Business

Office Hours: Mon & Fri 10:00-12:00. Course Description

Class meetings: Time: Monday & Wednesday 7:00 PM to 8:20 PM Place: TCC NTAB 2222

Phys4051: Methods of Experimental Physics I

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

Accounting 380K.6 Accounting and Control in Nonprofit Organizations (#02705) Spring 2013 Professors Michael H. Granof and Gretchen Charrier

Instructor Experience and Qualifications Professor of Business at NDNU; Over twenty-five years of experience in teaching undergraduate students.

Syllabus - ESET 369 Embedded Systems Software, Fall 2016

BUS Computer Concepts and Applications for Business Fall 2012

CHEM:1070 Sections A, B, and C General Chemistry I (Fall 2017)

RM 2234 Retailing in a Digital Age SPRING 2016, 3 credits, 50% face-to-face (Wed 3pm-4:15pm)

CMST 2060 Public Speaking

ECO 3101: Intermediate Microeconomics

Religion in Asia (Rel 2315; Sections 023A; 023B; 023C) Monday/Wednesday, Period 5 (11:45 12:35), Matherly 18 Section Meetings on Friday

Professors will not accept Extra Credit work nor should students ask a professor to make Extra Credit assignments.

MATH 205: Mathematics for K 8 Teachers: Number and Operations Western Kentucky University Spring 2017

A R "! I,,, !~ii ii! A ow ' r.-ii ' i ' JA' V5, 9. MiN, ;

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

COURSE WEBSITE:

Foothill College Summer 2016

MAT 122 Intermediate Algebra Syllabus Summer 2016

CHEMISTRY 104 FALL Lecture 1: TR 9:30-10:45 a.m. in Chem 1351 Lecture 2: TR 1:00-2:15 p.m. in Chem 1361

MKT ADVERTISING. Fall 2016

INTRODUCTION TO CULTURAL ANTHROPOLOGY ANT 2410 FALL 2015

MAE Flight Simulation for Aircraft Safety

HCI 440: Introduction to User-Centered Design Winter Instructor Ugochi Acholonu, Ph.D. College of Computing & Digital Media, DePaul University

ITSC 2321 Integrated Software Applications II COURSE SYLLABUS

Course Syllabus It is the responsibility of each student to carefully review the course syllabus. The content is subject to revision with notice.

Foothill College Fall 2014 Math My Way Math 230/235 MTWThF 10:00-11:50 (click on Math My Way tab) Math My Way Instructors:

STA2023 Introduction to Statistics (Hybrid) Spring 2013

English Policy Statement and Syllabus Fall 2017 MW 10:00 12:00 TT 12:15 1:00 F 9:00 11:00

ITSC 1301 Introduction to Computers Course Syllabus

General Chemistry II, CHEM Blinn College Bryan Campus Course Syllabus Fall 2011

Introduction to Forensic Drug Chemistry

Language properties and Grammar of Parallel and Series Parallel Languages

Computer Science 141: Computing Hardware Course Information Fall 2012

MGT 136 Advanced Accounting

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

SOUTHWEST COLLEGE Department of Mathematics

State University of New York at Buffalo INTRODUCTION TO STATISTICS PSC 408 Fall 2015 M,W,F 1-1:50 NSC 210

COURSE SYLLABUS: CPSC6142 SYSTEM SIMULATION-SPRING 2015

Office Hours: Day Time Location TR 12:00pm - 2:00pm Main Campus Carl DeSantis Building 5136

Fall Instructor: Dr. Claudia Schwabe Class hours: T, R 12:00-1:15 p.m. Class room: Old Main 304

Astronomy/Physics 1404 Introductory Astronomy II Course Syllabus

Course Syllabus. Alternatively, a student can schedule an appointment by .

Class Tuesdays & Thursdays 12:30-1:45 pm Friday 107. Office Tuesdays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

Course Syllabus for Math

The Policymaking Process Course Syllabus

Soil & Water Conservation & Management Soil 4308/7308 Course Syllabus: Spring 2008

Scottsdale Community College Spring 2016 CIS190 Intro to LANs CIS105 or permission of Instructor

MGT/MGP/MGB 261: Investment Analysis

HARRISBURG AREA COMMUNITY COLLEGE ONLINE COURSE SYLLABUS

IPHY 3410 Section 1 - Introduction to Human Anatomy Lecture Syllabus (Spring, 2017)

FINANCE 3320 Financial Management Syllabus May-Term 2016 *

AGN 331 Soil Science Lecture & Laboratory Face to Face Version, Spring, 2012 Syllabus

Department of Accounting ACC Fundamentals of Financial Accounting Fall, 2015 Syllabus

Psychology 101(3cr): Introduction to Psychology (Summer 2016) Monday - Thursday 4:00-5:50pm - Gruening 413

Data Structures and Algorithms

BIOH : Principles of Medical Physiology

CIS Introduction to Digital Forensics 12:30pm--1:50pm, Tuesday/Thursday, SERC 206, Fall 2015

Latin I (LA 4923) August 23-Dec 17, 2014 Michal A. Isbell. Course Description, Policies, and Syllabus

IDS 240 Interdisciplinary Research Methods

SPANISH 102, Basic Spanish, Second Semester, 4 Credit Hours Winter, 2013

Course Syllabus p. 1. Introduction to Web Design AVT 217 Spring 2017 TTh 10:30-1:10, 1:30-4:10 Instructor: Shanshan Cui

PBHL HEALTH ECONOMICS I COURSE SYLLABUS Winter Quarter Fridays, 11:00 am - 1:50 pm Pearlstein 308

Transcription:

CS 341: Foundations of Computer Science II Fall 2014, Face-to-Face Section Course Info Class Times: Wednesday, Friday, 1:00 2:25 Instructor: Prof. Marvin K. Nakayama Office: GITC 4312 Phone: 973-596-3398 E-mail: mailto:marvin@njit.edu Office Hours: Wednesday, Friday, 11:30am 12:30pm and by appointment. Course Webpage: http://web.njit.edu/~marvin/cs341 Description This course presents some of the most fundamental results in theoretical Computer Science. These results attempt to answer, in a precise mathematical sense, the following two questions, which are of practical as well as philosophical interest: 1. Can a given problem be solved by computation? 2. How efficiently can a given problem be solved by computation? We often focus on problems rather than on specific algorithms for solving problems. To answer both questions mathematically, we will need to formalize the notion of computer or machine. The course outline breaks naturally into three parts: 1. Models of computation (Automata Theory) Finite automata Push-down automata Turing machines 2. What can we compute? (Computability Theory) 3. How efficiently can we compute? (Complexity Theory) Specifically, the topics covered will include regular languages (finite automata, regular expressions), nonregular languages, context-free languages (context-free grammars, pushdown automata), non-context-free languages, Turing machines and variants, Church-Turing Thesis, undecidability, reducibility, time complexity, and complexity classes P, NP, and NP-complete. Student Course Outcomes The student course outcomes of the course are to Understand the capabilities and limitations of different models of computation. 1

Understand what problems can be solved by computation and which cannot. Understand what problems can be solved efficiently and those for which there is no known efficient solution. The specific learning objectives are that after completing the course, students will be able to Classify a particular language as regular, context-free, decidable, Turing-recognizable or non- Turing-recognizable. Provide a finite automaton and regular expression for a regular language. Prove that a nonregular language is not regular. Provide a context-free grammar and pushdown automaton for a context-free language. Prove that a non-context-free language is not context-free. Provide a description of a Turing machine for a decidable language. Prove or disprove closure properties (under union, intersection, complementation, Kleene star) of classes of languages. Prove that certain languages are undecidable or non-turing-recognizable. Understand nondeterminism and its role in computation and complexity theory. Understand the significance of complexity classes P, NP and NP-complete, and carry out some NP-completeness reductions. Textbook Michael Sipser, Introduction to the Theory of Computation, Third Edition. Course Technology, 2012, ISBN-10: 113318779X, ISBN-13: 978-1133187790. We will cover Chapters 0 5, and 7, following the schedule given at the end of this handout. Earlier editions of the Sipser book are also acceptable for this class, although the page numbers and sections of the book referenced in the notes and assignments may differ, and some terminology has changed. Prerequisites Before taking CS 341, you must complete all of the following with grades of C or better: 1. A 100-series general undergraduate required course in CS 2. CS 241 (Foundations of Computer Science I) 3. CS 280 (Programming Language Concepts). 2

Grading Your course grade will be determined by two projects (programming assignments), one in-class quiz, two in-class midterms and a final exam. The quiz and all exams will be closed book and closed notes. The quiz will be about 25 minutes long, the midterm exams will be 85 minutes long, and the final exam will be 2.5 hours long. Unless notified otherwise, the dates of the quiz and midterms and the due date for the projects will be as given in the schedule at the end of this document. Your final grade will be based on the following weights: Projects 20% Quiz 10% Midterms 40% Final Exam 30% For each project, students who do not turn in a minimally working program will get a 0 for the assignment and have their course grades at the end of the semester lowered by one step, e.g., from B to C+, or from C to D. Hence, if you do not turn in minimally working programs for two projects, your course grade will be lowered by two steps, e.g., from B to C or from C to F. Course grades will be assigned on a curve using the following approach. First, I will rank everyone using the cumulative scores with the weights given above, and then assign preliminary grades based on that. The top group of students will get a preliminary grade of A, the next group will receive a preliminary grade of B, etc. Any student who scores less than 20 out of 100 on the final will automatically receive an F for the course. After assigning preliminary grades, I will make adjustments for those who did not turn in minimally working programs. For each project for which you did not turn in a minimally working program, your preliminary grade will be lowered by one step. For example, if your preliminary grade was B and you only turned in one minimally working program out of the two projects, then your course grade is C+; if you did not turn in a minimally working program for neither project, then your course grade drops to a C. If you turned in minimally working programs for both projects, then your course grade is your preliminary grade based on the ranking of cumulative scores. Course Materials All of the course handouts (including lecture notes and assignments) are available in PDF format through my CS 341 homepage, whose address is given on the first page. You must bring printouts of the lecture notes to each class. To read the files, you will need to use a software package called Adobe Reader, which you can download for free using a link from the course web page. You must have version 4.0 or later of Adobe Reader. Be sure to check the course homepage each day since I will post announcements on it. As a general rule, I do not give makeup exams or quizzes, I do not allow allow students to take exams or quizzes on alternate dates, nor do I allow students to turn in assignments late. Of course, if someone has a legitimate reason (e.g., jury duty, serious medical problem, conflict with a religious holiday), I will make allowances as long as you contact me beforehand (whenever it is feasible to do so) and provide proper documentation (e.g., a doctor s note) to the Dean of Students, who will let me know if your absence can be excused. I will not 3

accept excuses such as having too heavy a workload, having too many exams the same week, or simply forgetting. If upon getting back graded material (e.g., exam, project) you think that you deserve more points on a particular part, I will regrade the entire thing. Thus, you may get more points on the one part, but you may lose points on other parts. You must ask for a regrade within one week of when the graded material is returned to the class or you are informed of your score, whichever is earlier. There are no extra-credit assignments available. So you need to make sure that you perform well on the assignments and exams. For all exams and quizzes, be sure to bring a photo ID. All exams and quizzes will be closed book and closed notes. All portable electronic devices, such as cellphones and laptops, must be turned off during class. Students must check the course homepage and email each day. I will make announcements there. Students will be informed of any modifications or deviations from the syllabus throughout the course of the semester. Homework Assignments All homework solutions are posted on the web at the beginning of the semester. Do not turn in the homework assignments. However, the only way you will learn the material is by doing the assignments, and many problems on the exams and quizzes will be based on the homework problems. When working on the homework problems, be sure to show all work and give reasons (e.g., proofs) for your answers. If your proof relies on a theorem or result from the book, be sure to either state the theorem number or page number from the book. Writing out complete solutions will help you prepare for the exams. Thus, it is important to do the homework, even though you do not turn them in. Projects The projects are mandatory, and must be turned by the due date/time through moodle. Late projects will be penalized at a rate of 25 points (out of 100) per 24-hour period. For example, since Programming Assignment 1 is due on 10/1, you must turn it in by the due date/time to not be penalized. If you turn it in after the due date/time but up to 24 hours later, then you will automatically lose 25 points of the assignment. If you turn in a project between 24 hours and 48 hours late, then you will automatically lose 50 points of the project. If you turn in a project between 48 hours and 72 hours late, then you will automatically lose 75 points of the project. Projects completed over 72 hours late will not be accepted. After the first two weeks of lectures, we will have covered enough material for you to do the first program. Expect to spend at least 5 10 hours on each project, so do not wait until the last minute to try to complete it. All projects must be submitted through moodle: http://moodle.njit.edu/ 4

The website also provides instructions on using moodle. Academic Integrity Students must obey the University Code on Academic Integrity, which you can access from http://www.njit.edu/education/pdf/academic-integrity-code.pdf Any student caught violating this will be reported immediately to the Dean of Students. Violations include, but are not limited to, communicating with others during exams using unauthorized materials during exams copying/giving a computer program from/to another person. For any quizzes or exams that are less than 90 minutes in length, students will not be allowed to leave the classroom once the exam or quiz has begun. Schedule Unless I announce otherwise, the schedule for the semester is as below. Although you do not need to turn in the homework, you should complete the assignments according to the schedule below. Week Topic Reading Homework Other 1 Intro, Languages Chapter 0 HW 1 2 Regular Languages: DFA, NFA Chapter 1 HW 2 3 RL: Closure Properties, Reg Exp Chapter 1 HW 3 Quiz 1 (9/17) 4 Kleene s Thm, Nonregular Lang Chapter 1 HW 4 5 CFG, PDA Chapter 2 HW 5 Prog 1 due (10/1) 6 CFG = PDA, Non-CFL Chapter 2 HW 6 7 Turing Machines Chapter 3 HW 7 Midterm 1 (10/15) 8 Algorithms, Decidability Chapter 4 HW 8 9 Decidability, Halting Problem Chapter 4 HW 9 Prog 2 due (10/29) 10 Undecidable Problems Chapter 5 HW 10 11 Undecidability Reductions Chapter 5 HW 11 Midterm 2 (11/12) 12 Time Complexity, Class P Chapter 7 HW 12 13 Classes NP, NP-Complete Chapter 7 HW 13 14 NP-Complete Reductions, Review Chapter 7 5