1 / 24

CS 173: Discrete Mathematical Structures

CS 173: Discrete Mathematical Structures. Cinda Heeren heeren@cs.uiuc.edu Siebel Center, rm 2213 Office Hours: W 12:30-2:30. CS 173 Announcements. Homework #12 available, due 12/11, 8a. Final exam 12/14, 8-11a. Rooms announced on web site.

stillman
Download Presentation

CS 173: Discrete Mathematical Structures

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 173:Discrete Mathematical Structures Cinda Heeren heeren@cs.uiuc.edu Siebel Center, rm 2213 Office Hours: W 12:30-2:30

  2. CS 173 Announcements • Homework #12 available, due 12/11, 8a. • Final exam 12/14, 8-11a. Rooms announced on web site. • Conflict 12/14, 1:30-4:30p. Siebel Center Rm 1109, 1105. • Review 12/12, 5-6p, SC1404. Additional reviews will be announced. • ACM study hall 1-5p, Sunday & Monday Cs173 - Spring 2004

  3. shoes belt jacket socks jeans swter jwlry In what order will you get dressed while respecting constraints? uwear shirt CS173Total Orders Consider the problem of getting dressed. Precedence constraints are modeled by a poset in which a  b iff you must put on a before b. Let (S, ) be a poset (S finite). We will extend  to a total order on S, so we can decide for all incomparable pairs whether to make a  b, or vice versa w/o violating T,R,A. Cs173 - Spring 2004

  4. shoes belt jacket socks jeans swter jwlry NOT A REAL PROOF! Should use induction!! uwear shirt CS173Total Orders Things we need: Lemma: Every finite non-empty poset (S, ) has at least one minimal element. Proof: choose a0 S. If a0 was not minimal, then there exists a1 a0, and so on until a minimal element is found. Cs173 - Spring 2004

  5. shoes belt jacket socks jeans swter jwlry uwear shirt CS173Total Orders More things we need: Lemma: If (S, ) is a poset with a minimal, then (S-{a}, ) is also a poset. Proof: If you remove minimal a reflexivity and antisymmetry still hold. If x,y,z  S-{a}, with x  y and y  z, then x  z too, since (S, ) was transitive. Cs173 - Spring 2004

  6. shoes belt jacket socks jeans swter jwlry Depending on which min elt is chosen each time, a different total order is obtained, but all TOs will be consistent with the PO. uwear shirt CS173Total Orders Think about what this means: • There is always a minimal element. • If you remove it you still have a poset. alg Topological Sort Input: poset (S, ) Out: elements of S in total order While S   Remove any min elt from S and output it. This suggests: Cs173 - Spring 2004

  7. shoes belt jacket socks jeans swter jwlry uwear shirt t CS173Total Orders alg Topological Sort Input: poset (S, ) Out: elements of S in total order While S   Remove any min elt from S and output it. Cs173 - Spring 2004

  8. Why are these two problems on the same slide? CS173Graphs Suppose YOU are the person in charge of scheduling finals. Conflict exams are not allowed…that is, no student can have two exams scheduled for any one time. How many exam periods do you need? Suppose I give you a graph consisting of vertices and edges. Your task is to label the vertices with colors. Vertices which share an edge cannot be colored the same. How many colors do you need? Cs173 - Spring 2004

  9. CS173Graphs Graphs are a very general way of representing data. We can use graphs to model things as diverse as: • Scheduling problems • Routes for travelling between cities • Connections between atoms in a molecule • Paths that messages can take in a network • Dependence relations between events in a large project Cs173 - Spring 2004

  10. CS173Graphs Cs173 - Spring 2004

  11. CS173Graphs Definitions you should understand: • Simple • Vertex • Edge • Weights • Degree • Neighbors • Connected • Complete • Bipartite • Planar • Cycle • Tree • Path • Circuit Cs173 - Spring 2004

  12. A B C D E Why or why not? CS173Graphs A real estate agent wishes to give a tour of this house, starting and ending outside, and going through each door exactly once. Can she do it? Cs173 - Spring 2004

  13. A B C D E outside CS173Graphs Model the floor plan as a graph. A B C D E Cs173 - Spring 2004

  14. Is there an Eulerian Path (or circuit) in this graph? Given a graph, how can we tell if an Eulerian Path (or circuit) exists? A “circuit” is a path that begins and ends at the same vertex. CS173Graphs An equivalent question is: Can we traverse the graph, visiting each edge exactly once? A B C D E outside Cs173 - Spring 2004

  15. CS173Graphs A connected graph contains an Eulerian Circuit if and only if every vertex has even degree. A connected graph contains an Eulerian Path if and only if exactly 2 vertices have odd degree. Cs173 - Spring 2004

  16. CS173Graphs Pick a vertex and attempt to find the Eulerian Cycle... Cs173 - Spring 2004

  17. CS173Graphs The algorithm: • Pick a vertex u. • Follow any edge from u to another vertex v. • Travel from v to any other vertex. (This is possible because all vertices have even degree.) • Continue forging a path until vertex u is reached again. • If all edges are on the path, quit. Otherwise, pick any vertex u’ on the current path, and repeat the process to return to u’, and then splice the new route into the path. • Do this until all edges are included in the path. Cs173 - Spring 2004

  18. All Orange Green Orange and green Beats me! CS173Graphs Quiz time: Which graphs have an Eulerian Circuit? Cs173 - Spring 2004

  19. All Orange Green Orange and green Beats me! Bonus: Give a descriptive name for the green graph. CS173Graphs Quiz time: Which graphs have an Eulerian Path? Cs173 - Spring 2004

  20. 4 1 7 12 6 11 14 13 8 3 2 10 CS173Graphs • Suppose you live in an itty bitty town, where none of the streets are paved. Your community WANTS to build a swimming pool, but they MUST perform some road upgrades, and the budget is limited. • The road committee has decided that it’s important for a paved path to exist between every pair of houses in the town. • A swimming pool will cost $1 million. The cost of paving each stretch of road is given in the graph below ($10k). • Given these constraints, the graph, and a budget of $1.4 million, can you upgrade the roads AND build a swimming pool? 5 9 Cs173 - Spring 2004

  21. Can we build the swimming pool? Which would you pave first? • (b,e) • (e,h) • (b,c) • (d,e) • None of these. Which would you pave second? • (a,b) • (e,h) • (b,f) • (g,h) • None of these. CS173Graphs • The road committee has decided that it’s important for a paved path to exist between every pair of houses in the town. Which ones should we pave in order to minimize cost? 4 1 a b c 12 6 5 7 11 14 d e f 9 8 3 13 2 10 g h i Cs173 - Spring 2004

  22. CS173Graphs • Alternative algorithm: 4 1 a b c 12 6 5 7 11 14 d e f 9 8 3 13 2 10 g h i Cs173 - Spring 2004

  23. More formal study of this in cs473, FUN! CS173Graphs Official name for the structure you created: “Minimal cost spanning tree” 4 1 a b c 12 6 5 7 11 14 d e f 9 8 3 13 2 10 g h i Cs173 - Spring 2004

  24. CS173Graphs Cs173 - Spring 2004

More Related