A lógica de predicados é base para a linguagem de programação Prolog. Considere os predicados: nota (x, y) = “o aluno x tem a nota y" aprovado (x) "o aluno x está aprovado". Então, a expressão lógica (A x), (A y) [nota (x,y) ^ y _< 6,0 -> aprovado (x)] pode ser escrita como a seguinte declaração em português: ALTERNATIVAS A) Existe aluno que é aprovado com nota maior que 6,0. B) Todo aluno que tem nota maior ou igual a 6,0 está aprovado. C) Existem alunos aprovados com nota menor do que 6,0. D) Todo aluno com nota inferior a 6,0 é aprovado. E) Toda nota é maior que 6,0 ou o aluno é aprovado.
Anexos:
Soluções para a tarefa
Respondido por
2
A alternativa correta é a letra B: Todo aluno que tem nota maior ou igual a 6,0 está aprovado.
O "A" de cabeça para baixo é um símbolo usado para quantificação universal na lógica de predicados, que pode ser "traduzida" para a linguagem informal como "Para todo". No caso desse exercício, temos "Para todo x" ou "Para todo aluno", "Para todo y" ou "Para toda nota".
A parte entre "[ ]" é uma expressão condicional do tipo "Se isso, então aquilo". Em um condicional, se a parte antecedente for verdadeira, não há como a consequente ser falsa. A seta é usada para dividir essas duas partes.
A parte antes da seta pode ser lida como "Se o aluno x tem a nota y, e y é maior ou igual a 6,0". A parte que vem depois pode ser lida como "o aluno x está aprovado". Ou seja, se x tem nota maior ou igual a 6, está aprovado. E isso vale para todos alunos e notas, porque essa parte está no escopo da quantificação universal.
Perguntas interessantes