Discrete Structures for Computer Science

Slides:



Advertisements
Similar presentations
Complex Networks Advanced Computer Networks: Part1.
Advertisements

22C:19 Discrete Math Graphs Fall 2010 Sukumar Ghosh.
Introduction to Graph Theory Instructor: Dr. Chaudhary Department of Computer Science Millersville University Reading Assignment Chapter 1.
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
CSE 522 – Algorithmic and Economic Aspects of the Internet Instructors: Nicole Immorlica Mohammad Mahdian.
Last time: terminology reminder w Simple graph Vertex = node Edge Degree Weight Neighbours Complete Dual Bipartite Planar Cycle Tree Path Circuit Components.
Discrete Maths Objective to give some background on the course , Semester 2, Who I am: Andrew Davison WiG Lab
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/4/01.
Math 308 Discrete Mathematics Discrete Mathematics deals with “Separated” or discrete sets of objects (rather than continuous sets) Processes with a sequence.
1 CS233601: Discrete Mathematics Department of Computer Science National Tsing Hua University.
About the Course Lecture 0: Sep 2 AB C. Plan  Course Information and Arrangement  Course Requirement  Topics and objectives of this course.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Review Lecture Tuesday, 12/10/02.
Graph Colouring Lecture 20: Nov 25.
Discrete Structures for Computer Science Ruoming Jin MW 5:30 – 6:45pm Fall 2009 rm MSB115.
Bart Selman CS CS Discrete Structures Johnnie Baker Introduction.
ECE669 L10: Graph Applications March 2, 2004 ECE 669 Parallel Computer Architecture Lecture 10 Graph Applications.
MATH 310, FALL 2003 (Combinatorial Problem Solving) Lecture 10, Monday, September 22.
22C:19 Discrete Math Graphs Spring 2014 Sukumar Ghosh.
Chapter 9.8 Graph Coloring
CS 2813 Discrete Structures
Bart Selman CS CS 2800 Discrete Structures Prof. Bart Selman Introduction.
About the Course Lecture 0: Sep 10 AB C. Plan  Course Information and Arrangement  Course Requirement  Topics and objectives of this course.
Programming for Geographical Information Analysis: Advanced Skills Online mini-lecture: Introduction to Networks Dr Andy Evans.
EECS 203: It’s the end of the class and I feel fine. Graphs.
Discrete Mathematics Transparency No. 0-1 Discrete Mathematics Cheng-Chia Chen September 2009.
Discrete Structures for Computer Science Muad M. Abu-Ata Summer 2013.
Modeling Using Colorability Presented by: Kelley Louie CSC 252 Algorithms 252a-aj.
Carla Gomes INFO Info 2950 Mathematical Methods for Information Science Prof. Carla Gomes Introduction.
Course overview Course title: Discrete mathematics for Computer Science Instructors: Dr. Abdelouahid Derhab Credit.
COSC 4426 Topics in Computer Science II Discrete Optimization Good results with problems that are too big for people or computers to solve completely
Relationships Between Structures “→” ≝ “Can be defined in terms of” Programs Groups Proofs Trees Complex numbers Operators Propositions Graphs Real.
Discrete Structures for Computing
CS 200 Algorithms and Data Structures
Discrete Mathematics CS204 Spring CS204 Discrete Mathematics Instructor: Professor Chin-Wan Chung (Office: Rm 3406, Tel:3537) 1.Lecture 1)Time:
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Chapter 10.8 Graph Coloring
Graph Colouring Lecture 20: Nov 25. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including.
MTH221 November 6, /6/ DISCRETE MATHEMATICS FOR IT PROFESSIONALS Pair the class Set dates See students progress Assignments Final Exam Quizzes.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Review Lecture Tuesday, 12/11/01.
1 CSC 281 Discrete Mathematics for Computer Science Dr.Yuan Tian Syllabus.
Chapter 10.8 Graph Coloring These class notes are based on material from our textbook, Discrete Mathematics and Its Applications, 7 th ed., by Kenneth.
1.  This course covers the mathematical foundations of computer science and engineering. It provides an introduction to elementary concepts in mathematics.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Introduction to Graph & Network Theory Thinking About Networks: From Metabolism to the Genome to Social Conflict Summer Workshop for Teachers June 27 th.
Planar Graphs Hubert Chan (Chapter 9.7) [O2 Proof Techniques]
Discrete Mathematics Graph: Planar Graph Yuan Luo
Graph Coloring Lots of application – be it mapping routes, coloring graphs, building redundant systems, mapping genes, looking at traffic patterns (see.
EECS 203 Lecture 19 Graphs.
GRAPHS Lecture 16 CS2110 Fall 2017.
EECS 203 Lecture 20 More Graphs.
Discrete Mathematics and Its Applications
Discrete Structures for Computer Science
Discrete Maths 9. Graphs Objective
Chapter 10.8 Graph Coloring
Introduction to Discrete Mathematics
Introduction to Graphs
CSC 281 Discrete Mathematics for Computer Science
Minimum Spanning Trees
Discrete Structures for Computer Science
Chapter 10.8 Graph Coloring
Chapter 10.8 Graph Coloring
26 July 2011 SC 611 Class 1.
Discrete Structures for Computer Science
Chapter 10.8 Graph Coloring
Discrete Mathematics in the Real World
CSC 380: Design and Analysis of Algorithms
GRAPHS Lecture 17 CS2110 Spring 2018.
Discrete Mathematics and Its Applications
Presentation transcript:

Discrete Structures for Computer Science Feodor F. Dragan Fall 2012

Textbook Discrete Mathematics and Its Applications By Kenneth H. Rosen, McGraw Hill (7th ed.) Use lecture notes as study guide.

Course Requirements Attendance 5% Homework 25% Midterm Exam 30% Extra Credit Problem 2-5% Final Exam 40%

Why Discrete Math? Design efficient computer systems. How did Google manage to build a fast search engine? What is the foundation of internet security? algorithms, data structures, database, parallel computing, distributed systems, cryptography, computer networks… Logic, sets/functions, counting, graph theory…

What is discrete mathematics? Logic: artificial intelligence (AI), database, circuit design Counting: probability, analysis of algorithm Graph theory: computer network, data structures Number theory: cryptography, coding theory logic, sets, functions, relations, etc

Topic 1: Logic and Proofs How do computers think? Logic: propositional logic, first order logic Proof: induction, contradiction Artificial intelligence, database, circuit, algorithms

Topic 2: Counting Sets Combinations, Permutations, Binomial theorem Functions Counting by mapping, pigeonhole principle Recursions, generating functions Probability, algorithms, data structures

Topic 2: Counting How many steps are needed to sort n numbers?

Topic 3: Graph Theory Relations, graphs Degree sequence, isomorphism, Eulerian graphs Trees Computer networks, circuit design, data structures

Topic 4: Number Theory Number sequence Euclidean algorithm Prime number Modular arithmetic Cryptography, coding theory, data structures

Pythagorean theorem c b a Familiar? Obvious?

c b a Good Proof Rearrange into: (i) a cc square, and then (ii) an aa & a bb square

Good Proof c b-a c c a b c 81 proofs in http://www.cut-the-knot.org/pythagoras/index.shtml

Acknowledgement Next slides are adapted from ones created by Professor Bart Selman at Cornell University.

Graphs and Networks Many problems can be represented by a graphical network representation. Examples: Distribution problems Routing problems Maximum flow problems Designing computer / phone / road networks Equipment replacement And of course the Internet Aside: finding the right problem representation is one of the key issues.

New Science of Networks Networks are pervasive Utility Patent network 1972-1999 (3 Million patents) Gomes,Hopcroft,Lesser,Selman Neural network of the nematode worm C- elegans (Strogatz, Watts) Networked or linked structures are ubiquitous. Examples range from the World Wide Web, large social networks such as the network of board of directors or the network of Hollywood actors, the distribution network of Wal-Mart, the power grid of the US, or even the neurological network of our brain. August 96 - Major power outage that affected the entire west coast of the US from Alaska to California for over 24 hours. This power outage was caused by a single transmission line, That was knowcked down by a tree. More interestingly, the accident Was detected right away and as standard procedure the load of the line Was transferred to the other lines of the set; but they were already overloaded And the extra overload caused the lines to heat up stretch. Well, this was a hot Summer, the trees had grown dramatically and a few lines were kncked down, Causing the domino effect that brought down the entire power grid of The west coast of the US. How did it happened? Key issues: How can we design more robust netwroks? How does disease spread in a ntewrokd of people Graphs that occur in many biological, social, and manmade systems Are often neither completely regular nor completely random – Instead they have a small world topology  nodes are highly clustered And yet the path length between them is small NYS Electric Power Grid (Thorp,Strogatz,Watts) Network of computer scientists ReferralWeb System (Kautz and Selman) Cybercommunities (Automatically discovered) Kleinberg et al

Example: Coloring a Map How to color this map so that no two adjacent regions have the same color?

Graph representation Abstract the essential info: Coloring the nodes of the graph: What’s the minimum number of colors such that any two nodes connected by an edge have different colors?

Four Color Theorem Four color map. The chromatic number of a graph is the least number of colors that are required to color a graph. The Four Color Theorem – the chromatic number of a planar graph is no greater than four. (quite surprising!) Proof by Appel and Haken 1976; careful case analysis performed by computer; Proof reduced the infinitude of possible maps to 1,936 reducible configurations (later reduced to 1,476) which had to be checked one by one by computer. The computer program ran for hundreds of hours. The first significant computer-assisted mathematical proof. Write-up was hundreds of pages including code!

Examples of Applications of Graph Coloring

Scheduling of Final Exams How can the final exams at Kent State be scheduled so that no student has two exams at the same time? (Note not obvious this has anything to do with graphs or graph coloring!) Graph: A vertex correspond to a course. An edge between two vertices denotes that there is at least one common student in the courses they represent. Each time slot for a final exam is represented by a different color. A coloring of the graph corresponds to a valid schedule of the exams.

Scheduling of Final Exams 1 7 2 3 6 5 4 1 Time Period I II III IV Courses 1,6 2 3,5 4,7 2 7 6 3 5 4 Why is mimimum number of colors useful? What are the constraints between courses? Find a valid coloring

Example 2: Traveling Salesman Find a closed tour of minimum length visiting all the cities. TSP  lots of applications: Transportation related: scheduling deliveries Many others: e.g., Scheduling of a machine to drill holes in a circuit board ; Genome sequencing; etc

13,509 cities in the US 13508!= 1.4759774188460148199751342753208e+49936

The optimal tour!