Πέμπτη 3 Δεκεμβρίου 2009

A Virtual Robotic Agent that learns Natural Language Commands

A Virtual Robotic Agent that learns Natural Language Commands
J. Kontos, I. Malagardi and M. Bouligaraki
5th European Systems Science Congress. October.
Heraklion Crete. Res Systemica Volume 2 Special Issue. October 2002. ((http:/www.afscet.asso.fr/resSystemica/accueil.html).
(abridged)

Abstract:The present paper presents the design and implementation of a Virtual Robotic Agent that learns Natural Language commands. The system is a motion command understanding system with a machine learning interface for the communication with its user and teacher. The machine learning interface is based on two methodologies that exhibit two basic modes of learning. These two modes are “learning by example” and “learning by doing”. The system described accepts Greek and English as the natural language of communication of the user with the system. The execution of motion commands expressed in natural language is displayed graphically to the user so that he can easily follow the actions of the agent and supervise its learning operation. The system is applied to the study of the communication between a user and a virtual robotic agent, which exists in a virtual environment and accepts commands and knowledge about the objects and the actions possible in this environment. The commands express three kinds of actions. The first kind of action is change of position such as the movement of an object, the second kind is change of state such as the opening or closing of some objects and the third kind is the change of a relation between objects such as the placement of an object on top or inside another object. The two methods of machine learning used by the agent are presented and compared using illustrative scenarios of operation of the system. Keywords: machine learning, natural language commands, virtual robotic agent

1. Introduction
The present paper presents the design and implementation of a motion command understanding system with a learning interface for the communication with its user. The system is related to learning human-robot system as reviewed in [3].This work is part of our NLP project [1],[2]. The system described here accepts Greek and English as the natural language of communication of the user with the system and the execution of motion commands expressed in natural language. The system could be applied to the communication between a user and an artificial agent, which exists in a virtual environment and accepts commands and knowledge about the objects and the actions possible in this environment. The commands are phrased in Greek or English natural language and they express three kinds of actions. The first kind of action is change of position e.g. the movement of an object, the second kind is change of state e.g. the opening or closing of some objects and the third kind is the change of a relation between objects e.g. to placement of an object on top or inside another object. When the system is given a command like: “open the door”, “open the bottle”, “close the box”, “put the book on the desk” etc. which specifies a task, the system has “to understand” the command before attempting to perform the task. Understanding such commands requires understanding the meaning of actions such as “open”, “close”, “put” and the meaning of prepositional words such as “on”. The meanings of the constituents must be combined and the meaning of the sentence as a whole must be obtained taking into consideration knowledge of the environment or “microcosm” where the commands must be performed. The execution of a command by the agent may initially be wrong. The interaction of the agent with the human user results in learning by the agent the correct way of executing a given command. The main contribution of the present paper is based on the ability of the system implemented to learn from its user to understand and execute correctly motion commands that go beyond its initial capabilities. This learning takes place in cases when the system faces the problem of unknown words, of unknown senses of words or underspecified positions of objects. The system was implemented with Prolog which has some simple facilities for computer graphics. Using these facilities the system displays a room with a door, some furniture and some manipulable objects. These are objects such as a table, a door, a desk, a bottle, a box and a book. The bottle, the box and the book are examples of manipulable objects. It is supposed that there is an invisible agent in the room, who can move around and execute the user’s motion commands. These commands may refer directly or indirectly to the movement of specific objects or the change of their state. The agent knows the names of these objects and their position in the room displayed on the screen. The agent also knows how to execute some basic commands.

2. Motion Verbs
Motion may be specified by a verb either directly or indirectly. These verbs we call “motion verbs” and see [5] for a different approach. The simplest way to specify motion of an object is by using a verb that specifies motion directly. An example verb is “move” as used in the sentence “move the box”. This sentence implies that a motion must be executed by the system with the box as the affected object. Indirect specification of motion can be done in two ways: either in terms of geometric goals, or in terms of a force. Indirect specification of motion in terms of a goal involving physical relationship among objects is quite common. Consider the command “put the bottle on the table”. This command requires that a physical object be moved i.e., “the bottle” with a goal to establish the physical relationship of “on” between it and another physical object i.e., “the table”. Performance of such an instruction demonstrates that the goal of establishing a physical relationship drives the motion of the first object. For verbs such as “put” that specify motion in terms of a geometric goal, properties of the objects that participate in the underlying action are of crucial importance. Indirect specification of motion in terms of a force uses verbs such as “push” and “pull”. Objects affected by motion commands may be also specified either directly or indirectly. Direct specification is based on names of objects known to the system such as box, table, etc. Indirect specifications can be accomplished using complex noun phrases such as “the book on the desk”. In [6] the representation of the meaning of motion verbs was addressed. Their ideas have been implemented as a component of a system that accepts natural language commands as input and produces graphical animation as output. They used a fixed lexicon which they represented manually using their representation method. They state that their long -term goal is to investigate how semantic information for motion verbs can be automatically derived from machine readable dictionaries. They also state that at present their system has no feedback from the graphical animation system to the semantic processor. Finally their system has no learning capabilities. Our system exhibits some novel features for treating motion verbs i.e. the creation of its lexicon is accomplished automatically using a machine readable dictionary, learning of the correct interpretation of commands with more than one meaning is accomplished using machine learning by supervision that are techniques based on visual feedback. One source of the multiplicity of meaning of a command is the multiplicity of the senses of a word as recorded in a machine-readable dictionary. Another source is the possibility of an object to be placed on a surface in different ways. When the user submits a command, the agent, in order to satisfy the constraints of the verb’s meaning, may ask for new information and knowledge about objects and verbs, which may be used in the future. A machine-readable dictionary with possibly ambiguous entries is used, which provides the analysis of complex verbs into basic ones. In particular, in the case of Greek about 600 motion verbs were analysed automatically in terms of about 50 basic verbs. Finally every time a command is executed which is amenable to more than one interpretation the system allows the user to observe the graphical output and state its approval or disapproval which helps the system to learn by supervision.

3. System Architecture and Operation
The system is composed of a number of modules each one performing a different task.
These modules are:
 Machine readable dictionary processor
 Lexical processor Syntactic processor
 Semantic processor Basic motion command processor
 Graphics processor
 Learning module
The operation of these modules is supported by a number of databases. These are:
 Machine readable dictionary
 Basic Lexicon
 Stems Base
 Objects Attributes Base
 Knowledge Base
The user enters his commands in natural language, with the keyboard. The commands are imperative sentences with one motion verb which declares the action and some other words like nouns, prepositions or adverbs complementing the main motion verbs. Prior to the syntactic and semantic analysis of the sentence the system checks if each word of the sentence belongs to its lexicon. Stemming is used at this stage because of the complex morphology of the Greek words. When the command contains a word unknown to the system then the system produces a message to the user asking for information about the unknown word and terminates the processing of the present command. After having recognized all the words in a command, the system performs the syntactic analysis of it. If the input sentence is syntactically correct, the system recognizes the motion verb, the object or objects and the adverb or preposition related to the verb. After this the module for “processing of motion commands” tries to satisfy all the constrains and the conditions for the specified motion. This processing requires searching in the knowledge base from where the system retrieves information about the object’s properties (e.g. position, weight, size, state, subparts etc.). At this point, when some information is unavailable or ambiguous, the system interacts with the user in order to acquire the missing knowledge. There are two different types of questions that the system asks. The first type includes questions for which there is no information in the knowledge base and the user must supply it. The second type refers to questions which demand a Yes or No answer. This happens when more than one interpretation of an input command is possible and the system cannot decide which is the correct one. In these cases, the system, using the machine learning mechanism, suggests each time one of the different solutions and requests an answer from the user. The Yes or No answers generate appropriate entries in the knowledge base and can be used next time a similar command is submitted by the user without requesting any more information. This process is based on the “learning by taking advice” technique of machine learning. In the following section some examples of operation of the system implemented will be presented. Prolog predicates that retrieve each object’s position (i.e. it’s coordinates) from the object database have been implemented. Each predicate subsequently calculates the coordinates of the specified points that constitute the shape of the object’s design. A more general predicate redesigns all the objects after the processing of the user’s command. All the knowledge and the current state of each object can be saved in external files, which are available for future use through the menu options of the interface.

4. Examples of Operation of the System
Suppose that the user enters the command “open the door”. The system isolates the words of the command and recognizes the verb “open” and the noun phrase “the door”. The verb “open” appears in the lexicon with a number of different definitions. E.g. in the LDOCE [4] we find among others the senses of “open” a: to cause to become open, b: to make a passage by removing the things that are blocking it. The Greek dictionary we used contains similar sets of senses for this verb and the sense selection mechanism is practically the same for the two languages. The only difference is the wording of the sense selection rules for the two languages where the objects and their properties have different names. The system selects the sense “b” because it knows that a door blocks a passage. The next decision the system has to take concerns the way the opening action is executed. The system finds in the knowledge base that there are two alternative ways of interpreting the verb “open”, using either a “push” or a “pull” basic motion. Then, it selects the first one and asks the user if this is the right one. If the answer is “No”, the system selects the next available interpretation and prompts again the user for an answer. When the answer is “Yes”, a fact is recorded in the knowledge base which denotes that for the verb “open” and the object “door” the appropriate motion is e.g. “pull” in case that the “Yes” answer was given for the “pull” interpretation. The second example refers to the movement of a book that exists in the microcosm of the system. When the command “put the book on the desk” is given, the system searches the knowledge database to find a side of the book that can be used as a base for it. The book has 6 sides and when the system selects one of them it presents graphically the book on the desk having this side as base. Then, it asks the user if the result of the motion is the correct one. When the user enters a “Yes” answer, this is recorded in the knowledge base and the process terminates. When the user enters a “No” answer, the process continues trying sequentially all the available sides of the book until a “Yes” answer is given by the user. The graphical user interface which was implemented, was very helpful during the development. It was easier to see the result on the screen, graphically rather than reading lists of the knowledge database to find the changes that were recorded during the program execution and the machine learning process. 5. The Implementation of the ID3 Algorithm with Logic Programming A program for the implementation of ID3 Algorithm was used for the learnig applications. Indicatively we are referring to some sections of the program which corresponds to the main parts of the ID3 Algorithm. The problem is to determine a decision tree that on the basis of answers to questions about the non-category attributes predicts correctly the value of the category attribute. Usually the category attribute takes only the values {true, false}, or {success, failure}, or {Yes, No}, or something equivalent. In any case, one of its values will mean failure.
The computation of the entropy has been implemented with the following rule:

compute_set_entropy(Data,Entropy):- count_positive(Data,num),length(Data,Dnum), Pp=Pnum/Dnum, Pn=1-Pp, xlogx(Pp,PpLogPp), xlogx(Pn, PnLogPn), Temp=PpLogPp+PnLogPn, Entropy = -Temp.

Were Data is the input file and Entropy is the value of the entropy for the data. The predicate “count_positive” indicates the number of the examples βρίσκει τον αριθμό των παραδειγμάτων στα δεδομένα που ανήκουν στην κατηγορία που πρέπει να αναγνωρίζεται μετά την μάθηση με τους κανόνες:

count_positive([],0). count_positive([dat("P",_)|More],Pnum):-!,count_positive(More,Pnum1),Pnum=Pnum1+1. count_positive([dat("N",_)|More],Pnum):-count_positive(More, Pnum).

The predicate 'length' βρίσκει το συνολικό αριθμό των παραδειγμάτων στα δεδομένα με τους κανόνες: length([],0). length([Dat|Moredat], Dnum):- !, length(Moredat,Dnum1), Dnum=Dnum1+1.

Το γινόμενο 'xlogx' υπολογίζεται με τους κανόνες: xlogx(X,N):- X=0.0E+00, !, N=0. xlogx(X,N):- N=X*log(X).

The predicate select_minimal_entropy δέχεται μία λίστα από τριάδες της μορφής: (attribute, partition-induced-by-that-attribute, resulting-entropy) και βρίσκει την ιδιότητα (attribute) που δίδει τον διαχωρισμό με την μικρότερη εντροπία και αυτό τούτο τον διαχωρισμό δεδομένης της δομής “c=c(attr,partiton,entropy)” με τους κανόνες: select_minimal_entropy([c(Attr,Partition,Entropy)|MorePartitions],BestAttr,BestPartition):- select_minimal_entropy_aux(MorePartitions,c(Attr,Partition,Entropy),BestAttr,BestPartition). select_minimal_entropy_aux([],c(Attr,Partition,_),Attr,Partition). select_minimal_entropy_aux([c(Attr1,Partition1,Entropy1)| MorePartitions], c(_,_,Entropy),BestAttr,BestPartition):- Entropy1


References

Kontos, J., Malagardi, I., and Trikkalidis, D. (1998). NaturalLanguage Interface to an Agent. EURISCON ’98 ThirdEuropean Robotics, Intelligent Systems & ControlConference Athens. Published in Conference Procedings “Advances in Intelligent Systems:Concepts, Tools and Applications” (Kluwer)
Kontos, J., Malagardi, I. (1998). Question Answering andInformation Extraction from Texts. EURISCON ’98Third European Robotics, Intelligent Systems &Control Conference. Athens. Published in ConferenceProcedings “Advances in Intelligent Systems:Concepts, Tools and Applications” (Kluwer). ch. 11,pp. 121-130.
Klingspor, V., Demiris, J., Kaiser, M. (1997). Human-Robot Communication and Machine Learning. AppliedArtificial Intelligence, 11 pp. 719-746.
LONGMAN DICTIONARY OF CONTEMPORARYENGLISH. (1978). The up-to-date learning dictionary. Editor-in-Chief Paul Procter. Longman group Ltd. UK.
Levin, B., (1992). English Classes and Alternations. APreliminary Investigation. The University of ChicagoPress. Chicago London.
Kalita, J., K. and Lee, J., C. (1997). An Informalanalysis of Motion Verbs based on Physical Primitives.Computational Intelligence, Vol. 13, N.1, pp. 87-125.
Kontos, J. and Malagardi, I. (1999). A Learning Natural Language Interface to an Agent. Proceedings of Workshops of Machine Learning ACCAI 99, Chania. Crete. Hellas.
Malagardi, I. (2001). The Acquisition of World Knowledge and Lexical Combination. HERCMA 2001, 5th Hellenic European Research on Computer Mathematics & its Applications Conference. Athens. Hellas.





Τετάρτη 2 Δεκεμβρίου 2009

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

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

Ιωάννα Μαλαγαρδή & Ιωάννης Κόντος

Η΄ Διεθνές Κρητολογικό Συνέδριο 1996. ΕΚΙΜ, Ηράκλειο Κρήτης (2000), τα, Α2, σελ. 199-213.

1. Εισαγωγή
Η εργασία εμπίπτει στον κλάδο της Πληροφορικής που αφορά στην εφαρμογή μεθόδων της Τεχνητής Νοημοσύνης στην επεξεργασία νομικών κειμένων με ηλεκτρονικό υπολογιστή θεωρουμένων ως πηγές γνώσεων. Η Τεχνητή Νοημοσύνη είναι ο κλάδος της πληροφορικής που αφορά κυρίως την επεξεργασία γνώσεων. Η επεξεργασία αυτή προϋποθέτει τη δημιουργία βάσεων γνώσεων, η οποία μπορεί να γίνει είτε απο ειδικό “μηχανικό γνώσης” είτε από προγράμματα αυτόματης δημιουργίας βάσεων γνώσεων. Μια προσφάτως αναπτυσσόμενη μέθοδος δημιουργίας βάσεων γνώσεων είναι η αυτόματη άντληση γνώσεων από κείμενα. Τα κείμενα που περιέχουν γνώσεις μπορεί να είναι είτε επιστημονικά είτε νομικά αφού και τα δύο είδη κειμένων περιέχουν γνώση υπό μορφή κανόνων. Η άντληση αυτή μπορεί να γίνει είτε με την αυτόματη μετάφραση του γνωσιακού κειμένου σε έναν τυπικό φορμαλισμό παράστασης γνώσης, όπως με λογική, είτε με την επεξεργασία του κειμένου που σκοπεύει στην απάντηση ερωτήσεων με συμπερασμό που προκύπτει ύστερα από λογική ανάλυση, χωρίς προηγούμενη μετάφραση σε τυπικό φορμαλισμό, όπως περιγράφεται στην παρούσα εργασία. Η λογική ανάλυση επιστημονικών και τεχνικών κειμένων χωρίς προηγούμενη μετάφραση σε τυπικό φορμαλισμό έχει προταθεί και περιγραφεί στις εργασίες [J. Kontos 1980, 1982, 1983, 1985, 1992].
Το σύστημα που παρουσιάζεται εδώ και περιγράφεται παρακάτω αναλύει αυτομάτως τις υποθέσεις νομικού κειμένου χωρίς προηγούμενη κωδικοποίηση τους από άνθρωπο ή πρόγραμμα. Όταν η κωδικοποίηση ενός κειμένου γίνεται από άνθρωπο ή πρόγραμμα χρησιμοποιείται ένας τυπικός φορμαλισμός με τη χρήση του οποίου διατυπώνεται το περιεχόμενο του κειμένου. Οι τυπικοί φορμαλισμοί που χρησιμοποιούνται για τέτοιους σκοπούς αποτελούν ειδικές μορφές της κατηγορικής ή κατηγορηματικής λογικής. Στην Τεχνητή Νοημοσύνη έχουν αναπτυχθεί φορμαλισμοί που διευκολύνουν την επεξεργασία με υπολογιστή, όπως τα σημασιακά δίκτυα και τα πλαίσια.
Τα Σημασιακά Δίκτυα εισάγουν την έννοια της παράστασης γνώσης με τη βοήθεια κόμβων και ακμών. Τα Σημασιακά Δίκτυα είναι εικονική παράσταση γνώσης για τη διευκόλυνση του ανθρώπου. Με βάση την εικονική αυτή παράσταση μπορούν να δημιουργηθούν διάφορες εκδόσεις συμβολικής παράστασης γνώσης, χρησιμοποιώντας κάποιον τυπικό συμβολισμό επεξεργάσιμο από υπολογιστή.
Ένα Σημασιακό Δίκτυο αποτελείται από κόμβους και βέλη ή ακμές που φέρουν επιγραφές. Οι κόμβοι παριστάνουν οντότητες η γενικότερα έννοιες. Οι ακμές είναι προσανατολισμένες και παριστάνουν σχέσεις μεταξύ δύο εννοιών που δηλώνονται ως επιγραφές των αντίστοιχων ακμών. Ζεύγη σχετιζόμενων εννοιών παριστάνουν απλά γεγονότα όπως αυτά που στην Κατηγορική Λογική παριστάνονται με συγκεκριμενοποιημένα κατηγορήματα δύο ορισμάτων. Κάθε κόμβος μπορεί να συνδεθεί με οποιοδήποτε αριθμό άλλων κόμβων σχηματίζοντας δίκτυο.
Κάθε πλαίσιο έχει ένα όνομα που καθορίζει την οντότητα που περιγράφει και ένα σύνολο σχισμών που ορίζουν τα στοιχεία της οντότητας. Μια από τις σχισμές καθορίζει το αμέσως ανώτερο πλαίσιο της ιεραρχίας και αντιστοιχεί με το βέλος "είναι" των σημασιακών δικτύων. Τα φύλλα του δέντρου της ιεραρχίας είναι οι συγκεκριμενοποιήσεις που παριστάνουν μοναδικές οντότητες ενώ τα άλλα πλαίσια παριστάνουν ομάδες. Οι σχισμές ενός πλαισίου μπορεί να γεμίσουν και με ονόματα άλλων πλαισίων που καθορίζουν σύνθετες ιδιότητες ενός πλαισίου. Βασικός μηχανισμός λειτουργίας των πλαισίων είναι η κληρονομικότητα τιμών των σχισμών από άλλα πλαίσια, που ανήκουν στην ίδια ιεραρχία ή οντολογία. Οι σχισμές των πλαισίων μπορούν να γεμίσουν και με "κατά συνθήκην" ή "συνήθεις" ή "τυπικές" τιμές. Αυτό σημαίνει ότι δεν είναι απαραίτητο να περιγραφεί μια οντότητα με κάθε λεπτομέρεια και ορισμένες σχισμές να μην πάρουν τιμές από το χρήστη. Οι σχισμές αυτές μπορεί να πάρουν τυπικές τιμές που έχει ορίσει εκ των προτέρων ο σχεδιαστής του συστήματος επεξεργασίας γνώσεων με παράσταση πλαισίων.
Οι τυπικοί αυτοί φορμαλισμοί απαιτούν τη χρήση μονοσήμαντων συμβόλων, ενώ η φυσική γλώσσα και κατά μείζονα λόγο στα νομικά κείμενα εμφανίζει πληθώρα αμφισημιών. Και η μεγάλη δυσκολία έγκειται στο ότι το σύνολο των εννοιών μιας λέξης δεν παραμένει διαχρονικά σταθερό αλλά μεταβάλλεται με τις κοινωνικές συνθήκες. Οι μεταβολές αυτές είναι ευκολότερο να ληφθούν υπόψη με τη μέθοδο που ακολουθείται εδώ με απλή ενημέρωση του υπολογιστικού λεξικού, ενώ σε αντίθετη περίπτωση θα έπρεπε με την αλλαγή μιας έννοιας να επανακωδικοποιηθούν όλα τα κείμενα από την αρχή.
Το σύστημα επεξεργασίας με υπολογιστή νομικού κειμένου που υλοποιήθηκε με μεθόδους Tεχνητής Nοημοσύνης και περιγράφεται στην παρούσα εργασία έχει τη δυνατότητα να επεκταθεί με την ενσωμάτωση γνώσεων για τη δωρική διάλεκτο και πληροφοριών για την εποχή πέραν αυτών που προέρχονται από το κείμενο της Νομοθεσίας. Επίσης υπάρχει η δυνατότητα επέκτασης προς άλλες κατευθύνσεις όπως θα αναφερθεί παρακάτω.
Η υλοποίηση με υπολογιστή έγινε με τη χρήση της γλώσσας λογικού προγραμματισμού Prolog που αποτελεί βασικό εργαλείο λογισμικού της Τεχνητής Νοημοσύνης. Το σύστημα περιέχει υπολογιστικό λεξικό, κανόνες σύνταξης και λογικά γεγονότα που κωδικοποιούν την προϋποτιθέμενη γνώση.

2. Το Κείμενο και μερικά Ιστορικά Στοιχεία του
Η εργασία αποτελεί το πρώτο βήμα της έρευνάς μας σχετικά με την αυτόματη άντληση γνώσεων από ελληνικά νομικά κείμενα. Ως πρώτο κείμενο για την ανάπτυξη των μεθόδων μας επιλέξαμε το κείμενο της Μεγάλης Δωδεκαδέλτου Επιγραφής της Γόρτυνας, που θεωρείται από τους ειδικούς ως ο αρχαιότερος και σημαντικότερος νομοθετικός κώδικας της ελληνικής αρχαιότητας που σώζεται σε πρωτότυπο. Η Επιγραφή της Γόρτυνας αποτελεί το μοναδικό γνωστό αμέσως νομοθετικό κείμενο της ελληνικής αρχαιότητας, εν είδει πλήρους και αυτούσιας κωδικοποίησης σημαντικών θεσμών του δικαίου ελληνικής πόλεως της κλασικής εποχής [Ι. Τριανταφυλλόπουλος, 1968:10].
Δεν θα αναφερθούμε σε ιστορικά στοιχεία σχετικά με την επιγραφή τα οποία είναι ήδη γνωστά και έχουν μελετηθεί. Θα αναφερθούν στοιχεία ,τα οποία έχουν ερευνηθεί από γνωστούς μελετητές της επιγραφής και ελήφθησαν υπ΄ όψη στη δική μας έρευνα.
Η επιγραφή της Γόρτυνας δεν αποτελεί κώδικα με τη σύγχρονη νομοτεχνική σημασία της λέξης. Δεν είναι μεθοδική, συστηματική και εξαντλητική συλλογή και κατάταξη των κανόνων του συνόλου ή ενός τομέα του δικαίου της Γόρτυνας. Ούτε εμφανίζει στο σύνολό της αλληλουχία κατά τη μετάβασή της από το ένα θέμα στο άλλο. Η Επιγραφή περιλαμβάνει τμήματα μόνον του δικαίου που ίσχυε. Η Επιγραφή αποτελεί μάλλον σύνολο οδηγιών προς τον δικαστή για τον τρόπο εφαρμογής της νομοθεσίας. Οι διατάξεις της Επιγραφής αποσκοπούν κυρίως εις τη ρύθμιση σχέσεων του αστικού δικαίου στο μέτρο της επικρατούσας σε εκείνη την εποχή σύγχυσης των ορίων ποινικού και αστικού δικαίου [Σ. Φιοράκης, Ελ. Περάκη 1973:24].
Η σπουδαιότητα της Επιγραφής είναι μεγάλη και ως γλωσσολογικού μνημείου, της πρώιμης μάλιστα, δωρικής διαλέκτου. Η μελέτη της πρωτότυπης γλώσσας της Επιγραφής είναι κάτι που ενδιαφέρει ιδιαίτερα τη δική μας μελέτη και βρίσκεται υπό εξέλιξη.
Για την έρευνα μας ελήφθησαν υπ΄όψη επιστημονικές μελέτες για την Επιγραφή όπως των Ronald Willets, Ελένης Περάκη και Στυλιανού Φιοράκη, F. Bechtel, C.D. Buck καθώς επίσης και πρόσφατες μελέτες που αφορούν την υπολογιστική επεξεργασία σύγχρονων νομικών κειμένων με μεθόδους τεχνητής νοημοσύνης.

3. Γενική περιγραφή της Επεξεργασίας του Κειμένου της Επιγραφής
Η εργασία εστιάζει στην επεξεργασία φράσεων του κειμένου της Επιγραφής της Γόρτυνας με σκοπό τον εντοπισμό και τον σημασιολογικό χαρακτηρισμό των στοιχείων των κανόνων δικαίου του κειμένου. Η σημασιολογική ανάλυση αφορά σχέσεις μεταξύ των εννοιών που περιέχονται σε φράσεις του κειμένου.
Οι σημασιολογικές σχέσεις συνήθως είναι υπονοούμενες και προκύπτουν από τη χρήση προϋποτιθέμενης γνώσης. Η δυσκολία ανακατασκευής της προϋποτιθέμενης βάσης γνώσης των νομοθετών και των αναγνωστών του νομικού κειμένου μιας τόσο παλαιάς εποχής αποτελεί δυσεπίλυτο πρόβλημα. Για το λόγο αυτό αναγκαστικά η εργασία περιορίζεται στη χρήση προϋποτιθέμενης γνώσης που ενυπάρχει και σε ανάλογες σημερινές καταστάσεις.
Οι προτάσεις του κειμένου που επιλέξαμε για επεξεργασία αποτελούν τμήμα των υποθέσεων των κανόνων δικαίου που περιέχει το κείμενο. Ως γνωστό ένας κανόνας δικαίου και στη σημερινή νομοθεσία έχει δύο βασικά τμήματα, την υπόθεση και την απόδοση. Η υπόθεση προσδιορίζει τις συνθήκες που πρέπει να ισχύουν για να εφαρμοστεί ο κανόνας δικαίου και απόδοση προδιαγράφει την απόφαση που μπορεί πάρει ο αρμόδιος δικαστής. Για κάθε εκδικαζόμενη περίπτωση ο βασικός νομικός συλλογισμός στηρίζεται στη συσχέτιση των χαρακτηριστικών της περιπτώσεως με τα χαρακτηριστικά κάποιας υπόθεσης που εμφανίζεται στο ισχύον δίκαιο.
Η υποστήριξη με υπολογιστή της έκδοσης νομικών αποφάσεων που στη διεθνή βιβλιογραφία, δηλαδή, σε ειδικά επιστημονικά περιοδικά και συνέδρια εμπίπτει στον κλάδο που εμφανίζεται με την ονομασία Artificial Intelligence and Law (Τεχνητή Νοημοσύνη και Νόμος), απαιτεί την ανάλυση των υποθέσεων με πρόγραμμα υπολογιστή. Μέχρι τώρα οι περισσότεροι ερευνητές επιχειρούν την ανάλυση αυτή αφού προηγουμένως κωδικοποιήσουν χωρίς τη χρήση υπολογιστή τα κείμενα σε μορφή ώστε η περιεχόμενη σε αυτά πληροφορία να είναι επεξεργάσιμη από τον υπολογιστή. Κατά τη δημιουργία του συστήματος μας ακολούθησε η μέθοδος ανάλυσης του κειμένου χωρίς προηγούμενη μετάφραση σε έναν τυπικό φορμαλισμό, όπως αναφέρεται και παραπάνω. Η δοκιμή του συστήματος μας έγινε με 24 προτάσεις που προέρχονται από υποθέσεις νομικών κανόνων του κειμένου της νομοθεσίας της Γόρτυνας.

4. Το Υπολογιστικό Λεξικό
Το υπολογιστικό λεξικό του συστήματος περιέχει όλες τις λέξεις των φράσεων που επιλέξαμε από το κείμενο για επεξεργασία με υπολογιστή. Οι λέξεις των προτάσεων που χρησιμοποιήθηκαν στις δοκιμές αποτελούν το λεξικό του συστήματος. Οι λέξεις αυτές έχουν ομαδοποιηθεί σε τρεις μεγάλες κατηγορίες ανάλογα με τον αριθμό των χαρακτηριστικών.
Η πρώτη ομάδα έχει ένα μόνο χαρακτηριστικό, δηλαδή το μέρος του λόγου που είναι μια άκλιτη λέξη, όπως “εάν, δεν, δε, όμως κ.α.” και την αντίστοιχη μορφή της στην αρχαία. Η δεύτερη ομάδα αποτελείται από ρήματα και έχει δύο χαρακτηριστικά το ένα δηλώνει τη μεταβατικότητα, ή μη μεταβατικότητα του ρήματος και το άλλο τον αριθμό. Επειδή στα νομικά κείμενα εμφανίζεται μόνον το τρίτο πρόσωπο δεν απαιτείται η παρουσία αντίστοιχου χαρακτηριστικού διότι εννοείται. Η τρίτη ομάδα αποτελείται από άρθρα, ουσιαστικά, επίθετα και μετοχές και έχει τέσσερα χαρακτηριστικά, δηλαδή το είδος τη λέξης, τον αριθμό, την πτώση και το γένος. Σε όλα τα λήμματα του λεξικού εμφανίζεται η νέα και η αρχαία μορφή της λέξης. Ένα τμήμα του υπολογιστικού λεξικού παρουσιάζεται παρακάτω :

l(ean,ai,pa).
l(den,me,pa).
l(de,de,pa).
l(de,omws,pa).
l(i,e,synd).
l(kai,kai,synd).
l(alla,de,synd).
l(pros,epi,proth).
l(ek,es,proth).
l(ek,eks,proth).
l(viasei,kartei_oipei,v,s).
l(viasei,kartei_damasaito,v,s).
l(diazeyhthoun,diakrinontai,iv,p).
l(eggyiithei,andeksetai,iv,s).
l(apothanei,apothanoi,iv,s).
l(nymfefthei,opyiei,v,s).
l(katalipei,katalipoi,v,s).
l(einai,ei,v,s).
l(yparxei,eie,iv,s).
l(yparxoyn,eie,iv,p).
l(zei,dooi,iv,s).
l(lavei,peroi,v,s).
l(afisei,kataleipei,v,s).
l(gennisei,tekoi,iv,s).
l(thelei,leei,v,s).
l(na_ekplironei,tellen,inv,s).
l(ton,ton,pr,s,a,m).l(tin,tan,pr,s,a,f).
l(tis,tis,pr,s,o,m).l(ti,ti,pr,s,a,n).
l(allin,allan,pr,s,a,f).l(allo,allo,pr,s,a,n).
l(aytoy,ayto,pr,s,g,m).
l(oydeis,metis,pr,s,o,m).
l(toy,tas,d,s,g,n).l(twn,twn,d,p,g,n).
l(o,o,d,s,o,m).l(toy,toy,d,s,g,m).
l(eleytheron,eleytheron,e,s,a,m).
l(eleytheran,eleytheran,e,s,a,f).
l(doylin,dolan,e,s,a,f).
l(doylos,dolos,e,s,o,m).
l(anir,aner,e,s,o,m).
l(andros,andros,e,s,g,m).
l(patir,pater,e,s,o,m).
l(patros,patros,e,s,g,m).
l(mitir,mater,e,s,o,f).
l(adelfos,adelpios,e,s,o,m).
l(adelfoi,adelpioi,e,p,o,m).
l(adelfwn,adelpiwn,e,p,g,m).
l(yios,yiys,e,s,o,m).
l(yioi,yieed,e,p,o,m).
l(gyni,gyna,e,s,o,f).
l(oikea,oikea,e,s,o,f).
l(chrimata,kremata,e,p,o,n).
l(diazygioy,kereysios,e,s,g,n).
l(teknwn,teknwn,e,p,g,n).
l(tekna,tekna,e,p,o,n).
l(tekna,tekna,e,p,a,n).
l(oikia,stega,e,s,o,f).
l(yiothetitheis,anpantos,e,s,o,m).
l(elthon,elthon,met,s,o,m).
l(apothanon,apothanon,e,s,o,m).
l(apothanontos,apothanontos,e,s,g,m).
l(diazeygmeni,kereyonsa,e,s,o,f).
l(oikositon,endothidian,ad,s,a,f).
l(ateknon,ateknon,ad,s,a,f).
l(diazeygmeni,kereyonsa,ad,s,o,f).
l(ypaitios,aitios,ad,s,o,m).

Για το συγκεκριμένο κείμενο έγινε προσπάθεια να αποδοθεί η έννοια κάθε αρχαίας λέξης στη Νέα Ελληνική μονολεκτικά, εκτός από δύο περιπτώσεις, όπου ένα ζεύγος αρχαίων λέξεων και συγκεκριμένα το “κάρτει οίπει” και το “κάρτει δαμάσαιτο” αποδόθηκαν με τη νεοελληνική λέξη “βιάζω”, χωρίς όμως να διαταραχθεί η δομική αντιστοιχία μεταξύ των δύο μορφών της γλώσσας.
Τέλος υπάρχει μια περίπτωση όπου το απαρέμφατο του αρχαίου κειμένου αποδίδεται στη Νέα Ελληνική, ως συνήθως, με τη δομή “να+ρήμα”.

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

Αντωνυμία
π.χ. τίς, τί, άλλην, άλλο

Ουσιαστικό
π.χ. ανήρ, μήτηρ, πατήρ, αδελφός, τέκνα, χρήματα

Άρθρο + Ουσιαστικό
π.χ. ο πατήρ, η γυνή, του πατρός, των αδελφών

Άρθρο + Μετοχή
π.χ. ο υιοθετηθείς, ο αποθανών, οι επιβάλλοντες, η διαζευγμένη

Επίθετο + Ουσιαστικό
π.χ. οικόσιτον δούλην, ελευθέρα γυνή, ελευθέρου τέκνου, μητρική περιουσία

Ονοματική Φράση + ή + Ονοματική Φράση
π.χ. ελεύθερον άνδρα ή ελευθέραν γυναίκα, πατήρ ή αδελφός

Ονοματική Φράση + και+ Ονοματική Φράση
π.χ. ανήρ και γυνή

Ουσιαστικό στην Ονομαστική + Ουσιαστικό στη Γενική
π.χ. αδελφοί του πατρός, οι επιβάλλοντες του υιοθετήσαντος, αδελφοί του αποθανόντος

Ουσιαστικό+ Πρόθεση + Άρθρο+Ουσιαστικό
π.χ. υιοί εκ των αδελφών, αδελφός εκ του αυτού πατρός,

Παρουσιάζουμε παραδείγματα κανόνων επεξεργασίας κειμένου σε γλώσσα λογικού προγραμματισμού Prolog.

p(S,np,NP,P):- w(S,N1,D),w(S,N2,N),N2=N1+1,
l(D,_,d,Nu,P,G),l(N,_,e,Nu,P,G),

c(D,N,NP).

p(S,np,NP,P):- w(S,N1,D),w(S,N2,N),N2=N1+1,
l(D,_,d,Nu,P,G),l(N,_,met,Nu,P,G),
c(D,N,NP).

p(S,npc,NPc,o):- w(S,_,No),l(No,_,e,_,o,_),
w(S,_,Na),l(Na,_,e,_,g,_),r(No,Na,R),
concat(No,Na,NPc),write(S,R),nl.

p(S,npq,NP,P,N1):- w(S,N1,E1),l(E1,_,e,_,P,_),
w(S,N2,ek),N2=N1+1,w(S,N3,D),
l(D,_,d,_,g,_),N3=N2+1,
w(S,N4,Pr),l(Pr,_,pr,s,g,_),
N4=N3+1,w(S,N5,E2),l(E2,_,e,_,g,_),
N5=N4+1,c(E1,ek,S1),c(S1,D,S2),
c(S2,Pr,S3),c(S3,E2,NP).

p(S,se,SE,V,_,NP):- a(S,_,V,Ne),l(V,_,v,_),p(S,np,NP,a),
c(Ne,V,CV),c(CV,NP,SE).

p(S,se,SE,V,NPo,NPa):- a(S,_,V,Ne),l(V,_,v,_),
p(S,np,NPo,o),p(S,np,NPa,a),
c(NPo,Ne,S1),c(S1,V,S2),c(S2,NPa,SE).

p(S,se,SE,V,NPo,INV):- a(S,_,V,Ne),l(V,_,v,_),p(S,np,NPo,o),
w(S,_,INV),l(INV,_,inv,_), c(NPo,Ne,S1),c(S1,V,S2),c(S2,INV,SE).

p(S,se,SE,V,NPo,NPc):- w(S,_,V),l(V,_,v,_),
p(S,np,NPo,o),p(S,npc,NPc,o),
c(NPo,V,S1),c(S1,NPc,SE).

p(S,se,SE,V,NPc,_):- a(S,_,V,NE),l(V,_,iv,_),
p(S,npc,NPc,o),c(V,NPc,S1),c(NE,S1,SE).

6. Γνώση του Κόσμου για την Υποστήριξη της Ανάλυσης
Όπως έχουμε και σε άλλες μας εργασίες επισημάνει η γνώση του κόσμου είναι απαραίτητη για την ανάλυση φυσικής γλώσσας με υπολογιστή [Ι. Κόντος, 1982, 83], [Ι. Μαλαγαρδή 1995α, 1995β, 1996]. Η γνώση που χρησιμοποιείται στην παρούσα εφαρμογή χωρίζεται σε δύο κύρια μέρη:

α) στην κατηγοριοποίηση των ενεργειών και
β) στον καθορισμό των υπονοούμενων σχέσεων μεταξύ ουσιαστικών.
Οι ενέργειες εκφράζονται με ρήματα που στον συγκεκριμένο μικρόκοσμο ομαδοποιούνται ως εξής :

1) αδικήματα : βιάσει, λάβει (κάρτει οίπει, κάρτει δαμάσαιτο, πέροι)
2) ύπαρξη : ζει, υπάρχει, αποθάνει (δόοι, ει, είε, αποθάνοι)
3) γενικές δράσεις : αφήσει, γεννήσει, διαζευχθούν, εγγυηθεί, καταλείπει, νυμφευθεί (καταλείπει, τέκοι, διακρίνονται, ανδέκσεται, καταλίποι, οπυίει)

Τα είδη σχέσεων που υπονοούνται μεταξύ ουσιαστικών στη βάση γνώσης του συγκεκριμένου μικρόκοσμου είναι συγγένεια και ευθύνη.

1) συγγένεια : αδελφός πατρός (αδελπιός πατρός)
2) ευθύνη : υπαίτιος διαζυγίου (αίτιος ει τας κερεύσιος)

Η γνώση αυτή των υπονοούμενων σχέσεων χρησιμοποιείται κατά την ανάλυση ονοματικών φράσεων της μορφής ουσιαστικό στην ονομαστική + ουσιαστικό στη γενική, επίθετο στην ονομαστική + ουσιαστικό στη γενική. Οι σχέσεις αυτές εμφανίζονται στο εξαγόμενο εφόσον συμβεί να αποτελέσουν μέρος της απάντησης κάποιας από τους τύπους ερωτήσεων που περιγράφονται παρακάτω.
Σε προηγούμενη μας εργασία [Ι. Μαλαγαρδή, 1996] μελετήθηκαν ονοματικές φράσης με γενική, λαμβάνοντας υπόψη την κατηγοριοποίηση του Α. Τζάρτζανου, η οποία, ως γνωστό, αφορά κυρίως σημασιολογικές σχέσεις μεταξύ των συστατικών της ονοματικής φράσης. Στη συνέχεια έγινε υλοποίηση με υπολογιστή για τον προσδιορισμό της υπονοούμενης σχέσης μεταξύ των συστατικών της ονοματικής φράσης με βάση τις ιεραρχίες των εννοιών.
Παρουσιάζουμε επίσης μέρος της παραπάνω γνώσης κωδικοποιημένης ως μια βάση γνώσης. Η ανθρώπινη γνώση κωδικοποιείται ως μία βάση γνώσης με γεγονότα (facts) και με κανόνες (rules). Με τα παρακάτω γεγονότα κωδικοποιείται μέρος της γνώσης που χρησιμοποιήσαμε.
adik(viasei).adik(lavei).
yparx(zei).yparx(yparxoyn).yparx(yparxei).yparx(apothanei). drasi(diaseyhthoun).drasi(afisei).drasi(gennisei).drasi(nymfemthei).
drasi(katalipei). drasi(eggyiithi).
r(adelfoi,patros,syggeneia). r(ypaitios,diazygioy,efthyni).

Τα γεγονότα αυτά γράφονται χρησιμοποιώντας τα εξής κατηγορήματα :

adik καθορίζει την κατηγορία των ρημάτων που δηλώνουν αδικήματα.
yparx καθορίζει την κατηγορία των ρημάτων που δηλώνουν ύπαρξη.
drasi καθορίζει την κατηγορία των ρημάτων που δηλώνουν δράση που δεν αποτελεί αδίκημα.
r καθορίζει σχέσεις μεταξύ εννοιών που εκφράζονται με ουσιαστικά.

7. Παραδείγματα Ερωτήσεων που απαντά το Σύστημα

Αναφέρονται εδώ ορισμένες βασικές μορφές ερωτήσεων που μπορεί να απευθύνει ο χρήστης στο σύστημα και να λάβει απαντήσεις που σχετίζονται με το νομικό συμπερασμό καθόσον προκύπτουν από την επεξεργασία υποθέσεων. Οι απαντήσεις στις ερωτήσεις τύπου 2, 3, 4 στηρίζονται στη χρησιμοποίηση γνώσης της κατηγοριοποίησης των ενεργειών.

Ερώτηση τύπου 1 : Να βρεθούν όλες οι δομές που εμφανίζονται στο κείμενο και προβλέπονται από τους κανόνες (q).

q:-p(S,P,X,_),write(S," has"),nl,write(P,"=",X),nl, fail.

Eρώτηση τύπου 2 : Nα βρεθούν όλες οι προτάσεις που αναφέρονται σε αδικήματα και να προσδιοριστούν οι θεματικοί ρόλοι που είναι ρόλοι του μικρόκοσμου (Δράστης, Θύμα) (ta).

ta:-p(S,se,X,V,Y,A),adik(V),write(S,"=",X),nl,
write("DRASTIS=",Y),nl,write("THYMA=",A),nl,
readchar(_),fail.

Ερώτηση τύπου 3 : Να βρεθούν όλες οι δράσεις και να προσδιοριστεί ο δράστης και το αντικείμενο (td).

td:-p(S,se,X,V,Y,A),drasi(V),write(S,"=",X),nl,
write("DRASTIS=",Y),nl,write("ANTIK=",A),nl,
readchar(_),fail.

Ερώτηση τύπου 4 : Να βρεθούν όλες οι προτάσεις που αφορούν ύπαρξη και να προσδιοριστεί ο πάσχων (ty).

ty:-p(S,se,X,V,Y,_),yparx(V),write(S,"=",X),nl,
write("PASCHON=",Y),nl,readchar(_),fail.

Ερώτηση τύπου 5 : Να βρεθούν όλες οι προτάσεις που αναφέρονται σε συνδυασμό συγκεκριμένης ενέργειας και ουσιαστικών που παίζουν το ρόλο υποκειμένου ή αντικειμένου (q1).

q1:-p(S,se,X,apothanei,gyni,_),write(S,"=",X),nl,fail.
%(sentno,np/npc/npq/se,phrasi,rima,ypok,antik)

Ερώτηση τύπου 6 : Να αναλυθεί πρόταση της οποίας δίνεται ο αριθμός. Χρησιμοποιείται για τεχνικούς λόγους (εκσφαλμάτωση) (q2).

q2:-write("DOSE ARITHMO PROTASIS"),nl,readint(N),
p(N,se,X,_,_,_),nl,write(X),fail.

Ερώτηση τύπου 7 : Να βρεθεί βάσει του ρήματος της υπόθεσης που αντιστοιχεί στις συνθήκες ενός κανόνος δικαίου η απόδοση που αντιστοιχεί στην ποινή ή στο νομικό αποτέλεσμα (q3, q4, q5).

q3:-p(S,se,X,apothanei,_,_),write(S,"=",X),nl,
a(S,A),write(A),nl,fail.
%(sentno,np/npc/npq/se,phrasi,rima,ypok,antik)

q4:-p(S,se,X,yparxei,_,_),write(S,"=",X),nl,
a(S,A),write(A),nl,readchar(_),fail.
%(sentno,np/npc/npq/se,phrasi,rima,ypok,antik)

q5:-p(S,se,X,viasei,_,_),write(S,"=",X),nl,
a(S,A),write(A),nl,readchar(_),fail.
%(sentno,np/npc/npq/se,phrasi,rima,ypok,antik)

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

(ΙΙ 2) Εάν τις ελεύθερον ή ελευθέραν βιάσει, εκατόν στατήρας θα καταβάλει .

Αί κα τόν ελεύθερον ε τάν ελευθέραν κάρτει οίπει, εκατόν στατέρανς καταστασεί.

(ΙΙ 11) Οικόσιτον δούλην εάν βιάσει, δύο στατήρας θα καταβάλει.

Ενδοθιδίαν δόλαν αί κάρτει δαμάσαιτο, δύο στατέρανς καταστασεί.

(VΙΙΙ 51.)Εάν όμως μήτηρ δεν υπάρχει, πλησίον των εκ μητρός συγγενών της να ανατρέφεται.

Αί δέ μάτερ μέ είε, παρ τοίς μάτροσι τράπεθαι.

(XI 6) Αν δε αποθάνει ο υιοθετηθείς γνήσια τέκνα μη καταλιπών, να μεταβαίνει η περιουσία στους επιβάλλοντας του υιοθετήσαντος.

Αί δ’ αποθάνοι ο ανπαντός γνέσια τέκνα μέ καταλιπόν, παρ’ τόνς τό ανπαναμένο επιβάλλοντανς ανκορέν τά κρέματα.

8. Επίλογος
Η παρούσα εργασία αποτελεί το πρώτο βήμα της έρευνάς μας σχετικά με την αυτόματη άντληση γνώσεων από ελληνικά νομικά κείμενα. Ως πρώτο κείμενο για την ανάπτυξη των μεθόδων μας επιλέξαμε το κείμενο της Μεγάλης Δωδεκαδέλτου Επιγραφής της Γόρτυνας, που θεωρείται από τους ειδικούς ως ο αρχαιότερος και σημαντικότερος νομοθετικός κώδικας της ελληνικής αρχαιότητας που σώζεται σε πρωτότυπο. Έγινε η προσπάθεια μιας νέας προσέγγισης της Νομοθεσίας, βασισμένη στην ανάλυση κειμένου με ηλεκτρονικό υπολογιστή. Βέβαια ακούγεται κάπως περίεργα η ανάλυση ενός αρχαιότατου κειμένου με μεθόδους που μας προσφέρει η σύγχρονη τεχνολογία. Η υλοποίηση όμως μας απέδειξε ότι είναι εφικτή η επεξεργασία από μετάφραση στη Ν. Ελληνική που είχε γίνει ακολουθώντας όσο ήταν δυνατόν τη συντακτική δομή του αρχαίου κειμένου.
Η επεξεργασία που γίνεται με το σύστημα αφορά υποθέσεις των νομικών κανόνων που περιέχει το κείμενο. Η χρήση ενός τέτοιου συστήματος για υποστήριξη του νομικού συλλογισμού στηρίζεται στην ταύτιση μιας ειδικής περίπτωσης με κάποια από τις υποθέσεις που αναλύθηκαν. Μια περίπτωση ορίζεται από το Δράστη το Θύμα και την Πράξη εφόσον είναι τιμωρητέα, δηλαδή αδίκημα. ΄Αλλα είδη περιπτώσεων αντιστοιχούν σε υποθέσεις που δεν περιγράφουν αδικήματα, αλλά συνθήκες με κάποιες νομικές συνέπειες, όπως είναι περιπτώσεις κληρονομιάς και υιοθεσίας. Όταν το σύστημα αναγνωρίσει μια τέτοια ταύτιση μπορεί αυτομάτως να μας πληροφορήσει για το περιεχόμενο της απόδοσης του εφαρμοζομένου κανόνα δικαίου. Η επέκταση του συστήματος για νεότερη νομοθεσία εφόσον θα είναι δυνατή η συλλογή χαρακτηριστικών περιπτώσεων θα μας δώσει τη δυνατότητα μιας ρεαλιστικότερης εφαρμογής.
Η εργασία αυτή είναι ελπιδοφόρο πρώτο βήμα για την επέκταση της έρευνας μας προς διάφορες κατευθύνσεις, όπως :
1) H επεξεργασία αρχαίου κειμένου από το πρωτότυπο, χωρίς τη βοήθεια μετάφρασης, ελπίζοντας ότι άλλα κείμενα της αρχαίας ελληνικής γραμματείας θα μας είναι περισσότερο οικεία.
2) H επέκταση της γραμματικής της συντακτικής ανάλυσης σε άλλα γλωσσικά φαινόμενα που δεν καλύπτονται από το παρόν σύστημα.
3) Η μελέτη των τυχόν πλεονεκτημάτων της αρχαίας ελληνικής σε σχέση με άλλες γλώσσες σε ότι αφορά στην επεξεργασία με υπολογιστή.

9. Βιβλιογραφία
Bechtel, F. (1963).Die griechischen Dialekte. Berlin 1921-4.
Buck, C. D. (1955). The Greek Dialects. Chicago.
Kontos, J. (1980). Syntax-Directed Processing of Texts with Action Semantics. Cybernetica, 23, 2 pp. 157-175.
Kontos, J. (1982). Syntax-Directed Plan Recognition with a Microcomputer. Microprocessing and Microprogramming. 9, pp. 227-279.
Kontos, J. (1983). Syntax-Directed Fact Retrieval from Texts with a Micro-Computer. Proc. MELECON '83, Athens.
Kontos, J. (1985). Natural Language Processing of Scientific/Technical Data, Knowledge and Text Bases.Proceedings of ARTINT Workshop. Luxemburg.
Kontos, J. (1992). ARISTA: Knowledge Engineering with Scientific Texts. Information and Software Technology, Vol. 34, No 9, pp 611-616.
Κόντος, Ι. (1996). Τεχνητή Νοημοσύνη και Λογομηχανική. Εκδόσεις Ε. Μπένου.
Liddell, H. G., Scott, R. Μέγα Λεξικόν της Ελληνικής Γλώσσης.
Μαλαγαρδή, I. (1995a). Συγκριτική Ανάλυση "να" και "για να" Δομών της Νέας Ελληνικής με Αντίστοιχες Δομές της Γερμανικής και Εφαρμογή στη Μηχανική Μετάφραση. Αδημοσίευτη Διδακτορική Διατριβή. Πανεπιστήμιο Αθηνών.
Malagardi I., (1995b) The resolution of the subject ambiguity in sentences with "ya na" using domain knowledge, and related problems in machine tranlation. To appear inthe 2nd. International Congress on Greek Linguistics. Salzburg. September 1995.
Μαλαγαρδή, Ι. (1996). Προσδιορισμός με Υπολογιστή της Υπονοούμενης Σχέσης μεταξύ των Συστατικών Ονοματικών Φράσεων σε Υπογλώσσες. 17η Συνάντηση Εργασίας ΑΠΘ, Θεσσαλονίκη.
Πανταζίδου. Ι (1892). Λεξικόν Ομηρικόν. Αθήνα.
Περάκη, Ε. (1973). Η Μεγάλη Δωδεκάδελτος Επιγραφή της Γόρτυνος. Εισαγωγή Σ. Φιοράκη. Δικηγορικός Σύλογος Ηρακλείου.
Rissland, E. L. (1990). Artificial Intelligence and Law : Stepping Stones to a Model of Legal Reasoning. Yale Law Journal. Vol. 99, pp.1956- 1981.
Τζάρτζανος, A. (1989). Νεοελληνική Σύνταξις. Τομος B΄ , Αφοί Κυριακίδη, Θεσσαλονίκη.
Τριανταφυλλόπουλος, Ι. (1968). Αρχαία Ελληνικά Δίκαια.
Willets, R. F. (1967). The Law Code of Gortyn, Kadmos : Supplement I. Berlin 1967.