Resolvendo um quebra-cabeça de Layton com elegância usando Prolog

O autor reescreveu o capítulo sobre linguagens de programação lógica em seu livro "Lógica para Programadores", mostrando o poder do Prolog com um quebra-cabeça no estilo 'Layton'. O quebra-cabeça envolve deduzir a pontuação do quarto aluno com base nas pontuações dos três primeiros. Usando um código Prolog conciso (apenas 15 linhas!), o autor resolve elegantemente o problema, aproveitando a correspondência de padrões e a bidirecionalidade do Prolog para encontrar todas as possíveis chaves de resposta, determinando finalmente a pontuação do quarto aluno como 6. Uma comparação é feita com uma solução mais longa e menos eficiente. Embora o autor argumente contra o uso de quebra-cabeças para ensino, este exemplo demonstra o potencial de aplicação prática do Prolog.