{"id":22,"date":"2025-06-04T14:11:24","date_gmt":"2025-06-04T20:11:24","guid":{"rendered":"https:\/\/courses.cs.colostate.edu\/cs003\/?page_id=22"},"modified":"2026-01-22T13:56:18","modified_gmt":"2026-01-22T20:56:18","slug":"syllabus","status":"publish","type":"page","link":"https:\/\/courses.cs.colostate.edu\/cs220\/syllabus\/","title":{"rendered":"Syllabus"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Basic Course Information<\/h2>\n\n\n\n<p><strong>Course Name:<\/strong> CS220: Discrete Structures and their Applications<\/p>\n\n\n\n<p><strong>Semester: <\/strong>Spring 2026<\/p>\n\n\n\n<p><strong>Credits:<\/strong> 4<\/p>\n\n\n\n<p><strong>Prerequisites\/Co-requisites:<\/strong><\/p>\n\n\n\n<p>(CS 152 with a minimum grade of B or CS 162 with a minimum grade of C or CS 163 with a minimum grade of C or CS 164 with a minimum grade of C) and (MATH 155, may be taken concurrently or MATH 156, may be taken concurrently or MATH 159, may be taken concurrently or MATH 160, may be taken concurrently).<\/p>\n\n\n\n<p><strong>Communication Policy:<\/strong><\/p>\n\n\n\n<p>All students are added to a team in Microsoft Teams, which we primarily use for communication. Ask a TA or email the instructor if you are not yet a member of the team by 1\/23\/2026.<\/p>\n\n\n\n<p><strong>AI Policy:<\/strong><\/p>\n\n\n\n<p>Treat tools which provide AI assistance (Claude, ChatGPT, Gemini, Grok, Llama, etc.) as if they were a person outside of class. Using these tools to understand content from lectures or the book is perfectly fine. Posing homework problems (or problems very similar to homework problems) for an AI in order to obtain solutions and\/or hints is not allowed. If you are unsure whether your use of AI is compromising your education, seek advice from an instructor. <strong>If you are copying substantial amounts of text into and out of a chat interface, then you are likely in violation of this policy and compromising your education.<\/strong><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Course Materials<\/h2>\n\n\n\n<p>zyBooks online textbook which through \u201cInclusive Access\u201d should be accessible to anyone who successfully enrolls in the course.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Course Description &amp; Objectives<\/h2>\n\n\n\n<p>An introduction to logic, sets, functions, proofs, mathematical induction, counting, big O notation, graphs, and trees with an emphasis on how they relate to computer science. Some familiarity with Python is assumed.<\/p>\n\n\n\n<p>Upon the completion of this course, students will be able to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Understand basic propositional and predicate logic<\/li>\n\n\n\n<li>Apply rules of inference to make valid logical arguments<\/li>\n\n\n\n<li>Understand and apply mathematical knowledge of sets and functions<\/li>\n\n\n\n<li>Understand and apply simple mathematical proof techniques<\/li>\n\n\n\n<li>Understand and apply mathematical induction<\/li>\n\n\n\n<li>Create new proofs of mathematical statements<\/li>\n\n\n\n<li>Apply counting principles such as the sum and product rules to enumerate sets with complex descriptions<\/li>\n\n\n\n<li>Analyze simple code snippets and comment on their algorithmic complexity<\/li>\n\n\n\n<li>Understand data structures such as graphs and trees and analyze their basic properties<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Course Schedule and Assessments<\/h2>\n\n\n\n<p>Every week there is a recitation designed to help you learn core course content with the help of a TA. This is assessed with a Canvas quiz done during the weekly recitation section meeting. Recitation attendance is compulsory for in-person students. There can also be short homework assignments. There are also graded activities in the online textbook and graded \u201cknowledge check\u201d Canvas quizzes that help you learn and retain the material.<\/p>\n\n\n\n<p>In addition, there are three exams, two programming assignments, four or five written assignments, and a final.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Course Policies<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Recitations typically begin with a short presentation by a TA, followed by a graded exercise. Typically, attendance and solutions to exercises are entered in a Canvas quiz which requires an access code for in-person students. Your TA will give you the code during the recitation, but not necessarily right at the start. Recitation attendance is required in this class for in-person students.<\/li>\n\n\n\n<li>All exams are to be done without the aid of notes, AI, or outside assistance of any kind, unless advised by an instructor.<\/li>\n\n\n\n<li>Treat tools which provide AI assistance (Claude, ChatGPT, Gemini, Grok, Llama, etc.) as if they were a person outside of class. Using these tools to understand content from lectures or the book is perfectly fine. Posing homework problems (or problems very similar to homework problems) for an AI in order to obtain solutions and\/or hints is not allowed. If you are unsure whether your use of AI is compromising your education, seek advice from an instructor. <strong>If you are copying substantial amounts of text into and out of a chat interface then you are likely in violation of this policy and compromising your education.<\/strong><\/li>\n\n\n\n<li>Deadlines are deadlines. If you fail to submit an assignment, attend recitation, or take an exam on time, you get no points for that assessment. There is one important class of exceptions to the rule above: unforeseeable emergencies. Examples might include severe illness, the death of a family member or close friend, a house fire, etc. In the case of an unforeseeable emergency, please communicate with the instructor as early as possible. Documentation is required in all instances. If you must miss an important assessment due to illness, please go see a medical professional. Your visit summary is sufficient documentation; there is no need to have a doctor write you an official note unless the condition requires multiple days of allowed absences.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Grading Weights<\/h2>\n\n\n\n<p>Your Canvas total will be determined by the weights below, with one important caveat: you need to get 57% or above as the weighted average of your exam grades (Exams 1, 2, 3 and the final) to receive a &#8216;C&#8217; and above. Therefore, a student who gets below 57% as their on the weighted average of their exams will get a &#8216;D&#8217; or worse for the course, even if their scores in other areas raise their overall score to a passing average.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Assignment \/ Group<\/th><th>Weight<\/th><\/tr><\/thead><tbody><tr><td>Final<\/td><td>12%<\/td><\/tr><tr><td>Exam 3<\/td><td>10%<\/td><\/tr><tr><td>Exam 2<\/td><td>19%<\/td><\/tr><tr><td>Exam 1<\/td><td>16%<\/td><\/tr><tr><td>Written and programming assignments<\/td><td>14%<\/td><\/tr><tr><td>Knowledge checks<\/td><td>11%<\/td><\/tr><tr><td>zyBooks readings<\/td><td>7%<\/td><\/tr><tr><td>Recitations and Short homework<br>assignments<\/td><td>11%<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Basic Course Information Course Name: CS220: Discrete Structures and their Applications Semester: Spring 2026 Credits: 4 Prerequisites\/Co-requisites: (CS 152 with a minimum grade of B or CS 162 with a minimum grade of C or CS 163 with a minimum grade of C or CS 164 with a minimum grade of C) and (MATH 155, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-fullwidth.php","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","footnotes":""},"class_list":["post-22","page","type-page","status-publish","hentry","post-preview"],"taxonomy_info":[],"featured_image_src_large":false,"author_info":{"display_name":"admin","author_link":"https:\/\/courses.cs.colostate.edu\/cs220\/author\/admin_41g0qmxe\/"},"comment_info":0,"_links":{"self":[{"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/pages\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":14,"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/pages\/22\/revisions"}],"predecessor-version":[{"id":100,"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/pages\/22\/revisions\/100"}],"wp:attachment":[{"href":"https:\/\/courses.cs.colostate.edu\/cs220\/wp-json\/wp\/v2\/media?parent=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}