CSCI 356: Theory of Computing (Fall 2024)

This webpage contains archived material from a past offering of this course.
Contents may differ from the current or most recent offering of the course.

Course Description

An introduction to the theoretical foundations of computer science, examining finite automata, context-free grammars, Turing machines, decidability and undecidability, and complexity theory. Strategies will be developed to help categorize problems as tractable or intractable.

See the course outline for more information.

Course Details

Lecture Time/Place

Monday, 1:30pm–2:20pm; Wednesday, 12:30pm–1:20pm; Friday, 11:30am–12:20pm

All lectures are held in J. Bruce Brown Hall, room 237.

Textbook

Required text: T. J. Smith, Theory of Computing: An Open Introduction. Self-published open educational resource, α pre-publication edition, 2024.

Recommended text: M. Sipser, Introduction to the Theory of Computation. Cengage, 3rd edition, 2012.

The required course textbook includes all material that will be discussed in each lecture. The recommended course textbook can be used as an optional supplement.

Marking Scheme

You must write the final examination in order to pass the course, even if the weighted sum of your assignment and midterm examination grades is at least 50%.

News

Lectures

Week Notes Readings
1 Introduction, regular expressions TOCOpen, 1.1
2 Finite automata, nondeterminism TOCOpen, 1.2
3 Conversions between regular models TOCOpen, 1.3
4 Closure properties of regular languages, proving nonregularity TOCOpen, 1.4–1.5
5 Context-free grammars, ambiguity TOCOpen, 2.1
Fall study break
6 Normal forms, pushdown automata TOCOpen, 2.1–2.2
7 Conversions between CF models, mid-course review, midterm examination TOCOpen, 2.3
8 Closure properties of CF languages, proving non-CFness TOCOpen, 2.4–2.5
9 Turing machines and variants TOCOpen, 3.1–3.2
10 Universal Turing machines, Church–Turing thesis TOCOpen, 3.5–3.6
11 Decidability and undecidability TOCOpen, 4.1–4.4
12 Reducibility TOCOpen, 5.1–5.3

Assignments

Assignments are due at the beginning of class on the due date. Late assignments will be accepted up to the beginning of the first class following the due date. Late assignments are subject to a penalty of 10% deducted from the earned mark.

Exams

Midterm

Date: Oct. 30, 2024
Time: 12:30pm–1:20pm
Place: J. Bruce Brown Hall, Room 237
Content: All material from Weeks 1 to 6

Final Exam

Date: Dec. 16, 2024
Time: 2:00pm–4:30pm
Place: Mulroney Hall, room 4030
Content: Primarily material from Weeks 7 to 12, some earlier material

Personnel

Instructor

Taylor J. Smith
Email: tjsmith [at] stfx [dot] ca
Office: Annex, Room 9A
Office hours: Monday/Tuesday/Wednesday, 10:30am–11:20am, or by appointment