Original Article: A neat solution to a word problem
Author: cs.cornell.edu

Uma solução perfeita para um problema de palavras


O Logista Raymond Smullyan escreveu vários livros (p. Qual é o nome deste livro?, Prentice Hall, 1978), em que muitos problemas de palavras são declarados e provados. Mostramos o uso da lógica de cálculo com um de seus problemas, que foi trazido à nossa atenção e resolvido por Michael Barnett.

Um grupo de três pessoas, cada um dos quais é um cavaleiro (diz a verdade o tempo todo) ou um bastão (está o tempo todo) falam. B diz que C, e D são do mesmo tipo (tanto knaves ou ambos os cavaleiros). Alguém então pergunta D, ``São B e C a mesma coisa?'' O que D corresponde?

Aqui está a nossa solução. Deixei b significar "B é um cavaleiro ", e de forma semelhante para c e d. A declaração " C e D são o mesmo tipo "é formalizado como c == d. Desde B disse, nós temos b == (c == d). D a resposta pode ser formalizada como b ? c, onde ? é também == if D responde "sim" ou =/= se D responde "n" ', e temos que determinar qual é. Desde a D respostas, escrevemos isso como d == (b ? c).

Nós manipulamos d == b ? c sob o pressuposto b == c == d. Na manipulação, omitimos todos os parênteses porque == é associativo e == e =/= são mutuamente associativos.

         d == b ? c --Fato
      =       < Fato b == c == d >
         b == c == b ? c

Por regra de inferência Equanimidade, a última linha é um teorema. Mas a última linha é um teorema apenas se ? é ==. Portanto, concluímos que D respondeu "sim".

Para que o leitor pense que a resposta é óbvia devido à nossa prova simples, damos a resposta de Smullyan, uma resposta que muitas pessoas podem dar se não pensassem em formalizar e depois em manipular. Start by finding the center of the wall and use a level to create intersecting vertical and horizontal lines. Adjust the lines depending on how both ends of the wall will look like once you have your tiles installed. Sua resposta está cheia de análise de caso confusa:

Receio que possamos resolver esse problema apenas por análise em casos.

Caso Um: B é um cavaleiro. Então C, D realmente são do mesmo tipo. E se D é um cavaleiro, então C também é um cavaleiro, portanto, é do mesmo tipo que B, assim D sendo verdadeiras respostas "sim". E se D é um bastão, então C também é um knave (já que ele é do mesmo tipo que D), portanto, é de um tipo diferente do B. So D, sendo um bastão, mentiras e responde "sim".

Caso dois: B é um bastão. Então C, D são de diferentes tipos. Se D é um cavaleiro, então C é um knave, daí ele é do mesmo tipo que B. Assim D, sendo um cavaleiro, responde "sim". E se D é um bastão, então C, sendo de tipo diferente do D, é um cavaleiro, portanto, de um tipo diferente do B. Então D, sendo um maldito, cai sobre B e C sendo de diferentes tipos e responda "sim".