Υπολογιστική Κρυπτογραφία

Τύπος
Επιλογής
Περιγραφή μαθήματος

Κλασική κρυπτογραφία: κρυπτοσυστήματα αντικατάστασης, Καίσαρα, Vigenere, μέθοδοι κρυπτανάλυσης. Τέλειαμυστικότητα (Shannon), one-time pad. Semantic security, CPA, CCA, PCPA. Συμμετρική κρυπτογραφία. Ψευδοτυχαιότητα, κρυπτοσυστήματα ροής. Κρυπτοσυστήματα τμήματος: δίκτυα Feistel, DES, AES. Τρόποι λειτουργίας. Κώδικες πιστοποίησης γνησιότητας (MACs). Συναρτήσεις κατακερματισμού (hash functions). Στοιχεία θεωρίας αριθμών: διαιρετότητα, αριθμητική υπολοίπων, τετραγωνικά υπόλοιπα, Κινέζικο Θεώρημα Υπολοίπων. Στοιχεία θεωρίας ομάδων, θεώρημα Legendre, συνάρτηση φ του Euler. Έλεγχος πρώτων αριθμών. Κρυπτογραφία δημοσίου κλειδιού. Κρυπτοσυστήματα RSA και Rabin, σχέση με πρόβλημα παραγοντοποίησης. Το πρόβλημα του διακριτού λογαρίθμου, σύστημα El Gamal. Ανταλλαγή κλειδιού Diffie – Hellman. Ψηφιακές Υπογραφές: RSA, DSS, τυφλές υπογραφές. Κρυπτογραφικά πρωτόκολλα: διαμοιρασμός μυστικού, σχήματα αναγνώρισης, e-voting, ασφαλής υπολογισμών πολλών μερών, Bitcoin. Αποδείξεις μηδενικής γνώσης. Στοιχεία θεωρίας πολυπλοκότητας, μονόδρομες συναρτήσεις. Προχωρημένα θέματα: ελλειπτικές καμπύλες, κρυπτογραφία βασισμένη σε lattices, κρυπτογραφία συζεύξεων, συσκότιση κώδικα, μετα-κβαντική κρυπτογραφία.

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

Τύπος
Κατ' επιλογήν υποχρεωτικό
Ομάδα
Α
Περιγραφή μαθήματος

Ορισμός κλάσεων πολυπλοκότητας με βάση τις ακόλουθες παραμέτρους: α) Το υπολογιστικό μοντέλο (προγράμματα σε γλώσσα υψηλής βαθμίδος, μηχανές Turing κτλ.), β) Τον τρόπο υπολογισμού (ντετερμινιστικό, μη ντετερμινιστικό, πιθανοτικό κτλ.), γ) Τον περιορισμό των πόρων (πολυωνυμικός χρόνος, λογαριθμικός χώρος, σταθερός αριθμός επεξεργαστών, κτλ.). Μελέτη κλάσεων πολυπλοκότητας και των μεταξύ τους σχέσεων. Σχέσεις μεταξύ κλάσεων πολυπλοκότητας. Ιεραρχίες, αναγωγές και πληρότητα, ΝΡ - πλήρη προβλήματα, Co-NP και κλάσεις συναρτήσεων. Πιθανοτικοί υπολογισμοί και πολυπλοκότητα κυκλωμάτων, κρυπτογραφία, μονόδρομες συναρτήσεις. Πρωτόκολλα, προσεγγισιμότητα και μη προσεγγισιμότητα, P vs. NP. Ισομορφισμός, μαντεία, μονότονα κυκλώματα, παράλληλοι υπολογισμοί. Κλάσεις NC και RNC, λογαριθμικός χώρος, κλάση L. Προσεγγιστικοί αλγόριθμοι. Η πολυωνυμική ιεραρχία. Προβλήματα βελτιστοποίησης, μετρητικές κλάσεις, η κλάση #P. Πολυωνυμικός χώρος, PSPACE. Παίγνια και διαλογικά πρωτόκολλα, εκθετικός χρόνος κ.α..

Μοντέλα υπολογισμού, Τυπικές Γλώσσες και Αυτόματα

Τύπος
Επιλογής
Περιγραφή μαθήματος

Υπολογισιμότητα: Λογική θεμελίωση πληροφορικής. Ιστορική αναδρομή στο πρόβλημα αποκρισιμότητας μαθηματικών προτάσεων, επιλυσιμότητας ή υπολογισιμότητας προβλημάτων με μηχανιστικό, δηλαδή αλγοριθμικό, τρόπο. Απλά ισοδύναμα υπολογιστικά μοντέλα: μηχανές Turing, προγράμματα WHILE. Επαγωγή και αναδρομή, κωδικοποίηση και σημασιολογία. Θεωρία σταθερού σημείου. Μαντεία και Αριθμητική ιεραρχία. Θεωρία αυτομάτων και τυπικών γραμματικών: Πεπερασμένα αυτόματα. Κανονικά σύνολα και ισοδύναμοι χαρακτηρισμοί. Ιεραρχία Chomsky. Αποδείξεις για το εάν L∈C ή L∉C. Εφαρμογές στο συντακτικό γλωσσών προγραμματισμού. Πολυπλοκότητα: Σχέσεις μεταξύ κλάσεων πολυπλοκότητας. Αναγωγές και Πληρότητα.  Πολυωνυμική ιεραρχία. Πιθανοτικές, διαλογικές και μετρητικές κλάσεις. Παραμετρική πολυπλοκότητα. Κβαντική πολυπλοκότητα.

Συνδυαστική

Τύπος
Κατ' επιλογήν υποχρεωτικό
Ομάδα
Γ
Περιγραφή μαθήματος

Απαρίθμηση και γεννήτριες συναρτήσεις, μεταθέσεις και πολυώνυμα Euler, εκθετικές γεννήτριες συναρτήσεις, ο εκθετικός τύπος, ο τύπος αντιστροφής του Lagrange και εφαρμογές στην απαρίθμηση δένδρων. Η αρχή εγκλεισμού-αποκλεισμού και εφαρμογές. Μερικώς διατεταγμένα σύνολα, η συνάρτηση του Möbius, αντιστροφή Möbius, semimodular και γεωμετρικοί σύνδεσμοι, το θεώρημα NBC του Rota, το χαρακτηριστικό πολυώνυμο, εφαρμογές σε παρατάγματα υπερεπιπέδων και χρωματισμούς γραφημάτων, το πολυώνυμο ζήτα μιας μερικής διάταξης. Στοιχεία τοπολογικής συνδυαστικής, το σύμπλεγμα μιας μερικής διάταξης και η χαρακτηριστική Euler, μονοπλεκτικά και κυτταρικά συμπλέγματα, αποφλοιώσιμα (shellable) και Cohen-Macaulay συμπλέγματα και μερικώς διατεταγμένα σύνολα, μερικές διατάξεις του Euler και οι εξισώσεις Dehn-Sommerville. Ρητές γεννήτριες συναρτήσεις, θεωρία των P-διαμερίσεων και P-πολυώνυμα Euler, quasi-συμμετρικές συναρτήσεις.

Συνδυαστική Βελτιστοποίηση

Τύπος
Κατ' επιλογήν υποχρεωτικό
Ομάδα
Α
Περιγραφή μαθήματος

Μαθηματική μοντελοποίηση προβλημάτων συνδυαστικής βελτιστοποίησης που εμφανίζονται σε πρακτικές εφαρμογές όπως των τηλεπικοινωνιακών δικτύων, των δικτύων υπολογιστών ή οδικών δικτύων, χρονοπρογραμματισμού, διαχείρισης πόρων, τοποθέτησης εξυπηρετητών και μεταφοράς. Γενικές τεχνικές επίλυσης προβλημάτων συνδυαστικής σελτιστοποίησης. Μέθοδοι διαχώρισης και αποτίμησης (Branch and Bound), ευριστικοί αλγόριθμοι, μεταευριστικοί αλγόριθμοι. Ανάδειξη των ορίων των αλγορίθμων και ανάπτυξη των πρόσφατων ερευνητικών εξελίξεων στο πεδίο. Δυναμικός Προγραμματισμός και προσεγγιστικοί αλγόριθμοι. Πολυωνυμικού χρόνου προσεγγιστικά σχήματα (PTAS, FPTAS). Μέθοδοι τοπικής αναζήτησης, PLS-completeness, δομές γειτονιών, εκθετικές γειτονιές αναζητούμενες πολυωνυμικά, προσεγγισιμότητα. Σύνδεση των μεθόδων τοπικής αναζήτησης με τη θεωρία παιγνίων και τη θεωρία τοπίων .

Προσεγγιστικοί Αλγόριθμοι

Τύπος
Κατ' επιλογήν υποχρεωτικό
Ομάδα
Α
Περιγραφή μαθήματος

Άπληστοι προσεγγιστικοί αλγόριθμοι. Τυχαιοκρατική στρογγυλοποίηση. Η μέθοδος του πρωτεύοντος-δυϊκού. Επαναληπτική στρογγυλοποίηση. Γεωμετρικές εμβαπτίσεις. Εφαρμογές σε προβλήματα όπως: Set Cover, Steiner Tree, Sparsest Cut. Ημιορισμένος Προγραμματισμός.

Αλγόριθμοι στη Δομική Βιοπληροφορική

Τύπος
Επιλογής
Περιγραφή μαθήματος

Γονιδίωμα και πρωτεΐνες, πρωτοταγής, δευτεροταγής και τριτοταγής μοριακή δομή. Πειραματικά δεδομένα NMR και κρυσταλλογραφίας ακτίνων Χ. Σύγκριση και στοίχιση ακολουθιών, στοίχιση με κενά. Δυναμικός προγραμματισμός. Αναζήτηση και χώρος μοριακών διαμορφώσεων (C-space). Γεωμετρία των αποστάσεων. Κινηματική των μορίων, Ευκλείδειοι μετασχηματισμοί Ομοιότητες και αναγνώριση μοριακών δομών, πρόσδεση (docking) μορίου σε υποδοχέα: μοριακές επιφάνειες (α-σχήματα, τριγωνοποίηση Delaunay), δομές γεωμετρικών δεδομένων, γεωμετρικός κατακερματισμός Εξόρυξη δεδομένων, αναζήτηση και συσταδοποίηση μοριακών δεδομένων.

Αλγόριθμοι

Τύπος
Υποχρεωτικό
Περιγραφή μαθήματος

Τεχνικές για ασυμπτωτική εκτίμηση υπολογιστικής πολυπλοκότητας, κριτήρια για επιλογή αλγορίθμων, πολυωνυμικοί αλγόριθμοι. Ουρές προτεραιότητας, σωροί, διαχείριση ξένων συνόλων, union-find. Επεξεργασία δεδομένων (ταξινόμηση, επιλογή, αναζήτηση). Μέθοδοι σχεδιασμού αποδοτικών αλγορίθμων: «διαίρει και βασίλευε», άπληστοι αλγόριθμοι, δυναμικός προγραμματισμός. Εφαρμογές σε προβλήματα γραφημάτων: αναζήτηση κατά βάθος, αναζήτηση κατά πλάτος, ελάχιστο συνδετικό δένδρο, συντομότερα μονοπάτια, μέγιστη ροή και ελάχιστη τομή. Πιθανοτικοί και προσεγγιστικοί αλγόριθμοι. Υπολογισιμότητα και πολυπλοκότητα. Κλάσεις υπολογιστικής πολυπλοκότητας και αναγωγές. Οι κλάσεις P και NP, NP-πλήρη προβλήματα. Κλάσεις χωρικής πολυπλοκότητας. Μαντεία και ιεραρχίες.

ΑΛΜΑ

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