This preview shows pages 1–3. Sign up to view the full content.
Module 1
Overview and background
What’s it all about?
CS 360: Introduction to the Theory of Computing
Daniel G. Brown, modiﬁed by Margareta Ackerman, University of Waterloo
1.1
1
Welcome
Topics of Module 1
•
Administrivia
•
Overview of the course
•
Mathematical background
1.2
2
Administrivia
Staff
Instructor
•
Margareta (Rita) Ackerman,
mackerma@uwaterloo.ca
•
Ofﬁce hour: Thursdays 45, DC 2515
TAs
•
Jalaj Upadhyay,
jkupadhy@cs.uwaterloo.ca
Ofﬁce hours: Fridays 1112, DC 3324
•
Soumojit Sarkar,
s9sarkar@uwaterloo.ca
Ofﬁce hours: Wednesdays 121, DC2302C
We’re here to help.
1.3
Administrivia
Course information (assignments, lecture notes, schedules, etc.) all on course web page.
www.student.cs.uwaterloo.ca/ cs360
Grading for the course:
•
5 assignments: 25% (5% each)
•
midterms: 25 %
•
ﬁnal exam: 50%
1.4
Dates and times
Midterms
•
A midterm on October 20 during class time, in MC 4045.
Homeworks
•
Due at 4 PM on Fridays.
Final exam
•
In December. I’ll tell you when once I know.
1.5
1
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Overview of course
What is this course about?
Theory of computing
•
What does it mean to compute?
•
What kinds of machines compute?
•
How much more can computers do as we give them new powers?
Who cares?
1.6
Who cares?
We’ll keep coming back to that.
Here are a few reasons:
•
Philosophical: Good to have a sense of what computation means
•
Mathematical: Mathematical rigor underlying computer science
•
Engineering: Many practical problems are about engineering with small resources. How does
this limit us?
•
Scientiﬁc: Some advances will not change the power of computers; others would be enormous.
Let’s pursue the important ones.
1.7
How we’ll study theory
A focus on mathematical rigor.
Example: you’ve already seen a lot of the ﬁrst few weeks of the course, but without detail.
•
Prove almost everything we do
•
Lots of proof techniques and approaches
•
Functions, sets, sets of sets,
etc.
1.8
Course myths
This course has several:
•
It’s too easy
–
You’ve seen regular expressions in 241.
–
A lot of it sounds reasonable.
–
Easy to convince yourself you understand them, even if you don’t!
–
This is dangerous!
•
It’s too hard
–
Some complicated topics in the course come back after you think you’re done with them
–
Later part of the course is harder than the beginning
1.9
Other myths
It’s irrelevant
•
Problems are like puzzles, not like what happens at your coop jobs
•
Where’s the connection between a ﬁnite automaton and your desktop?
•
We’re ignoring all the complexity of computation!
But these are myths.
1.10
Only myths
Myths are not always true.
The advantage of our approach:
•
Focus on important core of a problem, not implementation details
•
Abstraction lets you get at the essence of computing, not than wiring details
And, many 360 ideas are used directly in important applications.
•
They come up in bioinformatics, parsing, data compression, and in other areas.
This is the end of the preview. Sign up
to
access the rest of the document.
 Winter '08
 JohnWatrous

Click to edit the document details