Algumas correções

This commit is contained in:
Diogo Cordeiro 2018-11-25 22:59:03 +00:00 committed by GitHub
parent aadcc71ca4
commit 7bdee702d5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,28 +1,25 @@
# O que é isto? # O que é isto?
Este documento pretende tornar mais claro o funcionamento do polymani.pl. Para Este documento pretende tornar mais claro o funcionamento do polymani.pl. Para
isso explicamos brevemente a estrutura e o funcionamento de alguns predicados mais isso explicamos brevemente a estrutura e realçamos algumas particularidades de alguns predicados que de outro modo poderiam parecer "abstratos".
que de outro modo poderiam parecer "abstratas".
## Estrutura ## Algumas palavras sobre a estrutura e o frontend
### Frontend O polymani divide-se em frontend e backend. O backend tem todos os predicados usados para interação conforme especificado
O frontend tem todos os predicados usados para interação conforme especificado
no assignment1.pdf. no assignment1.pdf.
Por outro lado, para que uma melhor experiência de utilização fosse possível, tomamos a liberdade de implementar dois predicados auxiliares que, para inputs inválidos, disponibilizam uma explicação mais amigável do erro. Por outro lado, para que uma melhor experiência de utilização fosse possível, tomamos a liberdade de implementar dois predicados auxiliares que, para inputs inválidos, disponibilizam uma explicação mais amigável do erro.
### Backend ## Backend
Abaixo descrevem-se alguns predicados selecionados com vista a tornar a Abaixo descrevem-se alguns predicados selecionados com vista a tornar a
compreensão dos mesmos mais rápida e simples. Em alguns casos o objectivo foi compreensão dos mesmos mais rápida e simples destacando-se algumas particularidades que poderiam não ser evidentes numa primeira
destacar algumas particularidades que podem não ser evidentes numa primeira
leitura. leitura.
#### power ### power
As comparações CLPFD permitiram-nos comparar se uma determinada variavel As comparações CLPFD permitiram-nos comparar se uma determinada variavel
pertencia um determinado domínio sem para isso termos de sacrificar a pertencia um determinado domínio sem para isso termos de sacrificar a
reversibilidade das variáveis. CLPFD stands for Constraint Logic Programming reversibilidade das variáveis. CLPFD stands for Constraint Logic Programming
over Finite Domains. over Finite Domains.
#### term ### term
Um termo é uma sequência de monómios sem adições. Um termo é uma sequência de monómios sem adições.
Este é um elemento fundamental deste programa tendo sido extensivamente testado. Este é um elemento fundamental deste programa tendo sido extensivamente testado.
@ -35,7 +32,7 @@ sao tratadas pelo terceiro e quarto predicado).
O quinto predicado faz chamadas recursivas para validar uma multiplicação de O quinto predicado faz chamadas recursivas para validar uma multiplicação de
monómios. monómios.
#### simplify_term ### simplify_term
Começamos por convert um termo numa list de monómios. Começamos por convert um termo numa list de monómios.
Ordenamos os monómios do por ordem crescente (isto é, de menor grau para maior Ordenamos os monómios do por ordem crescente (isto é, de menor grau para maior