Logo Passei Direto
Buscar

Ecologia

UNIVESP
Considere os seguintes fatos em uma base de dados inserida no Prolog 1. maior(São Paulo,Rio de Janeiro) 2. maior(São Paulo,Juiz de Fora) 3. maior(Rio de Janeiro,Curitiba) 4. maior(Rio de Janeiro,Juiz de Fora) 5. maior(Curitiba,Juiz de Fora) 6. capital(São Paulo) 7. capital(Rio de Janeiro) 8. capital(Curitiba) Suponha agora que, a seguir, inserimos a seguinte regra no Prolog metropole(X) <=maior(X,Y) e capital(Y) Assinale a alternativa que corresponde à resposta que o Prolog retornará, à consulta ?metropole(X) a. São Paulo; Curitiba b. São Paulo; Rio de Janeiro; Curitiba c. São Paulo; Rio de Janeiro d. São Paulo e. Rio de Janeiro; Curitiba
User badge image
vvsantos

há 7 meses

Respostas

User badge image

Ed Verified user icon

há 7 meses

Vamos analisar a consulta `metropole(X)` com base nos fatos e na regra fornecida. A regra `metropole(X) :- maior(X,Y), capital(Y)` significa que X é uma metrópole se existe um Y tal que X é maior que Y e Y é uma capital. Agora, vamos verificar os fatos: 1. `maior(São Paulo, Rio de Janeiro)` - Aqui, São Paulo é maior que Rio de Janeiro. 2. `maior(São Paulo, Juiz de Fora)` - Aqui, São Paulo é maior que Juiz de Fora. 3. `maior(Rio de Janeiro, Curitiba)` - Aqui, Rio de Janeiro é maior que Curitiba. 4. `maior(Rio de Janeiro, Juiz de Fora)` - Aqui, Rio de Janeiro é maior que Juiz de Fora. 5. `maior(Curitiba, Juiz de Fora)` - Aqui, Curitiba é maior que Juiz de Fora. 6. `capital(São Paulo)` - São Paulo é uma capital. 7. `capital(Rio de Janeiro)` - Rio de Janeiro é uma capital. 8. `capital(Curitiba)` - Curitiba é uma capital. Agora, vamos aplicar a regra: - Para `X = São Paulo`: - `maior(São Paulo, Y)` e `capital(Y)`: - Para `Y = Rio de Janeiro`: é verdade, pois Rio de Janeiro é capital. - Para `Y = Juiz de Fora`: não é capital. - Para `X = Rio de Janeiro`: - `maior(Rio de Janeiro, Y)` e `capital(Y)`: - Para `Y = Curitiba`: é verdade, pois Curitiba é capital. - Para `Y = Juiz de Fora`: não é capital. - Para `X = Curitiba`: - Não há nenhum Y que satisfaça a condição. Portanto, as metrópoles que satisfazem a regra são: - São Paulo (maior que Rio de Janeiro, que é capital) - Rio de Janeiro (maior que Curitiba, que é capital) Assim, a resposta correta que o Prolog retornará à consulta `metropole(X)` é: b) São Paulo; Rio de Janeiro; Curitiba.

Essa resposta te ajudou?

0
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina