15-251 Great Theoretical Ideas in Computer Science 15-251 - COURSE PROFILECourse Level:UndergraduateUnits: 12Special Permission Required: No(if yes, please see Notes below)Frequency Offered: Generally offered every spring and fall - confirm course offerings for upcoming semesters by accessing the university Schedule of ClassesCourse Relevance (who should take this course?): Key Topics:Background Knowledge:Assessment Structure:AlgorithmsComputabilityComputational complexityFinite automataTuring machinesGraph theoryBoolean circuit complexityP, NP, NP-completenessProbability theoryRandomized computationCryptographyMost Recent Syllabus Available:http://www.cs.cmu.edu/~15251/policy.htmlIn particular, we expect the students to have taken an introductory computer science course that goes beyond basic computer programming and covers algorithmic thinking. On the mathematics side, we expect the students to have experience reasoning abstractly and be comfortable with writing formal proofs.Sample Assignment: not providedSample class notes: not providedStandard Grading: Homework 30%Midterm 1 20%Midterm 2 20%Final 25%Participation 5%Alternative Grading for a maximum letter grade of C: Homework 30% (lowest 4 homeworks half-weighted)Higher Midterm 30%Final 35 %Participation 5 %To pass the course with a letter grade of C or higher, one of your exam scores must be at least 70%.Sample Exam: not providedSample Lecture Recording: not applicableCourse Objectives:Define mathematically the notions of computation, computational problem, and algorithm.Express, analyze and compare the computability and computational complexity of problems.Use mathematical tools from set theory, combinatorics, graph theory, probability theory, and number theory in the study of computability, computational complexity, and some of the real-world applications of computational concepts.State and explain the important and well-known open problems in the theory of computation.Write clearly presented proofs that meet rigorous standards of correctness and conventional guidelines on style.Identify and critique proofs that are logically flawed and/or do no meet the expected standards of clarity.Cooperate with other people in order to solve challenging and rigorous problems related to the study of computer science.Course Website: http://www.cs.cmu.edu/~15251/Learning Resources:Pre-reqs, Cross list, Related: Notes: Recorded LecturesSlidesCourse NotesPiazzaOptional TextbooksPrerequisites Required: (15-122 or 15-150) and (21-127 or 21-128 or 15-151)Minimum Grades in Prereqs: C Corequisites: NonePrerequisite for: 15-300, 15-312, 15-354, 15-355, 15-359, 15-414, 15-451,15-453, 15-455Anti-requisites:Cross-Listed: Substitutes: 15-123 for 15-122, 15-212 for 15-150, 21-127 for 15-151, 21-128 for 21-127, 15-151 for 21-127Related Courses: NoneReservations: Department Website: College Website: Updated October 2017https://www.csd.cs.cmu.edu/ https://www.cs.cmu.edu/Back to Course Profile List