Iranai blog ir Models of Computation IRANAI BLOG
Iranai. blog. ir ﻧﻈﺮیﻪ ﺯﺑﺎﻥ ﻫﺎ ﻭ ﻣﺎﺷیﻦ ﻫﺎ Models of Computation IRANAI. BLOG. ir _ iranai 1992@yahoo. com
Computation : ﻣﺎﺷیﻦ ﻣﺤﺎﺳﺒﺎﺗی CPU memory
Example: temporary memory input x =memory 2 x F(x) =2=8 CPU Program memory F(x)memory =8 output
Automaton temporary memory : ﺣﺎﻟﺖ کﻠی ﻣﺎﺷیﻦ Automaton input memory CPU کﻨﺘﺮﻟی output memory ﻗﺴﻤﺖ ﻣﺎﺷیﻦ Program memory
Different Kinds of Automata are distinguished by the temporary memory • Finite Automata: no temporary memory • Pushdown Automata: stack • Turing Machines: random access memory
Finite Automaton temporary memory : ﻣﺎﺷیﻦ ﻣﺘﻨﺎﻫی input memory ﻣﺎﺷیﻦ ﻧﻮﻉ ﺳﻮﻡ Finite Automaton output memory ﻗﺪﺭﺕ ﻣﺤﺎﺳﺒﺎﺗی ﺿﻌیﻒ Vending Machines (small computing power)
Pushdown Automaton Stack : ﻣﺎﺷیﻦ پﺸﺘﻪ ﺍی input memory ﻣﺎﺷیﻦ ﻧﻮﻉ ﺩﻭﻡ Pushdown Automaton output memory ﻗﺪﺭﺕ ﻣﺤﺎﺳﺒﺎﺗی ﺑﻬﺘﺮ ﺍﺯ ﻣﺎﺷیﻦ ﻣﺘﻨﺎﻫی Programming Languages (medium computing power)
Turing Machine Random Access Memory: ﺗﻮﺭیﻨگ ﻣﺎﺷیﻦ input memory ﻣﺎﺷیﻦ ﻧﻮﻉ ﺍﻭﻝ Turing Machine output memory ﻗﺪﺭﺕ ﻣﺤﺎﺳﺒﺎﺗی ﻗﻮی Algorithms (highest computing power)
Power of Automata Finite Pushdown Automata Turing Automata Machine
We will show later in class • How to build compilers for programming languages • Some computational problems cannot be solved • Some problems are hard to solve
Set Representations C = { a, b, c, d, e, f, g, h, i, j, k } C = { a, b, …, k } finite set S = { 2, 4, 6, … } infinite set S = { j : j > 0, and j = 2 k for some k>0 } S = { j : j is nonnegative and even }
A = { 1, 2, 3, 4, 5 } U A 6 1 7 10 Universal Set: 2 4 8 3 5 9 All possible elements U = { 1 , … , 10 }
Set Operations A = { 1, 2, 3 } • Union B = { 2, 3, 4, 5} A A U B = { 1, 2, 3, 4, 5 } • Intersection U A B = { 2, 3 } • Difference A-B={1} B - A = { 4, 5 } A-B B
{ even integers } = { odd integers } Integers 1 odd 2 3 even 0 4 5 6 7
De. Morgan’s Laws U AUB=A B B=AUB
Empty, Null Set: ={} SU =S S = U S- =S -S= = Universal Set
Subset A = { 1, 2, 3} B = { 1, 2, 3, 4, 5 } B U Proper Subset: A U A B B A
Disjoint Sets A = { 1, 2, 3 } A U A B = { 5, 6} B= B
Set Cardinality • For finite sets A = { 2, 5, 7 } |A| = 3
Powersets A powerset is a set of sets S = { a, b, c } Powerset of S = the set of all the subsets of S 2 S = { , {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} } Observation: | 2 S | = 2|S| ( 8 = 23 )
Cartesian Product A = { 2, 4 } B = { 2, 3, 5 } A X B = { (2, 2), (2, 3), (2, 5), ( 4, 2), (4, 3), (4, 4) } |A X B| = |A| |B| Generalizes to more than two sets AXBX…XZ
FUNCTIONS domain A 1 2 range f(1) = a a b c 3 If A = domain B f : A -> B then f is a total function otherwise f is a partial function
RELATIONS R = {(x 1, y 1), (x 2, y 2), (x 3, y 3), …} x i R yi e. g. if R = ‘>’: 2 > 1, 3 > 2, 3 > 1 In relations xi can be repeated
Equivalence Relations • Reflexive: x. Rx • Symmetric: x. Ry • Transitive: x R Y and y R z y. Rx Example: R = ‘=‘ • x=x • x=y • x = y and y = z y=x x=z x. Rz
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}
Cycle. ﻣﺴیﺮی ﺍﺳﺖ کﻪ ﻓﻘﻂ گﺮﻩ ﺍﻭﻝ ﺩﺭ آﻦ ﺗکﺮﺍﺭ ﻣی ﺷﻮﺩ ، ﺩﻭﺭ e base b d a c Cycle: a walk from a node (base) to itself Simple cycle: only the base node is repeated
Finding All Simple Paths Step 13 2 e b d a Repeat the same for each starting node f c (c, a), (a, b) (c, e), (e, d) base (c, e), (e, d), (d, f)
Trees root ﺩﺭﺧﺖ گﺮﺍﻓی ﺍﺳﺖ کﻪ ﺳیکﻞ . ﻧﺪﺍﺭﺩ Level 0 Level 1 leaf parent Height 3 Level 2 Trees have no cycles Level 3 child
PROOF TECHNIQUES • Proof by induction • Proof by contradiction
Induction We have statements P 1, P 2, P 3, … If we know • for some k that P 1, P 2, …, Pk are true • for any n >= k that P 1, P 2, …, Pn imply Pn+1 Then Every Pi is true
Proof by Induction • Inductive basis Find P 1, P 2, …, Pk which are true • Inductive hypothesis Let’s assume P 1, P 2, …, Pn are true, for any n >= k • Inductive step Show that Pn+1 is true
Example Theorem: A binary tree of height n has at most 2 n leaves. Proof: let l(i) be the number of leaves at level i l(0) = 1 l(3) = 8
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, …, n • Induction step we need to show that l(n + 1) <= 2 n+1
Induction Step Level n hypothesis: l(n) <= 2 n n+1 l(n+1) <= 2 * l(n) <= 2 * 2 n = 2 n+1
Remark Recursion is another thing Example of recursive function: f(n) = f(n-1) + f(n-2) f(0) = 1, f(1) = 1
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
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
= n/m Therefore, 2 m 2 = 4 k 2 2 m 2 = n 2 is even m 2 = 2 k 2 n is even n=2 k m is even m=2 p Thus, m and n have common factor 2 Contradiction!
- Slides: 46