CS 111, Discrete Structures

Spring'25


                                                              Syllabus 

Course Description: A study of discrete mathematical structures emphasizing applications to computer science. Topics include number theory and cryptography, asymptotic notation, recurrence equations, counting methods, elements of graph theory, and trees.

Instructional Team:

  • Instructors: 

         Marek Chrobak, office Bourns A159C, email marek@cs.ucr.edu, zoom  (click)

         Elena Strzheletska, email: elena@cs.ucr.edu

Schedule:

Office hours


Recommended textbooks:

Prerequisites: CS10A, CS/MATH011, MATH 9C, MATH 031/EE020B. The prerequisites are strictly enforced.

Prerequisites by topic: basic programming, logic (propositional, predicate), sets, operations on sets, sequences, relations (equivalence, partial orderings), functions, combinations, basic counting methods, elementary linear algebra (systems of equations, matrices, determinants), proof methods (induction, contradiction), elementary number theory.

Topics Covered:

Homework Assignments: Five homework assignments. To submit an assignment, you will need to upload the pdf file to Gradescope.

Homework assignments can be done individually or in groups of up to three students (strongly recommended). Each group submits one assignment. All students will receive the same credit (unless requested otherwise). If a student (or a group) fails to submit the assignment, he/she receives a "0".

Homework papers must be prepared with LaTeX. You can use Overleaf (overleaf.com), which is a very convenient online LaTeX editor. Handwritten assignments or assignments in Word or other word processors will not be accepted. LaTeX templates for homework assignments and other help with LaTeX will be available.

Homework papers must be well written, in grammatical English, self-contained, and aesthetically formatted. Sloppy papers will not be graded.

Quizzes: Four quizzes plus an entrance quiz (Quiz 0), which will cover the prerequisite topics. The lowest grade will be dropped. Make-up quizzes will be considered only for students who missed more than one quiz and whose absence for each missed quiz is documented, provided they notified the instructor before the quiz started.

Final exam:   TBA

Final assignment:  

Attendance: Regular attendance at lectures and discussions is strongly advised. Some of the presented material may not be covered in the posted slides and lecture notes. Students are also strongly encouraged to take advantage of the office hours.

Extra credit: Small extra credit assignments will be given during lectures and labs. You can complete all of these assignments and apply up to 85% of the maximum available number of points towards your final grade (1%). 

Grading:

Homework assignments 20%,

Quizzes 50%,

Final exam 25%,

Final assignment 5%.

Extra credit 1%.

Course grades are expected to be determined as follows: A (A-, A, A+) = 90-100%, B (B-, B, B+) = 80-89%, C (C-, C, C+) = 70-79%, D (D-, D, D+) = 60-69%. Minor adjustments of this scale can be made at the end of the quarter.

Copyright: See UC Copyright Policies.

Academic Integrity: Zero-tolerance policy on plagiarism is enforced. Cheating on homework assignments or tests will result in an F grade for the course and a disciplinary action, independently of the extent of plagiarism. You are required to read and sign the academic integrity statement, and upload it to Gradescope no later than Tuesday, April 7. You can find more information here.


Additional Class Resources: 

1. Gradescope (https://www.gradescope.com): for assignment submission. If you don't see CS 111 among your courses in Gradescope, please sign in with your First name, Last name - exactly as in Canvas. Code (if needed): 22BD6E.

2. Slack (for communication): https://join.slack.com/t/cs111-s25/shared_invite/zt-32jvpz853-xAMhGCxb9We_j1lA1suSGg

3. Google Drive (additional materials): https://drive.google.com/drive/folders/1SjwbCsQTenU0kwLSFS0zJo8bX3ysPUnf?usp=sharing

 

Helpful UCR Resources: 

https://registrar.ucr.edu/

https://sdrc.ucr.edu/ucr-resources-students

https://counseling.ucr.edu/


                                                                    Tentative Schedule

 

Week 1

Monday, March 31

Wednesday, April 2

Quiz 0, Practice (not graded) - due Saturday, April 5

Introduction

Review: logic, sets, functions, relations, basic summation formulas, important numbers, sequences, approximations, number theory basics, proofs, proofs by induction.

Asymptotic notation

Week 2

Monday, April 7

Wednesday, April 9

Quiz 0 (Test Center)

Homework 1 is due   

Asymptotic notation

Number theory and cryptography
Review: Gcd, Euclid's algorithm
Fermat's theorems
Computing powers modulo an integer
Review: Computing inverses mod p

Week 3

Monday, April 14

Wednesday, April 16

Quiz 1  (Test Center)

The RSA cryptosystem
RSA: correctness, security, efficiency
Famous open (and solved) problems in number theory

Week 4

Monday, April 21

Wednesday, April 23

Homework 2 is due 

Linear recurrence equations (homogeneous)
Linear recurrence equations (non-homogeneous)

Week 5

Monday, April 28

Wednesday, April 30

Quiz 2 (Test Center)

Homework 3 is due 

Divide-and-conquer recurrences

Inclusion-Exclusion

Integer partitions

Week 6

Monday, May 5

Wednesday, May 7

Quiz 3 (Test Center)

Homework 4 is due 

Graphs

Euler tours

Hamiltonian cycles: Dirac's theorem, Ore's theorem

Bipartite graphs

Week 7

Monday, May 12

Wednesday, May 14

Quiz 4 (Test Center)

Bipartite graphs: matchings, Hall's theorem

Planar graphs

Trees

Euler's formula/inequality for planar graphs

Week 8

Monday, May 19

Wednesday, May 21

Homework 5 is due (?)

Planar graphs: Kuratowski's theorem

Graph coloring, coloring graphs with maximum degree D

Week 9

Monday, May 26   Memorial Day - no class

Wednesday, May 28

Directed graphs

Adjacency matrices and matrix multiplication

Binary trees, applications (lower bound for comparison sorting)

Week 10

Monday, June 2

Wednesday, June 4

Exam on Graphs

PageRank, TBD

Review

 

 


  Other Books
  Useful Links