1 20/2/2018 Διαδικαστικά θέματα. Περιεχόμενο του μαθήματος. Γενικά περί λογικού προγραμματισμού και σύνδεση με την τεχνητή νοημοσύνη. Κατηγορίες προβλημάτων κατάλληλων για επίλυση μέσω λογικού προγραμματισμού. Γενικά περί λογικού προγραμματισμού με περιορισμούς. Πρόβλημα επίλυσης κρυπταρίθμου. Επίλυση Sudoku. Το πρόβλημα των ιεραποστόλων και κανιβάλων. Συμβολική παραγώγιση.
- 21/2/2018 Επέτειος εξέγερσης Νομικής Σχολής. Δεν έγινε μάθημα.
2 (αναπλήρωση) 23/2/2018 Ένα απλό πρόγραμμα Prolog. Γεγονότα και ερωτήσεις. Κανόνες. Κατηγορήματα, άτομα και μεταβλητές. Προτάσεις στην Prolog. Κεφαλή και σώμα κανόνα. Στόχοι. Ενσωματωμένα κατηγορήματα \=/2 και =/2. Εύρος δράσης μεταβλητών. Οπισθοδρόμηση. Δέντρο ανάλυσης. Παραδείγματα εύρεσης απάντησης σε ερώτηση Prolog μέσω δέντρου ανάλυσης. Εισαγωγή στους αναδρομικούς κανόνες.
3 27/2/2018 Διερεύνηση σχετικά με τις εναλλακτικές διατυπώσεις αναδρομικών ορισμών. Ενσωματωμένα κατηγορήματα var/1 και atom/1. Δομές και συναρτησιακά σύμβολα. Ορίσματα και βαθμός κατηγορημάτων και συναρτησιακών συμβόλων. Παραδείγματα χρήσης δομών.
4 28/2/2018 Λίστες στην Prolog. Κεφαλή και ουρά λίστας. Κενή λίστα. Παραδείγματα λιστών. Κατηγόρημα member/2. Κατηγόρημα append/3. Κατηγόρημα reverse/2. Παραλλαγή του reverse/2 με O(n) πολυπλοκότητα. Χρήση συσσωρευτών σε προγράμματα Prolog.
5 6/3/2018 Κατηγορήματα delete/3 και sublist/2. Ακολουθία Langford. Κατηγορήματα insert/2, permutation/2 και permutation2/2. Διάφορες ασκήσεις με λίστες.
- 7/3/2018 Απεργία Συλλόγου Διδασκόντων ΣΘΕΤ. Δεν έγινε μάθημα.
6 (αναπλήρωση) 9/3/2018 Κατηγόρημα flatten/2. Αποκοπή (!/0). Αριθμητική στην Prolog. Αριθμητικοί τελεστές, κατηγόρημα is/2 και τελεστές σύγκρισης. Διάφοροι τρόποι υλοποίησης του κατηγορήματος length/2. Ορισμός length/2 για δημιουργία λίστας δεδομένου μήκους. Ανακοίνωση Α' ομάδας ασκήσεων.
7 13/3/2018 Διάφορες ασκήσεις με αριθμητική. Ενσωματωμένο κατηγόρημα findall/3. Διάφορες ασκήσεις με αποκοπή. Άρνηση στην Prolog (μέσω αποτυχίας). Υπόθεση του κλειστού κόσμου. Διάφορες ασκήσεις με άρνηση.
8 14/3/2018 Ενσωματωμένα κατηγορήματα fail/0, και call/1. Ορισμός της άρνησης σε Prolog. Επισημάνσεις για τη χρήση της άρνησης. Κατηγόρημα name/2. Ενδοθεματικοί, προθεματικοί και μεταθεματικοί τελεστές. Προτεραιότητα ορίσματος. Προκαθορισμένοι τελεστές και τελεστές οριζόμενοι από τον προγραμματιστή. Κατηγορήματα current_op/3 και op/3.
9 20/3/2018 Διάφορες ασκήσεις με τελεστές. Διάζευξη στην Prolog και κατηγόρημα ;/2. Προβλήματα ικανοποίησης περιορισμών. Το πρόβλημα των N βασιλισσών. Μέθοδοι οπισθοδρόμησης, γέννα-και-δοκίμαζε και 4-D με άξονες και τις διαγωνίους. Επίδειξη εκτέλεσης των προγραμμάτων. Εισαγωγή στον προγραμματισμό με περιορισμούς.
10 21/3/2018 Λογικός προγραμματισμός με περιορισμούς. Το πρόβλημα των N βασιλισσών στην Eclipse μέσω των βιβλιοθηκών fd και ic. Ευρετικά τύπου first-fail στις βιβλιοθήκες fd και ic. Επίδειξη εκτέλεσης προγραμμάτων.
11 27/3/2018 Αντιμετώπιση προβλημάτων ικανοποίησης περιορισμών, που είναι και προβλήματα βελτιστοποίησης, με τη βιβλιοθήκη ic της Eclipse. Επίδειξη εκτέλεσης προγραμμάτων. Ανακοίνωση Β' ομάδας ασκήσεων.
12 28/3/2018 Συνέχεια με τα προβλήματα ικανοποίησης περιορισμών. Ενσωματωμένο κατηγόρημα read/1. Ενσωματωμένο κατηγόρημα =../2. Ενσωματωμένα κατηγορήματα ==/2 και \==/2. Ενσωματωμένα κατηγορήματα assert/1 και retract/1. Ενσωματωμένα κατηγορήματα bagof/3 και setof/3.
13 17/4/2018 Θεωρία λογικού προγραμματισμού. Κατηγορήματα, συναρτησιακά σύμβολα, μεταβλητές και βαθμός/τάξη. Όροι και ατομικοί τύποι. Συνδετικά. Καλοσχηματισμένοι τύποι. Γλώσσα πρώτης τάξης. Εμβέλεια ποσοδεικτών. Κλειστοί και ανοικτοί τύποι. Λεκτικά και προτάσεις. Οριστικές προτάσεις και οριστικοί στόχοι. Προτάσεις Horn. Σύνταξη και σημασιολογία. Γενικά περί μοντελοθεωρητικής σημασιολογίας, σημασιολογίας σταθερού σημείου και λειτουργικής σημασιολογίας. Πλήρως αποτιμημένοι όροι. Σύμπαν Herbrand και βάση Herbrand. Μοντελοθεωρητική σημασιολογία. Ερμηνείες Herbrand. Μοντέλα Herbrand. Αλήθεια κλειστών τύπων. Λογικό επακόλουθο. Ελάχιστο μοντέλο Herbrand. Αποτέλεσμα μοντελοθεωρητικής σημασιολογίας.
14 18/4/2018 Παράδειγμα μοντελοθεωρητικής σημασιολογίας. Σημασιολογία σταθερού σημείου. Σταθερό σημείο απεικόνισης. Ελάχιστο σταθερό σημείο συνεχούς απεικόνισης σε πλήρες πλέγμα. Απεικόνιση άμεσου επακόλουθου και αποτέλεσμα σημασιολογίας σταθερού σημείου. Παράδειγμα. Ασκήσεις από προηγούμενα θέματα εξετάσεων.
15 24/4/2018 Ασκήσεις από προηγούμενα θέματα εξετάσεων.
16 25/4/2018 Λειτουργική σημασιολογία. Κανόνας συμπερασμού. SLD-ανάλυση. Αντικατάσταση, στιγμιότυπο, παραλλαγή και σύνθεση αντικαταστάσεων. Ενοποίηση και γενικότερος ενοποιητής. Κανόνας συμπερασμού της SLD-ανάλυσης. SLD-απόρριψη και σύνολο επιτυχίας. Αποτέλεσμα λειτουργικής σημασιολογίας. Ασκήσεις από προηγούμενα θέματα εξετάσεων.
- 1/5/2018 Αργία πρωτομαγιάς. Δεν έγινε μάθημα.
17 2/5/2018 Δυαδικά δέντρα. Μέλος δυαδικού δέντρου. Δυαδικά λεξικά. Μέλος δυαδικού λεξικού. Διάφορες ασκήσεις. Εισαγωγή και διαγραφή κόμβων σε δυαδικά λεξικά. Υλοποίηση συστημάτων λογικού προγραμματισμού. Διερμηνείς. Δομές δεδομένων των διερμηνέων. Μεταγλωττιστές. Αφηρημένη μηχανή του Warren (WAM). Εξομοιωτής WAM.
18 8/5/2018 Αναπαραστάσεις γράφων σε Prolog. Εύρεση μονοπατιού σε γράφο. Εύρεση Hamiltonian μονοπατιού σε γράφο. Εύρεση μονοπατιού με κόστος σε γράφο. Εύρεση μονοπατιού ελαχίστου κόστους μεταξύ δεδομένων κόμβων. Εύρεση μονοπατιού μεγίστου κόστους μεταξύ τυχαίων κόμβων. Κατασκευή δέντρων ανάπτυξης για γράφους.
19 9/5/2018 Το πρόβλημα της ζέβρας. Το πρόβλημα των ιεραποστόλων και κανιβάλων. Πρώτα κατά βάθος αναζήτηση. Το πρόβλημα του αγρότη, του λύκου, της κατσίκας και του λάχανου. Το πρόβλημα των κανατών. Επαναληπτική εμβάθυνση. Το πρόβλημα του πιθήκου. Μετα-διερμηνέας Prolog. Συμβολική παραγώγιση. Προσομοίωση λογικών κυκλωμάτων. Κατανόηση φυσικής γλώσσας.
20 15/5/2018 Γενικά περί γνώσης. Συμπερασμός. Συστήματα βασισμένα σε γνώση. Η περίπτωση των εμπείρων συστημάτων. Αναπαράσταση γνώσης με if-then κανόνες και κανόνες παραγωγής. Συλλογιστική κατά την οπίσθια φορά και συλλογιστική κατά την εμπρόσθια φορά. Υλοποίηση των if-then κανόνων σαν κανόνες Prolog και χρήση της Prolog σαν κέλυφος (οπίσθια συλλογιστική). Υλοποίηση των if-then κανόνων και της συλλογιστικής κατά την οπίσθια φορά με χρήση Prolog.
- 16/5/2018 Φοιτητικές εκλογές. Δεν έγινε μάθημα.
21 22/5/2018 Υλοποίηση των if-then κανόνων και της συλλογιστικής κατά την εμπρόσθια φορά με χρήση Prolog. Δυνατότητα παροχής εξηγήσεων (απάντηση ερωτήσεων "ΠΩΣ") για συλλογιστική κατά την οπίσθια φορά με χρήση Prolog. Γενικά περί χειρισμού αβεβαιότητας κατά την αναπαράσταση γνώσης. Υλοποίηση με χρήση Prolog συλλογιστικής κατά την οπίσθια φορά και απλού χειρισμού αβεβαιότητας.
22 23/5/2018 Αναπαράσταση γνώσης μέσω σημασιολογικών δικτύων. Κληρονομικότητα στα σημασιολογικά δίκτυα. Υλοποίηση σε Prolog. Αναπαράσταση γνώσης μέσω πλαισίων. Κληρονομικότητα στα πλαίσια.
23 29/5/2018 Επαγωγικές (συμπερασματικές) βάσεις δεδομένων - Datalog: Σύνταξη, μοντελοθεωρητική σημασιολογία, σημασιολογία απόδειξης. Επεκτάσεις της Datalog. Αριθμητικές συγκρίσεις. Αρνηση. Datalog και σχεσιακή άλγεβρα.
- 30/5/2018 Απεργία ΓΣΕΕ-ΑΔΕΔΥ. Δεν έγινε μάθημα.