Prolog (Programação em Lógica ) é uma linguagem de programação único. Ele foi desenvolvido na França por pesquisadores que estavam interessados em tradução automática língua natural. Ele foi aperfeiçoado na Escócia por pesquisadores que estavam interessados em provadores de teoremas automáticas. Ele chamou a atenção do mundo quando os japoneses escolheram como o idioma base para o seu " Quinta Geração " Inteligência Artificial (AI) do projeto. Há uma série de boas razões para usar Prolog . Utilizando o Prolog
Uma das melhores razões para usar Prolog é que você não tem que dizer ao computador como resolver um problema --- você só tem que dar o computador as regras envolvidas na resolução do problema. Programas Prolog consistem de um conjunto cuidadosamente ordenada de regras que se parecem com isto: Se X e Y e Z , em seguida, W. Este conjunto de regras poderia ser regras gramaticais ( se você estiver trabalhando em línguas naturais ) ou regras sobre matemática ( se você estiver trabalhando em provadores de teoremas automático) ou regras sobre qualquer domínio de interesse. As regras devem ter a seguinte forma: " Se ( qualquer número de antecedentes --- incluindo o zero antecedentes ), então ( conclusão). " Os antecedentes deve ser ligado com o " e " conjunto . Uma vez que as regras estão em vigor , você pode enviar uma pergunta eo programa irá responder " sim", " não" ou " não posso dizer ".
Quantificação
Outra razão para usar Prolog, é que é muito fácil de expressar as coisas em Prolog que são difíceis de expressar em outras línguas. É fácil para expressar fatos em Prolog , mas também é fácil para expressar relações complexas porque Prolog utiliza lógica quantificação , em vez de a lógica simples utilizado por outros idiomas . Quantificação apenas significa que uma variável pode ter atributos --- em outras palavras , não é apenas " Se A e B, então C " pode também ser " Se A ( a, b , c ) e B ( m , n ), então C ( a, b , n ) ", em que a, b , c , m e n são atributos de A, b e C. Por exemplo, se entre ( x , y , z ) e de entre ( x k, y ) então entre (x , k, z) "seria difícil expressar em qualquer outra língua --- seria certamente ter mais de uma linha em qualquer outra língua .
Unificação
O motivo muitas pessoas optam Prolog é que ele vai procurar automaticamente uma resposta. isso pode ser feito em outras línguas , mas não é automático e envolveria centenas ou milhares de linhas de código. Prolog realmente recebe o seu poder de ferramentas lógicas como a quantificação e unificação . unificação apenas significa que duas coisas não tem que ser igual a corresponder enquanto eles podem ser feitos iguais, usando alguns lista de substituições . por exemplo , P ( j , g ) não é igual para P (k, g ), mas eles podem ser feitos iguais se (j = k) está na lista de substituto. Unificação facilita a busca de alguma coisa, porque quando Prolog responde "sim" ou "não" vai também voltar a substituição lista que é necessário para fazer as coisas funcionarem . Por exemplo, se o fato Dog ( rico, benji ) está na sua base de dados e você faz a pergunta " Dog ( rico , x) " . Prolog retornará "sim" ea lista de substituição (x = benji ) .