Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Θεμελιώδη Θέματα Επιστήμης Υπολογιστών"

Transcript

1 Θεμελιώδη Θέματα Επιστήμης Υπολογιστών 5ο εξάμηνο ΣΕΜΦΕ 3η ενότητα: Αλγοριθμικές τεχνικές, αριθμητικοί υπολογισμοί Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής 1

2 Αλγόριθμος Webster s 50 χρόνια πριν: ανύπαρκτος όρος Oxford s, 1971: «erroneous refashioning of algorism: calculation with Arabic numerals» Abu Jaffar Mohammed Ibn Musa Al-Khowarizmi,, 9 ος αι. μ.χ. Παραδείγματα: Ευκλείδειος αλγόριθμος (Ευκλείδης, 3 ος αι. π.χ.) για εύρεση ΜΚΔ Αριθμοί Fibonacci (Leonardo Pisano Filius Bonacci, 13 ος αι. μ.χ.) Τρίγωνο Pascal (Yang Hui, 13 ος αι. μ.χ.) 2

3 Αλγόριθμος (συν.) Πρωταρχική έννοια. Μέθοδος επίλυσης προβλήματος δοσμένη ως πεπερασμένο σύνολο κανόνων (ενεργειών, διεργασιών) που επενεργούν σε δεδομένα (data). Πεπερασμένη εκτέλεση (finiteness). Κάθε κανόνας ορίζεται επακριβώς και η αντίστοιχη διεργασία είναι συγκεκριμένη (definiteness). Δέχεται μηδέν ή περισσότερα μεγέθη εισόδου (input). Δίνει τουλάχιστον ένα μέγεθος ως αποτέλεσμα (output). Μηχανιστικά αποτελεσματικός, εκτέλεση με μολύβι και χαρτί (effectiveness). 3

4 Η ιδέα του Ευκλείδη για εύρεση ΜΚΔ δύο φυσικών αριθμών if b a then GCD(a,b):= b else GCD(a,b):= GCD(b, a mod b) // a mod b = το υπόλοιπο της διαίρεσης a div b Ο Ευκλείδειος αλγόριθμος είναι ο καλύτερος γνωστός αλγόριθμος για ΜΚΔ! Ανοιχτό ερώτημα: είναι βέλτιστος; 4

5 Παράδειγμα εκτέλεσης του Ευκλείδειου αλγόριθμου ΜΚΔ των 172 και ΜΚΔ = 2 5

6 Αριθμοί Fibonacci 0, 1, 1, 2, 3, 5, 8, 13, 21, F n = F n-1 + F n-2 Πρόβλημα: δίνεται n, υπολόγισε τον F n Αναδρομή (recursion), επανάληψη (iteration), Πόσο γρήγορα μπορεί να υπολογιστεί ο F n ; O(1.618 n ), O(n), O(log n) 6

7 Τρίγωνο Pascal (Yang Hui) Διωνυμικοί συντελεστές / συνδυασμοί: (a+b) 4 = a 4 + 4a 3 b + 6a 2 b 2 + 4ab 3 + b 4 7

8 Αλγοριθμικές τεχνικές Επανάληψη (Iteration) Αναδρομή (Recursion) Επαγωγή (Induction) 8

9 Πύργοι Ανόι (Hanoi Towers) πηγή: wikipedia 9

10 Πύργοι Ανόι (Hanoi Towers) πηγή: wikipedia 10

11 Πύργοι Ανόι (Hanoi Towers): αναδρομή 11

12 Πύργοι Ανόι (Hanoi Towers): επανάληψη Επανάλαβε (μέχρι να επιτευχθεί η μετακίνηση): Μετακίνησε κατά τη θετική φορά τον μικρότερο δίσκο Κάνε την μοναδική επιτρεπτή κίνηση που δεν αφορά τον μικρότερο δίσκο 12

13 Treesort με χρήση Binary Search Tree 13

14 Δίκτυα Ταξινόμησης (Sorting Networks) Συγκριτής Δίκτυο ταξινόμησης 4 εισόδων 14

15 Four Color Theorem ( ) Πόσα χρώματα απαιτούνται για τον χρωματισμό όλων των χωρών, ώστε χώρες που συνορεύουν (με γραμμή για σύνορο) να έχουν διαφορετικό χρώμα; 15

16 Four Color Theorem ( ) Πόσα χρώματα απαιτούνται για τον χρωματισμό όλων των χωρών, ώστε χώρες που συνορεύουν (με γραμμή για σύνορο) να έχουν διαφορετικό χρώμα; 16

17 Four Color Theorem ( ) Πόσα χρώματα απαιτούνται για τον χρωματισμό όλων των χωρών, ώστε χώρες που συνορεύουν (με γραμμή για σύνορο) να έχουν διαφορετικό χρώμα; Appel - Haken (απόδειξη με πρόγραμμα!) 17

18 Μαθηματικοί συμβολισμοί (i) 18

19 Μαθηματικοί συμβολισμοί (ii) 19

20 Μαθηματικοί συμβολισμοί (iii) 20

21 Μαθηματικοί συμβολισμοί: ιδιότητες g(n)=o(f(n)) (χρησιμοποείται συχνά αντί του ορθού: g(n) Є O(f(n))) Θ(f) = O(f) Ω(f) p(n) = Θ(n k ), για κάθε πολυώνυμο p Ο(poly) = U O(n k ) (για όλα τα k Є N) 21

22 Μαθηματικοί συμβολισμοί: ιδιότητες log*n: πόσες φορές πρέπει να λογαριθμήσουμε το n για να φτάσουμε κάτω από το 1 (αντίστροφη υπερεκθετικής) A: Ackermann. α: αντίστροφη της Α. 22

23 Μαθηματικοί συμβολισμοί: ιδιότητες Θεώρημα. log(n!) = Θ(n logn) Απόδειξη: ασυμπτωτικά ισχύει (n/2) n/2 < n! < n n => 1/2 n (logn - 1) < log(n!) < n logn => 1/3 n logn < log(n!) < n logn 23

24 Πολλαπλασιασμός Ακεραίων 24

25 Πολυπλοκότητα Πολλαπλασιασμού 25

26 Απόδειξη: Τ(n) + cn T(n/2) T(n/2) T(n/2) T(n/2) + 4 c(n/2) Χρον. πολ/τα Ύψος δένδρου T(n/4) T(n/4) T(2) c(n/4) (k-1) c(n/2 (k-1) ) <(4/2) k cn 2 (logn+1) cn = O(n 2 ) T(1) T(1) k φύλλα, χρονική πολυπλ/τα α. 4 k = O(n 2 ) Συνολικά: O(n 2 ) 26

27 Βελτιωμένος Πολλαπλασιασμός (Gauss-Karatsuba) 27

28 Πολυπλοκότητα Βελτίωσης 28

29 Απόδειξη: Τ(n) + cn T(n/2) T(n/2) T(n/2) T(n/2) + 3 c(n/2) Χρον. πολ/τα Ύψος δένδρου T(n/4) T(n/4) T(2) c(n/4) (k-1) c(n/2 (k-1) ) <2. (3/2) k cn 6. (3/2) (logn) cn = O(n log3 ) T(1) T(1) k φύλλα, χρονική πολυπλ/τα α. 3 k = O(3 logn ) = O(n log3 ) Συνολικά: O(n log3 ) 29

30 Master Theorem (απλή μορφή) Αν T(n) = at(n/b) + O(n), τότε: για θετικούς ακέραιους a, b και Τ(1) = O(1) T(n) = O(n), O(n logn), O(n log ba ), αν a<b αν a=b αν a>b 30

31 Ύψος δένδρου Απόδειξη: T(n/b 2 ) T(1) T(1) Τ(n) T(n/b) T(n/b) T(n/b).. a... T(n/b 2 ) a cn + a c(n/b) + a 2 c(n/b 2 ). + a (k-1) c(n/b (k-1) ) =.. O(n), Χρον. πολ/τα cn Σ 0 k (a/b) i αν a<b O(n logn), αν a=b O(n log ba ), αν a>b a k φύλλα, χρονική πολυπλ/τα c. a k = O(a log bn ) = O(n log ba ) 31

32 Master Theorem (γενική μορφή) Αν T(n) = at(n/b) + O(n d ), τότε: για θετικούς ακέραιους a, b, d και Τ(1) = O(1) T(n) = O(n d ), O(n d logn), O(n log ba ), αν a<b d αν a=b d αν a>b d 32

33 Master Theorem: εφαρμογή Αν T(n) = at(n/b) + O(n d ), για θετικούς ακέραιους a, b, d και Τ(1) = O(1) τότε: O(n d ), αν a<b d T(n) = O(n d logn), O(n log ba ), αν a=b d αν a>b d Matrix Multiplication 'Standard' divide-and-conquer: T(n) = 8T(n/2) + O(n 2 ) => T(n) = O(n 3 ) Strassen's algorithm: T(n) = 7T(n/2) + O(n 2 ) => T(n) = O(n log7 ) 33

34 Εύρεση Μέγιστου Κοινού Διαιρέτη (gcd) Δεν είναι λογικό να ανάγεται στο πρόβλημα εύρεσης πρώτων παραγόντων γιατί αυτό δεν λύνεται αποδοτικά. Απλός αλγόριθμος: O(min(α,b)) Αλγόριθμος με αφαιρέσεις: O(max(α,b)) Αλγόριθμος του Ευκλείδη: O(log(α+b)) 34

35 Εύρεση Μέγιστου Κοινού Διαιρέτη (gcd): υλοποίηση με αναδρομή Αλγόριθμος με αφαιρέσεις: O(max(α,b)) if a=b then GCD(a,b):=a else if a>b then GCD(a,b):= GCD(a-b, b) else GCD(a,b):= GCD(a, b-a) Αλγόριθμος του Ευκλείδη: O(log(α+b)) if b=0 then GCD(a,b):= a else GCD(a,b):= GCD(b, a mod b) 35

36 Πολυπλοκότητα Ευκλείδειου Αλγορίθμου O(log max(a,b)): σε κάθε 2 επαναλήψεις ο μεγαλύτερος αριθμός υποδιπλασιάζεται (γιατί;) Ω(log max(a,b)): για ζεύγη διαδοχικών αριθμών Fibonacci F k-1, F k, χρειάζεται k επαναλήψεις, και k log F k, αφού F k φ k / 5, φ = (1+ 5)/2 (φ η χρυσή τομή). Άρα η πολυπλοκότητα του Ευκλείδειου είναι Θ(log max(a,b)) = Θ(log (a+b)) 36

37 Επεκτεταμένος Ευκλείδειος Αλγόριθμος Εκφράζει τον gcd(a,b) σαν γραμμικό συνδυασμό των a και b Επιτρέπει την εύρεση πολλαπλασιαστικού αντιστρόφου στην αριθμητική modulo n: αν gcd(a,n)=1 τότε Ext. Euclid δίνει κ,λ: κa+λn=1 Άσκηση: σχεδιάστε και υλοποιήστε τον επεκτεταμένο Ευκλείδειο αλγόριθμο 37

38 Ύψωση σε δύναμη power(a, n) result := 1; for i := 1 to n do result := result*a; return result Πολυπλοκότητα: O(n) εκθετική! (γιατί;) 38

39 ... με επαναλαμβανόμενο τετραγωνισμό (Gauss) fastpower(a, n) result := 1; while n>0 do if odd(n) then result:=result*a; n := n div 2; a := a*a return result Ιδέα: a 13 = a Πολυπλοκότητα: O(log n) - πολυωνυμική 39

40 Αριθμοί Fibonacci 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,... F 0 = 0, F 1 = 1 F n = F n-1 + F n-2, n >=2 Πρόβλημα: Δίνεται n, να υπολογιστεί το F n Πόσο γρήγορο μπορεί να είναι το πρόγραμμά μας; 40

41 Αριθμοί Fibonacci αναδρομικός αλγόριθμος Fib1 (n) if (n<2) then return n else return Fib1(n-1)+Fib1(n-2) Πολυπλοκότητα: T(n) = T(n-1) + T(n-2) + c, δηλ. η T(n) ορίζεται όπως η F(n) (συν μια σταθερά), οπότε: Τ(n) > F(n) = Ω(1.618 n ) 41

42 Αριθμοί Fibonacci καλύτερος αλγόριθμος Fib2(n) a:=0; b:=1; for i:=2 to n do c:=b; b:=a+b; a:=c; return b Πολυπλοκότητα: O(n) 42

43 Αριθμοί Fibonacci ακόμα καλύτερος αλγόριθμος Μπορούμε να γράψουμε τον υπολογισμό σε μορφή πινάκων: Από αυτό συμπεραίνουμε: Και το πλήθος των αριθμητικών πράξεων μειώνεται σε O(log n). 43

44 Αριθμοί Fibonacci ακόμα καλύτερος αλγόριθμος # αριθμητικών πράξεων: O(log n) Αυτό λέγεται Αριθμητική Πολυπλοκότητα (arithmetic complexity) Τα παραπάνω σημαίνουν ότι η αριθμητική πολυπλοκότητα του προβλήματος Fibonacci είναι O(log n) Σε προβλήματα όπου εμπλέκονται αριθμοί πολλών ψηφίων ενδιαφέρει και το πλήθος των ψηφιοπράξεων: Πολυπλοκότητα Ψηφιοπράξεων (bit complexity). 44

45 Αριθμοί Fibonacci ακόμα καλύτερος αλγόριθμος Σε προβλήματα όπου εμπλέκονται αριθμοί πολλών ψηφίων ενδιαφέρει και το πλήθος των ψηφιοπράξεων: Πολυπλοκότητα Ψηφιοπράξεων (bit complexity). Άσκηση: βρείτε την πολυπλοκότητα ψηφιοπράξεων του παραπάνω αλγορίθμου. Συγκρίνετε με τον επαναληπτικό αλγόριθμο. 45

46 Χρόνος εκτέλεσης αλγορίθμων Θεωρήστε 4 προγράμματα με αριθμό βημάτων O(2 n ), O(n 2 ), O(n), και O(logn) που το καθένα χρειάζεται 1 δευτερόλεπτο για να υπολογίσει το F(100). Πόσα δευτερόλεπτα θα χρειαστούν για να υπολογίσουν το F(n); F(100) F(101) F(110) F(200) c. 2 n c. n 2 c. n c. logn ??????

47 Πρώτοι αριθμοί και κρυπτογραφία Υπολογιστικά προβλήματα σημαντικά για κρυπτογραφία: Primality testing: Δίνεται ακέραιος n. Είναι πρώτος; Σχετικά εύκολο. Ανήκει στο P όπως έδειξαν σχετικά πρόσφατα (2002) προπτυχιακοί Ινδοί φοιτητές. Factoring (παραγοντοποίηση): Δίνεται ακέραιος n. Να βρεθούν οι πρώτοι παράγοντες του. Δεν ξέρουμε αν είναι εύκολο ή δύσκολο. Πιστεύουμε ότι είναι υπολογιστικά δύσκολο (ότι δεν ανήκει στο P), αλλά όχι τόσο δύσκολο όσο τα NP-complete προβλήματα. Για κβαντικούς υπολογιστές (που δεν έχουμε ακόμα καταφέρει να κατασκευάσουμε) είναι ευεπίλυτο. 47

48 Κρυπτογραφία δημοσίου κλειδιού Συναρτήσεις μονής κατεύθυνσης (one-way functions): εύκολο να υπολογιστούν δύσκολο να αντιστραφούν Κρυπτογραφία δημοσίου κλειδιού (κατάργησε την ανάγκη ανταλλαγής κλειδιών!): στηρίζεται στην ύπαρξη τέτοιων συναρτήσεων. Κρυπτοσύστημα RSA [Rivest-Shamir-Adleman, 1977] συνάρτηση κρυπτογράφησης: c = m e mod n Ασφάλεια RSA: δεν υπάρχει (ελπίζουμε, χρειαζόμαστε απόδειξη!) αποδοτικός τρόπος υπολογισμού του m δεδομένων των c, e, και n, αν n είναι σύνθετος (...εκτός αν γνωρίζουμε παραγοντοποίηση του n) Δηλαδή η συνάρτηση κρυπτογράφησης RSA είναι μονής κατεύθυνσης (είναι;) 48

49 Κρυπτοσύστημα RSA (i) Για να στείλει η A (Alice) στον B (Bob) ένα μήνυμα m: O B διαλέγει 2 μεγάλους πρώτους αριθμούς p και q, υπολογίζει το γινόμενο n = pq, και διαλέγει επίσης ακέραιο e σχετικά πρώτο με το φ(n) = (p-1)(q-1). Ο Β στέλνει στην Α τα n και e : δημόσιο κλειδί του Β H Α στέλνει στον Β το c = m e mod n (κρυπτογράφημα). Ο Β αποκρυπτογραφεί: m = c d mod n όπου d = e -1 (mod φ(n)) <=> de = 1 (mod φ(n)) d : ιδιωτικό κλειδί του Β 49

50 Κρυπτοσύστημα RSA (ii) Ορθότητα RSA: c d = m ed = m kφ(n)+1 = m (mod n) Παράδειγμα συστήματος RSA: p=11, q=17, n=187, e=21, d=61, m=42, c=9 Η ασφάλεια του RSA στηρίζεται στην (εκτιμώμενη, δεν υπάρχει ακόμη απόδειξη!) υπολογιστική πολυπλοκότητα της παραγοντοποίησης (factoring). Η λειτουργία του RSA στηρίζεται σε αποδοτικούς αλγόριθμους για: primality testing (Miller-Rabin), ύψωση σε δύναμη modulo n (επαναλαμβανόμενος τετραγωνισμός) και εύρεση αντιστρόφου modulo φ(n) (επεκτεταμένος Ευκλείδειος). 50

51 Ψηφοφορίες (social choice) Εκλογές (βουλευτικές, πρυτανικές ;-)) Λήψη αποφάσεων σε εταιρείες, οργανισμούς,... Χρήση στον παγκόσμιο ιστό: ιστοσελίδες "ψηφίζουν" ιστοσελίδες δείχνοντας σε αυτές χρήστες "ψηφίζουν" ιστοσελίδες ανάλογα με τον χρόνο που ξοδεύουν σε αυτές Κοινωνικά δίκτυα (social networks) friends, followers 51

52 Ψηφοφορίες (social choice) Πληθώρα εκλογικών συστημάτων Το πλειοψηφικό δεν είναι πάντα δίκαιο: 20 z 24 y 26 x 30 w x z z z y x y x w w w y Ο νικητής υποστηρίζεται μόνο από το 30% Είναι τελευταία προτίμηση για το 70%! 52

53 Ψηφοφορίες: κι άλλα παράδοξα Και το "απόλυτο" πλειοψηφικό παρουσιάζει παράδοξα: οι x, w περνούν στον 2 ο γύρο ο x κερδίζει με 70%, παρ όλο που 74% προτιμούν τον z από τον x (ο z έφυγε από τον 1 ο γύρο!) z x y w y z x w x z y w w z x y 53

54 Ψηφοφορίες: υπολογιστικές προκλήσεις Δικαιότερα συστήματα μπορεί να απαιτούν πολύ μεγάλο χρόνο υπολογισμού του νικητή (υπολογιστικά απρόσιτο) για το σύστημα του Dodgson (γνωστός και ως Lewis Caroll, 19 ος αιώνας) το πρόβλημα είναι πλήρες για μια κλάση πολυπλοκότητας ευρύτερη της NP Θέλουμε ο υπολογισμός του νικητή να είναι υπολογιστικά προσιτός 54

55 Ψηφοφορίες: υπολογιστικές προκλήσεις Θεώρημα Gibbard- Satterthwaite (1973): «Πέρα από κάποιες τετριμμένες περιπτώσεις, όλα τα συστήματα ψηφοφορίας είναι χειραγωγήσιμα (εκτός αν είναι δικτατορικά)!» Θέλουμε η χειραγώγηση να είναι δύσκολη (υπολογιστικά απρόσιτη) 55

56 Μη συνεργατικά παίγνια Παίκτες (agents: χρήστες, οντότητες λογισμικού, συστήματα) ανταγωνίζονται, συνήθως για διεκδίκηση πόρων Κάθε παίκτης αποφασίζει μόνο τη δική του στρατηγική στόχος: ελαχιστοποίηση ατομικού κόστους Το ατομικό κόστος εξαρτάται από τις στρατηγικές όλων 56

57 Μη συνεργατικά παίγνια Ισορροπία Nash: κανείς δεν βελτιώνει το ατομικό του κόστος αλλάζοντας μόνο τη δική του στρατηγική. Nash (1952): απέδειξε ότι πάντα υπάρχει τέτοια ισορροπία (αλλά μπορεί να είναι μεικτή mixed). Η ισορροπία Nash αποτελεί «λύση» του συστήματος: αν οι παίκτες συμπεριφερθούν στρατηγικά και λογικά και έχουν στη διάθεσή τους πλήρη γνώση και επαρκή χρόνο, τότε καταλήγουν σε μία ισορροπία Nash. 57

58 Ισορροπία Nash Δίλημμα φυλακισμένων: συλλαμβάνονται δύο διαρρήκτες, συνεργάτες σε μεγάλη κλοπή. Κρατούνται σε χωριστά κελιά χωρίς επικοινωνία Β Α Β καταδίδει Β δεν καταδίδει Α καταδίδει 5, 5 0, 15 Α δεν καταδίδει 15, 0 1, 1 Αποτέλεσμα: αμφότεροι καταδίδουν! Ισορροπία Nash δεν βελτιστοποιεί συνολικό αποτέλεσμα 58

59 Ισορροπία Nash: ερωτήματα Τίμημα αναρχίας: πόσο "άσχημα" μπορεί να συμπεριφερθεί το σύστημα; Λόγος συνολικού κόστους χειρότερης ισορροπίας προς βέλτιστη συνεργατική λύση [Koutsoupias, Papadimitriou, 1999] Μπορούμε να βρούμε την "χειρότερη" ισορροπία; Οποιαδήποτε ισορροπία; σύμφωνα με ισχυρές ενδείξεις δυσεπίλυτο πρόβλημα: πλήρες για την κλάση PPAD. [Daskalakis, Goldberg, Papadimitriou, 2005] [Chen, Deng, 2005] «If your laptop can't find it, neither can the market!» - Kamal Jain (Microsoft Research) 59

60 Linear Programming 60

61 Επιτυχίες-σταθμοί Θεωρίας Αλγορίθμων και Πολυπλοκότητας Linear Programming [Dantzig - von Neumann, 1947, Khachiyan, 1979, Karmakar, 1984] Fast Fourier Transform [Cooley-Tukey, 1965 (αλλά και Gauss, 1805)] NP-πληρότητα [Cook-Karp, ]: αδυναμία αποδοτικής επίλυσης πολλών σημαντικών προβλημάτων Κρυπτογραφία δημοσίου κλειδιού [Diffie-Hellman, Rivest-Shamir-Adleman, ] 61

62 Επιτυχίες-σταθμοί Θεωρίας Αλγορίθμων και Πολυπλοκότητας Pagerank (Google) [Page-Brin-Motwani-Winograd, ] Κβαντικοί υπολογισμοί [Shor, 1996]: παραγοντοποίηση σε πολυωνυμικό χρόνο Θεώρημα PCP, μη-προσεγγισιμότητα [Arora-Feige-Goldwasser-Lund-Lovasz-Motwani-Safra- Sudan-Szegedy, ] Δυσκολία υπολογισμού ισορροπιών Nash [Goldberg-Daskalakis-Papadimitriou, Chen-Deng, 2005] Bitcoin [Satoshi Nakamoto, 2008] 62

63 Συμπεράσματα Πολλά σύγχρονα συστήματα στηρίζονται στην ταχύτητα υπολογισμών που επιτυγχάνεται μέσω αποδοτικών αλγορίθμων. Η υπολογιστική δυσκολία ορισμένων προβλημάτων (π.χ. factoring) μπορεί να είναι επιθυμητή (κρυπτογραφία, εκλογές). Τα μαθηματικά είναι πάντα επίκαιρα! 63

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών Θεμελιώδη Θέματα Επιστήμης Υπολογιστών 5ο εξάμηνοσεμφε 2η ενότητα: Αλγοριθμικές τεχνικές, αριθμητικοί υπολογισμοί Διδάσκοντες Θεωρία: Στάθης Ζάχος, Άρης Παγουρτζής Εργαστήριο: Δώρα Σούλιου Βοηθός διδασκαλίας:

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσhmμy 4η ενότητα: Αλγοριθμικές τεχνικές, αριθμητικοί υπολογισμοί Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής http://www.corelab.ece.ntua.gr/courses/introcs

Διαβάστε περισσότερα

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών Θεμελιώδη Θέματα Επιστήμης Υπολογιστών 5ο εξάμηνοσεμφε 2η ενότητα: Αλγοριθμικές τεχνικές, αριθμητικοί υπολογισμοί Διδάσκοντες Θεωρία: Στάθης Ζάχος, Άρης Παγουρτζής Εργαστήριο: Δώρα Σούλιου Βοηθός διδασκαλίας:

Διαβάστε περισσότερα

Θεµελιώδη Θέµατα. 5ο εξάµηνο ΣΕΜΦΕ. Αλγοριθµικές τεχνικές, αριθµητικοί υπολογισµοί. 3η ενότητα:

Θεµελιώδη Θέµατα. 5ο εξάµηνο ΣΕΜΦΕ. Αλγοριθµικές τεχνικές, αριθµητικοί υπολογισµοί. 3η ενότητα: Θεµελιώδη Θέµατα Επιστήµης Υπολογιστών 5ο εξάµηνο ΣΕΜΦΕ 3η ενότητα: Αλγοριθµικές τεχνικές, αριθµητικοί υπολογισµοί Επιµέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής http://www.corelab.ece.ntua.gr/courses/focs

Διαβάστε περισσότερα

Webster s 50 χρόνια πριν: ανύπαρκτος όρος Oxford s, 1971: «erroneous refashioning of algorism: calculation with Arabic numerals»

Webster s 50 χρόνια πριν: ανύπαρκτος όρος Oxford s, 1971: «erroneous refashioning of algorism: calculation with Arabic numerals» Αλγόριθμος Webster s 50 χρόνια πριν: ανύπαρκτος όρος Oxford s, 1971: «erroneous refashioning of algorism: calculation with Arabic numerals» Abu Jaffar Mohammed Ibn Musa Al-Khowarizmi, μ.χ. 9 ος αι.,الخوارزمي

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνο ΣΕΜΦΕ http://www.corelab.ece.ntua.gr/courses/ 1η ενότητα: Εισαγωγή, Αλγόριθμοι ιδάσκοντες Στάθης Ζάχος, Άρης Παγουρτζής, Κλειώ Σγουροπούλου Βοηθός διδασκαλίας:

Διαβάστε περισσότερα

Επιτυχίες της Αλγοριθμικής. Εισαγωγή στην Επιστήμη των Υπολογιστών. Περιεχόμενα. Εισαγωγή. Εισαγωγή. Κεντρικό ερώτημα Επιστήμης Υπολογιστών

Επιτυχίες της Αλγοριθμικής. Εισαγωγή στην Επιστήμη των Υπολογιστών. Περιεχόμενα. Εισαγωγή. Εισαγωγή. Κεντρικό ερώτημα Επιστήμης Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσεμφε http://www.corelab.ece.ntua.gr/courses/ 1η ενότητα: Εισαγωγή, Αλγόριθμοι ιδάσκοντες Στάθης Ζάχος, Άρης Παγουρτζής, Κλειώ Σγουροπούλου Βοηθός διδασκαλίας:

Διαβάστε περισσότερα

Αριθμοθεωρητικοί Αλγόριθμοι

Αριθμοθεωρητικοί Αλγόριθμοι Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος

Διαβάστε περισσότερα

Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Διαίρει-και-Βασίλευε Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική

Διαβάστε περισσότερα

Κρυπτοσύστημα RSA (Rivest, Shamir, Adlemann, 1977) Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτοσύστημα RSA (Rivest, Shamir, Adlemann, 1977) Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Κρυπτογραφία Δημοσίου Κλειδιού Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Κρυπτοσύστημα

Διαβάστε περισσότερα

Κρυπτογραφία Δημοσίου Κλειδιού

Κρυπτογραφία Δημοσίου Κλειδιού Στοιχεία Θεωρίας Αριθμών και Εφαρμογές στην Κρυπτογραφία Κρυπτογραφία Δημοσίου Κλειδιού Άρης Παγουρτζής Στάθης Ζάχος Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Εθνικού Mετσόβιου Πολυτεχνείου

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνο Σ.H.M.Μ.Y. & Σ.Ε.Μ.Φ.Ε. http://www.corelab.ece.ntua.gr/courses/ 1η ενότητα: Εισαγωγή, Αλγόριθμοι Επιμέλεια: Πάνος Χείλαρης, Βαγγέλης Μπαμπάς, Γεωργία Καούρη

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός Επιμέλεια διαφανειών: Δημήτρης Φωτάκης (λίγες προσθήκες: Άρης Παγουρτζής) Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα

Διαβάστε περισσότερα

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών http://www.corelab.ntua.gr/courses/ Θεμελιώδη Θέματα Επιστήμης Υπολογιστών 5ο εξάμηνο ΣΕΜΦΕ Ενότητα 0: Εισαγωγή Διδάσκοντες: Στάθης Ζάχος, Άρης Παγουρτζής Υπεύθυνη εργαστηρίου / ασκήσεων: Δώρα Σούλιου

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 10: Αριθμητική υπολοίπων - Κυκλικές ομάδες: Διαιρετότητα - Ευκλείδειος αλγόριθμος - Κατάλοιπα Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Εισαγωγή Άρης Παγουρτζής Στάθης Ζάχος Σχολή ΗΜΜΥ ΕΜΠ Διοικητικά του μαθήματος Διδάσκοντες Στάθης Ζάχος Άρης Παγουρτζής Πέτρος Ποτίκας (2017-18) Βοηθοί διδασκαλίας Παναγιώτης Γροντάς

Διαβάστε περισσότερα

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας Κρυπτογραφία Έλεγχος πρώτων αριθών-παραγοντοποίηση Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ Κρυπτογραφία

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Χρήστος Κούτρας Γιώργος

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Θεωρία Υπολογισµού Theory of Computation

Θεωρία Υπολογισµού Theory of Computation 1 ο µέρος Θεωρία Υπολογισµού Theory of Computation 1 Υπολογισιµότητα - Computability o Υπολογισιµότητα (Computability) n Τι µπορεί να υπολογιστεί και τι όχι; o Υπολογιστική πολυπλοκότητα (Computational

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε: Συµβολισµός Ω( ) Τάξη των Συναρτήσεων () Εκτίµηση Πολυπλοκότητας Αλγορίθµων Ορέστης Τελέλης telelis@unipi.gr Ορισµός. Εστω συναρτήσεις: f : N R και g : N R η f(n) είναι Ω( g(n) ) αν υπάρχουν σταθερές C

Διαβάστε περισσότερα

Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε»

Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε» Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε» ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε

Διαβάστε περισσότερα

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 Η Aσύμμετρη Kρυπτογραφία ή Κρυπτογραφία Δημοσίου Κλειδιού χρησιμοποιεί δύο διαφορετικά κλειδιά για την κρυπτογράφηση και αποκρυπτογράφηση. Eπινοήθηκε στο τέλος της δεκαετίας

Διαβάστε περισσότερα

Υπολογιστική Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθµου Α: Ποσότητα υπολογιστικών πόρων που απαιτεί Α ως αύξουσα συνάρτηση µεγέθους στιγµιότυπου εισόδου. Χρόνος, µνήµη, επεξεργαστές, επικοινωνία,

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Δημήτριος Μπάκας Αθανάσιος

Διαβάστε περισσότερα

Αλγόριθμοι. Κεφάλαιο Αλγόριθμοι και Πολυπλοκότητα Τι είναι αλγόριθμος

Αλγόριθμοι. Κεφάλαιο Αλγόριθμοι και Πολυπλοκότητα Τι είναι αλγόριθμος Κεφάλαιο 5 Αλγόριθμοι 5.1 Αλγόριθμοι και Πολυπλοκότητα Η ονομασία Αλγόριθμος προέρχεται από το όνομα του Αραβα Μαθηματικού Al-Khowârizmi (με καταγωγή από το Ουζμπεκιστάν, που έζησε στη Βαγδάτη τον 9ο αιώνα

Διαβάστε περισσότερα

ΕΥΡΕΣΗ ΜΕΓΙΣΤΟΥ ΚΟΙΝΟΥ ΔΙΑΙΡΕΤΗ

ΕΥΡΕΣΗ ΜΕΓΙΣΤΟΥ ΚΟΙΝΟΥ ΔΙΑΙΡΕΤΗ ΕΥΡΕΣΗ ΜΕΓΙΣΤΟΥ ΚΟΙΝΟΥ ΔΙΑΙΡΕΤΗ Το πρόβλημα: Δεδομένα: δύο ακέραιοι a και b Ζητούμενο: ο μέγιστος ακέραιος που διαιρεί και τους δύο δοσμένους αριθμούς, γνωστός ως Μέγιστος Κοινός Διαιρέτης τους (Greatest

Διαβάστε περισσότερα

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1 Διαίρει-και-Βασίλευε Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική μέθοδος

Διαβάστε περισσότερα

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτογραφία Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτοσυστήματα Δημοσίου κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Προτάθηκαν το 1976 Κάθε συμμετέχων στο

Διαβάστε περισσότερα

Διαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2

Διαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Καλογερόπουλος Παναγιώτης

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ασύμμετρη Κρυπτογράφηση (Κρυπτογραφία Δημόσιου Κλειδιού) Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνο ΣHMΜY 4η ενόηηηα: Αιγνξηζκηθέο ηερληθέο, αξηζκεηηθνί ππνινγηζκνί Επιμέλεια διαθανειών: Σηάζεο Εάρνο, Άξεο Παγνπξηδήο http://www.corelab.ece.ntua.gr/courses/introcs

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Θεωρία αριθμών Αλγεβρικές δομές. Χρήστος Ξενάκης

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Θεωρία αριθμών Αλγεβρικές δομές. Χρήστος Ξενάκης Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Κρυπτογραφία Θεωρία αριθμών Αλγεβρικές δομές Χρήστος Ξενάκης Το σύνολο των ακεραίων Ζ = {..., -2, -1, 0, 1, 2,...} Το σύνολο των φυσικών Ν = {0, 1, 2,...}

Διαβάστε περισσότερα

Αλγοριθμική Θεωρία Παιγνίων

Αλγοριθμική Θεωρία Παιγνίων Αλγοριθμική Θεωρία Παιγνίων ιδάσκοντες: E. Ζάχος, Α. Παγουρτζής,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Πολύπλοκα Συστήματα

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

ΑΛΓΟΡΙΘΜΟΙ  Άνοιξη I. ΜΗΛΗΣ ΑΛΓΟΡΙΘΜΟΙ http://eclass.aueb.gr/courses/inf161/ Άνοιξη 2016 - I. ΜΗΛΗΣ ΠΑΡΑΔΕΙΓΜΑΤΑ ΑΛΓΟΡΙΘΜΩΝ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΑΛΓΟΡΙΘΜΟΙ - ΑΝΟΙΞΗ 2016 - Ι. ΜΗΛΗΣ - 03 - EXAMPLES ALG & COMPL 1 Example: GCD συνάρτηση

Διαβάστε περισσότερα

Εισαγωγή στην Ανάλυση Αλγορίθμων

Εισαγωγή στην Ανάλυση Αλγορίθμων Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα 7ο εξάμηνο ΣHMΜY Εισαγωγή Διδάσκοντες: Άρης Παγουρτζής, Δώρα Σούλιου Στάθης Ζάχος, Δημήτρης Σακαβάλας Επιμέλεια διαφανειών: Άρης Παγουρτζής www.corelab.ntua.gr/courses/algorithms

Διαβάστε περισσότερα

Πρόβληµα 2 (15 µονάδες)

Πρόβληµα 2 (15 µονάδες) ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ, 2013-2014 ΔΙΔΑΣΚΩΝ: Ε. Μαρκάκης Πρόβληµα 1 (5 µονάδες) 2 η Σειρά Ασκήσεων Προθεσµία Παράδοσης: 19/1/2014 Υπολογίστε

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 2.0 Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Πολυπλοκότητα Αναδρομικές Σχέσεις Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Διαίρει και Βασίλευε Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαίρει και Βασίλευε Divide and Conquer Η τεχνική διαίρει και βασίλευε αναφέρεται

Διαβάστε περισσότερα

* * * ( ) mod p = (a p 1. 2 ) mod p.

* * * ( ) mod p = (a p 1. 2 ) mod p. Θεωρια Αριθμων Εαρινο Εξαμηνο 2016 17 Μέρος Α: Πρώτοι Αριθμοί Διάλεξη 1 Ενότητα 1. Διαιρετότητα: Διαιρετότητα, διαιρέτες, πολλαπλάσια, στοιχειώδεις ιδιότητες. Γραμμικοί Συνδυασμοί (ΓΣ). Ενότητα 2. Πρώτοι

Διαβάστε περισσότερα

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρήτης ΕΠΠ Εργαστήριο Ασφάλεια Πληροφοριακών Συστηµάτων ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρητης Τµηµα Εφαρµοσµενης Πληροφορικης Και Πολυµεσων Fysarakis Konstantinos, PhD kfysarakis@staff.teicrete.gr Εισαγωγή

Διαβάστε περισσότερα

Αλγοριθμική Θεωρία Παιγνίων: Εισαγωγή και Βασικές Έννοιες

Αλγοριθμική Θεωρία Παιγνίων: Εισαγωγή και Βασικές Έννοιες Αλγοριθμική Θεωρία Παιγνίων: Εισαγωγή και Βασικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Πολύπλοκα Συστήματα αποτελούνται από πολλές

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Ζωή Παρασκευοπούλου Νίκος

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Υπολογιστική

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών

Στοιχεία Θεωρίας Αριθμών Ε Μ Π Σ Ε Μ & Φ Ε Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Κωστής Γ Διδάσκοντες: Στάθης Ζ Άρης Π 9 Δεκεμβρίου 2011 1 Πιθανές Επιθέσεις στο RSA Υπενθύμιση

Διαβάστε περισσότερα

Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018

Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018 Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018 Αλγόριθμοι Ρυθμός αύξησης συναρτήσεων [Rosen 3.2] Αριθμητικές συναρτήσεις Τάξη αριθμητικών συναρτήσεων

Διαβάστε περισσότερα

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Τμήμα Μηχ. Πληροφορικής ΤΕΙ Κρήτης Κρυπτογραφία Δημόσιου Κλειδιού -RSA 1 Κρυπτογραφία Δημόσιου Κλειδιού - Ιστορία Ηνωμένες Πολιτείες 1975: Ο Diffie οραματίζεται

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

Στοιχεία Αλγορίθµων και Πολυπλοκότητας

Στοιχεία Αλγορίθµων και Πολυπλοκότητας Στοιχεία Αλγορίθµων και Πολυπλοκότητας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Πολυπλοκότητα 1 / 16 «Ζέσταµα» Να γράψετε τις συναρτήσεις

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Κρυπτογραφία Ασύμμετρη Κρυπτογραφία Χρήστος Ξενάκης Ασύμμετρη κρυπτογραφία Μονόδρομες συναρτήσεις με μυστική πόρτα Μια συνάρτηση f είναι μονόδρομη, όταν δοθέντος

Διαβάστε περισσότερα

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Ανάλυση Αλγορίθμων Θέματα Θέματα: Ορθότητα Χρονική αποδοτικότητα Χωρική αποδοτικότητα Βελτιστότητα Προσεγγίσεις: Θεωρητική ανάλυση Εμπειρική ανάλυση Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Θεωρητική

Διαβάστε περισσότερα

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ Κρυπτογραφία Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ησυνάρτησηφ(.) του Euler Για κάθε ακέραιο n> 0, έστω φ(n) το πλήθος των ακεραίων στο διάστημα [1, n] που

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 4: Αναδρομικές σχέσεις και ανάλυση αλγορίθμων Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ Μαθηματικά Πληροφορικής 2ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Εξαντλητική μέθοδος

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Εξαντλητική μέθοδος Μορφές αποδείξεων Μαθηματικά Πληροφορικής ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδίαση & Ανάλυση Αλγορίθμων Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 1 Αλγόριθμοι και Πολυπλοκότητα Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Εισαγωγή Ας ξεκινήσουμε

Διαβάστε περισσότερα

Αριθµοθεωρητικοί Αλγόριθµοι και το. To Κρυπτοσύστηµα RSA

Αριθµοθεωρητικοί Αλγόριθµοι και το. To Κρυπτοσύστηµα RSA Αριθµοθεωρητικοί Αλγόριθµοι και το Κρυπτοσύστηµα RSA Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Υπολογισµός Μέγιστου Κοινού ιαιρέτη Αλγόριθµος του Ευκλείδη Κλάσεις Ισοδυναµίας και Αριθµητική modulo

Διαβάστε περισσότερα

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3)

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Διαιρετότητα Ορισμός

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ Υπολογιστική

Διαβάστε περισσότερα

Ασυμπτωτικός Συμβολισμός

Ασυμπτωτικός Συμβολισμός Ασυμπτωτικός Συμβολισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθμου Α: Ποσότητα

Διαβάστε περισσότερα

Αλγεβρικές Δομές και Αριθμοθεωρία

Αλγεβρικές Δομές και Αριθμοθεωρία Κεφάλαιο 9 Αλγεβρικές Δομές και Αριθμοθεωρία 9.1 Εισαγωγή Θα παρουσιάσουμε κάποια στοιχεία από Θεωρία Αριθμών και ελάχιστα από Θεωρία Ομάδων. Οι γνώσεις αυτές είναι οι ελάχιστες απαραίτητες για την κατανόηση

Διαβάστε περισσότερα

Εθνικό Μετσόβιο Πολυτεχνείο

Εθνικό Μετσόβιο Πολυτεχνείο Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία PROJECT Συνοπτική Παρουσίαση του Κβαντικού Αλγόριθμου Παραγοντοποίησης

Διαβάστε περισσότερα

Αναδρομικοί Αλγόριθμοι

Αναδρομικοί Αλγόριθμοι Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 ΕΠΙΜΕΛΕΙΑ :ΣΤΟΥΚΑ ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΜΕΤΑΠΤΥΧΙΑΚΟ:ΜΠΛΑ

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 ΕΠΙΜΕΛΕΙΑ :ΣΤΟΥΚΑ ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΜΕΤΑΠΤΥΧΙΑΚΟ:ΜΠΛΑ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 ΕΠΙΜΕΛΕΙΑ :ΣΤΟΥΚΑ ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΜΕΤΑΠΤΥΧΙΑΚΟ:ΜΠΛΑ Η Alice θέλει να στείλει ένα μήνυμα m(plaintext) στον Bob μέσα από ένα μη έμπιστο κανάλι και να μην μπορεί να το

Διαβάστε περισσότερα

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το

Διαβάστε περισσότερα

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ησυνάρτησηφ(.) του Euler Για κάθε ακέραιο n> 0, έστω φ(n) το πλήθος των ακεραίων στο διάστημα

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

project RSA και Rabin-Williams

project RSA και Rabin-Williams Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών project RSA και Rabin-Williams Στοιχεία Θεωρίας Αριθμών& Εφαρμογές στην Κρυπτογραφία Ονοματεπώνυμο Σπουδαστών: Θανάσης Ανδρέου

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 25 Φεβρουαρίου 2015 1 / 53 Περιεχόµενα

Διαβάστε περισσότερα

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο.

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο. Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο. Πού χρειάζεται; Πολλές μαθηματικές συναρτήσεις ορίζονται αναδρομικά. Δεν είναι

Διαβάστε περισσότερα

2.1 Διαιρετότητα, ισοϋπόλοιποι αριθμοί. q Z, a = b q + r.

2.1 Διαιρετότητα, ισοϋπόλοιποι αριθμοί. q Z, a = b q + r. Κεφάλαιο 2 Θεωρία Αριθμών Κύριες βιβλιογραφικές αναφορές για αυτό το Κεφάλαιο είναι οι Hardy and Wright 1979 και Graham, Knuth, and Patashnik 1994. 2.1 Διαιρετότητα, ισοϋπόλοιποι αριθμοί Θεώρημα 2.1 Αν

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 11: Αριθμητική υπολοίπων-δυνάμεις Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ασύμμετρα Κρυπτοσυστήματα κλειδί κρυπτογράφησης k1 Αρχικό κείμενο (m) (δημόσιο κλειδί) Αλγόριθμος

Διαβάστε περισσότερα

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας ιδιότητες ασϕάλειας ιδιότητες ασϕάλειας αγαθών Εμπιστευτικότητα (Confidentiality)

Διαβάστε περισσότερα

Διακριτά Μαθηματικά Εισαγωγή Αλγόριθμοι ακεραίων, πολυπλοκότητα, στοιχεία θεωρίας αριθμών

Διακριτά Μαθηματικά Εισαγωγή Αλγόριθμοι ακεραίων, πολυπλοκότητα, στοιχεία θεωρίας αριθμών ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ Τμήμα Εφαρμοσμένης Πληροφορικής Διακριτά Μαθηματικά Εισαγωγή Αλγόριθμοι ακεραίων, πολυπλοκότητα, στοιχεία θεωρίας αριθμών Οργάνωση μαθήματος Διδάσκοντες Στεφανίδης Γεώργιος, Καθηγητής

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

Κεφάλαιο 5 Ανάλυση Αλγορίθμων Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι

Διαβάστε περισσότερα

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ ΕΝΟΤΗΤΑ 1 ΕΙΣΑΓΩΓΗ 1 εδοµένα Σύνολο από πληροφορίες που πρέπει να αποθηκευτούν σε έναν υπολογιστή Υπολογιστικό Μοντέλο ένας επεξεργαστής και µεγάλος

Διαβάστε περισσότερα

Εισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας

Εισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας Εισαγωγή στους Αλγόριθμους Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr 1 Περιεχόμενα Μαθήματος Εισαγωγή στου Αλγόριθμους Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Ανάλυση Θεωρία Γράφων Κλάσεις Πολυπλοκότητας

Διαβάστε περισσότερα

Διαιρετότητα Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία. Ακέραια διαίρεση. Διαιρετότητα. ΜΚΔ: χρήσιμες ιδιότητες

Διαιρετότητα Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία. Ακέραια διαίρεση. Διαιρετότητα. ΜΚΔ: χρήσιμες ιδιότητες Διαιρετότητα Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Εισαγωγή στη Θεωρία Αριθμών Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών H διαιρετότητα

Διαβάστε περισσότερα

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κεφάλαιο 21 Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κρυπτογράφηση δημόσιου κλειδιού RSA Αναπτύχθηκε το 1977 από τους Rivest, Shamir και Adleman στο MIT Ο πιο γνωστός και ευρέως

Διαβάστε περισσότερα

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,... KΕΦΑΛΑΙΟ ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ Βασικές έννοιες διαιρετότητας Θα συµβολίζουµε µε, τα σύνολα των φυσικών αριθµών και των ακεραίων αντιστοίχως: {,,3,,, } { 0,,,,, } = = ± ± ± Ορισµός Ένας φυσικός αριθµός

Διαβάστε περισσότερα

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings Cryptography and Network Security Chapter 9 Fifth Edition by William Stallings Chapter 9 Κρυπτογραφια Δημοσιου Κλειδιου και RSA Every Egyptian received two names, which were known respectively as the true

Διαβάστε περισσότερα

Αναδρομή Ανάλυση Αλγορίθμων

Αναδρομή Ανάλυση Αλγορίθμων Αναδρομή Ανάλυση Αλγορίθμων Παράδειγμα: Υπολογισμός του παραγοντικού Ορισμός του n! n! = n x (n - 1) x x 2 x 1 Ο παραπάνω ορισμός μπορεί να γραφεί ως n! = 1 αν n = 0 n x (n -1)! αλλιώς Παράδειγμα (συνέχ).

Διαβάστε περισσότερα

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ Μαθηματικά Πληροφορικής 4ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσhmμy 3η ενότητα: Βασικές έννοιες θεωρίας υπολογισμού: υπολογιστικά προβλήματα, υπολογισιμότητα, πολυπλοκότητα Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

Δυναμικός Προγραμματισμός Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεωρία Παιγνίων και Αποφάσεων Διδάσκων: Ε. Μαρκάκης, Εαρινό εξάμηνο 2015 Λύσεις 2η σειράς ασκήσεων Προθεσμία παράδοσης: 18 Μαίου 2015 Πρόβλημα 1. (14

Διαβάστε περισσότερα

5.1. Προσδοκώμενα αποτελέσματα

5.1. Προσδοκώμενα αποτελέσματα 5.1. Προσδοκώμενα αποτελέσματα Όταν θα έχεις ολοκληρώσει τη μελέτη αυτού του κεφαλαίου θα έχεις κατανοήσει τις τεχνικές ανάλυσης των αλγορίθμων, θα μπορείς να μετράς την επίδοση των αλγορίθμων με βάση

Διαβάστε περισσότερα