Motivi per utilizzare Prolog

November 11

Motivi per utilizzare Prolog


Prolog (Programming in Logic) è un linguaggio di programmazione unica. È stato sviluppato in Francia da ricercatori che erano interessati a traduzione automatica del linguaggio naturale. E 'stato perfezionato in Scozia da ricercatori che erano interessati a provers automatiche teorema. E 'venuto all'attenzione del mondo quando i giapponesi scelse come lingua di base per il loro progetto "quinta generazione" Intelligenza Artificiale (AI). Ci sono un sacco di buoni motivi per utilizzare Prolog.

utilizzando Prolog

Uno dei migliori motivi per utilizzare Prolog è che non c'è bisogno di dire al computer come risolvere un problema --- basta fornire al computer le regole coinvolti nella soluzione del problema. programmi Prolog sono costituiti da un insieme attentamente ordinata di regole che simile a questa: Se X e Y e Z quindi W. Questo insieme di regole potrebbero essere le regole grammaticali (se si sta lavorando sulle lingue naturali) o le norme sulla matematica (se si sta lavorando su provers teorema automatici) o regole su qualsiasi dominio di interesse. Le regole devono avere questa forma: "Se (un qualsiasi numero di antecedenti --- compresi gli zero antecedenti) poi (conclusione)." Gli antecedenti devono essere collegati con la "e" congiunzione. Una volta che le regole sono a posto si può inviare una domanda e il programma rispondere "sì", "no" o "non può dire."

quantificazione

Un altro motivo per usare Prolog, è che è molto facile esprimere le cose in Prolog che sono difficili da esprimere in altre lingue. È facile esprimere fatti Prolog, ma è anche facile esprimere relazioni complesse perché Prolog utilizza una logica quantificazione invece della logica semplice utilizzato da altre lingue. Quantificazione significa solo che una variabile può avere attributi --- in altre parole, non è solo "Se A e B poi C" può anche essere "Se A (a, b, c) e B (m, n) allora C (a, b, n) "dove a, b, c, m ed n sono attributi di a, b e C. Per esempio: se Between (x, y, z) e Tra (x, k, y) allora tra (x, k, z) "sarebbe difficile da esprimere in qualsiasi altra lingua --- sarebbe certamente prendere più di una riga in qualsiasi altra lingua.

Unificazione

Il motivo per cui molte persone scelgono Prolog è che cercherà automaticamente una risposta. Questo può essere fatto in altre lingue, ma non è automatico e comporterebbe centinaia o migliaia di linee di codice. Prolog diventa veramente il suo potere da strumenti logici come la quantificazione e l'unificazione. Unificazione significa semplicemente che due cose non devono essere uguali per abbinare fintanto che possono essere resi uguali utilizzando qualche lista di sostituzioni. Ad esempio, P (j, g) non è uguale a P (k, g), ma può essere resa uguale if (j = k) è sulla lista sostituto. Unificazione rende facile la ricerca di qualcosa, perché quando Prolog risponde "sì" o "no" sarà anche restituire l'elenco di sostituzione che è necessario per far funzionare le cose. Ad esempio, se il cane infatti (ricco, Benji) è nella vostra base di dati e si pone la domanda "Dog (ricco, x)". Prolog tornerà "sì" e la lista di sostituzione (x = Benji).