Προηγούμενη Πάνω Επίπεδο Επόμενη Περιεχόμενα
Επόμενη: Λογικός Προγραμματισμός Πάνω Επίπεδο: Ανάλυση Προηγούμενη: SLD -Δέντρα

4.8 SLDNF -Ανάλυση

Αν και είναι φανερό ότι κάθε άτομο που παράγεται από ένα δοσμένο οριστικό πρόγραμμα tex2html_wrap_inline1236, είναι έγκυρο στη βάση του tex2html_wrap_inline1236, δεν μπορούμε να ισχυριστούμε το ίδιο με ασφάλεια για εκείνα τα άτομα που δεν παράγονται από το εν λόγω πρόγραμμα. Αυτή η διαπίστωση οδηγεί στην εισαγωγή της έννοιας της παραδοχής του κλειστού κόσμου (closed world assumption). Πρόκειται για μια υπόθεση που θέλει μια δοσμένη περιγραφή του ``κόσμου'' που μας ενδιαφέρει, να περιέχει όλη την πληροφορία που τον αφορά. Στην περίπτωση που ο κόσμος μας περιγράφεται από ένα οριστικό πρόγραμμα, η παραδοχή του κλειστού κόσμου σημαίνει ότι κάθε άτομο που παράγεται από το πρόγραμμα είναι έγκυρο, ενώ κάθε άλλο άκυρο. Από τη στιγμή που για κάθε άτομο A που παράγεται από ένα πρόγραμμα tex2html_wrap_inline1236 μπορούμε να βρούμε μια SLD- παραγωγή του από το tex2html_wrap_inline1236 ή, ισοδύναμα, μια SLD- άρνηση του tex2html_wrap_inline1622, συμπεραίνουμε ότι αν αποτύχουμε να βρούμε μια SLD- άρνηση του tex2html_wrap_inline1622, τότε ισχύει το tex2html_wrap_inline1626. Αυτή η μέθοδος συμπερασματολογίας ονομάζεται άρνηση ως αποτυχία (negation as failure) και βασίζεται στην παραδοχή του κλειστού κόσμου.

Να θυμίσουμε ότι μια SLD- άρνηση του tex2html_wrap_inline1622 υπάρχει, αν κάποιο SLD- δέντρο του tex2html_wrap_inline1622 περιέχει ένα κλαδί επιτυχίας. Δοθέντος ότι ένα τέτοιο δέντρο είναι δυνατό να έχει κλαδιά άπειρου μήκους, θα περιοριστούμε σε πεπερασμένα δέντρα. 'Ετσι, αν κάποιο SLD- δέντρο για το tex2html_wrap_inline1622 είναι πεπερασμένα αποτυχημένο (finitely failed), μπορούμε να συμπεράνουμε ότι ισχύει το tex2html_wrap_inline1626.

Από τη στιγμή που η άρνηση ως αποτυχία μπορεί να χρησιμοποιηθεί για την παραγωγή της άρνησης ενός λεκτικού στοιχείου από ένα πρόγραμμα, μπορεί ακόμα να υποστηρίξει και την παρουσία αρνητικών λεκτικών στοιχείων στο σώμα μιας πρότασης.

Θα ονομάζουμε κανονικό πρόγραμμα (normal program) ένα πεπερασμένο σύνολο κανονικών προτάσεων (normal clauses). Οι κανονικές προτάσεις αποτελούν γενίκευση των οριστικών προτάσεων και επιτρέπουν την παρουσία τόσο θετικών, όσο και αρνητικών λεκτικών στοιχείων στο σώμα τους.

Η SLD- ανάλυση δεν μπορεί να μεταχειριστεί αρνητικά λεκτικά στοιχεία. Ο συνδυασμός της SLD- ανάλυσης και της άρνησης ως (πεπερασμένη) αποτυχία, ώστε να μπορούμε να μεταχειριζόμαστε και αρνητικά λεκτικά στοιχεία, μας δίνει την SLDNF- ανάλυση. Αυτό το σχήμα ανάλυσης είναι, σ' ένα μεγάλο βαθμό, η βάση του λογικού προγραμματισμού.



Εργαστήριο Γλωσσών Προγραμματισμού και Τεχνολογίας Λογισμικού
Mon Apr 5 16:25:43 EEST 1999