Μηχανές Turing (T.M) I

Σχετικά έγγραφα
Αναδρομικές Συναρτήσεις και Σχέσεις I

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

Αυτόματα και Υπολογιστικά Μοντέλα Automata and Models of Computation

Recursive and Recursively Enumerable sets I

Θεώρημα Υπάρχουν υπολογίσιμες συναρτήσεις που δεν είναι πρωταρχικές αναδρομικές.

Σχήματα McCarthy I. Το σχήμα McCarthy είναι ένα γενικότερο προγραμματιστικό σχήμα:

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

Σε αυτό το µάθηµα. Εισαγωγή στις Μηχανές Turing. Μηχανή Turing (Turing Machine - TM) Μηχανές Turing. Παραδείγµατα Μηχανών Turing

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

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ

Θεωρία Υπολογισμού και Πολυπλοκότητα

Μη επιλυσιμότητα I. Απόδειξη. Ορίζουμε # # =

HEAD INPUT. q0 q1 CONTROL UNIT

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

Θεωρία Υπολογισμού και Πολυπλοκότητα To Δόγμα Church-Turing

Σειρά Προβλημάτων 4 Λύσεις

Παραλλαγές και επεκτάσεις αυτομάτων I

Σειρά Προβλημάτων 4 Λύσεις

num(m(w 1 ;... ; w k )) = f(num(w 1 ),..., num(w k ))

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

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

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ.

Υπολογίσιμες Συναρτήσεις

Σειρά Προβλημάτων 4 Λύσεις

Φροντιστήριο 8 Λύσεις

Φροντιστήριο 8 Λύσεις

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

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

Υπολογιστικό Πρόβληµα

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

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

Σειρά Προβλημάτων 5 Λύσεις

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

Blum Complexity. Αλγόριθμοι και Πολυπλοκότητα ΙΙ. Παναγιώτης Γροντάς. Δεκέμβριος

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6

Το 10ο πρόβλημα του Hilbert I

CSC 314: Switching Theory

Θέματα Μεταγλωττιστών

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

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών. Προδιαγραφές

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Σειρά Προβλημάτων 4 Λύσεις

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

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Επανάληψη Μαθήματος

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

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

Τυχαιότητα (Randomness) I

εισαγωγικές έννοιες Παύλος Εφραιμίδης Δομές Δεδομένων και

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 12: Μηχανές Turing

Πεπερασμένος έλεγχος καταστάσεων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 10: Αυτόματα Στοίβας II

Θέματα Μεταγλωττιστών

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Περιεχόμενα Ορισμός και λειτουργία των μηχανών Turing Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Επ. Καθ. Π. Κατσαρός Τμήμ

Σειρά Προβλημάτων 4 Λύσεις

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015

Σειρά Προβλημάτων 4 Λύσεις

Chapter 7, 8 : Time, Space Complexity

Σειρά Προβλημάτων 4 Λύσεις

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

ΗΥ252 - Οντοκεντρικός Προγραµµατισµός Προγραµµατιστική Εργασία Εαρινού Εξαµήνου 2004 Περιγραφή Παραδοτέων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

CSC 314: Switching Theory. Chapter 3: Turing Machines

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Πλακίδια του Wang C πεπερασμένο σύνολο χρωμάτων.

Η NTM αποδέχεται αν µονοπάτι στο δέντρο που οδηγεί σε αποδοχή.

Φροντιστήριο 10 Λύσεις

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr

ΑΕΠΠ Ερωτήσεις θεωρίας

CSC 314: Switching Theory. Chapter 3: Turing Machines

Τεχνητή Νοημοσύνη. 2η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Διάλεξη 22: Δυαδικά Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου

Πρόβλημα 29 / σελίδα 28

Θεωρία Υπολογισμού και Πολυπλοκότητα

Φροντιστήριο 9 Λύσεις

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μη Ντετερμινισμός και NP-Πληρότητα

Υπολογισιμότητα και Πολυπλοκότητα Computability and Complexity

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

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

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Λύσεις 4ης Σειράς Ασκήσεων

Σειρά Προβλημάτων 5 Λύσεις

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

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

Σειρά Προβλημάτων 5 Λύσεις

HY430 Εργαστήριο Ψηφιακών Κυκλωμάτων.


Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές

Εισαγωγή στην Ανάλυση Αλγορίθμων (1) Διαφάνειες του Γ. Χ. Στεφανίδη

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 9: Αυτόματα Στοίβας (Pushdown Automata - PDA)

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Σειρά Προβλημάτων 4 Λύσεις

Transcript:

Μηχανές Turing (T.M) I Οι βασικές λειτουργίες μιας TM είναι: Διάβασε το περιεχόμενο του τρέχοντος κυττάρου Γράψε 1 ή 0 στο τρέχον κύτταρο Κάνε τρέχον το αμέσως αριστερότερο ή το αμέσως δεξιότερο κύτταρο Η TM έχει ένα πεπερασμένο αριθμό εσωτερικών καταστάσεων (internal states): Q = tq 0, q 1,...u Πρόγραμμα μιας TM: είναι ένα σύνολο από τετράδες της μορφής xq i, e, d, q j y όπου q i, q j P Q, e P Σ, d P A = Σ Ť tl, Ru με τον εξής συναρτησιακό (ντετερμινιστικό) περιορισμό: Για κάθε xq i, ey υπάρχει το πολύ ένα xd, q j y έτσι ώστε η τετράδα xq i, e, d, q j y να ανήκει στο πρόγραμμα, δηλαδή πρόκειται για μια συνάρτηση μετάβασης (transition function) δ : Q ˆ Σ Ñ A ˆ Q. Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 94 / 310

Παραδείγματα TM I Παράδειγμα: Σ = t0, 1u, Q = tq 0, q 1 u Πρόγραμμα: txq 0, 1, 0, q 1 y, xq 1, 0, R, q 0 yu Είσοδος: πεπερασμένος αριθμός συνεχόμενων 1, όλα τα υπόλοιπα κύτταρα περιέχουν 0. Αρχική κατάσταση: q 0 Αρχική θέση κεφαλής (τρέχον κύτταρο): το αριστερότερο 1 Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 95 / 310

Παραδείγματα TM II Παράδειγμα υπολογιστικής ακολουθίας, δηλαδή νόμιμης ακολουθίας από στιγμιότυπα:... 0 0 1 Ò q 0 1 1 0 0... 0 0 0 Ò q 1 1 1 0 0... 0 0 0 1 Ò q 0 1 0 0... 0 0 0 ñ q 1 0 1 0 0... 0 0 0 0 q 0 1 0 0... 0 0 0 0 q 1 0 0 0... 0 0 0 0 0 q 0 0 0 0 halt Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 96 / 310

Παραδείγματα TM III Σε κάθε TM μπορούμε να αντιστοιχίσουμε μια μερική συνάρτηση από το N στο N. Η είσοδος n P N παριστάνεται με n + 1 συνεχόμενα 1 (έτσι ο αριθμός 0 παριστάνεται με 1). Σαν αρχικό στιγμιότυπο έχουμε την κεφαλή (τρέχον κύτταρο) να δείχνει στο αριστερότερο 1 και να βρίσκεται στην κατάσταση q 0. Σαν έξοδο λαμβάνουμε το συνολικό αριθμό από 1 που βρίσκεται στην ταινία, όταν και εάν η μηχανή σταματήσει. Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 97 / 310

Παραδείγματα TM IV Παράδειγμα Να κατασκευαστεί μια TM που υπολογίζει το 2 x. Ιδέα: 0 0 /1 /1 1 1 0 Ò 1 1 Η TM θα εργάζεται σύμφωνα με το παρακάτω πρόγραμμα (το οποίο γράφεται πάντα πρώτα σε άτυπη γλώσσα υψηλού επιπέδου): αρχικοποίηση; (διαγραφή του πρώτου 1) while είσοδος<>0 do διάγραψε ένα 1 από είσοδο; μετακίνησε κεφαλή δεξιά πέρα από είσοδο και έξοδο; πρόσθεσε δύο 1 στην έξοδο; μετακίνησε κεφαλή αριστερά πέρα από έξοδο και είσοδο end Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 98 / 310

Παραδείγματα TM V ă q 0 1 0 q 1 ą ă q 1 0 R q 2 ą ă q 2 1 0 q 3 ą halt για ă q 2 0 ą ă q 3 0 R q 4 ą ă q 4 1 R q 4 ą ă q 4 0 R q 5 ą ă q 5 1 R q 5 ą ă q 5 0 1 q 6 ą ă q 6 1 R q 6 ą ă q 6 0 1 q 7 ą ă q 7 1 L q 7 ą ă q 7 0 L q 8 ą ă q 8 1 L q 8 ą ă q 8 0 R q 2 ą Πίνακας: Πρόγραμμα TM παραδείγματος σε μορφή τετράδων Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 99 / 310

Παραδείγματα TM VI q 0 q 1 q 2 q 3 q 4 q 5 q 6 q 7 q 8 0 R/q 2 R/q 4 R/q 5 1/q 6 1/q 7 L/q 8 R/q 2 1 0/q 1 0/q 3 R/q 4 R/q 5 R/q 6 L/q 7 L/q 8 Πίνακας: TM σε μορφή πίνακα Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 100 / 310

Παραδείγματα TM VII 1 Ñ R startñ q 0 q 3 q 4 q 5 1 Ñ R 0 Ñ R 0 Ñ R 1 Ñ 0 1 Ñ 0 0 Ñ 1 0 Ñ R 0 q 1 q 2 halt q 6 1 Ñ R 1 Ñ L 0 Ñ R 0 Ñ 1 0 Ñ L q 8 q 7 1 Ñ L Σχήμα: TM σε μορφή διαγράμματος καταστάσεων Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 101 / 310

Παραδείγματα TM I Στο επόμενο παράδειγμα το αλφάβητο είναι Σ = t0, 1, \u. Η είσοδος και η έξοδος κωδικοποιούνται στο δυαδικό σύστημα. Παράδειγμα: Να κατασκευαστεί μια TM που υπολογίζει το x + 1. Η TM θα εργάζεται σύμφωνα με το παρακάτω πρόγραμμα: Κάνε τρέχον το κύτταρο με τελευταίο σύμβολο της εισόδου x; repeat Αν τρέχον κύτταρο έχει \, γράψε 1 και σταμάτα; Αν τρέχον κύτταρο έχει 1, γράψε 0, κάνε τρέχον το αμέσως αριστερότερο κύτταρο, και κρατούμενο := 1; Αν τρέχον κύτταρο έχει 0, γράψε 1, κάνε τρέχον το αμέσως αριστερότερο κύτταρο, και κρατούμενο := 0; until κρατούμενο = 0; Κάνε τρέχον το κύτταρο με πρώτο σύμβολο του x + 1 και σταμάτα; Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 102 / 310

Παραδείγματα TM II start q 0 \ Ñ L 0, 1 Ñ R 1 Ñ 0, L q 1 0, 1 Ñ L 0 Ñ 1, L \ Ñ 1 q 2 Halt \ Ñ R Σχήμα: TM σε μορφή διαγράμματος καταστάσεων Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 103 / 310

Παραδείγματα TM III Παράδειγμα λειτουργίας με είσοδο x = 1011: (q 0, 1011) $ (q 0, 1011) $ (q 0, 1011) $ (q 0, 1011) $ (q 0, 1011\) $ (q 1, 1011) $ (q 1, 1010) $ (q 1, 1000) $ (q 2, 1100) $ (q 2, \1100) $ (HALT, 1100) Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 104 / 310

Παραδείγματα TM IV ă q 0 0 q 0 0 R ą ă q 0 1 q 0 1 R ą ă q 0 \ q 1 \ L ą ă q 1 0 q 2 1 L ą ă q 1 1 q 1 0 L ą ă q 1 \ Halt 1 S ą ă q 2 0 q 2 0 L ą ă q 2 1 q 2 1 L ą ă q 2 \ Halt \ R ą Πίνακας: Πρόγραμμα TM 0 1 \ q 0 (q 0, 0, R) (q 0, 1, R) (q 1, \, L) q 1 (q 2, 1, L) (q 1, 0, L) (Halt, 1, S) q 2 (q 2, 0, L) (q 2, 1, L) (Halt, \, R) Πίνακας: TM σε μορφή πίνακα Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 105 / 310

Αντιστοιχία προγραμμάτων WHILE και TM WHILE - πρόγραμμα αντίστοιχη TM succ(x) κενή TM pred(x) tq 0 10q 1, q 1 0Rq 2, q 2 10q 2 u zero(x) tq 0 10q 1, q 1 0Rq 0 u ; ένωση των δύο TM μέ αναπροσαρμογή των ονομάτων των καταστάσεων ώστε να είναι διαφορετικές και αναπροσαρμογή της παραστασης εξόδου της πρώτης TM που θα χρησημοποιηθεί ώς είσοδος για τη δέυτερη TM. while παρόμοια (βλ. επίσης το παράδειγμα παραπάνω) Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 106 / 310

Ντετερμινισμός και μη I Ντετερμινιστική μηχανή Turing (DTM): δ : Q ˆ Σ Ñ Q ˆ A, όπου A = Σ Y tl, Ru Μη-Ντετερμινιστική μηχανή Turing (ΝTM): δ : Q ˆ Σ Ñ Pow(Q ˆ A), όπου A = Σ Y tl, Ru Η τριάδα που αποτελείται από τα περιεχόμενα της ταινίας της TM, την θέση της κεφαλής πάνω στην ταινία και την τρέχουσα κατάσταση της TM ονομάζεται configuration (στιγμιαία περιγραφή) της TM. Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 107 / 310

Ντετερμινισμός και μη II Σε μία DTM ο υπολογισμός είναι μία γραμμική ακολουθία από configurations (σε κάθε βήμα υπάρχει ακριβώς μία επόμενη νόμιμη configuration). Σε μία NTM, όμως, ο υπολογισμός περιγράφεται με ένα δένδρο από configurations, αφού σε κάθε βήμα είναι δυνατό να προκύψουν περισσότερες από μία επόμενες νόμιμες configurations. Θα λέμε ότι μία συμβολοσειρά γίνεται αποδεκτή από μία NTM, αν γίνεται αποδεκτή τουλάχιστον από ένα υπολογιστικό μονοπάτι του δένδρου. Θεώρημα Για κάθε μη-ντετερμινιστική μηχανή Turing (NTM) υπάρχει ισοδύναμη ντετερμινιστική μηχανή Turing (DTM). Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 108 / 310

Παραλλαγές TM Παραλλαγές Μηχανών Turing που έχουν την ίδια υπολογιστική δυνατότητα, όχι όμως και αποδοτικότητα (efficiency) είναι: πολλές ταινίες, μνήμη πλέγματος (grid memory), μνήμη περισσοτέρων διαστάσεων μεγαλύτερο Σ πολλές παράλληλες κεφαλές μη ντετερμινιστικές μεταβάσεις μίας κατευθύνσεως, απείρου μήκους ταινία εγγραφή και κίνηση της κεφαλής σε κάθε βήμα Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 109 / 310

Υπολογιστικά Μοντέλα I Μερικά υπολογιστικά μοντέλα είναι τα εξής: προγράμματα Pascal προγράμματα Pascal χωρίς αναδρομή (αφαίρεση αναδρομής με χρήση στοίβας) προγράμματα Pascal χωρίς αναδρομή και χωρίς άλλους τύπους δεδομένων εκτός από τους φυσικούς αριθμούς (επιτυγχάνεται με κωδικοποιήσεις) προγράμματα WHILE (μόνη δομή ελέγχου το WHILE) προγράμματα GOTO και IF Assembler-like RAM (random access machine), URM (universal register machine) SRM (single register machine) ένας καταχωρητής Μηχανή Turing (πρόσβαση μόνο σε μια κυψέλη cell της ταινίας κάθε φορά) παραλλαγές από μηχανές Turing Thue: κανόνες επανεγγραφής (re-writing rules) Post: κανονικά συστήματα (normal systems) Church: λογισμός λ (λ-calculus) Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 110 / 310

Υπολογιστικά Μοντέλα II Curry: συνδυαστική λογική (combinatory logic) Markov: M. αλγόριθμοι Kleene: γενικά αναδρομικά σχήματα (general recursive schemes) Shepherdson-Sturgis, Elgott: URM, SRM, RAM, RASP Σχήματα McCarthy (if... then... else... ñ LISP) Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 111 / 310

Υπολογιστικά Μοντέλα III Τα χαρακτηριστικά των παραπάνω μοντέλων είναι: ντετερμινιστική πολυπλοκότητα σε διακριτά βήματα πεπερασμένο σύνολο εντολών που εκτελούνται από επεξεργαστή απεριόριστη μνήμη Θεώρημα f είναι TΜ υπολογίσιμη ανν f είναι WHILE-υπολογίσιμη f είναι GOTO-υπολογίσιμη f είναι PASCAL-υπολογίσιμη f είναι μερικά αναδρομική (partial recursive) Διδάσκων: Στάθης Ζάχος ( CoReLab - NTUA) Υπολ. & Πολυπλ. Φεβρουάριος 2017 112 / 310