Discrete Math for Computer Science
CSE20W26
In this class, you will use careful mathematical modeling, problem solving, and clear and precise communication to explore key questions in Computer Science. (1) How do we decide (and prove) what's true? (2) How do we use mathematics to give multiple representations of data and computation?
Syllabus
- A typical week
- We'll meet in class on Mondays, Wednesdays, and Friday. Each week, we'll release a packet of notes that we'll work through together during class. You can download a PDF of these notes to annotate, or you can pick up a printed version in class. Monday afternoons are discussion sections, where you can work through additional questions and review homework. Weekly review quizzes will build your skills, test your understanding, and prepare you to complete the open-ended homework assignments. In addition to these quizzes and homework assignments, you'll demonstrate what you learned in two tests during the quarter as well as the final exam. We recommend talking about CSE 20 concepts with other students, and with the instructional team in class, discussion, and drop-in office hours.
- Pre-class survey
- Please fill out the pre-class survey on Canvas labelled #FinAid ( http://canvas.ucsd.edu).
- Notes and resources
- Use our Calendar to get links to class times and notes. Lecture material is available in PDF, tex, and html formats so you can download and annotate or print it if you'd like. In class, we'll explore concepts and work through examples. There will sometimes be some pre-class reading (listed on the notes PDF) to help you prepare for class. The reading is often just a few lines of text or an example. Doing the reading ahead of class will mean we can jump into problem solving in class. You can also watch the posted supplementary videos listed listed with many weeks.
- Learn by doing
- After each class, you'll work on review quizzes to track and confirm your understanding of the concepts and examples we covered in class. Quizzes can be submitted on PrairieLearn as many times (with no penalty) as you like until the quiz deadline (Monday), and then for reduced credit until the start of the first attempt testing window for the relevant CBTF test closes. Open-ended homework assignments will stretch your understanding and will ask you to put together complete, coherent, convincing explanations. You will upload PDFs of your typed solutions on Gradescope. There will also be two (in-person, self-scheduled at the Computer Based Testing Facility) tests and the final exam (in-person, at the time posted on the Schedule of Classes). In each of these assessments you will practice using precise language to represent and solve technical problems and to communicate your solutions, and you will get feedback on your work. More details about all of these assessments are below.
- Collaborate and ask for help
- In-class, in office hours, and on the online discussion board, we encourage you to discuss the course concepts and examples. Review quiz questions are open to collaboration with everyone in CSE 20. Your goal should be to complete the review quiz questions as thoroughly as you need to make sure you can demonstrate the associated skills independently. In homework, you'll put together many of the concepts we discuss in class. CSE 20 students often find that group conversations help them learn the material more deeply, and are fun (and also an evidence-based practice for learning). To find group members: reach out to people sitting around you in class, in discussion section, or during office hours; you can also use the "find teammate" tool on Piazza. The pre-survey asks if you want help finding group members: the CSE 20 instructional team can help you connect with other students. We highly recommend meeting synchronously so that your group can work through the homework problems *together* ( in person or online). Reach out to the CSE 20 team if you have questions. The CSE 20 instructional team this quarter is one instructor (Mia Minnes), two TAs, and four tutors. On our Canvas page, select "People" and filter by "Roles" to see our names, contact information, and brief profiles. This term we will be using Piazza for class discussion; you can access Piazza through our Canvas site (the Piazza roster is synced to the Registrar class list and waitlist). Drop-in (in person and Zoom) Q&A times are listed on the office hours page. You can also reach out to your instructor directly by email: minnes@ucsd.edu . To address me, please use Prof. Minnes, Dr. Minnes, and/or Mia (with pronouns she/her), as you feel comfortable. Please do not use the title Ms./ Mrs. for me in a professional setting.
Resources
Textbook and lecture resources
Lecture material is available in PDF and html formats so you can download and annotate or print it if you'd like. If you would like a hard copy of the notes and don't have access to a printer, please let your instructor know (minnes@ucsd.edu).
We will provide all required material for this class on this website. There is no required textbook for this class. Lecture material is available in PDF and html formats so you can download and annotate or print it if you'd like. In class, we'll work through examples. Some of these examples will have multiple choice questions so you can test and deepen your understanding. Other examples will be open-ended problems to practice the critical thinking and communication skills we are developing in CSE 20.
Previous versions of the course used reference textbooks, including Discrete Mathematics and its Applications by Kenneth Rosen, which has online self-assessments and extra examples.
Typesetting (LaTeX) Resources
All submitted homework for this class must be typed. Diagrams may be hand-drawn and scanned and included in the typed document. You can use a word processing editor if you like (Microsoft Word, Open Office, Notepad, Vim, Google Docs, etc.). You might find it useful to take this opportunity to learn LaTeX. LaTeX is a markup language used widely in computer science and mathematics. The homework assignment prompts are typed using LaTeX and you can use the source files as templates for typesetting your solutions (click the "LaTeX" button at the top of each assignment on the Assignments page to download the source files).
If you have never used LaTeX, we recommend cloud resources that don't require you to download and install LaTeX on your local machine. A good example is Overleaf, which has lots of documentation. Overleaf works similar to Google Docs in that all members can edit the file in parallel and changes are updated in real time. There is a way to directly invite group members to your document, but the free version of Overleaf only allows two people to work at the same time. If your group has more than two people, you can turn on link sharing: Click on “Share” in the top right, Click “Turn on link sharing”, Copy the displayed link and share it with your group members. To export your work, click on the “Download PDF” button on the right-hand side. If you want to export the raw source files, click on the "Menu" button in the top-left, then click on "Source".
This open source LaTeX reference can be helpful when getting started, and you can use the .tex source of all the files we use in class as templates.
Alternatively, you can use Google Docs, which is available through your @ucsd.edu account. You can create documents and then share them with your group members with manual invites or a shareable link. Google Docs has a LaTex add-on that lets you type formulas in a math typesetting environment: search for "Auto-LaTeX Equations" if you want to try this option. You'll need to use the display environment (start and end with $$) for all the portions you want rendered with LaTeX.
Grading and academic integrity
Grades in this class are designed to reflect your work and to document evidence of your learning this core material. Please reach out to your instructor (minnes@ucsd.edu) if you face extenuating circumstances that you think will impede your ability to participate in the planned CSE 20 activities; I'd like to work out a solution together.
- Skills and terminology
- The review quizzes and in-term tests at the Computer Based Testing Facility (CBTF) focus on skills and terminology.
The review quizzes are due weekly, and are available on PrairieLearn. You can work towards full credit on a quiz by submitting (multiple attempts) up until the deadline; additional submissions after the original deadline are available for a limited time and for reduced credit.
The in-term tests are 45-minute CBTF tests, and you can sign up for up to two attempts at each. You must self-schedule the tests to be taken in-person at the Computer Based Testing Facility (CBTF) To schedule, visit prairietest.com and log in with your UC San Diego credentials (after selecting "Sign in with Google").
Test 1: Attempt 1 available 2/2/26 - 2/6/26, Attempt 2 available 3/9/26 - 3/13/26.
Test 2: Attempt 1 available 3/2/26 - 3/6/26, Attempt 2 available 3/9/26 - 3/13/26.
Having two attempts for each in-term test helps the tests serve as learning opportunities so that you can study any mistakes you make and re-apply that knowledge on the second attempt. You do not need to take both attempts for each test. At the end of the quarter, for each test we will record your highest attempt grade.
The in-term CBTF tests for this course will be administered by the Triton Testing Center (TTC) in the Computer-Based Testing Lab in AP&M B349. The TTC's rules concerning testing are the rules for this course. You must schedule your tests in advance, and it is recommended that you do so as soon as possible. Scheduling for all tests opens on the first day of instruction. More information about testing policies and procedures can be found on the TTC's website. You may also email tritontesting@ucsd.edu for assistance. If you plan to use OSD-approved accommodations for your test, you will take it at the TTC's Pepper Canyon Hall location. You must schedule your test at least three days in advance through the RegisterBlast system. - Modeling, communication, and problem-solving
- Open-ended questions help apply the skills and terminology of
discrete math to solve computer science problems.
Biweekly homework assignments are
on the assignments page.
These homework assignments may be done individually or in groups of up to four students.
You may switch groups for different homework assignments. Please ensure your name(s) and PID(s)
are clearly visible on the first page of your homework
submission, start each question on a new page, and upload the PDF to
Gradescope.
If you're working in a group, submit only one submission per group: one person uploads the
submission through their Gradescope account and then adds the other group member(s) to the Gradescope submission
by selecting their name(s) in the "Add Group Members" dialog box. You will need to re-add your group member(s)
every time you resubmit a new version of your assignment.
The final exam will be based on the homework assignments. There are no make-up tests for the final exam.
Final exam: Friday 03/20/26 at 11:30am.
At the end of the quarter, grades will be assigned according to the following standards:
- A
- A on one in-term test and B or above on the other in-term test
- And A on at least 4 homeworks, B or above on at least one homework, any grade on remaining homework
- And Overall average of at least 90% on review quizzes
- And A on final exam
- B
- B or higher on both in-term tests or A on one of the in-term tests and C on the other
- And B or above on at least 4 homeworks, C or above on at least one homework, any grade on remaining homework
- And Overall average of at least 80% on review quizzes
- And B or above on final exam
- C
- C or higher on both tests
- And C or above on at least 3 homeworks
- And C or above on final exam
The assigned letter grade will be the highest grade for which the standards are met. Grade +/- modifiers around the boundaries of the grade categories will be determined using homework and review quiz scores, and will be done at the end of the quarter, and will be consistent across all students. We may adjust the above scale to be more lenient, but we guarantee that we will not adjust the scale to make it harder to get a better grade.
Academic integrity is essential for supporting learning and teaching at UC San Diego. The policies for academic integrity in CSE 20 extend those described on the Academic Integrity Office websites: Academic Integrity Pledge and Academic Integrity Agreement - CSE. Academic integrity violations will be taken seriously and reported to the campus-wide Academic Integrity Office. Key facts about academic integrity related to CSE 20:
- ✓ Use only resources explicitly allowed for each assignment. Resources not affiliated with this quarter's version of the class may use inconsistent notation or definitions. If you need help, please reach out to the instructor, TAs, and tutors.
- ✓ Do not share written solutions or partial solutions for homework with other students in the class who are not in your group. Doing so would dilute their learning experience and detract from their success in the class.
- ✓ Before and during taking any individual assessment, do not attempt to obtain information about the contents of the test or exam from students who have already taken it or from any nonauthorized source.
- ✓ You may not ask for help from anyone while taking individual assessments since they are intended to reflect your own mastery of the material. In particular, you may not collaborate on exam questions with other students in the class and you may not post any portion of the exam on forums where others may assist you.
- ✓ After taking a test or exam, do not discuss its contents with anyone in the class who has not yet taken it. Do not post information about it or share information about it with others who haven't taken it.
Generative artificial intelligence (GenAI) tools that produce text, images, music, or code, like Chat GPT, Claude, SnapChat AI, Bing Chat, Google Gemini, DALL-E, GitHub CoPilot, or even Grammarly that generate output may be used in course assignments (not tests or exams) to support your learning as you determine appropriate, as long as you do so honestly through proper documentation, citation, and acknowledgement. UC San Diego Libraries provide this guide for citing generative AI sources.
NOTE: GenAI is known to fabricate sources, facts, and give false information. It also perpetuates bias. You should also be aware that there are copyright and privacy concerns with these tools. You should exercise caution when using large portions of content from AI sources for these reasons. Also, you are accountable for the content and accuracy of all work you submit in this class, including any supported by generative AI. Therefore, I reserve the right to follow up with you to orally assess your process for completing the assessment and your understanding of the content contained within. Through this process, if you have not sufficiently supported your work, I may need to report the matter to the Academic Integrity Office. (Cite: UC San Diego & University of Waterloo Academic Integrity Offices)
UC San Diego has fantastic resources to support your learning, with integrity. Of course, the instructional team for CSE 20 is here to help you navigate the course content. The Jacobs School of Engineering IDEA Center organizes group study sessions and can connect you with student organizations. The Teaching and Learning Commons continues to offer their full suite of student success programs, including learning strategies coaching.
Sometimes, circumstances beyond a student's control prevent them from completing a class even once they have completed the majority of the coursework at a passing level. UC San Diego has a process in place for you to request an Incomplete (I) if this happens to you. Here is the campus policy about the Incomplete grade: https://senate.ucsd.edu/Operating-Procedures/Senate-Manual/Regulations/500 and some information about it: https://students.ucsd.edu/academics/exams-grades-transcripts/grades/request-remove-incomplete.html
Policies
Late Adds
I follow the CSE department guidance on Late Adds, namely that "all students are expected to attend class for the first two weeks and complete assignments if they are on the waitlist for a course. Attending class and completing course assignments does not guarantee enrollment. If students choose to miss class or not turn in assignments while on the waitlist, the student will receive a "0" on all missed assignments, if they secure a seat in the course off the waitlist."
Regrades
The window for requesting regrades once assignment feedback has been published will be set in Gradescope and will typically be 2-3 days. If you submit a regrade request, please include a brief but detailed explanation of why you think there was an error in the grading. A regrade request may lead to us reviewing the entire assignment and may lead to the score being adjusted up or down depending on any errors found in the original grading. All regrades will only be considered once the regrade window closes; thank you in advance for your patience while we carefully look through them.
Computer Based Testing Facility (CBTF)
Tests for this course will be administered by the Triton Testing Center (TTC) at AP&M B349. The TTC's rules concerning testing are the rules for this course. You must schedule your tests in advance. To do so, visit http://us.prairietest.com and log in with your UC San Diego credentials after selecting "Sign in with Google". More information about testing policies and procedures can be found on the TTC's website https://tritontesting.ucsd.edu/. You may also email tritontesting@ucsd.edu for assistance.
Students must schedule their tests in advance. Walk-ins are not permitted. Students are allowed to change their reservation until 10 minutes before the test begins.
Students must store all personal belongings in the designated lockers before entering the testing room. The only permitted items are writing utensils and physical identification. All other items are strictly prohibited.
Accommodations for students with disabilities
We would like to work with each of you to make this course accessible and approachable. All course material is available in multiple formats to improve support for screen readers. Videos will also be captioned (to the best of our abilities). We need and want to hear from you if additional accommodations would improve your experience in the course. If you have documented need for accommodations because of a disability, please work with the Office for Students with Disabilities (OSD) to get a current Authorization for Accommodation (AFA) letter. The office is located in University Center 202 behind Center Hall and also provides the OSD Student Portal. We ask that you work to organize the AFA and to let us know about it as early in the quarter as possible so that we can best support your needs. For more information, see Disability Resources at UC San Diego.
Food support for students
If you are skipping and stretching meals, or having difficulties affording or accessing food, you may be eligible for CalFresh, California's Supplemental Nutrition Assistance Program. The Hub Basic Needs Center on campus can connect you to resources for food, stable housing, and financial literacy. Their website is at basicneeds.ucsd.edu .
Class material and intellectual property
Our lectures and course materials, including videos, assignments, and similar materials, are protected by U.S. copyright law and by University policy. We are the exclusive owner of the copyright in those materials we create. We acknowledge the cumulative contributions to this course material of previous CSE 20 instructors, TAs, and tutors, as well as contributions to the class structure from colleagues in CSE and at UC San Diego.
You may take notes and make copies of course materials for your own use. You may also share those materials with another student who is enrolled in or auditing this course. You may not reproduce, distribute or display (post/upload) lecture notes or recordings or course materials in any other way — whether or not a fee is charged — without our express prior written consent. You also may not allow others to do so. If you do so, you may be subject to student conduct proceedings under the UC San Diego Student Code of Conduct.
Similarly, you own the copyright in your original work. If I am interested in posting your answers or papers on the course web site, I will ask for your written permission.
Solicitation
Individuals are not permitted to approach students to offer services of any kind in exchange for pay, including tutoring services. This is considered solicitation for business and is strictly prohibited by University policy.
Satisfactory Academic Progress
Satisfactory Academic Progress (SAP) refers to the academic standards students must maintain to remain eligible for federal, state, and institutional financial aid. If you are receiving financial aid, please ensure you review the SAP requirements and the appeals process. https://fas.ucsd.edu/forms-and-resources/sap/index.html
Student Conduct Policy
UC San Diego strives to maintain a climate of fairness, cooperation, and professionalism. It is expected that you practice basic principles, including, but not limited to, mutual respect, civility, and decency, towards maintaining an atmosphere free of abusive or demeaning treatment. Non-academic student misconduct will be reported to the Center for Student Accountability, Growth, and Education for violating UC San Diego's Principles of Community.
Learning goals
You can find the learning outcomes for CSE 20 in this overview page.