Courtesy Costas Busch - RPI1 Mathematical Preliminaries
Courtesy Costas Busch - RPI2 Mathematical Preliminaries Sets Functions Relations Graphs Proof Techniques
Courtesy Costas Busch - RPI3 A set is a collection of elements SETS We write
Courtesy Costas Busch - RPI4 Set Representations C = { a, b, c, d, e, f, g, h, i, j, k } C = { a, b, …, k } S = { 2, 4, 6, … } S = { j : j > 0, and j = 2k for some k>0 } S = { j : j is nonnegative and even } finite set infinite set
Courtesy Costas Busch - RPI5 A = { 1, 2, 3, 4, 5 } Universal Set: all possible elements U = { 1, …, 10 } A U
Courtesy Costas Busch - RPI6 Set Operations A = { 1, 2, 3 } B = { 2, 3, 4, 5} Union A U B = { 1, 2, 3, 4, 5 } Intersection A B = { 2, 3 } Difference A - B = { 1 } B - A = { 4, 5 } U A B Venn diagrams
Courtesy Costas Busch - RPI7 A Complement Universal set = {1, …, 7} A = { 1, 2, 3 } A = { 4, 5, 6, 7} A A = A
Courtesy Costas Busch - RPI even { even integers } = { odd integers } odd Integers
Courtesy Costas Busch - RPI9 DeMorgan’s Laws A U B = A B U A B = A U B U
Courtesy Costas Busch - RPI10 Empty, Null Set: = { } S U = S S = S - = S - S = U = Universal Set
Courtesy Costas Busch - RPI11 Subset A = { 1, 2, 3} B = { 1, 2, 3, 4, 5 } A B U Proper Subset:A B U A B
Courtesy Costas Busch - RPI12 Disjoint Sets A = { 1, 2, 3 } B = { 5, 6} A B = U AB
Courtesy Costas Busch - RPI13 Set Cardinality For finite sets A = { 2, 5, 7 } |A| = 3 (set size)
Courtesy Costas Busch - RPI14 Powersets A powerset is a set of sets Powerset of S = the set of all the subsets of S S = { a, b, c } 2 S = {, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} } Observation: | 2 S | = 2 |S| ( 8 = 2 3 )
Courtesy Costas Busch - RPI15 Cartesian Product A = { 2, 4 } B = { 2, 3, 5 } A X B = { (2, 2), (2, 3), (2, 5), ( 4, 2), (4, 3), (4, 5) } |A X B| = |A| |B| Generalizes to more than two sets A X B X … X Z
Courtesy Costas Busch - RPI16 FUNCTIONS domain a b c range f : A -> B A B If A = domain then f is a total function otherwise f is a partial function f(1) = a 4 5
Courtesy Costas Busch - RPI17 Let A & B be sets. A binary relation “R” from A to B R = {(x 1, y 1 ), (x 2, y 2 ), (x 3, y 3 ), …} Where and R ⊆ A x B x i R y i to denote e. g. if R = ‘>’: 2 > 1, 3 > 2, 3 > 1 RELATIONS
Courtesy Costas Busch - RPI18 Equivalence Relations Reflexive: x R x Symmetric: x R y y R x Transitive: x R y and y R z x R z Example: R = ‘=‘ x = x x = y y = x x = y and y = z x = z
Courtesy Costas Busch - RPI19 Equivalence Classes For equivalence relation R equivalence class of x = {y : x R y} Example: R = { (1, 1), (2, 2), (1, 2), (2, 1), (3, 3), (4, 4), (3, 4), (4, 3) } Equivalence class of 1 = {1, 2} Equivalence class of 3 = {3, 4}
Courtesy Costas Busch - RPI20 GRAPHS A directed graph Nodes (Vertices) V = { a, b, c, d, e } Edges E = { (a,b), (b,c), (b,e),(c,a), (c,e), (d,c), (e,b), (e,d) } node edge a b c d e
Courtesy Costas Busch - RPI21 Labeled Graph a b c d e
Courtesy Costas Busch - RPI22 Walk a b c d e Walk is a sequence of adjacent edges (e, d), (d, c), (c, a)
Courtesy Costas Busch - RPI23 Path a b c d e Path is a walk where no edge is repeated Simple path: no node is repeated
Courtesy Costas Busch - RPI24 Cycle a b c d e Cycle: a walk from a node (base) to itself Simple cycle: only the base node is repeated base
Courtesy Costas Busch - RPI25 Euler Tour a b c d e base A cycle that contains each edge once
Courtesy Costas Busch - RPI26 Hamiltonian Cycle a b c d e base A simple cycle that contains all nodes
Courtesy Costas Busch - RPI27 Finding All Simple Paths a b c d e origin
Courtesy Costas Busch - RPI28 (c, a) (c, e) Step 1 a b c d e origin
Courtesy Costas Busch - RPI29 (c, a) (c, a), (a, b) (c, e) (c, e), (e, b) (c, e), (e, d) Step 2 a b c d e origin
Courtesy Costas Busch - RPI30 Step 3 a b c d e origin (c, a) (c, a), (a, b) (c, a), (a, b), (b, e) (c, e) (c, e), (e, b) (c, e), (e, d)
Courtesy Costas Busch - RPI31 Step 4 a b c d e origin (c, a) (c, a), (a, b) (c, a), (a, b), (b, e) (c, a), (a, b), (b, e), (e,d) (c, e) (c, e), (e, b) (c, e), (e, d)
Courtesy Costas Busch - RPI32 Trees root leaf parent child Trees have no cycles
Courtesy Costas Busch - RPI33 root leaf Level 0 Level 1 Level 2 Level 3 Height 3
Courtesy Costas Busch - RPI34 Binary Trees
Courtesy Costas Busch - RPI35 PROOF TECHNIQUES Proof by induction Proof by contradiction
Courtesy Costas Busch - RPI36 Induction We have statements P 1, P 2, P 3, … If we know for some b that P 1, P 2, …, P b are true for any k >= b that P 1, P 2, …, P k imply P k+1 Then Every P i is true
Courtesy Costas Busch - RPI37 Proof by Induction Inductive basis Find P 1, P 2, …, P b which are true Inductive hypothesis Let’s assume P 1, P 2, …, P k are true, for any k >= b Inductive step Show that P k+1 is true
Courtesy Costas Busch - RPI38 Example Theorem: A binary tree of height n has at most 2 n leaves. Proof by induction: let L(i) be the maximum number of leaves of any subtree at height i
Courtesy Costas Busch - RPI39 We want to show: L(i) <= 2 i Inductive basis L(0) = 1 (the root node) Inductive hypothesis Let’s assume L(i) <= 2 i for all i = 0, 1, …, k Induction step we need to show that L(k + 1) <= 2 k+1
Courtesy Costas Busch - RPI40 Induction Step From Inductive hypothesis: L(k) <= 2 k height k k+1
Courtesy Costas Busch - RPI41 L(k) <= 2 k L(k+1) <= 2 * L(k) <= 2 * 2 k = 2 k+1 Induction Step height k k+1 (we add at most two nodes for every leaf of level k)
Courtesy Costas Busch - RPI42 Remark Recursion is another thing Example of recursive function: f(n) = f(n-1) + f(n-2) f(0) = 1, f(1) = 1
Courtesy Costas Busch - RPI43 Proof by Contradiction We want to prove that a statement P is true we assume that P is false then we arrive at an incorrect conclusion therefore, statement P must be true
Courtesy Costas Busch - RPI44 Example Theorem: is not rational Proof: Assume by contradiction that it is rational = n/m n and m have no common factors We will show that this is impossible
Courtesy Costas Busch - RPI45 = n/m 2 m 2 = n 2 Therefore, n 2 is even n is even n = 2 k 2 m 2 = 4k 2 m 2 = 2k 2 m is even m = 2 p Thus, m and n have common factor 2 Contradiction!
Courtesy Costas Busch - RPI46 Languages
Courtesy Costas Busch - RPI47 A language is a set of strings String: A sequence of letters Examples: “cat”, “dog”, “house”, … Defined over an alphabet:
Courtesy Costas Busch - RPI48 Alphabets and Strings We will use small alphabets: Strings
Courtesy Costas Busch - RPI49 String Operations Concatenation
Courtesy Costas Busch - RPI50 Reverse
Courtesy Costas Busch - RPI51 String Length Length: Examples:
Courtesy Costas Busch - RPI52 Length of Concatenation Example:
Courtesy Costas Busch - RPI53 Empty String A string with no letters: Observations:
Courtesy Costas Busch - RPI54 Substring Substring of string: a subsequence of consecutive characters String Substring
Courtesy Costas Busch - RPI55 Prefix and Suffix Prefixes Suffixes prefix suffix
Courtesy Costas Busch - RPI56 Another Operation Example: Definition:
Courtesy Costas Busch - RPI57 The * Operation : the set of all possible strings from alphabet
Courtesy Costas Busch - RPI58 The + Operation : the set of all possible strings from alphabet except
Courtesy Costas Busch - RPI59 Languages A language is any subset of Example: Languages:
Courtesy Costas Busch - RPI60 Note that: Sets Set size String length
Courtesy Costas Busch - RPI61 Another Example An infinite language
Courtesy Costas Busch - RPI62 Operations on Languages The usual set operations Complement:
Courtesy Costas Busch - RPI63 Reverse Definition: Examples:
Courtesy Costas Busch - RPI64 Concatenation Definition: Example:
Courtesy Costas Busch - RPI65 Another Operation Definition: Special case:
Courtesy Costas Busch - RPI66 More Examples
Courtesy Costas Busch - RPI67 Star-Closure (Kleene *) Definition: Example:
Courtesy Costas Busch - RPI68 Positive Closure Definition: