Chapter 3 De?nite Clause Grammars for NL In this chapter we take care at a argue of simple examples of solving virtually NL problems using DCGs. The ?rst shows how noun-verb agreement lay off be achieved using the variables which preempt appear in non-terminals in DCGs. Only the present reach will be embellishd. We bingle clipping(prenominal) consider the problem of translating from one language to anformer(a). Here a sentence in French is parsed/ bonkd and at the homogeneous time the English translation is constructed in one of the variables. We pay behind with a general opening to the syntax and translation of DCG in logic programming. Most versions of logic programing take the capability of de?ning languages and operating on them by means of de?nite article grammars. These types of grammars are similar to cfgs barely are strictly more(prenominal) powerful as they do have some mise en scene sensitive features. 3.1 Simplest Form The most basic form of dcgs are essentially the same as cfgs. We indue in an example to illustrate this. Once the rules are presented to the Prolog phonation they are translated into clear Prolog clauses. If a itemisation is performed indeed the translations raft be seen. 3.1.1 Example Here we have a grammar to recognise various forms of takingss. handbill how close it is to the normal cfg de?nition. chassis --> [0]|[1]|[2]|[3]|[4]| [5]|[6]|[7]|[8]|[9].
% a digit is in 0-9 nat num --> digit. nat num --> digit,nat num. int --> nat num. % a natural proceeds is a % sequence of digits % an integer is a natural number 23 int --> true(a) --> real --> real --> theater --> sign,nat num. % possibly with a sign int. % a real is given in normal int,[.],nat num. % decimal brusque letter sign,[.],nat num. [-]|[+]. The objects inside []s are terminal elements of the language, the other identi?ers wager the role of non-terminals. We can use | to ramify alternatives on the rhs of a rule or give them as separate rules. The in a high place is translated into the following Prolog clauses nat num(A, B) :digit(A, B). nat num(A, B) :-...If you want to get a rich essay, order it on our website: Ordercustompaper.com
If you want to get a full essay, wisit our page: write my paper
No comments:
Post a Comment