Μετασχηματισμός λογικών προγραμμάτων.
Logic programs transformation.
Ημερομηνία
2008-2-29TΣυγγραφέας
Σαντιπαντάκης, Γεώργιος
Santipantakis, Georgios
Μεταδεδομένα
Εμφάνιση πλήρους εγγραφήςΕπιτομή
Οι μετασχηματισμοί λογικών προγραμμάτων είναι μια πολύ σημαντική μεθοδολογία για την ανάπτυξη λογισμικού. Η βασική ιδέα έχει ως εξής: Αρχικά, υλοποιούμε ένα πρόγραμμα το οποίο μπορεί να κατασκευαστεί και να συντηρηθεί εύκολα, όμως δεν είναι αποτελεσματικό. Δηλαδή, κατασκευάζουμε το πρόγραμμα χωρίς να λαμβάνουμε υπόψην την αποτελεσματικότητα του. Ένα τέτοιο πρόγραμμα, θα έχει δίχως άλλο ευδιάκριτη δομή, δεν θα έχει όμως την μέγιστη δυνατή αποτελεσματικότητα. Στην συνέχεια, εφαρμόζουμε μετασχηματισμούς στο παραπάνω πρόγραμμα, προκειμένου να γίνει αποτελεσματικότερο. Συνήθως, ένα αποτελεσματικό πρόγραμμα έχει δυσανάγνωστη δομή και κατά συνέπεια είναι δύσκολες οι όποιες αλλαγές. Το παρόν σύγγραμμα, αποσκοπεί στην μελέτη και ανάπτυξη ορισμένων τεχνικών μετασχηματισμού, οι οποίες εφόσον εφαρμοστούν σε ένα πρόγραμμα, θα το μετατρέψουν σε περισσότερο αποτελεσματικό. Οι τεχνικές μετασχηματισμού λογικών προγραμμάτων που θα μελετηθούν και θα αναπτυχθούν παρακάτω, είναι οι εξής: Folding - Πτύξη Unfolding - Ανάπτυξη New definition - Νέος ορισμός Για τις παραπάνω τεχνικές, θα μελετηθεί ο τρόπος αναπαράστασης του προγράμματος, σε βασική αναπαράσταση (Ground representation). Επιπλέον, θα αναπτυχθούν αλγόριθμοι όπως : Renaming - Μετονομασία μεταβλητών Substitution - Αντικατάσταση Unify - Ταυτοποίηση Apply - Εφαρμογή αντικαταστάσεων Composition of substitutions - Σύνθεση αντικαταστάσεων. Οι μετασχηματισμοί λογικών προγραμμάτων είναι μια πολύ σημαντική μεθοδολογία για την ανάπτυξη λογισμικού. Η βασική ιδέα έχει ως εξής: Αρχικά, υλοποιούμε ένα πρόγραμμα το οποίο μπορεί να κατασκευαστεί και να συντηρηθεί εύκολα, όμως δεν είναι αποτελεσματικό. Δηλαδή, κατασκευάζουμε το πρόγραμμα χωρίς να λαμβάνουμε υπόψην την αποτελεσματικότητα του. Ένα τέτοιο πρόγραμμα, θα έχει δίχως άλλο ευδιάκριτη δομή, δεν θα έχει όμως την μέγιστη δυνατή αποτελεσματικότητα. Στην συνέχεια, εφαρμόζουμε μετασχηματισμούς στο παραπάνω πρόγραμμα, προκειμένου να γίνει αποτελεσματικότερο. Συνήθως, ένα αποτελεσματικό πρόγραμμα έχει δυσανάγνωστη δομή και κατά συνέπεια είναι δύσκολες οι όποιες αλλαγές. Το παρόν σύγγραμμα, αποσκοπεί στην μελέτη και ανάπτυξη ορισμένων τεχνικών μετασχηματισμού, οι οποίες εφόσον εφαρμοστούν σε ένα πρόγραμμα, θα το μετατρέψουν σε περισσότερο αποτελεσματικό. Οι τεχνικές μετασχηματισμού λογικών προγραμμάτων που θα μελετηθούν και θα αναπτυχθούν παρακάτω, είναι οι εξής: Folding - Πτύξη Unfolding - Ανάπτυξη New definition - Νέος ορισμός Για τις παραπάνω τεχνικές, θα μελετηθεί ο τρόπος αναπαράστασης του προγράμματος, σε βασική αναπαράσταση (Ground representation). Επιπλέον, θα αναπτυχθούν αλγόριθμοι όπως: Renaming - Μετονομασία μεταβλητών Substitution - Αντικατάσταση Unify - Ταυτοποίηση Apply - Εφαρμογή αντικαταστάσεων Composition of substitutions - Σύνθεση αντικαταστάσεων.
Συλλογές
Αυτός ο ιστότοπος χρησιμοποιεί cookies για την λειτουργία του.
Συνέχεια
Περισσότερες πληροφορίες