O que é a linguagem Prolog?

Prolog é uma linguagem de programação de computador baseada na lógica. A maioria das linguagens de computador é baseada nas etapas necessárias para resolver um problema. A linguagem Prolog, por outro lado, é uma linguagem "declarativa" que indica as relações lógicas entre as entidades. A maneira de resolver o problema é deixada para o computador. O nome Prolog vem da programação francesa em Logique, ou seja, lógica de programação. Ancestral (P, Q):- Pai (P, R), Ancestral (R, Q)
Pai (John, Jim).
Pai (Jim, Jerry).
Pai (Jerry, Jason).
Pai (Jerry, Jeff).
Pai (Jason, Joshua).

O programa acima indica truísmos. Se F é pai de C, então F é um ancestral de C. Se P é o pai de alguma pessoa r que é um ancestral de Q, então P é um ancestral de Q. Vários fatos verdadeiros são dados, como João sendo o pai de Jim. Se então uma pergunta problemática é feita sobre se John éUm ancestral de Jeff, recebemos a resposta "sim" como abaixo:

?- Ancestral (John, Jeff).
Sim

Se os ancestrais de Josué são de interesse, então o programa exibe todos os ancestrais da seguinte maneira:

?- ancestral (a, joshua)
A = Jason
A = jerry
A = jim
A = john

Observe que, nas duas instâncias acima, o programa não disse como fazer a avaliação. Por exemplo, não indicou se deveria começar na pessoa idosa e seguir seu caminho para a pessoa mais jovem ou vice -versa. Também trocando as peças como abaixo:

ancestral (p, q):- ancestral (r, q), pai (p, r)

Não faria diferença para o programa, pois essas duas partes do lado direito precisam ser verdadeiras para que o lado esquerdo seja verdadeiro.

A linguagem Prolog se concentra, portanto, nos relacionamentos, e não em como resolver o problema. Durante a execução do programa, o Prolog aumenta um número de verdadeiros estadoMENTS, criando uma base de conhecimento. No exemplo acima, a base de conhecimento, em nenhuma ordem específica, teria ancestral (John, Jim), ancestral (Jim, Jerry), ancestral (John, Jerry), ancestral (Jim, Jason), ancestral (John, Jason) e assim por diante. Essa base de conhecimento pode continuar se acumulando à medida que o programa é executado e pode ser pesquisado com eficiência para obter soluções. A execução pode usar processamento paralelo, execução simultânea por vários computadores.

O idioma Prolog é usado em várias áreas. Começou em sistemas voltados para idiomas naturais, como o inglês; A linguagem natural é uma das áreas de inteligência artificial. A linguagem Prolog também é usada em matemática simbólica, incluindo álgebra. É usado na prova de teoremas, em sistemas especializados e em sistemas de controle, entre muitas outras aplicações.

OUTRAS LÍNGUAS

Este artigo foi útil? Obrigado pelo feedback Obrigado pelo feedback

Como podemos ajudar? Como podemos ajudar?