Transcript 슬라이드 1
Discrete Mathematics 이재원 School of Information Technology Sungshin W. University (Special Thanks to the original author of this lecture notes, Prof. 홍기형) Text and References • Text – Discrete Mathematics and Its Applications, 6th Edition, Kenneth H. Rosen Professor Info • 이재원 – [email protected] – 수정관 811호 • 질문 및 상담 – 수업시간 전후 – E-mail로 신청 • Course Home – http://cs.sungshin.ac.kr/~jwlee/dm2/dm.htm Grading • Mid : 35% • Final Exam : 35% • Home Work : 10% – Handwriting : word processor 하지 말 것. • 출석 : 20% What is Mathematics, really? • It’s not just about numbers! • Mathematics is much more than that: Mathematics is, most generally, the study of any and all absolutely certain truths about any and all perfectly well-defined concepts. • But, the concepts can relate to numbers, symbols, visual patterns, or anything! So, what’s this class about? What are “discrete structures” anyway? • “Discrete” ( “discreet”!) - Composed of distinct, seperable parts. (Opposite of continuous.) discrete:continuous :: digital:analog • “Structures” - objects built up from simpler objects according to a definite pattern. • “Discrete Mathematics” - The study of discrete, mathematical objects and structures. Discrete Structures We’ll Study • • • • • • • • Propositions Predicates Sets (Discrete) Functions Orders of Growth Algorithms Integers Proofs • • • • • • • • Summations Permutations Combinations Relations Graphs Trees Boolean Algebra Logic Circuits Relationships Between Structures • “→” :≡ “Can be defined in terms of” Groups Programs Proofs Operators Trees Propositions Complex numbers Graphs Real numbers Strings Functions Integers Natural Matrices Relations numbers Sequences Infinite Bits n-tuples Vectors ordinals Sets Why Study Discrete Math? • The basis of all of digital information processing: Discrete manipulations of discrete structures represented in memory. • It’s the basic language and conceptual foundation of all of computer science. • Discrete concepts are also widely used throughout math, science, engineering, economics, biology, etc., … • A generally useful tool for rational thought! Uses for Discrete Math in Computer Science • Advanced algorithms & data structures • Programming language compilers & interpreters. • Computer networks • Operating systems • Computer architecture SSWU MIPS Lab. Ki-Hyung • Database management systems • Cryptography • Error correction codes • Graphics & animation algorithms, game engines • Just about everything! Course Outline (as per Rosen) 1. 2. 3. 4. 5. 6. 7. 8. 9. Logic (§1.1-1.4) Proof methods (§1.5-1.7) Set theory (§2.1-2.2) Functions (§2.3) Sequences & Summations (§2.4) Algorithms (§3.1) Orders of Growth & Complexity (§3.2-3.3) Number Theory (§3.4-3.8) Recursion(§4.1-4.4) 10. Counting (§5.1-5.3) 11. Discrete Probability (§6.1) 12. Recurrence Relations (§7.1, 7.3) 13. Relations (§8.1-8.6) 14. Graph (Tree) Theory (§9.19.5, 10.1-10.3) 15. Boolean Algebra (§11.1-11.4) Symbol, Notation (기호, 표기법) • 1 – What is this ? • Think: your name, symbol ‘+’, ‘seoul’, … – 2+2 ? – “Seoul” + “, Korea” ? Basics for studying Math. and Languages • Understanding the semantics of Symbols and Notations – 1, 2, 3, …, 9, 0 – Positional semantics : 912 vs. 219 • Both are consisting the same 3 symbols, but are different. – x, y (variables) • Each of them can have a value from a designated domain. • x + y = 10, true when x=4, y=6. false when x=5, y=6. • x + y < x * y, true for positive integers x and y – I am a student. Iamastudent. – for (i=1; i<10; i++) x=x+1; Some Notations We’ll Learn p x P( x) f :A B pq pq {a1 ,, an } Z, N, R S T f 1 ( x) |S| f g pq pq x P( x) {x | P( x)} xS A B n A x a S O, , min, max a /| b gcd, lcm mod ( a k a0 ) b [aij ] AT B AΟ A[ n ] C (n; n1 ,, nm ) p( E | F ) R [ a ]R A i i 1 n a i i 1 a b (modm) n r deg (v)