CS 375 Fall 2017
Logic and Theory of Computing
Prerequisites: MA113, CS215, CS275, and engineering standing
LOCATION: Whitehall Classroom Building 234
TIME: TR 9:30 - 10:45am
INSTRUCTOR: Dr. Fuhua (Frank) Cheng
OFFICE: Davis Marksbury Building 323
OFFICE HOURS: TR 11am - 12pm,
and by appointment;
PHONE: (859) 257-6760
TEXTBOOK: Discrete Structures, Logic, and
Computability (4th Edition)
by James L. Hein
Kyle James (email: firstname.lastname@example.org)
LIST OF TOPICS
Week 1 and 2: Preliminaries: set algebra, relations,
functions - read Chapters 1-4
Weeks 3 - 6: Regular languages, finite automata
- Chapter 11
Weeks 7 - 9: Context-free languages, pushdown
automata - Chapter 12
Weeks 10 - 12: Turing Machines - Chapter
Week 13: Propositional logic - Chapter
Week 13: Predicate logic - Chapter 7
Week 14: Computing with Logic - Chapter 9
Week 14: Algebraic structures - Chapter 10
There will be 8-10 homework assignments,
due dates will be printed on the assignments.
Homework assignments are to be submitted to the course grader
on the date due.
Submission deadlines will be strictly enforced.
NO LATE HOMEWORKS WILL BE ACCEPTED.
All course materials will be available from the
course home page:
I will use e-mail as means of communication. SEND ME
AN E-MAIL IMMEDIATELY
if you have not received any e-mail from me yet.
There will be a midterm exam and a final exam.
Final exam is not comprehensive.
The exams are closed notes/books exams.
Final grade will be based on homeworks, class attendance
record and exams, weighted as follows:
You lose 5 points of your final grade if you miss two lectures.
To compute your final grade, I will use the following scale:
homeworks - 35%
class attendance - 5%
Exams - 60% (30 each)
A = 90 - 100
B = 80 - 89
C = 70 - 79
D = 60 - 69
E = 0 - 59
COURSE AND PROGRAM OUTCOMES
The students will develop knowledge of a variety of mathematical tools
for the design
and analysis of algorithms and computer programs. They will learn basic
computation based on finite automata, grammars and Turing machines.
Basic concepts of
logic, proof construction, and reasoning with variables and quantifiers
will be reviewed
if time permits. Specific skills as outcomes of the course include:
- A fluency in the elements of automata theory, regular grammars
and regular expressions,
and their uses
- An understanding of the relationship between formal models of
- An understanding of the relevance of logic and theory of computation
to the computer
- An ability to apply knowledge of computing and mathematics
appropriate to the discipline
- An ability to apply mathematical foundations, algorithmic
principles, and computer
science theory in the modeling and design of computer-based systems
in a way that
demonstrates comprehension of the tradeoffs involved in design choices
These course learning outcomes support the following program outcomes:
- Outcome (a): An ability to apply knowledge of computing and mathematics
to the discipline;
- Outcome (b): An ability to analyze a problem, and identify and define the
requirements appropriate to its solution;
- Outcome (c): An ability to design, implement and evaluate a computer-based
process, component, or program to meet desired needs;
- Outcome (j): An ability to apply mathematical foundations, algorithmic
computer science theory in the modeling and design of computer-based systems
in a way
that demonstrates comprehension of the tradeoffs involved in design choices;
PLAGIARISM and CHEATING are serious academic
offenses. Consult the following links
for more information on what constitutes an academic offense and on
I want to emphasize that in this class students
are allowed to discuss ideas and are
allowed to help others by explaininig concepts and possible solutions.
However, all the work that is submitted must be performed by students
Any sharing of electronic files, printouts and other materials developed
by the students is not allowed. If any fragments of text appearing in
journals, conference proceedings, web pages, etc. are used, students must
provide appropriate citations.
Any help from others must also be acknowledged.
- Important Dates:
- Midterm - 10/17/17 (Tuesday)
- Last day to withdraw from a course - 11/10/17 (Friday)
- Thanks Giving Holidays - 11/22/17-11/25/17 (Wednesday-Saturday)
- Last day of classes - 12/7/17 (Thursday)
- Final Exam - 12/11/17 (Monday 10:30 am)