1. Todo aluno tem pelo menos um amigo que também estuda computação.

Passo 1

O enunciado é a frase: “Todo aluno tem pelo menos um amigo que também estuda computação.”
Informações que o enunciado dá (listadas claramente):
  1. Há um conjunto implícito de indivíduos chamados “alunos”.
  2. Para cada aluno, existe “pelo menos um” amigo desse aluno.
  3. Esse amigo “também estuda computação” — ou seja, além de ser amigo, essa pessoa estuda computação.
  4. A frase usa quantificador universal (“todo”) combinado com um quantificador existencial (“pelo menos um”).
  5. Não foi explicitado se um aluno pode ser considerado amigo de si mesmo; isso é uma ambiguidade que precisamos tratar na formalização.
Nada mais será decidido aqui — apenas identifiquei o que o enunciado pede e quais informações ele contém.

Passo 2

Definição das convenções que vou usar (domínio e predicados). É importante escolher isso antes de escrever a fórmula:
  • Vou tomar o domínio como “todos os alunos” (ou seja, as variáveis x,y,\dots variam sobre alunos).
  • Defino o predicado \mathrm{Amigo}(x,y) que significa " x é amigo de y " (com x e y alunos).
  • Defino o predicado \mathrm{EstudaComputacao}(x) que significa " x estuda computação ".
Obs.: Se preferires, poderia tomar o domínio como “todas as pessoas” e então acrescentar o predicado “é aluno”, mas escolher domínio = alunos simplifica a fórmula e é comum em exercícios assim.

Passo 3

Tradução direta da frase para lógica de predicados sem ainda preocupar com a possibilidade x=y.
A frase “Todo aluno tem pelo menos um amigo que também estuda computação” vira:
\forall x\,\exists y\;\big(\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y)\big).
Explicação do que essa fórmula diz, palavra a palavra:
  • \forall x significa "para todo aluno x".
  • \exists y significa "existe pelo menos um aluno y".
  • \mathrm{Amigo}(x,y) exige que y seja amigo de x.
  • \mathrm{EstudaComputacao}(y) exige que y estude computação.
  • O \land conecta as duas condições: o y escolhido deve satisfazer ambas.

Passo 4

Tratamento da ambiguidade: o enunciado normalmente quer dizer “um amigo diferente do próprio aluno” (ou seja, não considerar a pessoa ela mesma como seu próprio amigo). Para garantir isso, adicionamos x\neq y à condição existencial.
A versão que impede auto-amizade é:
\forall x\,\exists y\;\big(\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y)\land x\neq y\big).
Por que isso importa? Em provas, se não fica claro que “amigo” exclui a própria pessoa, o examinador costuma aceitar a restrição x\neq y. É bom escrever essa desigualdade quando a frase natural sugere “outro” ou “alguém”.

Passo 5

Pequena “aula” sobre quantificadores e negação (útil para entender e provar coisas na prova):
  • \forall x\,P(x) lê-se “para todo x, P(x) é verdadeiro”.
  • \exists x\,P(x) lê-se “existe algum x tal que P(x) é verdadeiro”.
Regras de negação que sempre aparecem em provas:
  • \neg(\forall x\,P(x)) é logicamente equivalente a \exists x\,\neg P(x).
  • \neg(\exists x\,P(x)) é equivalente a \forall x\,\neg P(x).
Aplicando isso à nossa fórmula (sem x\neq y por enquanto), se P(x,y) é \mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y), então
\neg\big(\forall x\,\exists y\,P(x,y)\big)\equiv \exists x\,\forall y\,\neg P(x,y).

Passo 6

Negação concreta da frase (útil para mostrar contraexemplo):
Começando da fórmula com x\neq y incorporado como parte de P(x,y), a negação fica — passo a passo:
  1. Temos \forall x\,\exists y\,P(x,y) onde \displaystyle P(x,y)=\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y)\land x\neq y.
  2. Negando: \neg\big(\forall x\,\exists y\,P(x,y)\big) é equivalente a \exists x\,\forall y\,\neg P(x,y).
  3. Expandindo \neg P(x,y) por De Morgan:
\neg P(x,y)\equiv \neg\mathrm{Amigo}(x,y)\\ \lor\\ \neg\mathrm{EstudaComputacao}(y)\\ \lor\\ x=y.
  1. Reescrevendo de forma mais natural: existe um aluno x tal que para todo aluno y, ou y não é amigo de x, ou y não estuda computação, ou y é o próprio x.
Paráfrase em português simples da negação: “Existe pelo menos um aluno cujos amigos (considerando apenas amigos diferentes dele) não estudam computação” — ou, com menos pedantismo: “Há algum aluno que não tem nenhum amigo que estude computação.”

Passo 7

Exemplo concreto pequeno para ver a fórmula funcionando (isso ajuda a entender):
Considere três alunos A,B,C.
  • Relações de amizade: \mathrm{Amigo}(A,B), \mathrm{Amigo}(B,A), \mathrm{Amigo}(B,C), \mathrm{Amigo}(C,B). (ou seja, A e B são amigos; B e C são amigos; A e C não são amigos.)
  • Quem estuda computação: \mathrm{EstudaComputacao}(B) é verdadeira; \mathrm{EstudaComputacao}(A) e \mathrm{EstudaComputacao}\text{(C)} são falsas.
Avaliação:
  • Para A: existe y=B com \mathrm{Amigo}(A,B) e \mathrm{EstudaComputacao}(B) — ok.
  • Para B: existe y=C ? não ( C não estuda computação ); existe y=A ? não ( A não estuda ). Mas B tem amigo A e A não estuda, e amigo C que não estuda. Então para B não existe amigo que estude computação. Logo a fórmula \forall x\,\exists y\,(\dots) é falsa nesse universo.
Isso mostra como identificar rapidamente um contraexemplo: basta achar um aluno sem nenhum amigo que estude computação.

Passo 8

Dicas de prova / erros comuns (rápido e prático):
  • Erro comum 1: escrever somente \forall x\,\exists y\,\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y) sem parênteses. Sem parênteses a leitura fica ambígua; sempre agrupe a parte existencial.
  • Erro comum 2: esquecer x\neq y quando o enunciado implica “outro amigo”. Quando o enunciado diz “um amigo”, opte por incluir x\neq y salvo se houver evidência de que auto-amizade é permitida.
  • Erro comum 3: trocar a ordem dos quantificadores. \forall x\,\exists y NÃO é equivalente a \exists y\,\forall x. Trocar a ordem muda totalmente o significado.
Motivação rápida sobre a ordem: \forall x\,\exists y diz “cada aluno tem (talvez diferente) um amigo”, já \exists y\,\forall x diria “há um único aluno y que é amigo de todos os alunos e estuda computação” — muito mais forte.

Passo 9

Resumo final do que devemos escrever na prova (forma canônica e clara). Se o enunciado não disser que uma pessoa pode ser amiga de si mesma, escreva a versão que exige amigos distintos:
\forall x\,\exists y\;\big(\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y)\land x\neq y\big).
Essa é a resposta que eu escreveria na prova, seguida de uma frase curta dizendo “domínio = alunos; \mathrm{Amigo} e \mathrm{EstudaComputacao} definidos como acima”, só para deixar tudo explícito.

Resposta

\forall x\,\exists y\;\big(\mathrm{Amigo}(x,y)\land \mathrm{EstudaComputacao}(y)\land x\neq y\big).

Exercícios relacionados