Thông tin tài liệu
Lecture CS 1813 – Discrete Mathematics Learning Goals Lesson Plans and Logic Rex Page Professor of Computer Science University of Oklahoma EL 119 – Page@OU.edu CS 1813 Discrete CS 1813 Discrete Mathematics Learning Goals Apply mathematical logic to prove properties of software Predicate calculus and natural deduction Boolean algebra and equational reasoning Mathematical induction Mathematical induction Mathematical induction Understand fundamental data structures Sets Trees Functions and relations Additional topics e! r o l a g s f proo e! Graphs Counting Algorithm Complexity CS 1813 Discrete lor proofs ga e! ofs galor pro lore! proofs gagalore! proofs ore! proofs gal 100s of input s Why Proofs? input signal s Key presses Mouse gestures Files Databases … software computatio n > 2100s output of signal possibilitie s s Images Sounds Files Databases … Software translates input signals to output signals A program is a constructive proof of a translation But what translation? Proofs can confirm that software works correctly Testing cannot confirm software correctness Practice with proofs improves software thinking CS 1813 Discrete CS 1813 Discrete Mathematics Textbook and Tools Discrete Mathematics Using a Computer Cordelia Hall and John O’Donnell Springer-Verlag, January 2000 Tools provided with textbook Download from course website for CS 1813 Hugs interpreter for Haskell Download from course website Haskell is a math notation (and a programming lang) Reading assignments begin with Chapter Read Chapter (Haskell) as needed, for reference Haskell coverage JIT, like other math notations CS 1813 Discrete Formal Mathematical Notations Notations introduced as needed (JIT) H l as ke l Logic a∧b, a∨b, a→b, ∀x.P(x), ∃ x.Q(x), … Sets A ∪ B, A ∩ B, {x | x∈S, P(x)}, … Sequences [x | x
Ngày đăng: 15/06/2017, 20:33
Xem thêm: 99 Lecture 1CS 1813 – Discrete Mathematics