A method of synthesizing an algorithm for transforming a program from a first form to a second form includes first formalizing a language associated with the program to be transformed in accordance with a theorem proving system. Then, a proof is built in accordance with the theorem proving system based on a theorem asserting a representability associated with the program, the representability being expressed as inductive predicates over semantic domains. The method then extracts the algorithm based on the proof. The algorithm is capable of transforming the program from the first form to the second form. In one embodiment, the algorithm is a correctness verified abstraction algorithm and the theorem proving system is Nuprl.

Μια μέθοδος έναν αλγόριθμο για ένα πρόγραμμα από μια πρώτη μορφή σε μια δεύτερη μορφή περιλαμβάνει πρώτα να τυποποιήσει μια γλώσσα που συνδέεται με το πρόγραμμα που μετασχηματίζεται σύμφωνα με ένα σύστημα παρουσιάσεων αποδείξεων θεωρήματος. Κατόπιν, μια απόδειξη χτίζεται σύμφωνα με το σύστημα παρουσιάσεων αποδείξεων θεωρήματος βασισμένο σε ένα θεώρημα βεβαιώνοντας ένα representability που συνδέεται με το πρόγραμμα, το representability που εκφράζεται ως επαγωγικά κατηγορήματα πέρα από τις σημασιολογικές περιοχές. Η μέθοδος εξάγει έπειτα τον αλγόριθμο βασισμένο στην απόδειξη. Ο αλγόριθμος είναι σε θέση το πρόγραμμα από την πρώτη μορφή στη δεύτερη μορφή. Σε μια ενσωμάτωση, ο αλγόριθμος είναι ένας ελεγχμένος ακρίβεια αλγόριθμος αφαίρεσης και το σύστημα παρουσιάσεων αποδείξεων θεωρήματος είναι Nuprl.

 
Web www.patentalert.com

< (none)

< Generating text in which the word sequence is reversed in alternating lines of text

> On-line reorganization in object-oriented databases

> (none)

~ 00026