260 likes | 704 Views
Bogazici University Department of Computer Engineering C mpE 220 Discrete Mathematics Overview Fall 2005 Haluk Bingöl. About CmpE 220. CmpE 220 Discrete Computational Structures (3+0+0) 3 .
E N D
Bogazici UniversityDepartment of Computer EngineeringCmpE 220 Discrete MathematicsOverviewFall 2005Haluk Bingöl
CmpE 220 Discrete Computational Structures (3+0+0) 3 • Catalog DataPropositional Logic and Proofs. Set Theory. Relations and Functions. Algebraic Structures. Groups and Semi-Groups. Graphs, Lattices, and Boolean Algebra. Algorithms and Turing Machines.
CmpE 220 Discrete Computational Structures (3+0+0) 3 • Course OutlineA course in discrete mathematics should teach students how to work with discrete (meaning consisting of distinct or unconnected elements as opposed to continuous) structures used to represent discrete objects and relationships between these objects. These discrete structures include sets, relations, graphs, trees, and finite-state machines. Topics • Logic, Sets, and Functions • Methods of Proof • Recurrence Relations • Binary Relations • Graphs • Trees • Algebraic Structures • Introduction to Languages and Grammars
CmpE 220 Discrete Computational Structures (3+0+0) 3 Bingol - 2005 Fall • InstructorDr. Haluk Bingöl, bingol@boun.edu.tr, x7121, ETA 308 • AssistantEvrim Itır Karaç, itir.karac@boun.edu.tr, x7183, ETA 203 • Albert Ali Salah, salah@boun.edu.tr, x4490, ETA 412 • Webpagehttp://www.cmpe.boun.edu.tr/courses/cmpe220/fall2005 • Time/RoomWFF 523 ETA Z04 • Text BookDiscrete Mathematics and Its Applications, 5e Rosen McGrawHill, 2003, [QA39.3 R67]
CmpE 220 Discrete Computational Structures (3+0+0) 3 Bingol - 2005 Fall • Grading20% Midterm #120% Midterm #210% Quizzes10% Home works 40% Final
Michael Frank’s slides adapted • We’re not using all his lectures • Various changes in those that we use • Possibly some new lectures • Your key resources • Course’s web page • Ken Rosen’s book • http://www.mhhe.com/math/advmath/rosen/r5
What is Mathematics, really? • It’s not just about numbers! • Mathematics is much more than that: • But, these concepts can be about numbers, symbols, objects, images, sounds, anything! Mathematics is, most generally, the study of any and allcertain truthsabout any and allwell-defined concepts.
So, what’s this class about? • What are “discrete structures” anyway? • “Discrete” ( “discreet”!) - Composed of distinct, separable parts. (Opposite of continuous.)discrete:continuous :: digital:analog • “Structures” - Objects built up from simpler objects according to some definite pattern. • “Discrete Mathematics” - The mathematical study of discrete objects and structures.
Discrete Mathematics • When using numbers, we’re much more likely to use ℕ (natural numbers) and ℤ (whole numbers) than ℚ (fractions) and ℝ (real numbers). • Reason: ℚ and ℝ are densely ordered • This notion can be defined precisely
Densely Ordered • ℚ,< is densely ordered becausex ℚy ℚ(x≠y z (x<z & z<y) ) • Opposite of densely ordered:discretely ordered
Yet, ℚ and ℝ can be defined in terms of discrete concepts (as we have seen) • This means that Discrete Mathematics has no exact borders • Different books and courses treat slightly different topics
Propositions Predicates Proofs Sets Functions (Orders of Growth) (Algorithms) Integers (Summations) (Sequences) Strings Permutations Combinations Relations Graphs Trees (Logic Circuits) (Automata) Discrete Structures We’ll Study
Uses of Discrete Math • Starting from simple structures of logic and set theory, theories are constructed that capture aspects of reality: • Physics (see diagram) • Biology (DNA) • Common-sense reasoning (logic) • Natural Language (trees, sets, functions, ..) • … • Anything that we want to describe precisely
Discrete Math for Computing • The basis of all of computing is:Discrete manipulations of discrete structures represented in memory. • Discrete Math is the basic language and conceptual foundation for all of computer science.
Algorithms & data structures Compilers & interpreters. Formal specification & verification Computer architecture Databases Cryptography Error correction codes Graphics & animation algorithms, game engines, etc.… DM is relevant for all aspects of computing! Some Examples
Logic (§1.1-4) Proof methods (§1.5) Set theory (§1.6-7) Functions (§1.8) (Algorithms (§2.1)) (Orders of Growth (§2.2)) (Complexity (§2.3)) Number theory (§2.4-5) Number theory apps. (§2.6) (Matrices (§2.7)) Proof strategy (§3.1) (Sequences (§3.2)) (Summations (§3.2)) (Countability (§3.2)) Inductive Proofs (§3.3) Recursion (§3.4-5) Program verification (§3.6) Combinatorics (ch. 4) Probability (ch. 5) (Recurrences (§6.1-3)) Relations (ch. 7) Graph Theory (chs. 8+9) Boolean Algebra (ch. 10) (Computing Theory (ch.11)) Course Outline (as per Rosen)
Topics Not Covered • Other topics we might not get to this term: • Boolean circuits (ch. 10) • - You could learn this in more depth in a digital logic course. • Models of computing (ch. 11) • - Many of these are obsolete for engineering purposes now anyway • Linear algebra (not in Rosen, see Math dept.) • - Advanced matrix algebra, general linear algebraic systems
Course Objectives • Upon completion of this course, the student should be able to: • Check validity of simple logical arguments (proofs). • Check the correctness of simple algorithms. • Creatively construct simple instances of valid logical arguments and correct algorithms. • Describe the definitions and properties of a variety of specific types of discrete structures. • Correctly read, represent and analyze various types of discrete structures using standard notations.
Have Fun! • Many people find Discrete Mathematics more enjoyable than, for example, Analysis: • Applicable to just about anything • Some nice puzzles • Highly varied