Introduction CSI2101 2015
Introduction CSI2101 2015
Discrete structures as they apply to computer science, algorithm analysis and design. Predicate
logic. Review of proof techniques; application of induction to computing problems. Graph
theory applications in information technology. Program correctness, preconditions,
postconditions and invariants. Analysis of recursive programs using recurrence relations.
Properties of integers and basic cryptographical applications. Prerequisite: MAT1348
LECTURES:
Monday
LEC 10:00-11:30 MCD 146
Wednesday LEC 08:30-10:00 MCD 146
TUTORIAL Tuesday 17:30 - 19:00 SCS E218 (TA NOT DECIDED YET)
MANUEL:
Evaluation
Assignments, 25% (late assignments not accepted). There will
be 4 assignments.
Mid-Term Test, 25% (Monday, February 23 at 10:00-11:30)
(will take place during class time, closed book)
Final Exam, 50%
To pass the course, you must obtain a weighted average of at
least 50% on the final and Mid-term exams.
Course Plan:
Max Tegmark, 98
Dr. Nejib Zaguia - Winter 2015
Propositions
Predicates
Proofs
Sets
Functions
Orders of Growth
Algorithms
Integers
Summations
Sequences
Strings
Permutations
Combinations
Relations
Graphs
Trees
Logic Circuits
Automata
Groups
Operators Trees
Complex
numbers
Graphs
Real numbers
Functions
Integers
Natural
numbers
Infinite
Bits
ordinals
Programs Proofs
Propositions
Strings
Relations
Matrices
Sequences
n-tuples
Vectors
Sets
Dr. Nejib Zaguia - Winter 2015
Database management
systems
Cryptography
Error correction codes
Graphics & animation
algorithms, game
engines, etc.
I.e., the whole field!
10
Alice and Bob have never met but they would like to
exchange a message. Eve would like to eavesdrop.
They could come up with a good
encryption algorithm and exchange the
encryption key but how to do it without
Eve getting it? (If Eve gets it, all security
is lost.)
11
Number Theory:
Public-key Cryptography
12
RSA Approach
Encode:
C = Me (mod n)
M is the plaintext; C is ciphertext
n = pq with p and q large primes (e.g. 200 digits long!)
e is relative prime to (p-1)(q-1)
What does this all mean??
Decode:
How does this actually work?
Not to worry. Well find out.
Cd = M (mod pq)
d is inverse of e modulo (p-1)(q-1)
13
Examples:
Distribution problems
Aside: finding the right
Routing problems
problem representation
Maximum flow problems
is one of the key issues
Designing computer/phone / road networks
in this course.
Equipment replacement
And of course the Internet
Dr. Nejib Zaguia - Winter 2015
14
15
Cybercommunities
(Automatically discovered)
Kleinberg et al
16
17
Graph representation
18
Proof: 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.
19
ENG 1000
CSI 3503
ENG 3300
PHY 1500
CSI 3505
20
10
21
22
11
14 Km
16 Km
4 Km
13 Km
23
13509!= 1.4759774188460148199751342753208e+49936
Dr. Nejib Zaguia - Winter 2015
24
12
25
26
13
A Proof Example
Pythagoras of Samos
(ca. 569-475 B.C.)
Theorem:
27
c
b
(ba)2
ab
b
b
ab
a
b
a ab c
28
14