CSci 1302 Problem Solving and Algorithm Development II.

[Home] [Syllabus] [Assignments] [Resources]


The syllabus below is somewhat approximate. Dates, topics, assigned reading, and problem set due dates are subject to change. All changes in assigned reading and due dates will be announced in class (and occasionally by e-mail). While I will do my best to update the web site accordingly, it is a student's responsibility to keep track of the problem set due dates and reading assignments. If you are not sure about due dates, please don't hesitate to ask.

Both the midterm and the final exams are open book, open notes.

Note that the date for the midterm exam is set and will not change. If you have a conflict with this date, please let me know right away.

All reading is from Nimal Nissanke "Introductory Logic and Sets for Computer Scientists", unless specified otherwise.

Problem sets are due in the beginning of the class on the due date. Late penalty is 1/3 of the credit per each class meeting that a problem set is late. For instance, if a problem set is due on Wednesday, but is submitted on Thursday or on Friday before the class meeting, then it is graded out of 2/3 credit. If it is submitted after the beginning of Friday class meeting, but before Monday class meeting, then it is graded out of 1/3 credit. Problem sets which are more than 2 class meetings late loose all their credit.
Problem sets submitted more than 2 minutes after beginning of the class are considered late.

Working in groups

Working together with other students on problem sets helps you understand the material better. You may hand in group assignments (two or three per group). Make sure you keep copies of all assignments yourselves and hand in one assignment from the entire group with names of all students on the first page. Groups are not set in stone for the entire semester, it's perfectly OK to change them or do some problem sets on your own, just make sure to let others know in advance about your plans.

Working in groups helps learning if all students in the group discuss all of the problems and participate equally. It doesn't help you learn if you divide problems among the group members (so that one person works on one problem and another works on another) or if one person does all the work, and the other just puts their name on it. If you feel that group participation is uneven, it's time to talk to your partner(s) and possibly to change your group.

In-class quizzes

There will be approximately 10-12 quizzes during the semester. A quiz will be about 15-20 minutes and will be based on recent material (including the material of the previous class meeting and the assigned reading). You may use your notes and the textbook on a quiz. Quiz dates will not be announced in advance.

Missed quizzes are counted as 0. The lowest quiz grade in the semester will be dropped (i.e. it will not contribute to overall grade).

Monday Wednesday Friday
Week 1: August 25 -- August 29
Introduction, course overview.
Reading: Ch. 1, 2.
Logical systems, scientific theories, mathematical models. Propositions and propositional connectives.
Week 2: Sept. 1 -- Sept 5
LABOR DAY -- no class Propositions (continue).
Problem set 1: Propositions (due Wedn., Sept. 10th)
Propositional logic as a language (grammar, semantics). Reading: Ch. 3
Week 3: Sept. 8 - Sept. 12
Truth tables, logical equivalence, logical implications. Digital circuits.
Problem set 1 due
Problem set 2: formal language of propositional logic, truth tables, digital circuits (due Wedn., Sept. 17th)
Logical laws
Reading: Ch. 4.
Week 4: Sept. 15 - Sept. 19
Transformational proofs and their applications. Introduction to deductive proofs. Validity, truth tables.
Reading: Ch. 5.
Problem set 2 due
Problem set 3: transformational proofs. (due Wedn.., Sept. 24th)
Proving validity using deductive proofs, inference rules.
Week 5: Sept. 22 - Sept. 26
Reasoning in theories; examples. Introduction to predicate logic, its relation to propositional logic.
Reading: Ch. 6.
Problem set 3 due
Problem set 4: Deductive proofs. (due Wedn., Oct. 1st)
Quanifiers, unary predicates.
Week 6: Sept. 29 - Oct. 3
Predicates with higher arities, examples. Scope of quantifiers, bound and free variables.
Reading: Ch. 7.
Problem set 4 due
Problem set 5: Predicates and quantifiers. (due Wedn., Oct. 8th)
Comparison with variable usage in programming and mathematics.
Week 7: Oct. 6 - Oct. 10
Interpretation of universal and existential quantifiers. Reading: Ch. 8.
Theorems in predicate logic.
Problem set 5 due
Problem set 6: Scope of quantifiers, interpretation of formulae. (due Fri., Oct. 17th)
Formulae in propositional form. Reading: Ch. 9.
Week 8: Oct. 13 - Oct. 17
FALL BREAK -- no class Theorems and proofs in predicate logic.
Review for the exam.
Problem set 6 due.
Week 9: Oct. 20 - Oct. 24
Midterm exam (includes material up to Wedn., Oct. 15th) More examples of proofs in predicate logic.
Problem set 7: Proofs in predicate logic (due Wedn., Oct. 29th)
Mathematical induction.
Reading: Ch. 10.
Week 10: Oct. 27 - Oct. 31 Beginning of winter!
Algorithm analysis. More on algorithm analysis
Problem set 7 due.
Problem set 8: Mathematical induction, algorithm analysis. (due Wedn., Nov. 5th)
Introduction to sets, basic concepts of set theory.
Reading: Ch. 11.
Week 11: Nov. 3 - Nov. 7
Subsets, power sets, etc. Operations on sets.
Reading: Ch. 12.
Problem set 8 due.
Problem set 9: sets, operations on sets (due Wedn., Nov. 12th)
More on set operations.
Week 12: Nov. 10 - Nov. 14
Relations (introduction).
Reading: Ch. 13
More on relations.
Problem set 9 due.
Problem set 10: Relations (due Wedn., Nov. 19th)
Relational databases.
Week 13: Nov. 17 - Nov. 21
Properties of binary relations; equivalence relations
Reading: Ch. 15 (note: Ch. 14 is not covered in this course).
Equivalence classes, relational closures.
Problem set 10 due.
Problem set 11: Binary relations (due Wedn., Nov. 26th)
Functions as relations.
Reading: Ch. 16.
Week 14: Nov. 24 - Nov. 28
Function composition. Examples of use of functions.
Functional programming (overview).
Problem set 11 due.
Problem set 12: Functions and their classification (due Wedn., Dec. 3rd)
THANKSGIVING -- no class
Week 15: Dec. 1 - Dec. 5
Formal definition of natural numbers and integers.
Reading: Ch. 17
Other number systems, dense and sparse sets, countability.
Problem set 12 due.
Problem set 13: formal number representation (due Wedn., Dec. 10th)
Number representation in computers.
Week 16: Dec. 8 - Dec. 11
Catch up and discussion.
Review and wrap up.
Problem set 13 due.

The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by the University of Minnesota.