DS Lecture-1
DS Lecture-1
Discrete Structures
Introduction
Lecture-1
Overview of this Lecture
• Course Administration
• What is it about?
• Propositional logic
Course Administration
Timings
Lecture Hours:
Homework (12%)
Quiz (13%)
Midterm (25%)
Final (50%)
Homework and Quiz
Discrete Mathematics
by Richard Johnsonbaugh
7th or 8th Edition
Reference Book (2)
Discrete Mathematics
by Edgar Goodaire and Michael Parmenter
3rd Edition.
Course Learning Outcome (CLO’s)
Bloom’s
S. No. Course Learning Outcome (CLO’s) Learning
Level
Course Administration
Continuous Mathematics
It considers objects that vary continuously;
Example: analog wristwatch (separate hour, minute, and second hands).
From an analog watch perspective, between 1 :25 p.m. and 1 :26 p.m.
there are infinitely many possible different times as the second hand moves
around the watch face.
Discrete Mathematics
It considers objects that vary in a discrete way.
Example: digital wristwatch.
On a digital watch, there are only finitely many possible different times
between 1 :25 P.m. and 1:27 P.m. A digital watch does not show split
seconds: no time between 1 :25:03 and 1 :25:04. The watch moves from one
time to the next.
Integers --- core of discrete mathematics
Discrete mathematics --- models and tools for analyzing real-world
phenomena that change discretely over time and therefore ideal for studying
computer science – computers are digital! (numbers as finite bit strings; data
structures, all discrete! Historical aside: earliest computers were analogue.)
Discrete vs Continuous
What is MA-210 about?
21
Computers run software and store files.
22
23
24
Number Theory:
RSA and Public-key Cryptography
Alice and Bob have never met but they would like to
exchange a message. Eve would like to eavesdrop.
E.g. between you and the Bank of America.
28
Analog Clock
An Analog Clock has gears inside, and the sizes/teeth needed
for correct timekeeping are determined using discrete math of
modular arithmetic.
29
Dijkstra’s Algorithm and Google Maps
Google Maps uses discrete mathematics to determine
fastest driving routes and times.
30
Railway Planning
Railway planning uses discrete math: deciding how to
expand train rail lines, train timetable scheduling, and
scheduling crews and equipment for train trips use both
graph theory and linear algebra.
31
32
Computer Graphics
Computer graphics (such as in video games) use linear
algebra in order to transform (move, scale, change
perspective) objects. That's true for both applications like
game development, and for operating systems.
33
Smarter Phones for All
Cell Phone Communications: Making efficient use of the broadcast
spectrum for mobile phones uses linear algebra and information
theory. Assigning frequencies so that there is no interference with
nearby phones can use graph theory or can use discrete
optimization.
34
Graphs and Networks
•Examples:
– Distribution problems
– Routing problems
Aside: finding the right
– Maximum flow problems problem representation
– Designing computer / phone / road networks is one of the key issues
– Equipment replacement in this course.
– And of course the Internet
Networks are
New Science of Networks pervasive
Sub-Category Graph
No Threshold
NYS Electric
Power Grid Network of computer scientists
Cyber communities
(Thorp,Strogatz,Watts) ReferralWeb System
(Automatically discovered)
(Kautz and Selman)
Kleinberg et al
Applications of Networks
Physical analog Physical analog
Applications Flow
of nodes of arcs
phone exchanges,
Cables, fiber optic Voice messages,
Communication computers,
links, microwave Data,
systems transmission
relay links Video transmissions
facilities, satellites
Pumping stations Water, Gas, Oil,
Hydraulic systems Pipelines
Reservoirs, Lakes Hydraulic fluids
Integrated Gates, registers,
Wires Electrical current
computer circuits processors
Rods, Beams,
Mechanical systems Joints Heat, Energy
Springs
Passengers,
Intersections, Highways,
Transportation freight,
Airports, Airline routes
systems vehicles,
Rail yards Railbeds
operators
Finding Friends on Facebook
Graph theory can be used in speeding up Facebook
performance.
39
DNA Fragment Assembly
Graph theory is used in DNA sequencing.
40
Applications Of Discrete Structures
analysis of algorithms and in the fact that many common data structures
– and in particular graphs, trees, sets and ordered sets – and their
associated algorithms come from the domain of discrete mathematics.
43
Logic and Proofs
Programmers use logic. All the time. While everyone has to
think about the solution, a formal study of logical
thinking helps you organize your thought process more
efficiently.
44
Logic:
Hardware and software specifications
Formal: Input_wire_A
value in {0, 1}
–The router can send packets to the edge system only if it supports the new address space.
–For the router to support the new address space it’s necessary that the latest software release be installed.
–The router can send packets to the edge system if the latest software release is installed.
–The router does not support the new address space.
47
Moral of the Story???
Discrete Math is needed to see mathematical structures in
for interviews.
48
Discrete Mathematics is a Gateway Course
Topics in discrete mathematics will be important in many
courses that you will take in the future:
Computer Science: Computer Architecture, Data Structures,
Algorithms, Programming Languages, Compilers, Computer
Security, Databases, Artificial Intelligence, Networking,
Graphics, Game Design, Theory of Computation, Game Theory,
Network Optimization ……
Other Disciplines: You may find concepts learned here useful
in courses in philosophy, economics, linguistics, and other
departments.
52
Course Themes, Goals, and Course Outline
Goals of MA-210
Introduce students to a range of mathematical tools from discrete
mathematics that are key in computer science
Mathematical Sophistication
How to write statements rigorously Practice works!
How to read and write theorems, lemmas, etc.
How to write rigorous proofs
Actually, only practice works!
Areas we will cover:
Logic and proofs Note: Learning to do proofs from
Set Theory watching the slides is like trying to
Number Theory learn to play tennis from watching
Counting and combinatorics
it on TV! So, do exercises!
Tentative Topics MA-210
Logic and Methods of Proof
Propositional Logic --- SAT as an encoding language!
Predicates and Quantifiers
Methods of Proofs
Number Theory
Modular arithmetic
RSA cryptosystems
Sets
Sets and Set operations
Functions
Counting
Basics of counting
Pigeonhole principle
Permutations and Combinations
Topics MA-210
Graphs and Trees
Graph terminology
Example of graph problems and algorithms:
graph coloring
TSP
shortest path
Min. spanning tree
What’s your job?
Bart Selman
CS2800
Discrete Structures
Logic
Bart Selman
CS2800
Logic
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Activity
Bart Selman
CS2800
Answers
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Activity
Bart Selman
CS2800
Answers
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Activity
Bart Selman
CS2800
Answers
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Activity
Bart Selman
CS2800
Activity
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Bart Selman
CS2800
Activity
Bart Selman
CS2800
The end
Bart Selman
CS2800