Logo Passei Direto
Buscar
Material
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Prévia do material em texto

LÓGICA PARA 
COMPUTAÇÃO
Professora Me. Edvania Gimenes de Oliveira Godoy
GRADUAÇÃO
Unicesumar
C397 CENTRO UNIVERSITÁRIO DE MARINGÁ. Núcleo de Educação a 
Distância; GODOY, Edvania Gimenes de Oliveira.
Lógica para Computação. Edvania Gimenes de Oliveira Godoy. 
Maringá-Pr.: UniCesumar, 2016. 
183 p.
“Graduação - EaD”.
1. Lógica. 2. Computação. 3. Matemática. 4. EaD. I. Título.
ISBN 978-85-459-0245-4
CDD - 22 ed. 511.3
CIP - NBR 12899 - AACR/2
Ficha catalográfica elaborada pelo bibliotecário 
João Vivaldo de Souza - CRB-8 - 6828
Impresso por:
Reitor
Wilson de Matos Silva
Vice-Reitor
Wilson de Matos Silva Filho
Pró-Reitor Executivo de EAD
William Victor Kendrick de Matos Silva
Pró-Reitor de Ensino de EAD
Janes Fidélis Tomelin
Presidente da Mantenedora
Cláudio Ferdinandi
NEAD - Núcleo de Educação a Distância
Diretoria Executiva
Chrystiano Minco�
James Prestes
Tiago Stachon 
Diretoria de Graduação e Pós-graduação 
Kátia Coelho
Diretoria de Permanência 
Leonardo Spaine
Diretoria de Design Educacional
Débora Leite
Head de Produção de Conteúdos
Celso Luiz Braga de Souza Filho
Head de Curadoria e Inovação
Tania Cristiane Yoshie Fukushima
Gerência de Produção de Conteúdo
Diogo Ribeiro Garcia
Gerência de Projetos Especiais
Daniel Fuverki Hey
Gerência de Processos Acadêmicos
Taessa Penha Shiraishi Vieira
Gerência de Curadoria
Carolina Abdalla Normann de Freitas
Supervisão de Produção de Conteúdo
Nádila Toledo
Coordenador de Conteúdo
Fabiana de Lima
Designer Educacional
Paulo Victor Souza e Silva
Projeto Gráfico
Jaime de Marchi Junior
José Jhonny Coelho
Arte Capa
Arthur Cantareli Silva
Ilustração Capa
Bruno Pardinho
Editoração
Bruna Marconato
Daniel Fuverki Hey
Qualidade Textual
Hellyery Agda
Keren Pardini
Em um mundo global e dinâmico, nós trabalhamos 
com princípios éticos e profissionalismo, não so-
mente para oferecer uma educação de qualidade, 
mas, acima de tudo, para gerar uma conversão in-
tegral das pessoas ao conhecimento. Baseamo-nos 
em 4 pilares: intelectual, profissional, emocional e 
espiritual.
Iniciamos a Unicesumar em 1990, com dois cursos 
de graduação e 180 alunos. Hoje, temos mais de 
100 mil estudantes espalhados em todo o Brasil: 
nos quatro campi presenciais (Maringá, Curitiba, 
Ponta Grossa e Londrina) e em mais de 300 polos 
EAD no país, com dezenas de cursos de graduação e 
pós-graduação. Produzimos e revisamos 500 livros 
e distribuímos mais de 500 mil exemplares por 
ano. Somos reconhecidos pelo MEC como uma 
instituição de excelência, com IGC 4 em 7 anos 
consecutivos. Estamos entre os 10 maiores grupos 
educacionais do Brasil.
A rapidez do mundo moderno exige dos educa-
dores soluções inteligentes para as necessidades 
de todos. Para continuar relevante, a instituição 
de educação precisa ter pelo menos três virtudes: 
inovação, coragem e compromisso com a quali-
dade. Por isso, desenvolvemos, para os cursos de 
Engenharia, metodologias ativas, as quais visam 
reunir o melhor do ensino presencial e a distância.
Tudo isso para honrarmos a nossa missão que é 
promover a educação de qualidade nas diferentes 
áreas do conhecimento, formando profissionais 
cidadãos que contribuam para o desenvolvimento 
de uma sociedade justa e solidária.
Vamos juntos!
Seja bem-vindo(a), caro(a) acadêmico(a)! Você está 
iniciando um processo de transformação, pois quando 
investimos em nossa formação, seja ela pessoal ou 
profissional, nos transformamos e, consequentemente, 
transformamos também a sociedade na qual estamos 
inseridos. De que forma o fazemos? Criando oportu-
nidades e/ou estabelecendo mudanças capazes de 
alcançar um nível de desenvolvimento compatível com 
os desafios que surgem no mundo contemporâneo. 
O Centro Universitário Cesumar mediante o Núcleo de 
Educação a Distância, o(a) acompanhará durante todo 
este processo, pois conforme Freire (1996): “Os homens 
se educam juntos, na transformação do mundo”.
Os materiais produzidos oferecem linguagem dialógica 
e encontram-se integrados à proposta pedagógica, con-
tribuindo no processo educacional, complementando 
sua formação profissional, desenvolvendo competên-
cias e habilidades, e aplicando conceitos teóricos em 
situação de realidade, de maneira a inseri-lo no mercado 
de trabalho. Ou seja, estes materiais têm como principal 
objetivo “provocar uma aproximação entre você e o 
conteúdo”, desta forma possibilita o desenvolvimento 
da autonomia em busca dos conhecimentos necessá-
rios para a sua formação pessoal e profissional.
Portanto, nossa distância nesse processo de cresci-
mento e construção do conhecimento deve ser apenas 
geográfica. Utilize os diversos recursos pedagógicos 
que o Centro Universitário Cesumar lhe possibilita. 
Ou seja, acesse regularmente o Studeo, que é o seu 
Ambiente Virtual de Aprendizagem, interaja nos fóruns 
e enquetes, assista às aulas ao vivo e participe das dis-
cussões. Além disso, lembre-se que existe uma equipe 
de professores e tutores que se encontra disponível para 
sanar suas dúvidas e auxiliá-lo(a) em seu processo de 
aprendizagem, possibilitando-lhe trilhar com tranqui-
lidade e segurança sua trajetória acadêmica.
Professora Me. Edvania Gimenes de Oliveira Godoy
Possui mestrado em Matemática pela Universidade Estadual de Maringá 
(2001). Atualmente é professora assistente da Fundação Faculdade de 
Filosofia Ciências e Letras de Mandaguari.
A
U
TO
R
A
SEJA BEM-VINDO(A)!
APRESENTAÇÃO
LÓGICA PARA COMPUTAÇÃOAPRESENTAÇÃO
LÓGICA PARA COMPUTAÇÃO
Prezados acadêmicos, é com satisfação que apresento a vocês o livro para a disciplina Lógica
para Computação. Esta disciplina está baseada no que chamamos de Matemática Discreta,
que é uma parte da Matemática que trata de situações em que as estruturas matemáticas são
baseadas em conjuntos contáveis, finitos ou infinitos. Dessa forma, os conteúdos abordados na
Matemática Discreta aplicam-se perfeitamente ao ambiente computacional, visto que a maioria
dos conceitos computacionais pertencem ao domı́nio discreto.
Os objetivos principais da disciplina são desenvolver o racioćınio lógico-matemático e oferecer
instrumentos para que vocês desenvolvam um vocabulário preciso, com recursos para notação
matemática e abstrações. Assim, será posśıvel aplicar os conceitos de Matemática discreta
como uma ferramenta para investigações e aplicações na área de Computação.
Este livro está dividido em cinco unidades. A primeira trata de noções de Lógica Matemática,
que é básica para qualquer estudo em computação e informática. O principal objetivo dessa
unidade será introduzir, resumidamente, os principais conceitos e a terminologia de lógica
matemática. Veremos como utilizar a notação simbólica para as lógicas proposicional e de
predicados para simbolizar argumentos, bem como determinar sua validade por meio das re-
gras de inferência.
A segunda unidade é dedicada ao estudo da Teoria dos Conjuntos. O conceito de conjunto é
fundamental, pois praticamente todos os conceitos desenvolvidos em computação são baseados
em conjuntos ou construções sobre conjuntos. Com as noções primitivas de conjunto e per-
tinência, que são aceitas sem definição, iniciaremos o estudo de conjuntos definindo elementos,
subconjuntos e tipos de conjuntos, bem como suas representações por descrição, propriedade
ou diagrama. Em seguida, estudaremos as operações sobre conjuntos, que são agrupadas em
não reverśıveis (união e interseção) e reverśıveis (complemento, conjunto das partes e produto
cartesiano). Será estabelecida também a relação entre álgebra de conjuntos e lógica.
As unidades III e IV são dedicadas ao estudo de relações e funções, respectivamente. Relações
são muito usadas em todas as áreas teóricas e práticas da computação. Além do conceito formal
de relação, diversos conceitos correlatos serão estudados: relação dual, composição de relações
e tipos de relações. Veremos comorepresentar relações por meio de diagramas, matrizes ou
grafos, e para o caso de uma ordem parcial de tarefas relacionadas por pré-requisitos, discu-
tiremos sobre a representação em diagrama PERT.
1
APRESENTAÇÃO
LÓGICA PARA COMPUTAÇÃO
Prezados acadêmicos, é com satisfação que apresento a vocês o livro para a disciplina Lógica
para Computação. Esta disciplina está baseada no que chamamos de Matemática Discreta,
que é uma parte da Matemática que trata de situações em que as estruturas matemáticas são
baseadas em conjuntos contáveis, finitos ou infinitos. Dessa forma, os conteúdos abordados na
Matemática Discreta aplicam-se perfeitamente ao ambiente computacional, visto que a maioria
dos conceitos computacionais pertencem ao domı́nio discreto.
Os objetivos principais da disciplina são desenvolver o racioćınio lógico-matemático e oferecer
instrumentos para que vocês desenvolvam um vocabulário preciso, com recursos para notação
matemática e abstrações. Assim, será posśıvel aplicar os conceitos de Matemática discreta
como uma ferramenta para investigações e aplicações na área de Computação.
Este livro está dividido em cinco unidades. A primeira trata de noções de Lógica Matemática,
que é básica para qualquer estudo em computação e informática. O principal objetivo dessa
unidade será introduzir, resumidamente, os principais conceitos e a terminologia de lógica
matemática. Veremos como utilizar a notação simbólica para as lógicas proposicional e de
predicados para simbolizar argumentos, bem como determinar sua validade por meio das re-
gras de inferência.
A segunda unidade é dedicada ao estudo da Teoria dos Conjuntos. O conceito de conjunto é
fundamental, pois praticamente todos os conceitos desenvolvidos em computação são baseados
em conjuntos ou construções sobre conjuntos. Com as noções primitivas de conjunto e per-
tinência, que são aceitas sem definição, iniciaremos o estudo de conjuntos definindo elementos,
subconjuntos e tipos de conjuntos, bem como suas representações por descrição, propriedade
ou diagrama. Em seguida, estudaremos as operações sobre conjuntos, que são agrupadas em
não reverśıveis (união e interseção) e reverśıveis (complemento, conjunto das partes e produto
cartesiano). Será estabelecida também a relação entre álgebra de conjuntos e lógica.
As unidades III e IV são dedicadas ao estudo de relações e funções, respectivamente. Relações
são muito usadas em todas as áreas teóricas e práticas da computação. Além do conceito formal
de relação, diversos conceitos correlatos serão estudados: relação dual, composição de relações
e tipos de relações. Veremos como representar relações por meio de diagramas, matrizes ou
grafos, e para o caso de uma ordem parcial de tarefas relacionadas por pré-requisitos, discu-
tiremos sobre a representação em diagrama PERT.
1
Uma função é um caso particular de relação binária e, assim como as relações, descreve 
diversas situações reais. Abordaremos o conceito de função, destacando seu domı́nio, imagem e 
repre-sentação gráfica, bem como as propriedades de funções e as definições de funções 
compostas e inversas.
Por fim, na unidade V, faremos uma retomada das unidades anteriores apresentando 
aplicações na área de Computação. Sobre lógica proposicional e teoria dos conjuntos, veremos 
aplicações em linguagens de programação conhecidas como procedurais (no caso, linguagem 
Pascal). Sobre lógica de predicados, apresentaremos uma linguagem de programação 
conhecida como declar-ativa (Prolog), em que os programas reúnem uma série de dados e 
regras e as usam para gerar conclusões. O item Relações será retomado no estudo de caminho 
cŕıtico em um diagrama Pert, para determinar o tempo mı́nimo de conclusão de uma 
sequência de atividades ordenadas em uma tarefa a ser realizada. Também em bancos de 
dados relacional, que é um banco de dados cujos dados são conjuntos (representados como 
tabelas) que são relacionados com outros conjuntos (tabelas), veremos a aplicação dos 
conceitos de conjuntos e relações. E, finalmente, será destacada a aplicação dos conceitos de 
relações e funções em autômatos finitos.
Gostaria de destacar que não pretendemos realizar estudo detalhado de conceitos espećıficos 
de computação, mas apenas dar uma noção sobre a forte relação entre a matemática estudada 
com outras disciplinas do curso.
Em cada unidade, são propostas atividades sobre o conteúdo estudado. A realização dessas 
atividades é muito importante para a fixação dos conceitos e verificação de aprendizagem.
Desejo a todos um bom estudo!
2
APRESENTAÇÃO
SUMÁRIO
09
UNIDADE I
LÓGICA MATEMÁTICA
15 Introdução 
16 Lógica Proposicional 
16 Proposições e Valores Lógicos 
17 Conectivos Lógicos 
25 Tabela-Verdade 
26 Tautologias e Contradições 
28 Equivalências Lógicas 
31 Implicações Lógicas 
32 Método Dedutivo 
35 Quantificadores e Predicados 
38 Negação de Sentenças Quantificadas 
39 Considerações Finais 
SUMÁRIO
UNIDADE II
TEORIA DOS CONJUNTOS
47 Introdução
47 Conceitos Primitivos 
48 Descricão de Conjuntos 
50 Igualdade de Conjuntos 
50 Tipos de Conjuntos 
51 Subconjuntos 
53 Conjunto das Partes 
54 Diagramas de Venn-Euler 
58 Produto Cartesiano 
59 Relação Entre Lógica e Álgebra dos Conjuntos 
60 Princípio da Inclusão e Exclusão 
64 Considerações Finais 
UNIDADE III
RELAÇÕES
73 Introdução
73 Relação Binária 
76 Tipos de Relações Binárias 
77 Propriedades das Relações 
78 Representação das Relações 
SUMÁRIO
11
82 Relação de Ordem 
85 Diagrama de Hasse 
87 Diagrama PERT 
89 Relações Duais 
89 Composição de Relações 
91 Consideração Finais 
UNIDADE IV
FUNÇÕES
101 Introdução
101 Funções 
103 Domínio, Contradomínio e Imagem de uma Função 
105 Igualdade de Funções 
105 Gráfico de Funções 
108 Função Piso e Função Teto 
109 Propriedades de Funções 
112 Função Composta 
114 Funções Inversas 
115 Técnicas para Obtenção da Inversa de uma Função 
117 Considerações Finais 
SUMÁRIO
UNIDADE V
APLICAÇÕES À COMPUTAÇÃO
125 Introdução
125 Álgebra dos Conjuntos nas Linguagens de Programação 
132 PROLOG 
139 Caminho Crítico no Diagrama PERT 
144 Autômatos Finitos 
150 Relações e Banco de Dados 
159 Considerações Finais 
165 CONCLUSÃO
167 REFERÊNCIAS 
169 GABARITO
U
N
ID
A
D
E I
Professora Me. Edvania Gimenes de Oliveira Godoy
LÓGICA MATEMÁTICA
Objetivos de Aprendizagem
 ■ Desenvolver o raciocínio lógico matemático.
 ■ Usar os símbolos formais da lógica proposicional.
 ■ Encontrar o valor-verdade de expressões em lógica proposicional.
 ■ Reconhecer tautologias e contradições.
 ■ Usar a lógica proposicional para provar a validade de um argumento 
na língua portuguesa.
 ■ Identificar/reconhecer símbolos quantificados.
 ■ Determinar o valor-verdade de uma proposição predicativa em uma 
dada interpretação.
 ■ Representar sentenças da língua portuguesa usando a lógica de 
predicativos.
 ■ Determinar a negação de sentenças quantificadas.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Lógica Proposicional.
 ■ Conectivos Lógicos
 ■ Tabelas- Verdade
 ■ Tautologias e Contradições
 ■ Equivalências Lógicas
 ■ Implicações Lógicas
 ■ Método Dedutivo
 ■ Quantificadores e Predicados
 ■ Negação de Sentenças Quantificadas
INTRODUÇÃO
Introdução
A lógica formal fornece base para o modo de pensar organizado e cuidadoso que caracteri-
za qualquer atividade racional. Ela é considerada base de todo racioćınio matemático e do
racioćınio automatizado, tendo aplicações diretas em Ciência da Computação, em grau variado
de complexidade. Considera-se que o estudo da Lógica teve ińıcio na Grécia Antiga, sendo
sistematizado por Aristóteles (384a.C.-322a.C.), coma formulação de leis gerais de encadea-
mentos de conceitos e júızos que levariam à descoberta de novas verdades (Lógica Clássica).
Entretanto, os argumentos formulados em linguagem natural como em português, por exemplo,
são muitas vezes de dif́ıcil avaliação, devido a ambiguidades nas frases e construções confusas.
Os matemáticos da atualidade entenderam então que, para uma matéria ser estudada com o
caráter cient́ıfico necessário, era preciso introduzir-se uma linguagem simbólica.
A Lógica Simbólica ou Lógica Matemática utiliza śımbolos de origem matemática para for-
mular os argumentos. Nessa lógica, as várias relações entre proposições são representadas por
fórmulas cujos significados estão livres de ambiguidades tão comuns à linguagem corrente, e
essas fórmulas podem ser “operadas” segundo um conjunto de regras de transformação for-
mal. Outra vantagem de seu uso refere-se à facilidade de entendimento e brevidade para obter
resultados.
O moderno desenvolvimento da Lógica iniciou-se com a obra de George Boole (1815-1864)-
“Álgebra Booleana”- e de Augustus De Morgan (1806-1871), e foi consolidado pelo filósofo
e matemático alemão Gottlob Frege (1848-1895) - “Regras de Demonstração Matemática.”
Como a Lógica Simbólica tem sua própria linguagem técnica, é um instrumento poderoso para
a análise e a dedução dos argumentos, especialmente com o uso do computador. Na computação,
ela é utilizada para representar problemas e para obter suas soluções. O algoritmo, que seria
o conjunto finito de instruções a serem executadas para obter a solução de um problema, é
constrúıdo com base na lógica matemática.
Nessa unidade vamos estudar os principais conceitos e a terminologia da lógica matemática,
que envolve proposições, conectivos, tabelas-verdade e tautologias para chegar a conclusões a
partir de proposições dadas, bem como o estudo dos quantificadores e predicados. Os conteúdos
estudados serão utilizados em disciplinas futuras e fornecerão ferramentas para investigações e
aplicações precisas em sua área de atuação.
2 Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
15
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E16
Lógica Proposicional
Proposições e Valores Lógicos
Proposição é uma sentença declarativa que é verdadeira ou falsa, mas não ambas. Dito de outra
maneira, proposição é toda expressão que encerra um pensamento de sentido completo e pode
ser classificada como V (verdadeira) ou F (falsa).
Exemplos:
1. 17 é um número par.
2. O gato é um mamı́fero.
3. O 136◦ d́ıgito da expansão decimal de
√
11 é 2.
4. Está chovendo agora.
5. Todo quadrado é um retângulo.
6. 100 + 100 = 300
Observamos que todas essas sentenças são proposições, pois: (2) e (5) são verdadeiras e (1)
é falsa; a veracidade ou falsidade de (4) depende do momento em que a proposição é feita; e
apesar de não sabermos o valor do d́ıgito solicitado na afirmação (3), ele será igual a 2 ou não
será 2, ou seja, a sentença será verdadeira ou falsa.
3
Como exemplos de frases que não são proposições, podemos citar:
1. Feliz aniversário!!! (Sentença exclamativa)
2. Onde está a chave? (Sentença interrogativa)
3. Vire à esquerda. (Sentença imperativa)
4. x+y = 6. (sentença aberta; pode ser verdadeira ou falsa dependendo dos valores de x e y)
O valor lógico de uma proposicã̧o se refere a um dos dois posśıveis júızos que atribuiremos
a uma proposição: verdadeiro, denotado por V (ou 1), ou falso, denotado por F (ou 0).
Prinćıpios Básicos das Proposições:
I) Prinćıpio da não contradição: Uma proposição não pode ser verdadeira e falsa simultane-
amente.
II) Prinćıpio do terceiro exclúıdo: Toda proposição ou é verdadeira ou é falsa; não existe
um terceiro valor lógico.
Classificação das Proposições:
As proposições podem ser classificadas em simples e compostas:
Proposições simples: aquelas que vêm sozinhas, desacompanhadas de outras proposições.
Exemplos:
* A impressora está ligada.
* O novo papa é argentino.
Proposições compostas: aquelas formadas pela combinação de proposições simples.
Exemplos:
* João é médico e Pedro é dentista.
* Se fizer sol, então irei ao clube.
Conectivos Lógicos
Proposições simples podem ser combinadas para for-
mar proposições mais complexas: as proposições com-
postas. As palavras ou śımbolos usados para formar
novas proposições a partir de proposições dadas são
chamados de conectivos.
4
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
17
©shutterstock
Os conectivos fundamentais da Lógica Matemática são:
Conectivo Śımbolo
1) não; não é verdade que ∼ Negação ou modificador
2) e ∧ Conjunção
3) ou ∨ Disjunção
4) se ... então → Condicional
5) se, e somente se ↔ Bicondicional
Dadas as proposições simples p e q, podemos com o uso de conectivos formar novas proposições
a partir de p e q. Assim temos:
1) A negação de p ∼ p não p
2) A conjunção de p e q p ∧ q p e q
3) A disjunção de p e q p ∨ q p ou q
4) A condicional de p e q p → q se p, então q
5) A bicondicional de p e q p ↔ q p se, e somente se, q
Exemplo:
Dadas as proposições p: 2 é um número par e q: 6 é múltiplo de 3, faça as traduções para
a linguagem corrente para as seguintes proposições:
a) ∼ p 2 não é um número par. (ou: 2 é um número ı́mpar.)
b) ∼ p ∨ q 2 não é par ou 6 é múltiplo de 3.
c) ∼ q → p Se 6 não é múltiplo de 3, então 2 é par.
d) ∼ p ↔ q 2 é ı́mpar se, e somente se, 6 é múltiplo de 3.
e) ∼ (p ∧ ∼ q) Não é verdade que 2 é par e 6 não é um múltiplo de 3.
# SAIBA MAIS #:
Alguns dos conectivos apresentados podem ser denotados por outros śımbolos ou expressões.
Consideremos p, q proposições:
Conectivo lógico Śımbolo
Negação ¬p; p′
Conjunção p.q
Disjunção p+ q
5
Os conectivos fundamentais da Lógica Matemática são:
Conectivo Śımbolo
1) não; não é verdade que ∼ Negação ou modificador
2) e ∧ Conjunção
3) ou ∨ Disjunção
4) se ... então → Condicional
5) se, e somente se ↔ Bicondicional
Dadas as proposições simples p e q, podemos com o uso de conectivos formar novas proposições
a partir de p e q. Assim temos:
1) A negação de p ∼ p não p
2) A conjunção de p e q p ∧ q p e q
3) A disjunção de p e q p ∨ q p ou q
4) A condicional de p e q p → q se p, então q
5) A bicondicional de p e q p ↔ q p se, e somente se, q
Exemplo:
Dadas as proposições p: 2 é um número par e q: 6 é múltiplo de 3, faça as traduções para
a linguagem corrente para as seguintes proposições:
a) ∼ p 2 não é um número par. (ou: 2 é um número ı́mpar.)
b) ∼ p ∨ q 2 não é par ou 6 é múltiplo de 3.
c) ∼ q → p Se 6 não é múltiplo de 3, então 2 é par.
d) ∼ p ↔ q 2 é ı́mpar se, e somente se, 6 é múltiplo de 3.
e) ∼ (p ∧ ∼ q) Não é verdade que 2 é par e 6 não é um múltiplo de 3.
# SAIBA MAIS #:
Alguns dos conectivos apresentados podem ser denotados por outros śımbolos ou expressões.
Consideremos p, q proposições:
Conectivo lógico Śımbolo
Negação ¬p; p′
Conjunção p.q
Disjunção p+ q
5
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E18
A linguagem Pascal (assim como a maioria das linguagens de programação) possui os
seguintes conectivos lógicos:
not Negação
and Conjunção
or Disjunção
<= Condicional
= Bicondicional
Fonte: Menezes (2013).
# FIM SAIBA MAIS#
O valor lógico de uma proposição composta (verdadeiro ou falso) depende do valor lógico das
proposições simples que a compõem e damaneira como elas são combinadas pelos conectivos.
Conhecendo-se os valores lógicos de duas proposições p e q, vamos definir os valores lógicos
das proposições: ∼ p; p ∧ q; p ∨ q; p → q e p ↔ q.
1. Negação (∼)
Dada uma proposição p, a negação de p será indicada por ∼ p (Lê-se ”não p”). O valor
verdade da proposição ∼ p será o oposto do valor verdade de p.
Em resumo:
Negação: se V(p) = V então V(∼ p) = F e se V(p) = F então V(∼ p).
Essas possibilidades para os valores lógicos podem ser colocadas em uma tabela, denomi-
nada tabela-verdade. Uma tabela verdade é uma tabela que contém as proposições nas colunas
e as possibilidades de valores-verdade nas linhas. É comum expressar os resultados de uma
proposição composta por meio de tabelas- verdade, que permitem analisar seus valores-verdade.
Tabela-verdade para a negação de p:
p ∼ p
V F
F V
6
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
19
A linguagem Pascal (assim como a maioria das linguagens de programação) possui os
seguintes conectivos lógicos:
not Negação
and Conjunção
or Disjunção
<= Condicional
= Bicondicional
Fonte: Menezes (2013).
# FIM SAIBA MAIS#
O valor lógico de uma proposição composta (verdadeiro ou falso) depende do valor lógico das
proposições simples que a compõem e da maneira como elas são combinadas pelos conectivos.
Conhecendo-se os valores lógicos de duas proposições p e q, vamos definir os valores lógicos
das proposições: ∼ p; p ∧ q; p ∨ q; p → q e p ↔ q.
1. Negação (∼)
Dada uma proposição p, a negação de p será indicada por ∼ p (Lê-se ”não p”). O valor
verdade da proposição ∼ p será o oposto do valor verdade de p.
Em resumo:
Negação: se V(p) = V então V(∼ p) = F e se V(p) = F então V(∼ p).
Essas possibilidades para os valores lógicos podem ser colocadas em uma tabela, denomi-
nada tabela-verdade. Uma tabela verdade é uma tabela que contém as proposições nas colunas
e as possibilidades de valores-verdade nas linhas. É comum expressar os resultados de uma
proposição composta por meio de tabelas- verdade, que permitem analisar seus valores-verdade.
Tabela-verdade para a negação de p:
p ∼ p
V F
F V
6
AlinguagemPascal(assimcomoamaioriadaslinguagensdeprogramação)possuios
seguintesconectivosĺogicos:
notNegação
andConjunção
orDisjunção
<=Condicional
=Bicondicional
Fonte:Menezes(2013).
#FIMSAIBAMAIS#
Ovalorĺogicodeumaproposi̧cãocomposta(verdadeirooufalso)dependedovalorĺogicodas
proposi̧cõessimplesqueacompõemedamaneiracomoelass̃aocombinadaspelosconectivos.
Conhecendo-seosvaloresĺogicosdeduasproposi̧cõespeq,vamosdefinirosvaloresĺogicos
dasproposi̧cões:∼p;p∧q;p∨q;p→qep↔q.
1.Negação(∼)
Dadaumaproposi̧cãop,anegaçãodepseŕaindicadapor∼p(Lê-se”nãop”).Ovalor
verdadedaproposi̧cão∼pseŕaoopostodovalorverdadedep.
Emresumo:
Negação:seV(p)=Vent̃aoV(∼p)=FeseV(p)=Fent̃aoV(∼p).
Essaspossibilidadesparaosvaloresĺogicospodemsercolocadasemumatabela,denomi-
nadatabela-verdade.Umatabelaverdadeéumatabelaquecont́emasproposi̧cõesnascolunas
easpossibilidadesdevalores-verdadenaslinhas.Écomumexpressarosresultadosdeuma
proposi̧cãocompostapormeiodetabelas-verdade,quepermitemanalisarseusvalores-verdade.
Tabela-verdadeparaanegaçãodep:
p∼p
VF
FV
6
A linguagem Pascal (assim como a maioria das linguagens de programação) possui os
seguintes conectivos lógicos:
not Negação
and Conjunção
or Disjunção
<= Condicional
= Bicondicional
Fonte: Menezes (2013).
# FIM SAIBA MAIS#
O valor lógico de uma proposição composta (verdadeiro ou falso) depende do valor lógico das
proposições simples que a compõem e da maneira como elas são combinadas pelos conectivos.
Conhecendo-se os valores lógicos de duas proposições p e q, vamos definir os valores lógicos
das proposições: ∼ p; p ∧ q; p ∨ q; p → q e p ↔ q.
1. Negação (∼)
Dada uma proposição p, a negação de p será indicada por ∼ p (Lê-se ”não p”). O valor
verdade da proposição ∼ p será o oposto do valor verdade de p.
Em resumo:
Negação: se V(p) = V então V(∼ p) = F e se V(p) = F então V(∼ p).
Essas possibilidades para os valores lógicos podem ser colocadas em uma tabela, denomi-
nada tabela-verdade. Uma tabela verdade é uma tabela que contém as proposições nas colunas
e as possibilidades de valores-verdade nas linhas. É comum expressar os resultados de uma
proposição composta por meio de tabelas- verdade, que permitem analisar seus valores-verdade.
Tabela-verdade para a negação de p:
p ∼ p
V F
F V
6
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E20
2. Conjunção (∧)
O operador conjunção “∧” representa intuitivamente o papel análogo ao conectivo “e” da
Ĺıngua Portuguesa. Por exemplo, se p: “7 < 0” e q: “11 é ı́mpar”, então p ∧ q é a proposição
“7 < 0 e 11 é ı́mpar”. Neste caso, sabemos que (p ∧ q) é falsa, pois falha a proposição q.
Dadas duas proposições p e q, chama-se “conjunção de p e q” a proposição “p ∧ q” (lê-se p
e q). A conjunção p∧ q será verdadeira quando p e q forem ambas verdadeiras e será falsa nos
outros casos.
Em resumo: V(p ∧ q) = V somente quando V(p) = V(q) = V.
Tabela-verdade para a conjunção p ∧ q
p q p ∧ q
V V V
V F F
F V F
F F F
3) Disjunção (∨)
Dadas duas proposições p e q, chama-se “disjunção de p e q” a proposição “p ∨ q” (lê-se
p ou q). A disjunção p ∨ q será verdadeira se pelo menos uma das proposições (p ou q) for
verdadeira e será falsa apenas no caso em que as duas (p e q) forem falsas.
Em resumo: V(p ∨ q) = F somente quando V(p) = V(q) = F.
Exemplos:
a) Se p: 3 + 4 > 5 e q: 3 + 1 = 2, a composta P(p, q) formada ao usar o conectivo “∨” é
P:p ∨ q, que se lê P: 3 + 4 > 5 ou 3 + 1 = 2.
b) A frase: “O aluno tem celular ou notebook” é uma disjunção de duas proposições simples:
[O aluno tem celular] ∨ [O aluno tem notebook].
O concetivo ∨ também é chamado de “ou inclusivo”, pois ele admite as duas frases ver-
dadeiras. A frase do exemplo acima é verdadeira se o aluno tiver somente celular, somente
notebook, ou celular e notebook.
Em resumo: V(p ∨ q) = F somente quando V(p) = V(q) = F.
7
2. Conjunção (∧)
O operador conjunção “∧” representa intuitivamente o papel análogo ao conectivo “e” da
Ĺıngua Portuguesa. Por exemplo, se p: “7 < 0” e q: “11 é ı́mpar”, então p ∧ q é a proposição
“7 < 0 e 11 é ı́mpar”. Neste caso, sabemos que (p ∧ q) é falsa, pois falha a proposição q.
Dadas duas proposições p e q, chama-se “conjunção de p e q” a proposição “p ∧ q” (lê-se p
e q). A conjunção p∧ q será verdadeira quando p e q forem ambas verdadeiras e será falsa nos
outros casos.
Em resumo: V(p ∧ q) = V somente quando V(p) = V(q) = V.
Tabela-verdade para a conjunção p ∧ q
p q p ∧ q
V V V
V F F
F V F
F F F
3) Disjunção (∨)
Dadas duas proposições p e q, chama-se “disjunção de p e q” a proposição “p ∨ q” (lê-se
p ou q). A disjunção p ∨ q será verdadeira se pelo menos uma das proposições (p ou q) for
verdadeira e será falsa apenas no caso em que as duas (p e q) forem falsas.
Em resumo: V(p ∨ q) = F somente quando V(p) = V(q) = F.
Exemplos:
a) Se p: 3 + 4 > 5 e q: 3 + 1 = 2, a composta P(p, q) formada ao usar o conectivo “∨” é
P:p ∨ q, que se lê P: 3 + 4 > 5 ou 3 + 1 = 2.
b) A frase: “O aluno tem celular ou notebook” é uma disjunção de duas proposições simples:
[O aluno tem celular] ∨ [O aluno tem notebook].
O concetivo ∨ também é chamado de “ou inclusivo”, pois ele admite as duas frases ver-
dadeiras. A frase do exemplo acima é verdadeira se o aluno tiver somente celular, somente
notebook, ou celular e notebook.
Em resumo: V(p ∨ q) = F somente quando V(p) = V(q) = F.
7
Tabela-verdade para a disjunção p ∨ q.
p q p ∨ q
V V V
V F V
F V V
F F F
3.1) DisjunçãoExclusiva: (∨)
Chama-se disjunção exclusiva de duas proposições p e q a proposição representada por “p ∨
q” ou p⊕q, que se lê: “ou p ou q” ou “p ou q, mas não ambos”, cujo valor lógico é a verdade (V)
somente quando p é verdadeira ou q é verdadeira, mas não quando p e q são ambas verdadeiras,
e a falsidade (F) quando p e q são ambas verdadeiras ou ambas falsas.
Em resumo: V( p∨q ) = F quando V(p) = V(q).
Na disjunção exclusiva, as duas proposições não podem ocorrer ao mesmo tempo.
Exemplos:
a) p: x é par ; q: x é ı́mpar. x pode ser par ou ı́mpar, mas x não pode ser par e ı́mpar ao
mesmo tempo. A composta “p ou q” é simbolizada por P(p, q) = (p∨q).
b) Arnaldo é alagoano ou pernambucano.
c) O documento foi enviado por malote ou pelo correio.
Tabela-verdade da disjunção exclusiva p∨q.
p q p∨q
V V F
V F V
F V V
F F F
4. Condicional (−→)
Sejam p e q proposições. A proposição “se p, então q” , que será denotada por p → q,
é chamada de condicional ou implicação. A proposição p → q assume o valor falso somente
8
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
21
quando p for verdadeira e q for falsa.
Resumindo: V(p → q) = F somente quando V(p) = V e V(q) = F.
Ilustremos inicialmente uma interpretação do conectivo → através da sentença:
“Se Ana conseguir o emprego, então fará uma festa.”
Definindo-se:
p: “Ana consegue o emprego” e q: “ Ana faz uma festa”, então (p → q) representa a
promessa de Ana.
Vamos analisar quando a promessa será cumprida:
1) Digamos que ela consiga a vaga de emprego (p é V). Pode acontecer que ela faça a festa
(q é V), cumprindo a promessa (p → q é V). Por outro lado, Ana pode não fazer a festa,
descumprindo a promessa (p → q é F).
2) Digamos que Ana não consiga o emprego (p é F). Neste caso, independente de fazer ou
não uma festa (q é V ou F), a promessa não será descumprida (p → q é V).
Observamos que a única possibilidade de p → q ser falsa é quando p é V e q é F.
Tabela-verdade da condicional p → q.
p q p → q
V V V
V F F
F V V
F F V
Na condicional p → q, a proposição p é chamada de hipótese, premissa ou antecedente,
enquanto a proposição q é denominada tese, conclusão ou consequente.
Em Português, o uso do condicional estabelece uma relação de causa e efeito entre a hipótese
e a conclusão. Entretanto, na condicional lógica p → q, não é necessário existir uma relação
causal entre a hipótese p e a tese q.
Por exemplo, a condicional:
“Se laranjas são azuis então 2 é par”
é destitúıda de “sentido” na ĺıngua portuguesa, mas como a hipótese é falsa, temos que a
condicional é verdadeira, mesmo não existindo relação de causa e efeito entre as proposições
envolvidas.
9
quando p for verdadeira e q for falsa.
Resumindo: V(p → q) = F somente quando V(p) = V e V(q) = F.
Ilustremos inicialmente uma interpretação do conectivo → através da sentença:
“Se Ana conseguir o emprego, então fará uma festa.”
Definindo-se:
p: “Ana consegue o emprego” e q: “ Ana faz uma festa”, então (p → q) representa a
promessa de Ana.
Vamos analisar quando a promessa será cumprida:
1) Digamos que ela consiga a vaga de emprego (p é V). Pode acontecer que ela faça a festa
(q é V), cumprindo a promessa (p → q é V). Por outro lado, Ana pode não fazer a festa,
descumprindo a promessa (p → q é F).
2) Digamos que Ana não consiga o emprego (p é F). Neste caso, independente de fazer ou
não uma festa (q é V ou F), a promessa não será descumprida (p → q é V).
Observamos que a única possibilidade de p → q ser falsa é quando p é V e q é F.
Tabela-verdade da condicional p → q.
p q p → q
V V V
V F F
F V V
F F V
Na condicional p → q, a proposição p é chamada de hipótese, premissa ou antecedente,
enquanto a proposição q é denominada tese, conclusão ou consequente.
Em Português, o uso do condicional estabelece uma relação de causa e efeito entre a hipótese
e a conclusão. Entretanto, na condicional lógica p → q, não é necessário existir uma relação
causal entre a hipótese p e a tese q.
Por exemplo, a condicional:
“Se laranjas são azuis então 2 é par”
é destitúıda de “sentido” na ĺıngua portuguesa, mas como a hipótese é falsa, temos que a
condicional é verdadeira, mesmo não existindo relação de causa e efeito entre as proposições
envolvidas.
9
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E22
Proposições Associadas a uma Condicional:
Consideremos as proposições:
p: O quadrilátero Q é um quadrado.
q: O quadrilátero Q é um retângulo.
e a condicional
p → q : “Se o quadrilátero Q é um quadrado, então é um retângulo.”
Temos as seguintes proposições associadas à condicional p → q :
• Contrapositiva ∼ q →∼ p : “Se o quadrilátero Q não é um retângulo, então Q não é um
quadrado.”
• Rećıproca q → p : “Se o quadrilátero Q é um retângulo, então é um quadrado.”
• Inversa ∼ p →∼ q : “Se o quadrilátero Q não é um quadrado, então Q não é um
retângulo.”
5. Bicondicional (↔)
Se p e q são duas proposições, a proposição “p, se e somente se q”, que será indicada por
“p ↔ q” é chamada de bicondicional. A proposição bicondicional será verdadeira quando p e q
forem ambas verdadeiras ou ambas falsas, e será falsa nos demais casos.
Resumindo: V (p ↔ q) = V quando V(p) = V(q).
Tabela-verdade da bicondicional p ↔ q.
p q p ↔ q
V V V
V F F
F V F
F F V
A bicondicional p ↔ q também se lê de uma das seguintes maneiras:
• p é condição necessária e suficiente para q.
• q é condição necessária e suficiente para p.
10
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
23
Exemplo:
“Respiro se, e somente se, estou vivo”.
Percebemos pelo exemplo que respirar é condição necessária e suficiente para estar vivo,
assim como estar vivo é condição necessária e suficiente para respirar.
Prioridades de Operações Lógicas
Em uma operação que usa dois ou mais operadores lógicos, como p∧ r∨ q → r, a ordem em
que eles aparecem é muito importante. Em geral, usam-se parênteses para indicar a ordem e
agrupamento das operações lógicas. Mas assim como na Álgebra, existe uma convenção sobre
a ordem de precedência para os conectivos, que estabelecem uma ordem de aplicação, mesmo
na ausência de parênteses.
OPERADOR PRIORIDADE
∼ 1
∧ 2
∨ 3
→ 4
↔ 5
Exemplo:
Seja a sentença em linguagem natural:
“Você não pode andar de montanha russa se você tiver menos do que 1,20 metros de altura, a
menos que você tenha 16 anos de idade.”
Podemos fazer a tradução dessa sentença em proposições compostas da seguinte maneira.
Consideremos as primitivas:
• q: Você pode andar de montanha russa.
• r: Você tem menos do que 1,20 m de altura.
• s: Você tem mais de 16 anos de idade.
Então, a sentença em linguagem natural pode ser traduzida em proposições lógicas como:
r∧ ∼ s →∼ q, ou ainda ∼ r ∨ s → q, que devem ser consideradas como [(r ∧ (∼ s)) → (∼ q)],
ou ainda ((∼ r) ∨ s) → q.
11
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E24
Tabela-Verdade
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
25
Tabelas-Verdade
Dadas várias proposições simples p, q, r, s, ..., podemos combiná-las para formar novas proposições
compostas. O valor-verdade dessas novas proposições fica completamente determinado pelos
valores das proposições componentes e pela natureza dos conectivos envolvidos. Uma maneira
de determinar o valor lógico de proposições compostas é pela construção de tabelas-verdade.Exemplos:
1) Construir a tabela-verdade da proposição ∼ (p ∧ q).
Observemos que como existem duas proposições simples envolvidas, p e q, então existem 4
possibilidades de combinar os valores-verdade de p e q: VV; VF; FV e FF. Dessa forma, a
tabela-verdade terá 22 = 4 linhas.
p q p ∧ q ∼ (p ∧ q)
V V V F
V F F V
F V F V
F F F V
1 1 2 3
2) Construir a tabela-verdade da proposição (p∨ ∼ q) → q.
p q ∼ q p∨ ∼ q (p∨ ∼ q) → q
V V F V V
V F V V F
F V F F V
F F V V F
12
Tabela-Verdade
# REFLITA#
Número de linhas de uma tabela-verdade
“A tabela-verdade de uma proposição composta com
n proposições simples componentes contém 2n linhas”.
Fonte: a autora.
#FIM REFLITA#
Um outro modo de se construir a tabela-verdade de uma proposição composta é dada a
seguir, onde colocamos todos os elementos envolvidos na proposição composta e numeramos as
etapas; a solução será a última etapa:
3) Encontrar a tabela-verdade da proposição composta S = (p∨ ∼ q) → (p ∧ q ↔ r).
p q r (p ∨ ∼ q) → (p ∧ q ↔ r)
V V V V V F V V V V V V
V V F V V F F V V V F F
V F V V V V F V F F F V
V F F V V V V V F F V F
F V V F F F V F F V F V
F V F F F F V F F V V F
F F V F V V F F F F F V
F F F F V V V F F F V F
1 1 1 1 3 2 6 1 4 1 5 1
4) Construir a tabela-verdade de (p ∧ q)∨ ∼ (p → q).
(p ∧ q) ∨ ∼ (p → q)
V V V V F V V V
V F F V V V F F
F F V F F F V V
F F F F F F V F
1 2 1 5 4 1 3 1
Tautologias e Contradições
Uma tautologia é uma proposição composta que é sempre verdadeira, quaisquer que sejam os
valores lógicos das proposições simples que a compõem, ou seja, a coluna de resultado de sua
13
# REFLITA#
Número de linhas de uma tabela-verdade
“A tabela-verdade de uma proposição composta com
n proposições simples componentes contém 2n linhas”.
Fonte: a autora.
#FIM REFLITA#
Um outro modo de se construir a tabela-verdade de uma proposição composta é dada a
seguir, onde colocamos todos os elementos envolvidos na proposição composta e numeramos as
etapas; a solução será a última etapa:
3) Encontrar a tabela-verdade da proposição composta S = (p∨ ∼ q) → (p ∧ q ↔ r).
p q r (p ∨ ∼ q) → (p ∧ q ↔ r)
V V V V V F V V V V V V
V V F V V F F V V V F F
V F V V V V F V F F F V
V F F V V V V V F F V F
F V V F F F V F F V F V
F V F F F F V F F V V F
F F V F V V F F F F F V
F F F F V V V F F F V F
1 1 1 1 3 2 6 1 4 1 5 1
4) Construir a tabela-verdade de (p ∧ q)∨ ∼ (p → q).
(p ∧ q) ∨ ∼ (p → q)
V V V V F V V V
V F F V V V F F
F F V F F F V V
F F F F F F V F
1 2 1 5 4 1 3 1
Tautologias e Contradições
Uma tautologia é uma proposição composta que é sempre verdadeira, quaisquer que sejam os
valores lógicos das proposições simples que a compõem, ou seja, a coluna de resultado de sua
13
# REFLITA#
Número de linhas de uma tabela-verdade
“A tabela-verdade de uma proposição composta com
n proposições simples componentes contém 2n linhas”.
Fonte: a autora.
#FIM REFLITA#
Um outro modo de se construir a tabela-verdade de uma proposição composta é dada a
seguir, onde colocamos todos os elementos envolvidos na proposição composta e numeramos as
etapas; a solução será a última etapa:
3) Encontrar a tabela-verdade da proposição composta S = (p∨ ∼ q) → (p ∧ q ↔ r).
p q r (p ∨ ∼ q) → (p ∧ q ↔ r)
V V V V V F V V V V V V
V V F V V F F V V V F F
V F V V V V F V F F F V
V F F V V V V V F F V F
F V V F F F V F F V F V
F V F F F F V F F V V F
F F V F V V F F F F F V
F F F F V V V F F F V F
1 1 1 1 3 2 6 1 4 1 5 1
4) Construir a tabela-verdade de (p ∧ q)∨ ∼ (p → q).
(p ∧ q) ∨ ∼ (p → q)
V V V V F V V V
V F F V V V F F
F F V F F F V V
F F F F F F V F
1 2 1 5 4 1 3 1
Tautologias e Contradições
Uma tautologia é uma proposição composta que é sempre verdadeira, quaisquer que sejam os
valores lógicos das proposições simples que a compõem, ou seja, a coluna de resultado de sua
13
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E26
tabela-verdade contém somente valores lógicos verdadeiros (V). Por outro lado, uma proposição
composta que é sempre falsa é chamada de contradição. Uma proposição composta que não é
uma tautologia nem uma contradição é denominada contingência.
Exemplos:
1) A proposição composta p ∧ q → q é uma tautologia.
p ∧ q → q
V V V V V
V F F V F
F F V V V
F F F V F
1 2 1 3 1
2) A proposição composta (p ∧ q)∧ ∼ (p ∨ q) é uma contradição.
(p ∧ q) ∧ ∼ (p ∨ q)
V V V F F V V V
V F F F V V V F
F F V F V F V V
F F F F V F F F
1 2 1 5 4 1 3 1
3) A proposição composta q →∼ q é uma contingência.
q → ∼ q
V F F
F V V
As tautologias e contradições têm fundamental importância em métodos de prova, e é através
das tautologias que podemos simplificar expressões lógicas.
# REFLITA #
A Lógica é a anatomia do pensamento. (John Locke)
# FIM REFLITA #
14
tabela-verdade contém somente valores lógicos verdadeiros (V). Por outro lado, uma proposição
composta que é sempre falsa é chamada de contradição. Uma proposição composta que não é
uma tautologia nem uma contradição é denominada contingência.
Exemplos:
1) A proposição composta p ∧ q → q é uma tautologia.
p ∧ q → q
V V V V V
V F F V F
F F V V V
F F F V F
1 2 1 3 1
2) A proposição composta (p ∧ q)∧ ∼ (p ∨ q) é uma contradição.
(p ∧ q) ∧ ∼ (p ∨ q)
V V V F F V V V
V F F F V V V F
F F V F V F V V
F F F F V F F F
1 2 1 5 4 1 3 1
3) A proposição composta q →∼ q é uma contingência.
q → ∼ q
V F F
F V V
As tautologias e contradições têm fundamental importância em métodos de prova, e é através
das tautologias que podemos simplificar expressões lógicas.
# REFLITA #
A Lógica é a anatomia do pensamento. (John Locke)
# FIM REFLITA #
14
tabela-verdade contém somente valores lógicos verdadeiros (V). Por outro lado, uma proposição
composta que é sempre falsa é chamada de contradição. Uma proposição composta que não é
uma tautologia nem uma contradição é denominada contingência.
Exemplos:
1) A proposição composta p ∧ q → q é uma tautologia.
p ∧ q → q
V V V V V
V F F V F
F F V V V
F F F V F
1 2 1 3 1
2) A proposição composta (p ∧ q)∧ ∼ (p ∨ q) é uma contradição.
(p ∧ q) ∧ ∼ (p ∨ q)
V V V F F V V V
V F F F V V V F
F F V F V F V V
F F F F V F F F
1 2 1 5 4 1 3 1
3) A proposição composta q →∼ q é uma contingência.
q → ∼ q
V F F
F V V
As tautologias e contradições têm fundamental importância em métodos de prova, e é através
das tautologias que podemos simplificar expressões lógicas.
# REFLITA #
A Lógica é a anatomia do pensamento. (John Locke)
# FIM REFLITA #
14
Tautologias e Contradições
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
27
Equivalências Lógicas
Duas proposições compostas P e Q são chamadas logicamente equivalentes se suas tabelas
-verdade são idênticas, ou melhor, se, e somente se, P ↔ Q for tautologia.
Notações: P ≡ Q ou P ⇔ Q.
Podemos verificar que duas proposições são logicamente equivalentes por meio da construção
de suas tabelas-verdade.
Exemplos:
1) Verificar que p ≡∼ (∼ p).
p ∼ p ∼ (∼ p) p↔∼ (∼ p)
V F V V
F V F V
1 2 3 4
2) Verificar que p → q ⇔∼ p ∨ q.
p q ∼ p p → q ∼ p ∨ q p → q ↔∼ p ∨ q
V V F V V V
V F F F F V
F V V V V V
F F V V V V
1 1 2 3 4 5
15
Equivalências Lógicas
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E28
Equivalências Lógicas Importantes
p, q, r proposições
Notações V: tautologia
F: contradição
Propriedade Equivalência Lógica
p ∧ V ≡ p
p ∨ F ≡ p
Identidades p ↔ V ≡ p
p∨F ≡ p
Dominação p ∨ V ≡ V
p ∧ F ≡ F
Leis da idempotência p ∨ p ≡ p
p ∧ p ≡ p
Dupla negação ∼ (∼ p) ≡ p
p ∨ q ≡ q ∨ p
Comutativa p ∧ q ≡ q ∧ p
p ↔ q ≡ q ↔ p
(p ∨ q) ∨ r ≡ p ∨ (q ∨ r)
Associativa(p ∧ q) ∧ r ≡ p ∧ (q ∧ r)
(p ↔ q) ↔ r ≡ p ↔ (q ↔ r)
Negação ou Inversa p∨ ∼ p ≡ V
p∧ ∼ p ≡ F
Leis da implicação (p → q) ≡ (∼ p ∨ q) ≡∼ (p∧ ∼ q)
∼ (p → q) ≡ (p∧ ∼ q)
Leis da equivalência (p ↔ q) ≡ (p → q) ∧ (q → p)
∼ (p ↔ q) ≡ (p ↔∼ q) ≡ (∼ p ↔ q)
Distributiva p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r)
p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Leis de De Morgan ∼ (p ∨ q) ≡∼ p∧ ∼ q
∼ (p ∧ q) ≡∼ p∨ ∼ q
Absorção p ∨ (p ∧ q) ≡ p
p ∧ (p ∨ q) ≡ p
Lei da contrapositiva (p → q) ≡ (∼ q) → (∼ p)
Lei da redução ao absurdo p → q ≡ (p∧ ∼ q) → F
Para estudos desenvolvidos em técnicas digitais, as diversas portas lógicas são expressas em
termos de ∼ e ∧. É importante então expressar qualquer um dos conectivos usando somente ∼
e ∧.
16
Equivalência Lógicas
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
29
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E30
Exerćıcio: Prove, usando tabela-verdade, a equivalência dos conectivos estudados com as
expressões que envolvem somente ∼ e ∧:
a) Disjunção: p ∨ q ≡∼ (∼ p∧ ∼ q).
b) Condicional: p → q ≡∼ (p∧ ∼ q)
c) Bicondicional: p ↔ q ≡∼ (∼ (p ∧ q)∧ ∼ (∼ p∧ ∼ q))
Conectivos Lógicos e Programação
De acordo com Gersting (2004, p.9), podemos exemplificar uma aplicação da Lógica Matemática
na computação:
Os conectivos lógicos E (AND), OU (OR) e NÃO (NOT)(correspondendo,
respectivamente, a ∧,∨ e ∼) estão dispońıveis em muitas linguagens de
programação, assim como em calculadoras gráficas programáveis. Esses
conectivos, de acordo com as tabelas-verdade que definimos, agem em
combinações de expressões verdadeiras ou falsas para produzir um valor
lógico final. Tais valores lógicos fornecem a capacidade de tomada de decisão
fundamental ao fluxo de controle em programas de computadores. Assim, em
uma ramificação condicional de um programa, se o valor lógico da expressão
condicional for verdadeiro, o programa executará a seguir um trecho de seu
código; se o valor for falso, o programa executará um trecho diferente de
seu código. Se a expressão condicional for substitúıda por outra expressão
equivalente mais simples, o valor lógico da expressão, e portanto, o fluxo de
controle do programa, não será afetado, mas o novo código será mais fácil de
ser entendido e poderá ser executado mais rapidamente.
Exemplo: Vejamos o seguinte comando na linguagem de programação Pascal:
if(( x > y) and not ((x > y) and (z < 1000)))
then Faça isso (um procedimento)
else Faça aquilo (outro procedimento).
Aqui a expressão condicional tem a forma A∧ ∼ (A ∧ B), em que A: x > y e B: z < 1000.
Essa expressão pode ser simplificada utilizando uma condicional simplificada:
A∧ ∼ (A ∧ B) ≡ A ∧ (∼ A∨ ∼ B) (Leis de De Morgan)
≡ (A∧ ∼ A) ∨ (A∧ ∼ B) (distribuitividade)
≡ F ∨ (A∧ ∼ B) (F denota contradição)
≡ (A∧ ∼ B) ∨ F (comutatividade)
≡ (A∧ ∼ B) (identidade)
17
Exerćıcio: Prove, usando tabela-verdade, a equivalência dos conectivos estudados com as
expressões que envolvem somente ∼ e ∧:
a) Disjunção: p ∨ q ≡∼ (∼ p∧ ∼ q).
b) Condicional: p → q ≡∼ (p∧ ∼ q)
c) Bicondicional: p ↔ q ≡∼ (∼ (p ∧ q)∧ ∼ (∼ p∧ ∼ q))
Conectivos Lógicos e Programação
De acordo com Gersting (2004, p.9), podemos exemplificar uma aplicação da Lógica Matemática
na computação:
Os conectivos lógicos E (AND), OU (OR) e NÃO (NOT)(correspondendo,
respectivamente, a ∧,∨ e ∼) estão dispońıveis em muitas linguagens de
programação, assim como em calculadoras gráficas programáveis. Esses
conectivos, de acordo com as tabelas-verdade que definimos, agem em
combinações de expressões verdadeiras ou falsas para produzir um valor
lógico final. Tais valores lógicos fornecem a capacidade de tomada de decisão
fundamental ao fluxo de controle em programas de computadores. Assim, em
uma ramificação condicional de um programa, se o valor lógico da expressão
condicional for verdadeiro, o programa executará a seguir um trecho de seu
código; se o valor for falso, o programa executará um trecho diferente de
seu código. Se a expressão condicional for substitúıda por outra expressão
equivalente mais simples, o valor lógico da expressão, e portanto, o fluxo de
controle do programa, não será afetado, mas o novo código será mais fácil de
ser entendido e poderá ser executado mais rapidamente.
Exemplo: Vejamos o seguinte comando na linguagem de programação Pascal:
if(( x > y) and not ((x > y) and (z < 1000)))
then Faça isso (um procedimento)
else Faça aquilo (outro procedimento).
Aqui a expressão condicional tem a forma A∧ ∼ (A ∧ B), em que A: x > y e B: z < 1000.
Essa expressão pode ser simplificada utilizando uma condicional simplificada:
A∧ ∼ (A ∧ B) ≡ A ∧ (∼ A∨ ∼ B) (Leis de De Morgan)
≡ (A∧ ∼ A) ∨ (A∧ ∼ B) (distribuitividade)
≡ F ∨ (A∧ ∼ B) (F denota contradição)
≡ (A∧ ∼ B) ∨ F (comutatividade)
≡ (A∧ ∼ B) (identidade)
17
Implicações Lógicas
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
31
O comando pode então ser reescrito como:
if ((x > y) and not (z < 1000))
then Faça isso (um procedimento)
else Faça aquilo (outro procedimento).
Implicações Lógicas
Sejam p e q duas proposições. Dizemos que p implica logicamente q se p → q é uma tautologia.
Denotaremos que p implica logicamente em q por “p ⇒ q”.
As implicações lógicas também podem ser chamadas de “inferências lógicas”. As regras de
inferência são, na verdade, formas válidas de racioćınio, isto é, são formas que nos permitem
concluir o consequente, uma vez que consideremos o antecedente verdadeiro; em termos textu-
ais, costumamos utilizar o termo “logo” (ou seus sinônimos: portanto, em consequência, etc.)
para caracterizar as Regras de Inferência; a expressão p ⇒ q pode então ser lida: “p; logo, q”.
Listamos a seguir algumas regras de inferência importantes, sendo p, q e r proposições quais-
quer:
Regras de Inferência
1. p ⇒ p ∨ q Lei de adição
2. p ∧ q ⇒ p Leis de simplificação
p ∧ q ⇒ q
3. (p → q) ∧ p ⇒ q Modus Ponens
4. (p → q)∧ ∼ q ⇒∼ p Modus Tollens
5. (p ∨ q)∧ ∼ p ⇒ q Silogismo disjuntivo
6. (p → q) ∧ (q → r) ⇒ (p → r) Silogismo hipotético
7. p → F ⇒∼ p Demonstração por absurdo
18
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E32
Exemplo:
“Se é gato, então mia. É gato, portanto mia.”
Essa frase exemplifica a regra de inferência Modus Ponens (p → q) ∧ p ⇒ q.
Provemos sua veracidade:
p q p → q (p → q) ∧ p [(p → q) ∧ p] → q
V V V V V
V F F F V
F V V F V
F F V F V
Exerćıcio: Verificar cada uma das inferências acima usando tabela-verdade.
Método Dedutivo
Argumentos
Um argumento é uma sequência de proposições na qual uma delas deriva das demais.
Usualmente, a proposição derivada é chamada conclusão, e as demais, premissas. Dito de
outra maneira, chama-se argumento a afirmação de que de um dado conjunto de proposições
P1, P2, ...Pn, chamadas premissas, decorre uma proposição Q, chamada conclusão.
Exemplo:
19
Método Dedutivo
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
33
Exemplo:
“Se é gato, então mia. É gato, portanto mia.”
Essa frase exemplifica a regra de inferência Modus Ponens (p → q) ∧ p ⇒ q.
Provemos sua veracidade:
p q p → q (p → q) ∧ p [(p → q) ∧ p] → q
V V V V V
V F F F V
F V V F V
F F V F V
Exerćıcio: Verificar cada uma das inferências acima usando tabela-verdade.
Método Dedutivo
Argumentos
Um argumento é uma sequência de proposições na qual uma delas deriva das demais.
Usualmente, a proposição derivada é chamada conclusão, e as demais, premissas. Dito de
outra maneira, chama-seargumento a afirmação de que de um dado conjunto de proposições
P1, P2, ...Pn, chamadas premissas, decorre uma proposição Q, chamada conclusão.
Exemplo:
19
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
Logo, Leonardo precisa estudar Lógica. (conclusão)
Um argumento é considerado válido se a conjunção das hipóteses implica na tese. As pre-
missas são consideradas provas evidentes da verdade da conclusão.
Exemplos:
1) Se é mamı́fero, então é vertebrado.
A baleia é um mamı́fero.
Logo, a baleia é um vertebrado.
Argumento válido, em que as premissas e a conclusão são verdadeiras.
2) Fernando Collor foi presidente do Brasil.
Se é presidente do Brasil, então sofre impeachemnt.
Logo, Collor sofreu impeachment no mandato como presidente.
Argumento válido, com uma das premissas falsa, mas conclusão verdadeira.
3) Se é cobra, tem asas.
A sucuri é uma cobra.
Logo, a sucuri tem asas.
Argumento válido com uma das premissas falsa, e conclusão falsa.
Se a conclusão não decorre das premissas, dizemos que o argumento é inválido ou sofisma.
Exemplos:
1) Se o número é múltiplo de 4, então é múltiplo de 2. O número é múltiplo de 2. Logo,
também é múltiplo de 4.
2) Se é pássaro, é mortal.
Eu sou mortal. Portanto, eu sou um pássaro.
A validade do argumento depende exclusivamente do relacionamento lógico entre as premissas
e a conclusão. A Lógica não se ocupa de verificar se as premissas são verdadeiras; o objetivo da
Lógica é verificar se o argumento é estruturado de forma tal que, independentemente dos valores
lógicos das proposições simples envolvidas, a veracidade das premissas implica na veracidade
da conclusão.
20
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
Logo, Leonardo precisa estudar Lógica. (conclusão)
Um argumento é considerado válido se a conjunção das hipóteses implica na tese. As pre-
missas são consideradas provas evidentes da verdade da conclusão.
Exemplos:
1) Se é mamı́fero, então é vertebrado.
A baleia é um mamı́fero.
Logo, a baleia é um vertebrado.
Argumento válido, em que as premissas e a conclusão são verdadeiras.
2) Fernando Collor foi presidente do Brasil.
Se é presidente do Brasil, então sofre impeachemnt.
Logo, Collor sofreu impeachment no mandato como presidente.
Argumento válido, com uma das premissas falsa, mas conclusão verdadeira.
3) Se é cobra, tem asas.
A sucuri é uma cobra.
Logo, a sucuri tem asas.
Argumento válido com uma das premissas falsa, e conclusão falsa.
Se a conclusão não decorre das premissas, dizemos que o argumento é inválido ou sofisma.
Exemplos:
1) Se o número é múltiplo de 4, então é múltiplo de 2. O número é múltiplo de 2. Logo,
também é múltiplo de 4.
2) Se é pássaro, é mortal.
Eu sou mortal. Portanto, eu sou um pássaro.
A validade do argumento depende exclusivamente do relacionamento lógico entre as premissas
e a conclusão. A Lógica não se ocupa de verificar se as premissas são verdadeiras; o objetivo da
Lógica é verificar se o argumento é estruturado de forma tal que, independentemente dos valores
lógicos das proposições simples envolvidas, a veracidade das premissas implica na veracidade
da conclusão.
20
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
Logo, Leonardo precisa estudar Lógica. (conclusão)
Um argumento é considerado válido se a conjunção das hipóteses implica na tese. As pre-
missas são consideradas provas evidentes da verdade da conclusão.
Exemplos:
1) Se é mamı́fero, então é vertebrado.
A baleia é um mamı́fero.
Logo, a baleia é um vertebrado.
Argumento válido, em que as premissas e a conclusão são verdadeiras.
2) Fernando Collor foi presidente do Brasil.
Se é presidente do Brasil, então sofre impeachemnt.
Logo, Collor sofreu impeachment no mandato como presidente.
Argumento válido, com uma das premissas falsa, mas conclusão verdadeira.
3) Se é cobra, tem asas.
A sucuri é uma cobra.
Logo, a sucuri tem asas.
Argumento válido com uma das premissas falsa, e conclusão falsa.
Se a conclusão não decorre das premissas, dizemos que o argumento é inválido ou sofisma.
Exemplos:
1) Se o número é múltiplo de 4, então é múltiplo de 2. O número é múltiplo de 2. Logo,
também é múltiplo de 4.
2) Se é pássaro, é mortal.
Eu sou mortal. Portanto, eu sou um pássaro.
A validade do argumento depende exclusivamente do relacionamento lógico entre as premissas
e a conclusão. A Lógica não se ocupa de verificar se as premissas são verdadeiras; o objetivo da
Lógica é verificar se o argumento é estruturado de forma tal que, independentemente dos valores
lógicos das proposições simples envolvidas, a veracidade das premissas implica na veracidade
da conclusão.
20
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
Logo, Leonardo precisa estudar Lógica. (conclusão)
Um argumento é considerado válido se a conjunção das hipóteses implica na tese. As pre-
missas são consideradas provas evidentes da verdade da conclusão.
Exemplos:
1) Se é mamı́fero, então é vertebrado.
A baleia é um mamı́fero.
Logo, a baleia é um vertebrado.
Argumento válido, em que as premissas e a conclusão são verdadeiras.
2) Fernando Collor foi presidente do Brasil.
Se é presidente do Brasil, então sofre impeachemnt.
Logo, Collor sofreu impeachment no mandato como presidente.
Argumento válido, com uma das premissas falsa, mas conclusão verdadeira.
3) Se é cobra, tem asas.
A sucuri é uma cobra.
Logo, a sucuri tem asas.
Argumento válido com uma das premissas falsa, e conclusão falsa.
Se a conclusão não decorre das premissas, dizemos que o argumento é inválido ou sofisma.
Exemplos:
1) Se o número é múltiplo de 4, então é múltiplo de 2. O número é múltiplo de 2. Logo,
também é múltiplo de 4.
2) Se é pássaro, é mortal.
Eu sou mortal. Portanto, eu sou um pássaro.
A validade do argumento depende exclusivamente do relacionamento lógico entre as premissas
e a conclusão. A Lógica não se ocupa de verificar se as premissas são verdadeiras; o objetivo da
Lógica é verificar se o argumento é estruturado de forma tal que, independentemente dos valores
lógicos das proposições simples envolvidas, a veracidade das premissas implica na veracidade
da conclusão.
20
Exemplo:
“Se é gato, então mia. É gato, portanto mia.”
Essa frase exemplifica a regra de inferência Modus Ponens (p → q) ∧ p ⇒ q.
Provemos sua veracidade:
p q p → q (p → q) ∧ p [(p → q) ∧ p] → q
V V V V V
V F F F V
F V V F V
F F V F V
Exerćıcio: Verificar cada uma das inferências acima usando tabela-verdade.
Método Dedutivo
Argumentos
Um argumento é uma sequência de proposições na qual uma delas deriva das demais.
Usualmente, a proposição derivada é chamada conclusão, e as demais, premissas. Dito de
outra maneira, chama-se argumento a afirmação de que de um dado conjunto de proposições
P1, P2, ...Pn, chamadas premissas, decorre uma proposição Q, chamada conclusão.
Exemplo:
19
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
Logo, Leonardo precisa estudar Lógica. (conclusão)
Um argumento é considerado válido se a conjunção das hipóteses implica na tese. As pre-
missas são consideradas provas evidentes da verdade da conclusão.
Exemplos:
1) Se é mamı́fero, então é vertebrado.
A baleia é um mamı́fero.
Logo, a baleia é um vertebrado.
Argumento válido, em que as premissas e a conclusão são verdadeiras.
2) Fernando Collor foi presidente do Brasil.
Se é presidente do Brasil,então sofre impeachemnt.
Logo, Collor sofreu impeachment no mandato como presidente.
Argumento válido, com uma das premissas falsa, mas conclusão verdadeira.
3) Se é cobra, tem asas.
A sucuri é uma cobra.
Logo, a sucuri tem asas.
Argumento válido com uma das premissas falsa, e conclusão falsa.
Se a conclusão não decorre das premissas, dizemos que o argumento é inválido ou sofisma.
Exemplos:
1) Se o número é múltiplo de 4, então é múltiplo de 2. O número é múltiplo de 2. Logo,
também é múltiplo de 4.
2) Se é pássaro, é mortal.
Eu sou mortal. Portanto, eu sou um pássaro.
A validade do argumento depende exclusivamente do relacionamento lógico entre as premissas
e a conclusão. A Lógica não se ocupa de verificar se as premissas são verdadeiras; o objetivo da
Lógica é verificar se o argumento é estruturado de forma tal que, independentemente dos valores
lógicos das proposições simples envolvidas, a veracidade das premissas implica na veracidade
da conclusão.
20
Para provar que um argumento é válido, devemos verificar que P1 ∧ P2 ∧ ... ∧ Pn → Q é
uma tautologia. Isso pode ser feito por meio das tabelas-verdade, mas o processo ficaria de-
masiadamente longo se um grande número de proposições simples estiver envolvido. Podemos
então recorrer ao método dedutivo, que consiste em obter a conclusão a partir das premissas
e de uma cadeia de equivalências e inferências que atuam sobre as hipóteses, criando novas
proposições até que se obtenha a tese, provando o resultado.
Exemplos: Verificar se os seguintes argumentos são válidos, usando o método dedutivo.
a) Se não terminar o trabalho, então durmo mais cedo. Se dormir mais cedo, descansarei.
Não descansei. Logo, terminei o trabalho.
Podemos reescrever o argumento acima na forma da lógica proposicional da seguinte forma:
∼ p → q (hipótese 1)
q → r (hipótese 2)
∼ r (hipótese 3)
p (Tese)
Onde:
p : Termino o trabalho.
q : Durmo mais cedo.
r : Descanso.
Devemos provar que (∼ p → q) ∧ (q → r)∧ ∼ r ⇒ p
1. ∼ p → q (hipótese)
2. q → r (hipótese)
3. ∼ r (hipótese)
4. ∼ q (2, 3, Modus Tollens)
5. ∼ (∼ p) (1, 4, Modus Tollens)
6. p (5, Dupla negação)
b) [Gersting, 2004, p.26] Se o programa é eficiente, ele executará rapidamente. Ou o pro-
grama é eficiente ou ele tem um erro. No entanto, o programa não executa rapidamente.
Portanto o programa tem um erro.
E: o programa é eficiente.
R: o programa executa rapidamente.
B: o programa tem um erro.
(E → R) ∧ (E ∨ B)∧ ∼ R ⇒ B
21
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E34
Método Dedutivo
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
35
1. E → R (hipótese)
2. E ∨ B (hipótese)
3. ∼ R (hipótese)
4. ∼ E (1, 3, Modus Tollens)
5. B (2, 4, tautologia E ∨ B∧ ∼ E ⇒ B )
c) [Gersting, 2004, p.26] Rússia tinha um poder superior e, a França não era forte ou
Napoleão cometeu um erro. Napoleão não cometeu um erro, mas se o exército não tivesse
falhado, a França seria forte. Portanto, o exército falhou e a Rússia tinha um poder superior.
R: A Rússia tinha um poder superior.
F: A França era forte.
N: Napoleão cometeu um erro.
E: O exército falhou.
O argumento é portanto: [R ∧ (∼ F ∨N)]∧ ∼ N ∧ (∼ E → F ) ⇒ E ∧R.
1. R ∧ (∼ F ∨N) (hipótese)
2. ∼ N (hipótese)
3. ∼ E → F (hipótese)
4. R (1, Lei de simplificação )
5. ∼ F ∨N (1, Lei de simplificação)
6. ∼ F (5, 2, silogismo disjuntivo)
7. ∼ (∼ E) (3, 6, Modus Tollens)
8. E (7, dupla negação)
9. E ∧R (8, 4, conjunção)
Quantificadores e Predicados
A Lógica proposicional não é suficiente para simbolizar qualquer tipo de sentença, pois tem
uma possibilidade limitada de expressões.
Por exemplo:
• “Para todo x, y, x+ y > 3”
• “Existem crianças que não gostam de chocolate.”
• “Todo computador do Laboratório 2 está com v́ırus.”
22
1. E → R (hipótese)
2. E ∨ B (hipótese)
3. ∼ R (hipótese)
4. ∼ E (1, 3, Modus Tollens)
5. B (2, 4, tautologia E ∨ B∧ ∼ E ⇒ B )
c) [Gersting, 2004, p.26] Rússia tinha um poder superior e, a França não era forte ou
Napoleão cometeu um erro. Napoleão não cometeu um erro, mas se o exército não tivesse
falhado, a França seria forte. Portanto, o exército falhou e a Rússia tinha um poder superior.
R: A Rússia tinha um poder superior.
F: A França era forte.
N: Napoleão cometeu um erro.
E: O exército falhou.
O argumento é portanto: [R ∧ (∼ F ∨N)]∧ ∼ N ∧ (∼ E → F ) ⇒ E ∧R.
1. R ∧ (∼ F ∨N) (hipótese)
2. ∼ N (hipótese)
3. ∼ E → F (hipótese)
4. R (1, Lei de simplificação )
5. ∼ F ∨N (1, Lei de simplificação)
6. ∼ F (5, 2, silogismo disjuntivo)
7. ∼ (∼ E) (3, 6, Modus Tollens)
8. E (7, dupla negação)
9. E ∧R (8, 4, conjunção)
Quantificadores e Predicados
A Lógica proposicional não é suficiente para simbolizar qualquer tipo de sentença, pois tem
uma possibilidade limitada de expressões.
Por exemplo:
• “Para todo x, y, x+ y > 3”
• “Existem crianças que não gostam de chocolate.”
• “Todo computador do Laboratório 2 está com v́ırus.”
22
Não é posśıvel simbolizar tais sentenças adequadamente usando apenas variáveis proposi-
cionais, parênteses e conectivos lógicos, pois elas contêm elementos novos (“para todo”, “para
cada”, “para algum”) que são ligados ao conceito de predicados e quantificadores, que definire-
mos posteriormente.
Uma sentença aberta é uma expressão que depende de uma ou mais variáveis. O valor
verdade dessas sentenças só fica determinado quando os valores das variáveis forem identifica-
dos. (Logo, sentenças abertas não são proposições).
Uma sentença aberta também pode ser denominada proposição aberta ou função proposi-
cional.
Exemplos:
a) y + 2 é maior que 5.
b) x é um número ı́mpar.
c) O computador x do Laboratório 1 está funcionando adequadamente.
d) O quadrado de y é 81.
Observamos que a sentença do exemplo (a) será verdadeira se y for um número maior que
3, mas será falsa se y ≤ 3.
Chamamos conjunto universo (U) ou domı́nio de interpretação o conjunto de objetos dos
quais a variável pode ser escolhida. Para os exemplos acima, o conjunto universo do item (c)
são os computadores do Laboratório 1, e o conjunto universo para o item (d) são números
23
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E36
inteiros.
Numa sentença aberta, a propriedade ou relacionamento entre objetos (ou variáveis) é
chamada predicado. Denotaremos um predicado qualquer associado a uma variável x por
P (x).
Por exemplo, na sentença “P (x) = x é número primo”, a propriedade da variável x é “ser
primo”. Temos que P(7) é verdadeira e P(18) é falsa, pois 7 é um número primo e 18 não.
Chama-seConjunto-Verdade (VP ) de uma sentença P (x) o conjunto de valores da variável
no Universo para os quais a sentença é verdadeira, ou seja,
VP = {a ∈ U | V [P (a)] = V }
Por exemplo, seja U = {0, 1, 2, 3, 4, 5, 6, 7} e a expressão “x é par” representada por P(x).
Temos então VP = {0, 2, 4, 6}.
Para predicados que envolvem mais variáveis, a ordem em que as variáveis aparecem é im-
portante. Por exemplo, se P(x,y) indica que x é predador de y, não podemos dizer que y é
predador de x (ou seja, que vale P(y,x)).
Uma outra maneira de transformar sentenças abertas em proposições é por meio da uti-
lização de quantificadores. Quantificadores são frases do tipo “para todo”, “para cada” ou
“para algum”, isto é, frases que dizem “quantos objetos” apresentam determinada propriedade.
A área da Lógica que estuda predicados e quantificadores é denominada de cálculo de
predicados.
Quantificador Universal: é simbolizado por “∀” e lê-se “para todo”, “para qualquer” ou
“para cada”. Uma proposição do tipo “Para todo x, P (x) ”é simbolicamente representada por
(∀x)(P (x)).
Quantificador Existencial: simbolizado por “∃”, é lido como “existe um”; “há pelo menos
um”; “para ao menos um”; “para algum”. Uma proposição do tipo “Existe um x tal que P (x)”
pode ser escrita simbolicamente como (∃x)(P (x)).
Exemplos:
Simbolizar as proposições:
a) Para todo x, existe um y tal que x+ y < 0:
(∀x)(∃y)(x+ y < 0)
24
Método Dedutivo
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
37
b) Existe um x e existe um y tal que x.y é racional: (onde x.y indica o produto de x por y)
(∃x)(∃y)[(x.y) ∈ Q]
c) Para todo x, se x é negativo, então existe y positivo tal que x+ y = 0:
(∀x)[x < 0 → (∃y)(y > 0 ∧ x+ y = 0)]
d) Somente os médicos podem solicitar exames.
Indicando por M(x): x é médico e E(x): x pode solicitar exames, a sentença pode ser
reescrita como:
Para todo x, se x pode solicitar exames, então x é médico: (∀x)(E(x) → M(x)).
e) Todo dia que é ensolarado não é chuvoso.
Considerando os śımbolos predicados D(x): x é um dia; E(x): x é ensolarado e C(x): x é
chuvoso, então podemos reescrever a proposição como:
(∀x)[D(x) ∧ E(x) →∼ C(x)]
Negação de Sentenças Quantificadas
Consideremos a seguinte sentença: “Todos os insetos têm asas”. Sua negação será “Não é
verdade que todos os insetos têm asas”, ou “Alguns insetos não têm asas”, ou ainda, “Existem
insetos que não têm asas”.
A negação de “Existem crianças obesas” é “Nenhuma criança é obesa”, ou “Toda criança
não é obesa”, ou “Qualquer criança não é obesa.”
Resumindo:
∼ [(∀x)(P (x))] ≡ (∃x)(∼ P (x))
e
∼ [(∃x)(P (x))] ≡ (∀x)(∼ P (x))
Exemplo: Considere a sentença “Dados x, y ∈ R, se x < y, então x2 < y2.”
25
LÓGICA MATEMÁTICA
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E38
Considerações Finais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
39
a) Com o uso de śımbolos predicados e quantificadores apropriados, escrever simbolicamente
a sentença:
(∀x)(∀y)(x < y → x2 < y2).
b) Escrever, simbolicamente e em linguagem usual, a negação da sentença dada.
∼
(
(∀x)(∀y)(x < y → x2 < y2)
)
≡ (∃x) ∼
(
(∀y)(x < y → x2 < y2)
)
≡ (∃x)(∃y) ∼
(
(x < y → x2 < y2)
)
≡ (∃x)(∃y)
(
x < y∧ ∼ (x2 < y2)
)
≡ (∃x)(∃y)
(
x < y ∧ (x2 ≥ y2)
)
.
“Existem x e y, com x < y e (x2 ≥ y2)”.
Considerações Finais
O desenvolvimento de software é uma atividade de crescente importância na sociedade atual, e
a necessidade de soluções computadorizadas surgem nas mais diversas áreas do conhecimento
humano.
Ao iniciar o curso, o aluno é preparado para resolver pequenos problemas por meio da
programação e da estrutura de dados, para posteriormente tratar de problemas mais complexos,
o que exigirá maiores conhecimentos e habilidades. Para isso, o racioćınio lógico deve ser
desenvolvido, pois facilita a busca por uma solução que seja coerente, efetiva e eficaz, o que
geralmente não é tão simples.
Sendo a Lógica o estudo dos mecanismos do pensamento, é natural que ela ocupe um papel
de destaque na Computação, tendo aplicação em diversas áreas tais como banco de dados;
circuitos integrados; inteligência artificial; sistemas computacionais (hardware e software) e
sistemas distribúıdos. Como a Lógica possui uma linguagem simbólica própria, torna-se posśıvel
a utilização de recursos computacionais no tratamento de enunciados e argumentos, visto que
os computadores digitais se mostram bastante adequados à manipulação de śımbolos, enquanto
apresentam extrema dificuldade no tratamento de linguagem natural. Nesta unidade fizemos
estudo dos conectivos lógicos “e”, “ou” e “não”, oferecidos pela maioria das linguagens de
programação, e observamos que os valores-verdade de proposições compostas dependem dos
valores de seus componentes e dos conectivos usados. Também foi exemplificado como as
implicações e equivalências lógicas auxiliam na simplificação de expressões mais complexas,
permitindo que um código se torne mais simples de ser entendido e executado em menor tempo.
As linguagens de programação são constitúıdas em função da lógica de predicados, e a lógica
formal é essencial para o curso, dáı a importância do estudo dos tópicos dessa unidade.
26
Atividades de Autoestudo
1) Sabendo que p é uma proposição verdadeira, determine se as afirmações abaixo são ver-
dadeiras (V) ou falsas (F):
a) p ∧ q é verdadeira, qualquer que seja q;
b) p ∨ q é verdadeira, qualquer que seja q.
c) p ∧ q é verdadeira só se q for verdadeira.
d) p → q é falsa, qualquer que seja q.
e) p → q é verdadeira, quaisquer que sejam p e q.
f) p ↔ q é verdadeira só se q for verdadeira.
2) Sabendo que os valores lógicos das proposições p, q, r e s são respectivamente F, V, V e
F, determinar o valor lógico (V ou F) das seguintes proposições compostas:
a) (p ∧ (∼ q → q))∨ ∼ ((r ↔∼ q) → (q∧ ∼ r)).
b) (p ∧ q)∨ ∼ s →∼ (q ↔∼ r).
c) (p ∧ q −→ r) ∨ (∼ p ↔ q∨ ∼ r).
d) ∼ (r → (∼ r → s)).
3) Determine o valor lógico (V ou F) de cada uma das seguintes proposições, justificando a
resposta:
a) (p ↔ q)∧ ∼ r ; sabendo que V (p) = V e V (r) = V .
b) p ∧ q → p ∨ r ; sabendo que V (p) = V e V (r) = F .
c) (p →∼ q) ∧ (∼ p∧ ∼ r) ; sabendo que V (q) = F e V (r) = V .
4) Um conectivo muito muito importante para projetos de circuitos lógicos é o operador não
-e ou nand, que denotaremos por �, definido por p � q = ∼ (p ∧ q). De maneira análoga,
temos o operador não-ou ou nor, que denotaremos por �, definido por p � q = ∼ (p ∨ q).
Construa as tabelas-verdade dos operadores � e �.
5) Dê a negação das seguintes proposições:
a) Linux é um software livre e Pascal é uma linguagem de programacção.
b) Todos os homens são bons motoristas.
c) Se T é um trapézio, então T é um quadrilátero.
d) O processador é rápido, mas a impressora é lenta.
e) Se o processador é rápido, então a impressora é lenta.
f) Existem números pares que não são múltiplos de 2.
27
g) É suficiente cantar para estar vivo.
h) Toda solução de x2 − 6 = 0 é positiva.
i) Alguns inteiros são pares ou diviśıveis por 5.
j) Windows é um editor de textos e Pascal é uma planilha eletrônica.
6) Determine o valor-verdade (V) ou (F) de cada uma das seguintes proposições, con-
siderando R como conjunto universo:
a) (∀x)(∀y)(x+ 6 < y + 10).
b) (∀x)(∃y)(x.y não é par).
c) (∃x)(∀y)(x2 > y).
d) (∀x)(∃y)(x2 > y).
7) Use lógica proposicional para provar a validade dos seguintes argumentos, indicando as
proposições envolvidas:
a) (Gersting, 2004 p.23) “Se segurança é um problema, então o controle será aumentado. Se
segurança não é um problema, então os negócios na Internet irão aumentar. Portanto, se
o controle não for aumentado, os negócios na Internet crescerão.”
b) “Se o produto é bom, ganha o concurso. Se o produto não é bom, o ĺıder do grupo
é culpado. Se o produto ganha o concurso, a equipe fica contente. A equipe não está
contente. Logo, o ĺıder é culpado.”
Leitura Complementar
O que é Lógica? Aristóteles, na Grécia Antiga, foi um dos pioneiros da chamada lógica for-
mal, apresentando regras para que um racioćınio esteja encadeado corretamente, chegando a
conclusões verdadeiras a partir de premissas verdadeiras.
No entanto, no século XIX, alguns matemáticos e filósofos - dentre eles George Boole (1815-
1864), Augustus De Morgan (1806-1871), Gottlob Frege (1848-1925), Bertrand Russell (1872-
1970) e Alfred North Whitehead (1861-1947) - começaram a perceber que a lógica formal era
insuficiente para alcançar o rigor necessário no estudo da matemática, pois essa se apoiava
na linguagem natural - aquela que utilizamos no cotidiano, como a ĺıngua portuguesa-, que é
bastante imprecisa e tornaria a lógica vulnerável a erros de deduções. Começaram, então, a criar
a lógica simbólica, formada por uma linguagem estrita e universal, constitúıda por śımbolos
espećıficos.
Entendemos por linguagem um conjunto de śımbolos (geralmente visuais ou sonoros) que,
dependendo da maneira como são dispostos em sequência, apresentam signicados distintos.
28
41 
g) É suficiente cantar para estar vivo.
h) Toda solução de x2 − 6 = 0 é positiva.
i) Alguns inteiros são pares ou diviśıveis por 5.
j) Windows é um editor de textos e Pascal é uma planilha eletrônica.
6) Determine o valor-verdade (V) ou (F) de cada uma das seguintes proposições, con-
siderando R como conjunto universo:
a) (∀x)(∀y)(x+ 6 < y + 10).
b) (∀x)(∃y)(x.y não é par).
c) (∃x)(∀y)(x2 > y).
d) (∀x)(∃y)(x2 > y).
7) Use lógica proposicional para provar a validade dos seguintes argumentos, indicando as
proposições envolvidas:
a) (Gersting, 2004 p.23) “Se segurança é um problema, então o controle será aumentado. Se
segurança não é um problema, então os negócios na Internet irão aumentar. Portanto, se
o controle não for aumentado, os negócios na Internet crescerão.”
b) “Se o produto é bom, ganha o concurso. Se o produto não é bom, o ĺıder do grupo
é culpado. Se o produto ganha o concurso, a equipe fica contente. A equipe não está
contente. Logo, o ĺıder é culpado.”
Leitura Complementar
O que é Lógica? Aristóteles, na Grécia Antiga, foi um dos pioneiros da chamada lógica for-
mal, apresentando regras para que um racioćınio esteja encadeado corretamente, chegando a
conclusões verdadeiras a partir de premissas verdadeiras.
No entanto, no século XIX, alguns matemáticos e filósofos - dentre eles George Boole (1815-
1864), Augustus De Morgan (1806-1871), Gottlob Frege (1848-1925), Bertrand Russell (1872-
1970) e Alfred North Whitehead (1861-1947) - começaram a perceber que a lógica formal era
insuficiente para alcançar o rigor necessário no estudo da matemática, pois essa se apoiava
na linguagem natural - aquela que utilizamos no cotidiano, como a ĺıngua portuguesa -, que é
bastante imprecisa e tornaria a lógica vulnerável a erros de deduções. Começaram, então, a criar
a lógica simbólica, formada por uma linguagem estrita e universal, constitúıda por śımbolos
espećıficos.
Entendemos por linguagem um conjunto de śımbolos (geralmente visuais ou sonoros) que,
dependendo da maneira como são dispostos em sequência, apresentam signicados distintos.
28
Por exemplo, um idioma pode ser visto como duas linguagens: uma em que os śımbolos usados
são sons (a linguagem falada) e outra em que os śımbolos são visuais (a linguagem escrita).
Mas na linguagem escrita, por exemplo, nem todo agrupamento de letras forma uma palavra
existente, assim como nem todo agrupamento de palavras forma uma frase bem estruturada. Se
alguém domina a ĺıngua escrita de um determinado idioma, é capaz de compreender quando um
agrupamento de letras forma uma palavra, e quando um agrupamento de palavras forma uma
frase gramaticalmente correta. Mas isso não será suficiente para qualquer forma de comunicação
se não houver nessas frases outro fator essencial na linguagem: o significado.
Percebemos, então, que toda linguagem é constitúıda de dois elementos. A sintaxe consiste
no conjunto de śımbolos usados e nas regras de formação de palavras e frases a partir desses
śımbolos. A semântica de uma linguagem é a forma como esses śımbolos, palavras e frases
adquirem um significado, uma interpretação em algum universo definido. Estabelecer uma lin-
guagem adequada e bem estruturada é fundamental para resolvermos e entendermos problemas
dos mais variados objetos de estudo.
A lógica surgiu basicamente com dois propósitos: o de formalizar as “leis do pensamento”
(essa expressão foi utilizada por outro pioneiro da lógica: George Boole), que utilizamos cons-
tantemente para argumentar e chegar a conclusões corretas a partir de premissas dadas, e o
de estabelecer uma linguagem mais apropriada para a matemática e a filosofia, para evitar as
armadilhas de uma linguagem imprecisa.
Para alcançar esse propósito, a formação de “palavras” e “frases” na lógica deve seguir
regras objetivas, para que possamos limitar a linguagem ter controle sobre ela. Isto é, para
que possamos estudar propriedades gerais sobre as sentenças lógicas, o que é muito dif́ıcil de se
conseguir na linguagem natural. Dizemos, então, que a lógica possui uma sintaxe controlada,
livre de contexto, e por isso tem um poder expressivo muito inferior à linguagem natural.
Ela é insuficiente para descrevermos sentimentos e outros pensamentos mais complexos, e
por esse motivo não pode substituir a linguagem cotidiana.
Por outro lado, quando estudamos assuntos mais restritos, com menos complexidade, porém
com maior exigência de rigor - como é o caso da matemática - a lógica faz-se necessária.
A linguagem natural ganha em expressividade, e a lógica ganha em rigor. A linguagem
natural é útil para a visão panorâmica, e a lógica é útil para a visão detalhada.
Fonte: Fajardo. Lógica Matemática (online).
Material Complementar: na Web
Veja neste artigo as principais informações sobre a Lógica, seus conceitos, usos e aplicações,
como no desenvolvimento de algoritmos e na programação de computadores.
Lógica: uma ferramenta indispensável na programação de computadores, dispońıvel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-
29
Por exemplo, um idioma pode ser visto como duas linguagens: uma em que os śımbolos usados
são sons (a linguagem falada) e outra em que os śımbolos são visuais (a linguagem escrita).
Mas na linguagem escrita, por exemplo, nem todo agrupamento de letras forma uma palavra
existente, assim como nem todo agrupamento de palavras forma uma frase bem estruturada. Se
alguém domina a ĺıngua escrita de um determinado idioma, é capaz de compreender quando um
agrupamento de letras forma uma palavra, e quando um agrupamento de palavras forma uma
frase gramaticalmente correta. Mas isso não será suficiente para qualquer forma de comunicação
se não houver nessas frases outro fator essencial na linguagem: o significado.
Percebemos, então, que toda linguagem é constitúıda de dois elementos. A sintaxe consiste
no conjunto de śımbolos usados e nas regras de formação de palavras e frases a partir desses
śımbolos. A semântica de uma linguagem é a forma como esses śımbolos, palavras e frases
adquirem um significado, uma interpretação em algum universo definido. Estabelecer uma lin-
guagem adequada e bem estruturada é fundamental para resolvermos e entendermos problemas
dos mais variados objetos de estudo.
A lógica surgiu basicamente com dois propósitos: o de formalizar as “leis do pensamento”
(essa expressão foi utilizada por outro pioneiro da lógica: George Boole), que utilizamos cons-
tantemente para argumentar e chegar a conclusões corretas a partir de premissas dadas, e o
de estabelecer uma linguagem mais apropriada para a matemática e a filosofia, para evitar as
armadilhas de uma linguagem imprecisa.
Para alcançar esse propósito, a formação de “palavras” e “frases” na lógica deve seguir
regras objetivas, para que possamos limitar a linguagem ter controle sobre ela. Isto é, para
que possamos estudar propriedades gerais sobre as sentenças lógicas, o que é muito dif́ıcil de se
conseguir na linguagem natural. Dizemos, então, que a lógica possui uma sintaxe controlada,
livre de contexto, e por isso tem um poder expressivo muito inferior à linguagem natural.
Ela é insuficiente para descrevermos sentimentos e outros pensamentos mais complexos, e
por esse motivo não pode substituir a linguagem cotidiana.
Por outro lado, quando estudamos assuntos mais restritos, com menos complexidade, porémcom maior exigência de rigor - como é o caso da matemática - a lógica faz-se necessária.
A linguagem natural ganha em expressividade, e a lógica ganha em rigor. A linguagem
natural é útil para a visão panorâmica, e a lógica é útil para a visão detalhada.
Fonte: Fajardo. Lógica Matemática (online).
Material Complementar: na Web
Veja neste artigo as principais informações sobre a Lógica, seus conceitos, usos e aplicações,
como no desenvolvimento de algoritmos e na programação de computadores.
Lógica: uma ferramenta indispensável na programação de computadores, dispońıvel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-
29
Por exemplo, um idioma pode ser visto como duas linguagens: uma em que os śımbolos usados
são sons (a linguagem falada) e outra em que os śımbolos são visuais (a linguagem escrita).
Mas na linguagem escrita, por exemplo, nem todo agrupamento de letras forma uma palavra
existente, assim como nem todo agrupamento de palavras forma uma frase bem estruturada. Se
alguém domina a ĺıngua escrita de um determinado idioma, é capaz de compreender quando um
agrupamento de letras forma uma palavra, e quando um agrupamento de palavras forma uma
frase gramaticalmente correta. Mas isso não será suficiente para qualquer forma de comunicação
se não houver nessas frases outro fator essencial na linguagem: o significado.
Percebemos, então, que toda linguagem é constitúıda de dois elementos. A sintaxe consiste
no conjunto de śımbolos usados e nas regras de formação de palavras e frases a partir desses
śımbolos. A semântica de uma linguagem é a forma como esses śımbolos, palavras e frases
adquirem um significado, uma interpretação em algum universo definido. Estabelecer uma lin-
guagem adequada e bem estruturada é fundamental para resolvermos e entendermos problemas
dos mais variados objetos de estudo.
A lógica surgiu basicamente com dois propósitos: o de formalizar as “leis do pensamento”
(essa expressão foi utilizada por outro pioneiro da lógica: George Boole), que utilizamos cons-
tantemente para argumentar e chegar a conclusões corretas a partir de premissas dadas, e o
de estabelecer uma linguagem mais apropriada para a matemática e a filosofia, para evitar as
armadilhas de uma linguagem imprecisa.
Para alcançar esse propósito, a formação de “palavras” e “frases” na lógica deve seguir
regras objetivas, para que possamos limitar a linguagem ter controle sobre ela. Isto é, para
que possamos estudar propriedades gerais sobre as sentenças lógicas, o que é muito dif́ıcil de se
conseguir na linguagem natural. Dizemos, então, que a lógica possui uma sintaxe controlada,
livre de contexto, e por isso tem um poder expressivo muito inferior à linguagem natural.
Ela é insuficiente para descrevermos sentimentos e outros pensamentos mais complexos, e
por esse motivo não pode substituir a linguagem cotidiana.
Por outro lado, quando estudamos assuntos mais restritos, com menos complexidade, porém
com maior exigência de rigor - como é o caso da matemática - a lógica faz-se necessária.
A linguagem natural ganha em expressividade, e a lógica ganha em rigor. A linguagem
natural é útil para a visão panorâmica, e a lógica é útil para a visão detalhada.
Fonte: Fajardo. Lógica Matemática (online).
Material Complementar: na Web
Veja neste artigo as principais informações sobre a Lógica, seus conceitos, usos e aplicações,
como no desenvolvimento de algoritmos e na programação de computadores.
Lógica: uma ferramenta indispensável na programação de computadores, dispońıvel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-
29
43 
computadores/28386>. Acesso em: 31 mar. 2015.
Outro artigo, a saber, O envolvimento da Matemática com a criação dos Computadores, de
Elza Figueiredo Chagas, mostra a importância de conceitos matemáticos na criação de modelos
de máquinas automáticas, em especial, a criação dos computadores, tendo como base o modelo
da Máquina de Turing.
Esse artigo está dispońıvel em <http://www.ipv.pt/millenium/Millenium25/25 28.htm>.
Acesso em: 16 mar. 2015.
Material Complementar: Livro
Iniciação à Lógica Matemática
Autor: Edgard de Alencar Filho
Editora: Nobel
Sinopse: Esse livro aborda diretamente a iniciação à
lógica matemática, de uma forma simples e aprofundada
no assunto.
30
computadores/28386>. Acesso em: 31 mar. 2015.
Outro artigo, a saber, O envolvimento da Matemática com a criação dos Computadores, de
Elza Figueiredo Chagas, mostra a importância de conceitos matemáticos na criação de modelos
de máquinas automáticas, em especial, a criação dos computadores, tendo como base o modelo
da Máquina de Turing.
Esse artigo está dispońıvel em <http://www.ipv.pt/millenium/Millenium25/25 28.htm>.
Acesso em: 16 mar. 2015.
Material Complementar: Livro
Iniciação à Lógica Matemática
Autor: Edgard de Alencar Filho
Editora: Nobel
Sinopse: Esse livro aborda diretamente a iniciação à
lógica matemática, de uma forma simples e aprofundada
no assunto.
30
Por exemplo, um idioma pode ser visto como duas linguagens: uma em que os śımbolos usados
são sons (a linguagem falada) e outra em que os śımbolos são visuais (a linguagem escrita).
Mas na linguagem escrita, por exemplo, nem todo agrupamento de letras forma uma palavra
existente, assim como nem todo agrupamento de palavras forma uma frase bem estruturada. Se
alguém domina a ĺıngua escrita de um determinado idioma, é capaz de compreender quando um
agrupamento de letras forma uma palavra, e quando um agrupamento de palavras forma uma
frase gramaticalmente correta. Mas isso não será suficiente para qualquer forma de comunicação
se não houver nessas frases outro fator essencial na linguagem: o significado.
Percebemos, então, que toda linguagem é constitúıda de dois elementos. A sintaxe consiste
no conjunto de śımbolos usados e nas regras de formação de palavras e frases a partir desses
śımbolos. A semântica de uma linguagem é a forma como esses śımbolos, palavras e frases
adquirem um significado, uma interpretação em algum universo definido. Estabelecer uma lin-
guagem adequada e bem estruturada é fundamental para resolvermos e entendermos problemas
dos mais variados objetos de estudo.
A lógica surgiu basicamente com dois propósitos: o de formalizar as “leis do pensamento”
(essa expressão foi utilizada por outro pioneiro da lógica: George Boole), que utilizamos cons-
tantemente para argumentar e chegar a conclusões corretas a partir de premissas dadas, e o
de estabelecer uma linguagem mais apropriada para a matemática e a filosofia, para evitar as
armadilhas de uma linguagem imprecisa.
Para alcançar esse propósito, a formação de “palavras” e “frases” na lógica deve seguir
regras objetivas, para que possamos limitar a linguagem ter controle sobre ela. Isto é, para
que possamos estudar propriedades gerais sobre as sentenças lógicas, o que é muito dif́ıcil de se
conseguir na linguagem natural. Dizemos, então, que a lógica possui uma sintaxe controlada,
livre de contexto, e por isso tem um poder expressivo muito inferior à linguagem natural.
Ela é insuficiente para descrevermos sentimentos e outros pensamentos mais complexos, e
por esse motivo não pode substituir a linguagem cotidiana.
Por outro lado, quando estudamos assuntos mais restritos, com menos complexidade, porém
com maior exigência de rigor - como é o caso da matemática - a lógica faz-se necessária.
A linguagem natural ganha em expressividade, e a lógica ganha em rigor. A linguagem
natural é útil para a visão panorâmica, e a lógica é útil para a visão detalhada.
Fonte: Fajardo. Lógica Matemática (online).
Material Complementar: na Web
Veja neste artigo as principais informações sobre a Lógica, seus conceitos, usos e aplicações,como no desenvolvimento de algoritmos e na programação de computadores.
Lógica: uma ferramenta indispensável na programação de computadores, dispońıvel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-
29
computadores/28386>. Acesso em: 31 mar. 2015.
Outro artigo, a saber, O envolvimento da Matemática com a criação dos Computadores, de
Elza Figueiredo Chagas, mostra a importância de conceitos matemáticos na criação de modelos
de máquinas automáticas, em especial, a criação dos computadores, tendo como base o modelo
da Máquina de Turing.
Esse artigo está dispońıvel em <http://www.ipv.pt/millenium/Millenium25/25 28.htm>.
Acesso em: 16 mar. 2015.
Material Complementar: Livro
Iniciação à Lógica Matemática
Autor: Edgard de Alencar Filho
Editora: Nobel
Sinopse: Esse livro aborda diretamente a iniciação à
lógica matemática, de uma forma simples e aprofundada
no assunto.
30
MATERIAL COMPLEMENTAR
U
N
ID
A
D
E II
Professora Me. Edvania Gimenes de Oliveira Godoy
TEORIA DOS CONJUNTOS
Objetivos de Aprendizagem
 ■ Perceber situações em que se aplica a noção de conjunto.
 ■ Usar a notação da teoria dos conjuntos.
 ■ Descrever conjuntos.
 ■ Reconhecer os tipos de conjuntos.
 ■ Relacionar elemento e conjunto e subconjunto e conjunto.
 ■ Efetuar operações com conjuntos.
 ■ Perceber a estreita relação entre álgebra de conjuntos e lógica.
 ■ Compreender e aplicar o princípio da inclusão e exclusão para 
determinar o número de elementos na reunião de conjuntos.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Conceitos Primitivos
 ■ Descrição de Conjuntos
 ■ Igualdade de Conjuntos
 ■ Tipos de Conjuntos
 ■ Subconjuntos
 ■ Conjuntos das Partes
 ■ Diagramas de Venn-Euler
 ■ Operações com Conjuntos - 
União, Interseção e Diferença
 ■ Produto Cartesiano
 ■ Relação entre a Lógica e Álgebra 
de Conjuntos
 ■ Princípio da Inclusão e Exclusão
INTRODUÇÃOIntrodução
A teoria de conjuntos é considerada a base da Matemática Moderna, sendo que muitos conceitos
em Matemática e outras ciências podem ser expressos de maneira conveniente na linguagem de
conjuntos. Como a teoria dos conjuntos é indiviśıvel da lógica, na qual a Informática e Ciência
da Computação têm as suas ráızes, ela é amplamente aplicada nessas áreas, como em banco de
dados; circuitos integrados; inteligência artificial; sistemas distribúıdos e processamento digital
de imagens, por exemplo.
A teoria dos conjuntos é uma teoria relativamente recente, desenvolvida pelo matemático
russo Georg Cantor (1845-1917), que definiu conjunto como sendo “uma coleção de objetos
claramente distingúıveis uns dos outros, chamados elementos, e que pode ser pensada como um
todo”. Utilizando-se dessa teoria, Cantor e seu colega Richard Dedekind (1831-1916) definiram
e classificaram tipos diferentes de infinito. Cantor se tornou a primeira pessoa a entender
realmente o significado do infinito e a dar-lhe precisão matemática. Ele mostrou que não
existia apenas um infinito, mas um número infinito de infinitos! Além da definição rigorosa de
infinito e de muitas outras contribuições, a teoria dos conjuntos unificou a linguagem em todos
os ramos da Matemática.
Utilizamos com muita frequência a noção de conjuntos em nossa vida diária. Sempre estamos
relacionando objetos a uma determinada coleção: jogadores a um time; passageiros a uma linha
de ônibus; letras ao alfabeto; cidades a uma região do páıs; planetas ao Sistema Solar; população
de peixes de um reservatório etc. Em computação, uma linguagem de programação pode ser
vista como o conjunto de todos os seus programas posśıveis.
O conhecimento da teoria dos conjuntos deverá facilitar a sua capacidade de pensar abstra-
tamente, fornecendo-lhe uma base para melhor compreensão e análise para as novas ideias que
possam surgir em torno dos conceitos da ciência da computação.
Conceitos Primitivos
Em matemática, uma noção é estabelecida mediante sua
definição, que por sua vez precisa de outras noções estab-
elecidas anteriormente. Dessa forma, existe a necessidade
de um ponto de partida para as definições; somos obriga-
dos a adotar, sem definir, as “noções primeiras”, que são
chamadas noções primitivas, ou conceitos primitivos.
Os conceitos primitivos da Teoria de Conjuntos são:
• Conjunto
• Elemento
• Relação de pertinência.
2
Introdução
A teoria de conjuntos é considerada a base da Matemática Moderna, sendo que muitos conceitos
em Matemática e outras ciências podem ser expressos de maneira conveniente na linguagem de
conjuntos. Como a teoria dos conjuntos é indiviśıvel da lógica, na qual a Informática e Ciência
da Computação têm as suas ráızes, ela é amplamente aplicada nessas áreas, como em banco de
dados; circuitos integrados; inteligência artificial; sistemas distribúıdos e processamento digital
de imagens, por exemplo.
A teoria dos conjuntos é uma teoria relativamente recente, desenvolvida pelo matemático
russo Georg Cantor (1845-1917), que definiu conjunto como sendo “uma coleção de objetos
claramente distingúıveis uns dos outros, chamados elementos, e que pode ser pensada como um
todo”. Utilizando-se dessa teoria, Cantor e seu colega Richard Dedekind (1831-1916) definiram
e classificaram tipos diferentes de infinito. Cantor se tornou a primeira pessoa a entender
realmente o significado do infinito e a dar-lhe precisão matemática. Ele mostrou que não
existia apenas um infinito, mas um número infinito de infinitos! Além da definição rigorosa de
infinito e de muitas outras contribuições, a teoria dos conjuntos unificou a linguagem em todos
os ramos da Matemática.
Utilizamos com muita frequência a noção de conjuntos em nossa vida diária. Sempre estamos
relacionando objetos a uma determinada coleção: jogadores a um time; passageiros a uma linha
de ônibus; letras ao alfabeto; cidades a uma região do páıs; planetas ao Sistema Solar; população
de peixes de um reservatório etc. Em computação, uma linguagem de programação pode ser
vista como o conjunto de todos os seus programas posśıveis.
O conhecimento da teoria dos conjuntos deverá facilitar a sua capacidade de pensar abstra-
tamente, fornecendo-lhe uma base para melhor compreensão e análise para as novas ideias que
possam surgir em torno dos conceitos da ciência da computação.
Conceitos Primitivos
Em matemática, uma noção é estabelecida mediante sua
definição, que por sua vez precisa de outras noções estab-
elecidas anteriormente. Dessa forma, existe a necessidade
de um ponto de partida para as definições; somos obriga-
dos a adotar, sem definir, as “noções primeiras”, que são
chamadas noções primitivas, ou conceitos primitivos.
Os conceitos primitivos da Teoria de Conjuntos são:
• Conjunto
• Elemento
• Relação de pertinência.
2
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
47
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E48
Não se pode definir um desses conceitos sem fazer referência aos demais.
Com efeito:
• Um conjunto pode ser considerado uma coleção não ordenada e sem repetição de objetos;
uma reunião de elementos segundo uma caracteŕıstica comum.
• Um elemento é um objeto que pode estar no conjunto ou não.
• A relação de pertinência indica se um elemento pertence a um conjunto ou não. Se o
elemento pertence ao conjunto é porque possui a caracteŕıstica que define aquele conjunto.
Notações:
• Conjuntos: letras latinas maiúsculas: A, B, C,...
• Elementos: letras latinas minúsculas: a, b, c, x, y, ...
• Pertinência: ∈
Assim, dizemos que p ∈ A para afirmar que p é um elemento do conjunto A, e b /∈A para
indicar que b não é um elemento do conjunto A.
Descrição de conjuntos
Podemos descrever um conjunto de várias formas. As mais comuns são:
• Pela listagem de seus elementos:
Escrevemos seus elementos entre chaves, separados por v́ırgulas e sem repetição. Só é
utilizado quando o número de elementos do conjunto for pequeno.
Por exemplo, se A é o conjunto dos meses do ano que começam com a letra J, então
podemos escrever:
A = {janeiro, junho, julho}
• Pela caracteŕıstica:
Descrevemos as propriedades que caracterizam os elementos do conjunto.
Para o exemplo anterior:
A = {x | x é mês do ano que começa com a letra J}.
• Por diagrama:
Os elementos são simbolizados por pontos interiores a uma região plana, delimitada por
uma curva fechada.
Por exemplo, o conjunto B = {0, 5, 8} pode ser representado por:
3
Seguem outros exemplos de representação de conjuntos, considerando uma propriedade dos
elementos e pela enumeração de seus elementos:
a) A = {x| x é inteiro e− 2 ≤ x < 4} = {−2,−1, 0, 1, 2, 3}.
b) B = {x| x2 − 3x = 0} = {0, 3}.
c) C = {x| x é um inteiro ı́mpar, x > 0} = {1, 3, 5, 7, 9, 11, ...}.
d) D = {x | x é capital de Pernambuco}= {Recife}.
Alguns conjuntos aparecerão com frequência e serão representados com śımbolos especiais:
N= conjunto dos números naturais:{0, 1, 2, 3, ...}.
Z= conjunto dos números inteiros: {..., -2, -1, 0, 1, 2, 3, ...}.
Q= conjunto dos números racionais.
Q é o conjunto de todas as frações com representação decimal finita ou infinita periódica.
Exemplos: 7 =
7
1
;
3
4
= 0, 75 e
11
9
= 1, 22222... são números racionais
R= conjunto dos números reais.
R é o conjunto de todos os números inteiros, racionais e irracionais. Números irra-
cionais são os decimais infinitos e não periódicos, por exemplo
√
2 = 1, 4142135...; π =
3, 1415926535...
C= conjunto dos números complexos.
C é definido como o conjunto de todos os números da forma a + bi, sendo a, b números
reais e i2 = −1.
4
Seguem outros exemplos de representação de conjuntos, considerando uma propriedade dos
elementos e pela enumeração de seus elementos:
a) A = {x| x é inteiro e− 2 ≤ x < 4} = {−2,−1, 0, 1, 2, 3}.
b) B = {x| x2 − 3x = 0} = {0, 3}.
c) C = {x| x é um inteiro ı́mpar, x > 0} = {1, 3, 5, 7, 9, 11, ...}.
d) D = {x | x é capital de Pernambuco}= {Recife}.
Alguns conjuntos aparecerão com frequência e serão representados com śımbolos especiais:
N= conjunto dos números naturais:{0, 1, 2, 3, ...}.
Z= conjunto dos números inteiros: {..., -2, -1, 0, 1, 2, 3, ...}.
Q= conjunto dos números racionais.
Q é o conjunto de todas as frações com representação decimal finita ou infinita periódica.
Exemplos: 7 =
7
1
;
3
4
= 0, 75 e
11
9
= 1, 22222... são números racionais
R= conjunto dos números reais.
R é o conjunto de todos os números inteiros, racionais e irracionais. Números irra-
cionais são os decimais infinitos e não periódicos, por exemplo
√
2 = 1, 4142135...; π =
3, 1415926535...
C= conjunto dos números complexos.
C é definido como o conjunto de todos os números da forma a + bi, sendo a, b números
reais e i2 = −1.
4
Descricão de Conjuntos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
49
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E50
Igualdade de Conjuntos
Sejam A e B conjuntos. Diremos que o conjunto A é
igual ao conjunto B, denotado por A = B, se, e so-
mente se, todo elemento de A for um elemento de B,
e todo elemento de B for um elemento de A. Simbolica-
mente:
A = B ⇔ (∀x)[(x ∈ A ⇒ x ∈ B) ∧ (x ∈ B ⇒ x ∈ A)].
Por exemplo, se A = {−1, 3, 7} e B = {7,−1, 3, 7, 3}, então
A = B.
Se um conjunto A tiver ao menos um elemento que não pertença ao conjunto B (ou vice
-versa), dizemos A �= B.
Os conjuntos {a} e {{a}} são iguais?
(Resposta no gabrito)
#REFLITA #
“O pensamento é a presença do infinito na mente humana.” (Emilio Castelar)
FIM REFLITA
Tipos de Conjuntos
• Conjunto Universo: É o conjunto de todos os entes que são considerados como elementos
no contexto em que estamos trabalhando.
Notação: U
Exemplo: Quando falamos sobre pessoas, o conjunto universo compõe-se de todas as
pessoas do mundo.
• Conjunto Vazio: É o conjunto que não contém elementos. Logo, existe apenas um con-
junto vazio.
5
Notação: ∅ ou { }.
Exemplo: A = {x | x é dinossauro vivo}.
• Conjunto Unitário: Possui apenas um elemento.
Exemplo: B = {x ∈ R | 2x+ 4 = −1} ⇒ B =
{
−5
2
}
.
• Conjunto Finito: Podemos enumerar seus elementos.
Exemplo: C = {x ∈ Z | x é par e 2 ≤ x < 10} ⇒ C = {2, 4, 6, 8}.
• Conjunto Infinito: Não é posśıvel enumerar seus elementos.
Exemplo: D = {x ∈ N | x é múltiplo de 5} = {0, 5, 10, 15, 20, 25, ...}.
Observação:
Para representar o conjunto vazio, usamos o śımbolo ∅ ou { }, mas nunca o śımbolo {∅},
que é um conjunto unitário cujo elemento é o conjunto vazio.
Subconjuntos
Um conjunto A é um subconjunto de um conjunto B, se todo elemento de A for também um
elemento de B. Podemos dizer que A está contido em B ou que B contém A, o que será denotado
por:
A ⊆ B ou B ⊇ A.
Se A �= B, ou seja, se existe pelo menos um elemento de B que não é elemento de A, então
A é um subconjunto próprio de B, denotando A ⊂ B ou B ⊃ A.
A ⊆ B ⇔ (∀x)(x ∈ A → x ∈ B).
Se A não for subconjunto de B, escrevemos A �⊂ B.
Podemos representar que A ⊂ B pelo seguinte diagrama:
6
Tipos de Conjuntos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
51
Nos diagramas abaixo, temos a representação de B como subconjunto de A e também
representações de casos em que não existe a relação de inclusão entre A e B :
Exemplos:
Se A= {x | x é vogal} e B= {y y é letra do alfabeto}, então temos que A⊂ B.
Se A= {1, 3, 4, 5, 7, 8}; B= {0, 2, 3, 5, 7} e C= {3, 7}, temos que C⊂ A e C⊂ B, mas B �
⊂ A, pois os elementos 0 e 2 pertencem a B, mas não pertencem a A.
Resultados Importantes
1. A = B ⇔ (A ⊆ B ∧ B ⊆ A).
2. A ⊆ A, para qualquer conjunto A.
3. ∅ ⊂ A, para qualquer conjunto A.
7
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E52
Analisemos o resultado (3), que afirma que o conjunto vazio é subconjunto de qualquer conjunto.
Para verificar que essa afirmação é verdadeira, devemos provar que, para todo elemento x
pertencente ao conjunto vazio, x pertence a A. Mas como x ∈ ∅ é sempre falsa, pois não existe
elemento no conjunto vazio, então a condicional (∀x)(x ∈ ∅ → x ∈ A) é verdadeira. (Lembrar
que uma condicional p → q é verdadeira se V(p) é F e V(q) é V.)
Conjunto das Partes
Dado um conjunto A, podemos criar um novo conjunto cujos elementos sejam todos os subcon-
juntos de A. Essa classe (ou novo conjunto) é chamado conjunto das partes de A ou conjunto
potência de A e será denotado P (A).
O conjunto P (A) conterá, pelo menos, ∅ e A, visto que ∅ ⊆ A e A ⊆ A.
Exemplos:
a) Se A = {2, 3, 5}, então P (A) = {∅, {2}, {3}, {5}, {2, 3}, {2, 5}, {3, 5}, {2, 3, 5}}.
Observamos que {5}, {3, 5} e {2, 3, 5}, por exemplo, são elementos de P (A). Logo,{5} ∈
P (A), {3, 5} ∈ P (A) e {2, 3, 5} ∈ P (A), mas não temos que {5} ⊆ P (A), {3, 5} ⊆ P (A) ou
{2, 3, 5} ⊆ P (A). Observemos também que ∅ ⊂ A e ∅ ∈ A.
b) Se B = {4, b}, então P (B) = {∅, {4}, {b}, {4, b}}.
b) Se C = ∅, então P (C) = {∅}.
d) Se D = {∅}, então P (D) = {∅, {∅}}.
Podemos notar que existe uma relação entre o número de elementos de A e o número de
elementos de P (A) da seguinte forma:
“Se A é um conjunto com n elementos, então o número de elementos de P (A) será 2n”.
Para os exemplos anteriores,
• A = {2, 3, 5} tem 3 elementos, e P (A) tem 23 = 8 elementos.
• B = {4, b} tem2 elementos, e P (B) tem 22 = 4 elementos.
• C = ∅ tem 0 elementos, e P (C), 20 = 1 elemento.
• D = {∅} tem 1 elemento, e P (D), 21 = 2 elementos.
8
Tipos de Conjuntos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
53
Diagramas de Venn-Euler
Os diagramas de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
conjuntos. Trata-se de uma representação de conjuntos por meio de áreas delimitadas por
curvas no plano.
O conjunto universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
uma área limitada por curvas fechadas, geralmente ćırculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
John Venn (1834-1923), matemático inglês, desenvolveu e am-
pliou a lógica matemática de George Boole, tornando-se con-
hecido pelos seus diagramas para representar uniões e interseções
entre conjunto.
Fonte: John...(online)
Leonard Euler (1707-1783), matemático suiço, representava
conjuntos de objetos por ćırculos no plano, e por isso esses dia-
gramas eram chamados de ćırculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
Operações com Conjuntos
Em aritmética, podemos realizar operações de adição, multi-
plicação e subtração de dois ou mais números. Nos conjuntos, as
operações de união, interseção e diferença, que serão vistas neste
tópico, se comportam de maneira semelhante às operações arit-
méticas de adição, multiplicação e subtração, respectivamente.
As operações entre conjuntos são formas de criar novos con-
juntos a partir de conjuntos já existentes.
9
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E54
Diagramas de Venn-Euler
Os diagramas de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
conjuntos. Trata-se de uma representação de conjuntos por meio de áreas delimitadas por
curvas no plano.
O conjunto universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
uma área limitada por curvas fechadas, geralmente ćırculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
John Venn (1834-1923), matemático inglês, desenvolveu e am-
pliou a lógica matemática de George Boole, tornando-se con-
hecido pelos seus diagramas para representar uniões e interseções
entre conjunto.
Fonte: John...(online)
Leonard Euler (1707-1783), matemático suiço, representava
conjuntos de objetos por ćırculos no plano, e por isso esses dia-
gramas eram chamados de ćırculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
Operações com Conjuntos
Em aritmética, podemos realizar operações de adição, multi-
plicação e subtração de dois ou mais números. Nos conjuntos, as
operações de união, interseção e diferença, que serão vistas neste
tópico, se comportam de maneira semelhante às operações arit-
méticas de adição, multiplicação e subtração, respectivamente.
As operações entre conjuntos são formas de criar novos con-
juntos a partir de conjuntos já existentes.
9
Diagramas de Venn-Euler
Os diagramas de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
conjuntos. Trata-se de uma representação de conjuntos por meio de áreas delimitadas por
curvas no plano.
O conjunto universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
uma área limitada por curvas fechadas, geralmente ćırculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
John Venn (1834-1923), matemático inglês, desenvolveu e am-
pliou a lógica matemática de George Boole, tornando-se con-
hecido pelos seus diagramas para representar uniões e interseções
entre conjunto.
Fonte: John...(online)
Leonard Euler (1707-1783), matemático suiço, representava
conjuntos de objetos por ćırculos no plano, e por isso esses dia-
gramas eram chamados de ćırculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
Operações com Conjuntos
Em aritmética, podemos realizar operações de adição, multi-
plicação e subtração de dois ou mais números. Nos conjuntos, as
operações de união, interseção e diferença, que serão vistas neste
tópico, se comportam de maneira semelhante às operações arit-
méticas de adição, multiplicação e subtração, respectivamente.
As operações entre conjuntos são formas de criar novos con-
juntos a partir de conjuntos já existentes.
9
Diagramas de Venn-Euler
Os diagramas de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
conjuntos. Trata-se de uma representação de conjuntos por meio de áreas delimitadas por
curvas no plano.
O conjunto universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
uma área limitada por curvas fechadas, geralmente ćırculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
John Venn (1834-1923), matemático inglês, desenvolveu e am-
pliou a lógica matemática de George Boole, tornando-se con-
hecido pelos seus diagramas para representar uniões e interseções
entre conjunto.
Fonte: John...(online)
Leonard Euler (1707-1783), matemático suiço, representava
conjuntos de objetos por ćırculos no plano, e por isso esses dia-
gramas eram chamados de ćırculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
Operações com Conjuntos
Em aritmética, podemos realizar operações de adição, multi-
plicação e subtração de dois ou mais números. Nos conjuntos, as
operações de união, interseção e diferença, que serão vistas neste
tópico, se comportam de maneira semelhante às operações arit-
méticas de adição, multiplicação e subtração, respectivamente.
As operações entre conjuntos são formas de criar novos con-
juntos a partir de conjuntos já existentes.
9
Diagramas de Venn-Euler
Os diagramas de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
conjuntos. Trata-se de uma representação de conjuntos por meio de áreas delimitadas por
curvas no plano.
O conjunto universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
uma área limitada por curvas fechadas, geralmente ćırculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
John Venn (1834-1923), matemático inglês, desenvolveu e am-
pliou a lógica matemática de George Boole, tornando-se con-
hecido pelos seus diagramas para representar uniões e interseções
entre conjunto.
Fonte: John...(online)
Leonard Euler (1707-1783), matemático suiço, representava
conjuntos de objetos por ćırculos no plano, e por isso esses dia-
gramas eram chamados de ćırculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
Operações com Conjuntos
Em aritmética, podemos realizar operações de adição, multi-
plicação e subtração de dois ou mais números. Nos conjuntos, as
operações de união, interseção e diferença, que serão vistas neste
tópico, se comportam de maneira semelhante às operações arit-
méticas de adição, multiplicação e subtração, respectivamente.
As operações entre conjuntos são formas de criar novos con-
juntos a partir de conjuntos já existentes.
9
• União de Conjuntos
A união de dois conjuntos A e B, denotada por A ∪ B, é o conjunto formado por todos os
elementos que pertencem a A ou a B; isto é:
A ∪ B = {x | x ∈ A ou x ∈ B}.
Dito de outra forma, A ∪ B é o conjunto formado pelos elementos que estão em A, ou em
B, ou em ambos.
Exemplo:
Se A = {−3, 0, 1, 4, 7} e B = {−6, 2, 4, 7, 9, 10}, então A ∪ B = {−6,−3, 0, 1, 2, 4, 7, 9,10}.
• Interseção de Conjuntos
A interseção de dois conjuntos A e B, denotada por A ∩ B, é o conjunto de todos os
elementos que pertencem a A e a B; isto é:
A ∩ B = {x | x ∈ A e x ∈ B}.
Logo, A ∩ B é o conjunto dos elementos que estão em A e em B ao mesmo tempo.
Quando A ∩ B = ∅, dizemos que A e B são conjuntos disjuntos.
Exemplos:
a) Sejam A = {1, 2, 3, 4}, B = {3, 4, 5, 6, 7} e C = {2, 3, 6, 7}. Então A ∩ B = {3, 4};
B ∩ C = {3, 6, 7} e A ∩ B ∩ C = {3}.
10
Diagramas de Venn-Euler
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
55
b) Se A = {x ∈ N | x é par} e B = {x ∈ R | x2 − 9 = 0}, então A ∩ B = ∅, pois
A = {0, 2, 4, 6, 8, ...} e B = {−3, 3}.
Na figura seguinte, vemos representações de interseções de conjuntos:
Complemento de um Conjunto
Consideremos U como conjunto universo, e seja A um subconjunto de U. Definimos o comple-
mentar do conjunto A, denotado por A
′
, como o conjunto dos elementos que pertencem a U
mas não pertencem a A, ou seja:
A
′
= {x | x ∈ U e x /∈ A}
Outras notações para o complemento de A: Ā ou Ac.
Exemplo:
Consideremos os conjuntos A = {x ∈ N | x < 12 e x é múltiplo de 3} e B = {0, 3, 5, 7}.
subconjuntos de U = {x ∈ N | x ≤ 10}. Determinar:
11
a) A
′
b) (A ∩ B)′
c) (B ∪ A)′
Temos que A = {0, 3, 6, 9}; B = {0, 3, 5, 7} e U = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}. Logo,
a) A
′
= {x ∈ U | x �∈ A} = {1, 2, 4, 5, 7, 8, 10}
b) (A ∩ B)′ = {x ∈ U | x �∈ (A ∩ B)} = {1, 2, 4, 5, 6, 7, 8, 9, 10}
c) (B ∪ A)′ = {x ∈ U | x �∈ (B ∪ A)} = {1, 2, 4, 8, 10}.
Observação:
De modo geral, podemos considerar o complementar de um conjunto A em um conjunto B
sempre que A ⊂ B, e valem as seguintes propriedades:
1. (A
′
)
′
= A, para todo A ⊂ U (o complementar do complementar de um conjunto A é o
próprio conjunto A).
2. Se A ⊂ B, então B′ ⊂ A′ (se um conjunto está contido em outro, então seu complementar
contém o complementar desse conjunto).
Diferença de Conjuntos
Outra operação que pode ser definida entre os conjuntos A e B é a diferença de conjuntos:
A− B = {x | x ∈ A e x /∈ B}
ou seja, A−B é o conjunto formado por todos os elementos que estão em A mas não estão
em B.
Exemplo:
Se A = {f, g, h, i, j}; B = {b, c, f, g, i, l,m} e C = {f, g, h}, determinar:
a) B − A = {b, c, l,m}
b) A− B = {h, j}
c) C − A = ∅
Observe que se B ⊂ A, a diferença A− B é igual ao complementar de B em A, ou seja, se
B ⊂ A então A− B = B ′ .
12
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E56
a) A
′
b) (A ∩ B)′
c) (B ∪ A)′
Temos que A = {0, 3, 6, 9}; B = {0, 3, 5, 7} e U = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}. Logo,
a) A
′
= {x ∈ U | x �∈ A} = {1, 2, 4, 5, 7, 8, 10}
b) (A ∩ B)′ = {x ∈ U | x �∈ (A ∩ B)} = {1, 2, 4, 5, 6, 7, 8, 9, 10}
c) (B ∪ A)′ = {x ∈ U | x �∈ (B ∪ A)} = {1, 2, 4, 8, 10}.
Observação:
De modo geral, podemos considerar o complementar de um conjunto A em um conjunto B
sempre que A ⊂ B, e valem as seguintes propriedades:
1. (A
′
)
′
= A, para todo A ⊂ U (o complementar do complementar de um conjunto A é o
próprio conjunto A).
2. Se A ⊂ B, então B′ ⊂ A′ (se um conjunto está contido em outro, então seu complementar
contém o complementar desse conjunto).
Diferença de Conjuntos
Outra operação que pode ser definida entre os conjuntos A e B é a diferença de conjuntos:
A− B = {x | x ∈ A e x /∈ B}
ou seja, A−B é o conjunto formado por todos os elementos que estão em A mas não estão
em B.
Exemplo:
Se A = {f, g, h, i, j}; B = {b, c, f, g, i, l,m} e C = {f, g, h}, determinar:
a) B − A = {b, c, l,m}
b) A− B = {h, j}
c) C − A = ∅
Observe que se B ⊂ A, a diferença A− B é igual ao complementar de B em A, ou seja, se
B ⊂ A então A− B = B ′ .
12
Diagramas de Venn-Euler
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
57
Produto Cartesiano
O produto cartesiano é uma operação sobre conjuntos que envolve a noção de um par or-
denado, que é uma sequência ordenada de dois elementos. Se A e B são dois conjuntos dados,
então um par ordenado de elementos de A e de B é um objeto denotado por (a, b), onde a ∈ A
e b ∈ B. Nesse caso, a é o primeiro elemento do par, e b é o segundo elemento do par.
Exemplos de pares ordenados:
• (4, c)
• (endereço, cidade)
• ((nome, endereço), cidade)
Sendo A e B conjuntos, podemos construir o conjunto formado por todos os pares ordenados
de elementos de A e de B. Esse conjunto é o produto cartesiano (ou produto cruzado) de A e
de B, denotado por A× B.
A× B = {(x, y) | x ∈ A e y ∈ B}
Logo, o produto cartesiano de dois conjuntos A e B é o conjunto de todos os pares ordenados
cujas primeiras coordenadas pertençam a A e as segundas pertençam a B.
Exemplos:
Sejam A = {♥, �} e B = {1, 2}.
a) A× B = {(♥, 1), (♥, 2), (�, 1), (�, 2)}
b) B × A = {(1,♥), (1, �), (2,♥), (2, �)}
c) A× A = A2 = {(♥,♥), (♥, �), (�,♥), (�, �)}
13
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E58
d) (A× B)× B = {((♥, 1), 1), ((♥, 1), 2), ((♥, 2), 1), ((♥, 2), 2), ((�, 1), 1),
((�, 1), 2), ((�, 2), 1), ((�, 2), 2)}.
Exerćıcio:
a) Considerando os conjuntos A e B acima, determinar A× B × B = {(x, y, z) | x ∈ A, y ∈
B e z ∈ B}.
b) (A× B)× B = (A× B × B)? Explique.
Observações:
• Notemos que, em geral, a comutatividade não é válida, ou seja, em geral, A×B �= B×A.
• Se B = ∅, temos que A×∅ = ∅× A = ∅.
Relação entre Lógica e Álgebra dos Conjuntos
Álgebra, desde sua origem até a sua forma atual, refere-se a cálculos. Por exemplo, as operações
aritméticas básicas sobre o conjunto dos números reais constituem uma álgebra. Informalmente,
podemos considerar que uma álgebra é constitúıda de operações sobre uma coleção de objetos,
e então álgebra de conjuntos corresponderia às operações definidas sobre todos os conjuntos.
Após o estudo da álgebra de conjuntos (operações de união; interseção; complemento; con-
junto das partes e produto cartesiano), podemos observar que existe uma relação direta entre
os conectivos lógicos introduzidos na unidade anterior e as operações sobre conjuntos, como
segue:
CONECTIVO LÓGICO OPERAÇÃO SOBRE CONJUNTOS
negação ∼ p complemento A′
disjunção p ∨ q união A ∪ B
conjunção p ∧ q interseção A ∩ B
As relações lógicas de implicação e equivalência introduzidas anteriormente também podem
ser associadas com as relações sobre conjuntos, como segue:
RELAÇÃO LÓGICA RELAÇÃO SOBRE CONJUNTOS
implicação p ⇒ q continência A ⊆ B
equivalência p ⇔ q igualdade A = B
Observando a relação entre a equivalência e igualdade de conjuntos, podemos concluir que
um conjunto A = B se, e somente se, A ⊂ B e B ⊂ A.
Da mesma forma, as propriedades introduzidas sobre os conectivos lógicos na Lógica são
válidas na Teoria dos Conjuntos, substituindo cada conectivo pela correspondente operação
sobre conjuntos.
14
Diagramas de Venn-Euler
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
59
Por exemplo, a propriedade da distributividade da união em relação à interseção dada por
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C),
está relacionada com a equivalência lógica
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r).
Podemos observar a validade da propriedade utilizando diagramas de Venn:
Exerćıcio:
Sejam A e B conjuntos quaisquer. As Leis de De Morgan para Teoria dos Conjuntos são as
seguintes:
a) (A ∪ B)′ = A′ ∩ B′
b) (A ∩ B)′ = A′ ∪ B′
Utilize diagramas de Venn para verificar as leis acima.
Prinćıpio da Inclusão e Exclusão
Dado um conjunto A, indicaremos por n(A) o número de elementos de A.
Se A e B são conjuntos finitos disjuntos,então n(A ∪ B) = n(A) + n(B).
15
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E60
Diagramas de Venn-Euler
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
61
Notemos que se A e B são conjuntos quaisquer, então:
n(A ∪ B) = n(A) + n(B)− n(A ∩ B).
Este é o chamado Prinćıpio da Inclusão-Exclusão para dois conjuntos. O nome vem do fato
de que, ao contar o número de elementos na união de A e B, precisamos “incluir” (contar) o
número de elementos de A e o número de elementos de B, mas precisamos “excluir” (subtrair)
os elementos de A ∩ B para evitar contá-los duas vezes.
Se A,B e C são conjuntos quaisquer, então Prinćıpio da Inclusão-Exclusão toma a forma:
n(A∪B ∪C) = n(A) +n(B) +n(C)−n(A∩B)−n(A∩C)−n(B ∩C) +n(A∩B ∩C) (∗)
A equação (∗) pode ser generalizada para um número arbitrário de conjuntos.
O Prinćıpio da Inclusão-Exclusão permite resolver problemas de aplicações sobre conjuntos.
Exemplos:
1) Para participar de uma gincana cultural, os alunos de um colégio preencheram uma ficha
em que tinham a opção de escolher dentre duas atividades propostas, podendo inclusive
escolher ambas. Os resultados foram os seguintes: 486 escolheram a atividade I, 365
escolheram a atividade II e 116 alunos escolheram as duas atividades. Quantos alunos
16
Notemos que se A e B são conjuntos quaisquer, então:
n(A ∪ B) = n(A) + n(B)− n(A ∩ B).
Este é o chamado Prinćıpio da Inclusão-Exclusão para dois conjuntos. O nome vem do fato
de que, ao contar o número de elementos na união de A e B, precisamos “incluir” (contar) o
número de elementos de A e o número de elementos de B, mas precisamos “excluir” (subtrair)
os elementos de A ∩ B para evitar contá-los duas vezes.
Se A,B e C são conjuntos quaisquer, então Prinćıpio da Inclusão-Exclusão toma a forma:
n(A∪B ∪C) = n(A) +n(B) +n(C)−n(A∩B)−n(A∩C)−n(B ∩C) +n(A∩B ∩C) (∗)
A equação (∗) pode ser generalizada para um número arbitrário de conjuntos.
O Prinćıpio da Inclusão-Exclusão permite resolver problemas de aplicações sobre conjuntos.
Exemplos:
1) Para participar de uma gincana cultural, os alunos de um colégio preencheram uma ficha
em que tinham a opção de escolher dentre duas atividades propostas, podendo inclusive
escolher ambas. Os resultados foram os seguintes: 486 escolheram a atividade I, 365
escolheram a atividade II e 116 alunos escolheram as duas atividades. Quantos alunos
16
Notemos que se A e B são conjuntos quaisquer, então:
n(A ∪ B) = n(A) + n(B)− n(A ∩ B).
Este é o chamado Prinćıpio da Inclusão-Exclusão para dois conjuntos. O nome vem do fato
de que, ao contar o número de elementos na união de A e B, precisamos “incluir” (contar) o
número de elementos de A e o número de elementos de B, mas precisamos “excluir” (subtrair)
os elementos de A ∩ B para evitar contá-los duas vezes.
Se A,B e C são conjuntos quaisquer, então Prinćıpio da Inclusão-Exclusão toma a forma:
n(A∪B ∪C) = n(A) +n(B) +n(C)−n(A∩B)−n(A∩C)−n(B ∩C) +n(A∩B ∩C) (∗)
A equação (∗) pode ser generalizada para um número arbitrário de conjuntos.
O Prinćıpio da Inclusão-Exclusão permite resolver problemas de aplicações sobre conjuntos.
Exemplos:
1) Para participar de uma gincana cultural, os alunos de um colégio preencheram uma ficha
em que tinham a opção de escolher dentre duas atividades propostas, podendo inclusive
escolher ambas. Os resultados foram os seguintes: 486 escolheram a atividade I, 365
escolheram a atividade II e 116 alunos escolheram as duas atividades. Quantos alunos
16
preencheram a ficha para participar da gincana?
Resolução: Denotando por A o conjunto de alunos que optaram pela atividade I e B como
o conjunto dos que optaram pela atividade II, sabemos que:
n(A) = 486, n(B) = 365, n(A ∩ B) = 116.
Logo, como n(A ∪ B) = n(A) + n(B)− n(A ∩ B), então
n(A ∪ B) = 486 + 365− 116 = 735
de modo que 735 alunos preencheram a ficha.
Resolução pelo diagrama:
- Se 486 alunos escolheram a atividade I e 116 deles escolheram as duas atividades, então
o número de alunos que escolheu somente a atividade I é: 486 - 116 = 370.
- Se 365 alunos escolheram a atividade II e 116 deles escolheram as duas atividades, então
o número de alunos que escolheu somente a atividade II é: 365 - 116 = 249.
- Se 370 optaram somente por I, 249 optaram somente por II e 116 escolheram ambas
atividades, então o número de alunos que preencheu a ficha foi: 370 + 116 + 249 = 735.
(n(A ∪ B) = 370 + 116 + 249 = 735.)
2) Uma rede de academia que oferece várias opções de atividades f́ısicas fez um levanta-
mento para saber o número de pessoas matriculadas em natação(N), musculação(M) e
ginástica(G), obtendo os seguintes resultados:
Atividade N M G N e M N e G M e G N e M e G Outras
No de alunos 148 256 162 41 25 52 8 152
17
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E62
Com base nessas informações, determine:
a) O número de pessoas matriculadas.
b) O número de pessoas matriculadas apenas em musculação.
c) O número de pessoas matriculadas em ginástica ou natação.
Resolução pelo diagrama:
Construindo o diagrama para o problema, teremos uma visão de todos os valores envolvi-
dos, e conseguiremos obter as respostas para as diversas perguntas mais facilmente:
- Começamos sempre colocando o número de elementos da interseção.
- Ao colocar o número de elementos de um conjunto, devemos descontar os da interseção:
* n(N ∩M)− n(M ∩N ∩G) = 41− 8 = 33.
* n(N ∩G)− n(M ∩N ∩G) = 25− 8 = 17.
* n(M ∩G)− n(M ∩N ∩G) = 52− 8 = 44.
* Número de elementos somente de N : 148− 33− 8− 17 = 90.
* Número de elementos somente de M : 256− 33− 8− 44 = 171.
* Número de elementos somente de G : 162− 17− 8− 44 = 93.
Logo, observando o diagrama podemos concluir que:
a) Existem 90 + 171 + 93 + 17 + 33 + 44 + 8 + 152 = 608 pessoas matriculadas.
b) 171 pessoas estão matriculadas apenas em musculação.
c) Número de pessoas matriculadas em ginástica ou natação = n(N ∪ G) = 93 + 44 + 8 +
17 + 33 + 90 = 285 (ou n(N ∪G) = 608− 171− 152 = 285).
18
Diagramas de Venn-Euler
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
63
TEORIA DOS CONJUNTOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E64
Considerações Finais
Nesta unidade, você teve oportunidade de estudar alguns conceitos básicos relativos à teoria dos
conjuntos. Conjunto é uma estrutura que agrupa objetos e constitui uma base para construir
estruturas mais complexas. Informalmente, podemos pensar em conjuntos como uma coleção
sem repetição e não ordenada de objetos denominados elementos ou membros do conjunto.
Esses conceitos são na verdade conceitos primitivos.
Conhecemos os tipos de conjuntos, entre eles os conjuntos vazio, unitário e universo. Es-
tudamos a relação de inclusão entre conjuntos, que ocorre sempre que todos os elementos de
um conjunto são também elementos do outro, estabelecendo o conceito de subconjuntos. Em
seguid,a realizamos o estudo da álgebra de conjuntos, que corresponde às operações definidas
sobre todos os conjuntos: união, interseção, complemento, conjunto das partes e produto carte-
siano.
Também pudemos observar uma relação direta entre os conectivos lógicos introduzidos na
unidade anterior e as operações sobre conjuntos, bem como as relações lógicas associadas com
as relações sobre conjuntos.
Uma das aplicações dessa associação entre Lógica e Teoria dos Conjuntos está na Pesquisa
Booleana na Web. Na internet, a maioria dos sites de busca permite que o internauta faça com-
binações entre as palavrasque quer pesquisar, e o uso das palavras (ou operadores booleanos)
AND (ou .), OR (ou +), NOT (ou -) permite expandir e limitar a busca.
Vimos também que o prinćıpio da inclusão e exclusão estabelece uma fórmula para contar
o número de elementos que pertencem à união de vários conjuntos não necessariamente disjun-
tos, o que permitiu resolver diversos problemas sobre número de elementos da união de uma
quantidade finita de conjuntos.
Podemos então concluir que além da definição rigorosa de infinito e de muitas outras con-
tribuições, a teoria dos conjuntos unificou a linguagem em todos os ramos da Matemática.
Atividades de Autoestudo
1) Classifique as sentenças abaixo como verdadeiras (V) ou falsas (F):
a) ( ) {3} ∈ {1, 2, {3}}.
b) ( ) {2} ∈ {∅, 3, {3}, {2, 3}}.
c) ( ) {3} ⊂ {1, 2, {3}}.
d) ( ) {−4,−2, 1} ⊃ ∅.
e) ( ) {3} ∈ {1, 2, 3}.
19
Considerações Finais
Nesta unidade, você teve oportunidade de estudar alguns conceitos básicos relativos à teoria dos
conjuntos. Conjunto é uma estrutura que agrupa objetos e constitui uma base para construir
estruturas mais complexas. Informalmente, podemos pensar em conjuntos como uma coleção
sem repetição e não ordenada de objetos denominados elementos ou membros do conjunto.
Esses conceitos são na verdade conceitos primitivos.
Conhecemos os tipos de conjuntos, entre eles os conjuntos vazio, unitário e universo. Es-
tudamos a relação de inclusão entre conjuntos, que ocorre sempre que todos os elementos de
um conjunto são também elementos do outro, estabelecendo o conceito de subconjuntos. Em
seguid,a realizamos o estudo da álgebra de conjuntos, que corresponde às operações definidas
sobre todos os conjuntos: união, interseção, complemento, conjunto das partes e produto carte-
siano.
Também pudemos observar uma relação direta entre os conectivos lógicos introduzidos na
unidade anterior e as operações sobre conjuntos, bem como as relações lógicas associadas com
as relações sobre conjuntos.
Uma das aplicações dessa associação entre Lógica e Teoria dos Conjuntos está na Pesquisa
Booleana na Web. Na internet, a maioria dos sites de busca permite que o internauta faça com-
binações entre as palavras que quer pesquisar, e o uso das palavras (ou operadores booleanos)
AND (ou .), OR (ou +), NOT (ou -) permite expandir e limitar a busca.
Vimos também que o prinćıpio da inclusão e exclusão estabelece uma fórmula para contar
o número de elementos que pertencem à união de vários conjuntos não necessariamente disjun-
tos, o que permitiu resolver diversos problemas sobre número de elementos da união de uma
quantidade finita de conjuntos.
Podemos então concluir que além da definição rigorosa de infinito e de muitas outras con-
tribuições, a teoria dos conjuntos unificou a linguagem em todos os ramos da Matemática.
Atividades de Autoestudo
1) Classifique as sentenças abaixo como verdadeiras (V) ou falsas (F):
a) ( ) {3} ∈ {1, 2, {3}}.
b) ( ) {2} ∈ {∅, 3, {3}, {2, 3}}.
c) ( ) {3} ⊂ {1, 2, {3}}.
d) ( ) {−4,−2, 1} ⊃ ∅.
e) ( ) {3} ∈ {1, 2, 3}.
19
Considerações Finais
Nesta unidade, você teve oportunidade de estudar alguns conceitos básicos relativos à teoria dos
conjuntos. Conjunto é uma estrutura que agrupa objetos e constitui uma base para construir
estruturas mais complexas. Informalmente, podemos pensar em conjuntos como uma coleção
sem repetição e não ordenada de objetos denominados elementos ou membros do conjunto.
Esses conceitos são na verdade conceitos primitivos.
Conhecemos os tipos de conjuntos, entre eles os conjuntos vazio, unitário e universo. Es-
tudamos a relação de inclusão entre conjuntos, que ocorre sempre que todos os elementos de
um conjunto são também elementos do outro, estabelecendo o conceito de subconjuntos. Em
seguid,a realizamos o estudo da álgebra de conjuntos, que corresponde às operações definidas
sobre todos os conjuntos: união, interseção, complemento, conjunto das partes e produto carte-
siano.
Também pudemos observar uma relação direta entre os conectivos lógicos introduzidos na
unidade anterior e as operações sobre conjuntos, bem como as relações lógicas associadas com
as relações sobre conjuntos.
Uma das aplicações dessa associação entre Lógica e Teoria dos Conjuntos está na Pesquisa
Booleana na Web. Na internet, a maioria dos sites de busca permite que o internauta faça com-
binações entre as palavras que quer pesquisar, e o uso das palavras (ou operadores booleanos)
AND (ou .), OR (ou +), NOT (ou -) permite expandir e limitar a busca.
Vimos também que o prinćıpio da inclusão e exclusão estabelece uma fórmula para contar
o número de elementos que pertencem à união de vários conjuntos não necessariamente disjun-
tos, o que permitiu resolver diversos problemas sobre número de elementos da união de uma
quantidade finita de conjuntos.
Podemos então concluir que além da definição rigorosa de infinito e de muitas outras con-
tribuições, a teoria dos conjuntos unificou a linguagem em todos os ramos da Matemática.
Atividades de Autoestudo
1) Classifique as sentenças abaixo como verdadeiras (V) ou falsas (F):
a) ( ) {3} ∈ {1, 2, {3}}.
b) ( ) {2} ∈ {∅, 3, {3}, {2, 3}}.
c) ( ) {3} ⊂ {1, 2, {3}}.
d) ( ) {−4,−2, 1} ⊃ ∅.
e) ( ) {3} ∈ {1, 2, 3}.
19
Considerações Finais
Nesta unidade, você teve oportunidade de estudar alguns conceitos básicos relativos à teoria dos
conjuntos. Conjunto é uma estrutura que agrupa objetos e constitui uma base para construir
estruturas mais complexas. Informalmente, podemos pensar em conjuntos como uma coleção
sem repetição e não ordenada de objetos denominados elementos ou membros do conjunto.
Esses conceitos são na verdade conceitos primitivos.
Conhecemos os tipos de conjuntos, entre eles os conjuntos vazio, unitário e universo. Es-
tudamos a relação de inclusão entre conjuntos, que ocorre sempre que todos os elementos de
um conjunto são também elementos do outro, estabelecendo o conceito de subconjuntos. Em
seguid,a realizamos o estudo da álgebra de conjuntos, que corresponde às operações definidas
sobre todos os conjuntos: união, interseção, complemento, conjunto das partes e produto carte-
siano.
Também pudemos observar uma relação direta entre os conectivos lógicos introduzidos na
unidade anterior e as operações sobre conjuntos, bem como as relações lógicas associadas com
as relações sobre conjuntos.
Uma das aplicações dessa associação entre Lógica e Teoria dos Conjuntos está na Pesquisa
Booleana na Web. Na internet, a maioria dos sites de busca permite que o internauta faça com-
binações entre as palavras que quer pesquisar, e o uso das palavras (ou operadores booleanos)
AND (ou .), OR (ou +), NOT (ou -) permite expandir e limitar a busca.
Vimos também que o prinćıpio da inclusão e exclusão estabelece uma fórmula para contar
o número de elementos que pertencem à união de vários conjuntos não necessariamente disjun-
tos, o que permitiu resolver diversos problemas sobre número de elementos da união de uma
quantidade finita de conjuntos.
Podemos então concluir que além da definição rigorosa de infinito e de muitas outras con-
tribuições, a teoria dos conjuntos unificou a linguagem em todos os ramos da Matemática.
Atividades de Autoestudo
1) Classifique as sentenças abaixo como verdadeiras (V) ou falsas (F):
a) ( ) {3} ∈ {1, 2, {3}}.
b) ( ) {2} ∈ {∅, 3, {3}, {2, 3}}.
c) ( ) {3} ⊂ {1, 2, {3}}.
d) ( ) {−4,−2, 1} ⊃ ∅.
e) ( ) {3} ∈ {1, 2, 3}.
19
Considerações Finais
Nesta unidade, você teve oportunidade de estudar alguns conceitos básicos relativos à teoria dos
conjuntos. Conjunto é uma estrutura que agrupa objetos e constitui uma base para construir
estruturas mais complexas. Informalmente, podemos pensar em conjuntos como uma coleção
sem repetição e não ordenada de objetos denominados elementosou membros do conjunto.
Esses conceitos são na verdade conceitos primitivos.
Conhecemos os tipos de conjuntos, entre eles os conjuntos vazio, unitário e universo. Es-
tudamos a relação de inclusão entre conjuntos, que ocorre sempre que todos os elementos de
um conjunto são também elementos do outro, estabelecendo o conceito de subconjuntos. Em
seguid,a realizamos o estudo da álgebra de conjuntos, que corresponde às operações definidas
sobre todos os conjuntos: união, interseção, complemento, conjunto das partes e produto carte-
siano.
Também pudemos observar uma relação direta entre os conectivos lógicos introduzidos na
unidade anterior e as operações sobre conjuntos, bem como as relações lógicas associadas com
as relações sobre conjuntos.
Uma das aplicações dessa associação entre Lógica e Teoria dos Conjuntos está na Pesquisa
Booleana na Web. Na internet, a maioria dos sites de busca permite que o internauta faça com-
binações entre as palavras que quer pesquisar, e o uso das palavras (ou operadores booleanos)
AND (ou .), OR (ou +), NOT (ou -) permite expandir e limitar a busca.
Vimos também que o prinćıpio da inclusão e exclusão estabelece uma fórmula para contar
o número de elementos que pertencem à união de vários conjuntos não necessariamente disjun-
tos, o que permitiu resolver diversos problemas sobre número de elementos da união de uma
quantidade finita de conjuntos.
Podemos então concluir que além da definição rigorosa de infinito e de muitas outras con-
tribuições, a teoria dos conjuntos unificou a linguagem em todos os ramos da Matemática.
Atividades de Autoestudo
1) Classifique as sentenças abaixo como verdadeiras (V) ou falsas (F):
a) ( ) {3} ∈ {1, 2, {3}}.
b) ( ) {2} ∈ {∅, 3, {3}, {2, 3}}.
c) ( ) {3} ⊂ {1, 2, {3}}.
d) ( ) {−4,−2, 1} ⊃ ∅.
e) ( ) {3} ∈ {1, 2, 3}.
19
f) ( ) {3} ⊂ {1, 2, 3}.
g) ( ) {7, 9} ⊂ {7, 8, {7, 9}}.
h) ( ) {{2, 3}} ⊂ {∅, 3, {3}, {2, 3}}.
i) ( ) {2, 3, 1} ⊃ {3, 2, 1, 2}.
j) ( ) Se B ⊂ A, então A ∩ B = A.
k) ( ) Se A = {x, y}, então A ∩ P (A) = ∅.
2) Use a teoria dos conjuntos (diagramas de Venn) para resolver o seguinte problema:
(ANPAD-RL-SET-2004 - adaptado) Se “Alguns profissionais são engenheiros” e “Todos
os engenheiros são pessoas competentes”, então, necessariamente, com as proposições
apresentadas, pode-se inferir:
(a) Algum profissional é uma pessoa competente.
(b) Toda pessoa competente é engenheira.
(c) Todo engenheiro é profissional.
(d) Nenhuma pessoa competente é profissional.
(e) Nenhum profissional não é competente.
3) Encontre P (A) para A = {a, 5, b}. Podemos concluir que A ⊆ P (A)? E que A ∈ P (A)?
4) O que pode ser dito sobre o conjunto B, se P (B) = {∅, {a}, {b}, {a, b}}?
5) O que pode ser dito sobre o conjunto B se P (B) = {∅, {x}, {{x}}, {x, {x}}}?
6) Sejam
A = {x ∈ Z| 2 ≤ x < 6}
B = {x ∈ N| x ≤ 16 e x é primo}
C = {2, 4, 5, 6, 11}
subconjuntos de U = {0, 1, 2, 3, ..., 14, 15}. Encontre:
a) A ∪ B.
b) A ∩ B ∩ C.
c) B ∩ C.
d) A− B.
e) B ∩ B′ .
f) (A ∩ B)′ .
g) C − B.
20
65 
h) (A ∩ B) ∪ C ′ .
i) (B − A)′ ∩ (A− B).
j) (B ∩ C)× A.
k) A
′ ∩∅.
l) (A ∩ C) ∪∅.
7) Dados os conjuntos A = {1, 2, 3, 4, 5}; B = {1, 2, 4, 6, 8} e C = {2, 4, 5, 7}, pede-se para
determinar:
a) O conjunto X tal que X ⊂ A e A–X = B ∩C. Represente os conjuntos em diagrama de
Venn.
b) O conjunto Y =A ∪ B ∪ C.
c) O conjunto Y −X.
8) Sejam
A = {x | x é uma palavra que aparece antes de elefante em um dicionário de português}.
B = {x | x é uma palavra que aparece depois de diploma em um dicionário de português}.
C = {x | x é uma palavra com mais de cinco letras}.
Quais das proposições a seguir são verdadeiras?
a) B ⊆ C.
b) A ∪ B = {x | x é palavra em um dicionário de português}.
c) Educação ∈ B ∩ C.
d) Doce ∈ B ∩ C ′ .
e) Diversidade ∈ A ∩ B ∩ C.
f) Biblioteca ∈ B′ .
g) Camaleão ∈ A′ .
h) Bandeira ∈ A− B.
9) A diferença simétrica dos conjuntos A e B, denotada por A ⊕ B, consiste em todos os
elementos que pertencem a A ou a B, mas não a ambos, ou seja,
A⊕ B = {x | x ∈ (A ∪ B) ∧ x /∈ (A ∩ B)} = (A ∪ B)− (A ∩ B).
21
f) ( ) {3} ⊂ {1, 2, 3}.
g) ( ) {7, 9} ⊂ {7, 8, {7, 9}}.
h) ( ) {{2, 3}} ⊂ {∅, 3, {3}, {2, 3}}.
i) ( ) {2, 3, 1} ⊃ {3, 2, 1, 2}.
j) ( ) Se B ⊂ A, então A ∩ B = A.
k) ( ) Se A = {x, y}, então A ∩ P (A) = ∅.
2) Use a teoria dos conjuntos (diagramas de Venn) para resolver o seguinte problema:
(ANPAD-RL-SET-2004 - adaptado) Se “Alguns profissionais são engenheiros” e “Todos
os engenheiros são pessoas competentes”, então, necessariamente, com as proposições
apresentadas, pode-se inferir:
(a) Algum profissional é uma pessoa competente.
(b) Toda pessoa competente é engenheira.
(c) Todo engenheiro é profissional.
(d) Nenhuma pessoa competente é profissional.
(e) Nenhum profissional não é competente.
3) Encontre P (A) para A = {a, 5, b}. Podemos concluir que A ⊆ P (A)? E que A ∈ P (A)?
4) O que pode ser dito sobre o conjunto B, se P (B) = {∅, {a}, {b}, {a, b}}?
5) O que pode ser dito sobre o conjunto B se P (B) = {∅, {x}, {{x}}, {x, {x}}}?
6) Sejam
A = {x ∈ Z| 2 ≤ x < 6}
B = {x ∈ N| x ≤ 16 e x é primo}
C = {2, 4, 5, 6, 11}
subconjuntos de U = {0, 1, 2, 3, ..., 14, 15}. Encontre:
a) A ∪ B.
b) A ∩ B ∩ C.
c) B ∩ C.
d) A− B.
e) B ∩ B′ .
f) (A ∩ B)′ .
g) C − B.
20
h) (A ∩ B) ∪ C ′ .
i) (B − A)′ ∩ (A− B).
j) (B ∩ C)× A.
k) A
′ ∩∅.
l) (A ∩ C) ∪∅.
7) Dados os conjuntos A = {1, 2, 3, 4, 5}; B = {1, 2, 4, 6, 8} e C = {2, 4, 5, 7}, pede-se para
determinar:
a) O conjunto X tal que X ⊂ A e A–X = B ∩C. Represente os conjuntos em diagrama de
Venn.
b) O conjunto Y =A ∪ B ∪ C.
c) O conjunto Y −X.
8) Sejam
A = {x | x é uma palavra que aparece antes de elefante em um dicionário de português}.
B = {x | x é uma palavra que aparece depois de diploma em um dicionário de português}.
C = {x | x é uma palavra com mais de cinco letras}.
Quais das proposições a seguir são verdadeiras?
a) B ⊆ C.
b) A ∪ B = {x | x é palavra em um dicionário de português}.
c) Educação ∈ B ∩ C.
d) Doce ∈ B ∩ C ′ .
e) Diversidade ∈ A ∩ B ∩ C.
f) Biblioteca ∈ B′ .
g) Camaleão ∈ A′ .
h) Bandeira ∈ A− B.
9) A diferença simétrica dos conjuntos A e B, denotada por A ⊕ B, consiste em todos os
elementos que pertencem a A ou a B, mas não a ambos, ou seja,
A⊕ B = {x | x ∈ (A ∪ B) ∧ x /∈ (A ∩ B)} = (A ∪ B)− (A ∩ B).
21
a) Desenhe um diagrama de Venn para ilustrar A⊕ B.
b) Para A = {5, 7, 9, 11} e B = {3, 4, 7, 8, 9}, encontre A⊕ B.
c) Seja A um conjunto qualquer. Encontre (A⊕ A) e (∅⊕ A).
10) (Gersting, 2004) Vamos supor que você fez um levantamento entre os 87 assinantes de
seu boletim informativo, preparando-se para lançar seu novo programa de computador,
Os resultados de seu levantamento revelam que 68 assinantes têm dispońıvel um sistema
baseado em Windows, 34 têm dispońıvel um sistema Unix e 30 têm acesso a um Mac.
Além disso, 19 têm acesso a ambos, Windows e Unix, 11 têm acesso a ambos Unix e Mac,
e 23 podem usar tanto Windows quanto Mac. Pergunta-se:
a) Quantos de seus assinantes têm acesso aos três tipos de sistema?
b) Quantos têm acesso a no máximo um sistema?
c) Quantos têm dispońıvel Windows ou Mac?
11) Em uma avaliação admissional constitúıda por duas questões, 120 candidatos acertaram
somente uma delas; 70, a segunda; 38 candidatos acertaram as duas e 82 erraram a
primeira questão.
a) Quantos candidatos fizeram a prova?
b) Quantos candidatos erraram as duas questões?
c) Quantos candidatos acertaram somente a primeira questão?
Leitura Complementar
União Disjunta
Quando fazemos a união de conjuntos, elementos com mesma identificação nos dois con-
juntos aparecerão somente uma vez no conjunto resultante. Por exemplo, ao fazermos a união
de A={Terra, Marte, Júpiter} e B ={Mercúrio, Vênus, Terra, Júpiter}, o conjunto união será
A ∪ B ={Mercúrio, Vênus, Terra, Marte, Júpiter}, não havendo necessidade de escrever duasvezes os elementos “Terra” e “Júpiter.” Entretanto, em alguns casos, existe a necessidade de
distinguir elementos com uma mesma identificação, e para isso aplicamos o conceito de união
disjunta.
A união disjunta de conjuntos garante que todos os elementos dos conjuntos componentes
constituam o conjunto resultante, mesmo que possuam a mesma identificação, ou seja, é um
tipo de união que garante que não existem elementos em comum.
22
67 
a) Desenhe um diagrama de Venn para ilustrar A⊕ B.
b) Para A = {5, 7, 9, 11} e B = {3, 4, 7, 8, 9}, encontre A⊕ B.
c) Seja A um conjunto qualquer. Encontre (A⊕ A) e (∅⊕ A).
10) (Gersting, 2004) Vamos supor que você fez um levantamento entre os 87 assinantes de
seu boletim informativo, preparando-se para lançar seu novo programa de computador,
Os resultados de seu levantamento revelam que 68 assinantes têm dispońıvel um sistema
baseado em Windows, 34 têm dispońıvel um sistema Unix e 30 têm acesso a um Mac.
Além disso, 19 têm acesso a ambos, Windows e Unix, 11 têm acesso a ambos Unix e Mac,
e 23 podem usar tanto Windows quanto Mac. Pergunta-se:
a) Quantos de seus assinantes têm acesso aos três tipos de sistema?
b) Quantos têm acesso a no máximo um sistema?
c) Quantos têm dispońıvel Windows ou Mac?
11) Em uma avaliação admissional constitúıda por duas questões, 120 candidatos acertaram
somente uma delas; 70, a segunda; 38 candidatos acertaram as duas e 82 erraram a
primeira questão.
a) Quantos candidatos fizeram a prova?
b) Quantos candidatos erraram as duas questões?
c) Quantos candidatos acertaram somente a primeira questão?
Leitura Complementar
União Disjunta
Quando fazemos a união de conjuntos, elementos com mesma identificação nos dois con-
juntos aparecerão somente uma vez no conjunto resultante. Por exemplo, ao fazermos a união
de A={Terra, Marte, Júpiter} e B ={Mercúrio, Vênus, Terra, Júpiter}, o conjunto união será
A ∪ B ={Mercúrio, Vênus, Terra, Marte, Júpiter}, não havendo necessidade de escrever duas
vezes os elementos “Terra” e “Júpiter.” Entretanto, em alguns casos, existe a necessidade de
distinguir elementos com uma mesma identificação, e para isso aplicamos o conceito de união
disjunta.
A união disjunta de conjuntos garante que todos os elementos dos conjuntos componentes
constituam o conjunto resultante, mesmo que possuam a mesma identificação, ou seja, é um
tipo de união que garante que não existem elementos em comum.
22
A técnica para definir união disjunta, de maneira a garantir a não existência de elementos
comuns, consiste em associar uma identificação do conjunto de origem, constituindo um tipo de
“sobrenome”. Dessa maneira, os elementos do conjunto resultante da união disjunta são pares
da forma (elemento, identificação do conjunto de origem).
A união disjunta dos conjuntos A e B, denotada por A+ B, é definida por:
A+ B = {(a,A) | a ∈ A} ∪ {(b, B) | b ∈ B}
ou
A+ B = {aA | a ∈ A} ∪ {bB | b ∈ B}
Para exemplificar, consideremos os seguintes conjuntos que representam funcionários de
uma empresa por setor:
Contabilidade: C = {Pedro, José, Joana, Maria}.
Recursos Humanos: RH = {Judith, Célia, José, Maria}.
Para distinguir os elementos por setor, devemos fazer a união disjunta:
C + RH= {PedroC , JoséC , JoanaC , MariaC , JudithRH , CéliaRH , JoséRH , MariaRH}.
Fonte: Menezes (2013, p.64)
Material Complementar: na Web
A História da Matemática (The story of maths) é um documentário produzido pela BBC de
Londres e pela Open University, que foi transmitido pela televisão britânica em outubro de
2008. Foi escolhido como Melhor Documentário produzido no ano pela estação BBC, em
votação. Apresentado pelo pesquisador e professor da Universidade de Oxford, Marcus du
Sautoy, o Documentário é dividido em 4 caṕıtulos: Caṕıtulo 1 - A Linguagem do Universo;
Caṕıtulo 2 - O Gênio do Oriente; Caṕıtulo 3 - As Fronteiras do Espaço e Caṕıtulo 4 - Rumo
ao Infinito e Mais Além. O objetivo do v́ıdeo é apresentar o desenvolvimento da Matemática
e o aprimoramento que ela sofreu ao longo do tempo, com contribuição de sociedades de todo
o mundo.
A quarta e última parte da série aborda alguns dos maiores problemas matemáticos do
século XX, propostos por David Hilbert em 1900, descrevendo o roteiro de pesquisas para solu-
23
69 
a) Desenhe um diagrama de Venn para ilustrar A⊕ B.
b) Para A = {5, 7, 9, 11} e B = {3, 4, 7, 8, 9}, encontre A⊕ B.
c) Seja A um conjunto qualquer. Encontre (A⊕ A) e (∅⊕ A).
10) (Gersting, 2004) Vamos supor que você fez um levantamento entre os 87 assinantes de
seu boletim informativo, preparando-se para lançar seu novo programa de computador,
Os resultados de seu levantamento revelam que 68 assinantes têm dispońıvel um sistema
baseado em Windows, 34 têm dispońıvel um sistema Unix e 30 têm acesso a um Mac.
Além disso, 19 têm acesso a ambos, Windows e Unix, 11 têm acesso a ambos Unix e Mac,
e 23 podem usar tanto Windows quanto Mac. Pergunta-se:
a) Quantos de seus assinantes têm acesso aos três tipos de sistema?
b) Quantos têm acesso a no máximo um sistema?
c) Quantos têm dispońıvel Windows ou Mac?
11) Em uma avaliação admissional constitúıda por duas questões, 120 candidatos acertaram
somente uma delas; 70, a segunda; 38 candidatos acertaram as duas e 82 erraram a
primeira questão.
a) Quantos candidatos fizeram a prova?
b) Quantos candidatos erraram as duas questões?
c) Quantos candidatos acertaram somente a primeira questão?
Leitura Complementar
União Disjunta
Quando fazemos a união de conjuntos, elementos com mesma identificação nos dois con-
juntos aparecerão somente uma vez no conjunto resultante. Por exemplo, ao fazermos a união
de A={Terra, Marte, Júpiter} e B ={Mercúrio, Vênus, Terra, Júpiter}, o conjunto união será
A ∪ B ={Mercúrio, Vênus, Terra, Marte, Júpiter}, não havendo necessidade de escrever duas
vezes os elementos “Terra” e “Júpiter.” Entretanto, em alguns casos, existe a necessidade de
distinguir elementos com uma mesma identificação, e para isso aplicamos o conceito de união
disjunta.
A união disjunta de conjuntos garante que todos os elementos dos conjuntos componentes
constituam o conjunto resultante, mesmo que possuam a mesma identificação, ou seja, é um
tipo de união que garante que não existem elementos em comum.
22
cioná-los. Entre esses problemas, encontra-se os trabalhos de Cantor sobre os infinitos.
A História da Matemática 4 - Além do Infinito está dispońıvel em: <https://www.youtube.
com/watch?v=XxexMO1xZL0>. Acesso em 12 abr. 2015.
Vale a pena assistir aos v́ıdeos para conhecer um pouco da História da Matemática!!!
Material Complementar: Livro
Matemática Discreta Para Computação e Informática -
Vol.16
Autor: Paulo Blauth Menezes
Editora: Bookman
Sinopse: Apresenta os principais conceitos de matemática disc-
reta, explicados e exemplificados. O conteúdo é rigoroso, simples e
didático. É o livro-texto de Aprendendo matemática discreta com
exerćıcios, volume 19 da mesma coleção.
24
A técnica para definir união disjunta, de maneira a garantir a não existência de elementos
comuns, consiste em associar uma identificação do conjunto de origem, constituindo um tipo de
“sobrenome”. Dessa maneira, os elementos do conjunto resultante da união disjunta são pares
da forma (elemento, identificação do conjunto de origem).
A união disjunta dos conjuntos A e B, denotada por A+ B, é definida por:
A+ B = {(a,A) | a ∈ A} ∪ {(b, B) | b ∈ B}
ou
A+ B = {aA | a ∈ A} ∪ {bB | b ∈ B}
Para exemplificar, consideremos os seguintes conjuntos que representam funcionários de
uma empresa por setor:
Contabilidade: C = {Pedro, José, Joana, Maria}.
Recursos Humanos: RH = {Judith, Célia, José, Maria}.
Para distinguir os elementos por setor, devemos fazer a união disjunta:
C + RH= {PedroC , JoséC , JoanaC , MariaC , JudithRH , CéliaRH , JoséRH, MariaRH}.
Fonte: Menezes (2013, p.64)
Material Complementar: na Web
A História da Matemática (The story of maths) é um documentário produzido pela BBC de
Londres e pela Open University, que foi transmitido pela televisão britânica em outubro de
2008. Foi escolhido como Melhor Documentário produzido no ano pela estação BBC, em
votação. Apresentado pelo pesquisador e professor da Universidade de Oxford, Marcus du
Sautoy, o Documentário é dividido em 4 caṕıtulos: Caṕıtulo 1 - A Linguagem do Universo;
Caṕıtulo 2 - O Gênio do Oriente; Caṕıtulo 3 - As Fronteiras do Espaço e Caṕıtulo 4 - Rumo
ao Infinito e Mais Além. O objetivo do v́ıdeo é apresentar o desenvolvimento da Matemática
e o aprimoramento que ela sofreu ao longo do tempo, com contribuição de sociedades de todo
o mundo.
A quarta e última parte da série aborda alguns dos maiores problemas matemáticos do
século XX, propostos por David Hilbert em 1900, descrevendo o roteiro de pesquisas para solu-
23
MATERIAL COMPLEMENTAR
cioná-los. Entre esses problemas, encontra-se os trabalhos de Cantor sobre os infinitos.
A História da Matemática 4 - Além do Infinito está dispońıvel em: <https://www.youtube.
com/watch?v=XxexMO1xZL0>. Acesso em 12 abr. 2015.
Vale a pena assistir aos v́ıdeos para conhecer um pouco da História da Matemática!!!
Material Complementar: Livro
Matemática Discreta Para Computação e Informática -Vol.16
Autor: Paulo Blauth Menezes
Editora: Bookman
Sinopse: Apresenta os principais conceitos de matemática disc-reta, 
explicados e exemplificados. O conteúdo é rigoroso, simples e didático. 
É o livro-texto de Aprendendo matemática discreta com exerćıcios, 
volume 19 da mesma coleção.
24
U
N
ID
A
D
E III
Professora Me. Edvania Gimenes de Oliveira Godoy
RELAÇÕES
Objetivos de Aprendizagem
 ■ Compreender o conceito de relação.
 ■ Identificar pares ordenados pertencentes a uma relação binária.
 ■ Reconhecer os tipos de relações binárias.
 ■ Determinar o domínio e a imagem de relações.
 ■ Representar relações por meio de conjuntos, matrizes e grafos.
 ■ Testar se uma relação binária é reflexiva, simétria, transitiva ou 
antissimétrica.
 ■ Reconhecer ordens parciais para relações e construir o diagrama de 
Hasse para elas.
 ■ Desenhar um diagrama PERT de uma tabela de tarefas.
 ■ Determinar relações duais e composições de relações.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Relação Binária
 ■ Tipos de Relação Binária
 ■ Propriedades das Relações
 ■ Representação de Relações
 ■ Relação de Ordem e Diagrama de Hasse
 ■ Diagrama PERT
 ■ Relações Duais
 ■ Composição de Relações
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E72
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
73
Introdução
Muitas vezes, existe uma ligação especial entre elementos de um mesmo conjunto, ou elementos
de conjuntos diferentes, que pode ser descrita por uma estrutura chamada relação. Em nosso
dia a dia sempre estamos utilizando o conceito de relações. Por exemplo, quando afirmamos
que José é supervisor de Paulo, estabelecemos a relação supervisor-funcionário. Essa conexão
diferencia o par (José, Paulo) de outros pares ordenados de pessoas porque existe uma relação
(supervisor-funcionário) que eles satisfazem. O análogo matemático seria distinguir determi-
nados pares ordenados de objetos de outros pares ordenados porque as componentes dos pares
diferenciados satisfazem alguma propriedade que os outros não satisfazem.
Vários conceitos matemáticos importantes podem ser vistos como relações, por exemplo
=, ≤, ∈, ⊆ . Exemplos similares de relações também ocorrem quando:
- comparamos objetos (maior, menor, igual);
- estabelecemos relação conjugal marido-mulher ou parental pai-mãe-filho;
- associamos funcionário-produtividade; cargo-salário-reajuste;
- associamos acadêmicos com disciplina; paciente-idade-peso-altura; etc.
Relações podem ser usadas para resolver problemas tais como:
- determinar quais pares de cidades são ligadas por uma linha de ônibus;
- estabelecer a relação entre presa-predador para espécies de determinada região;
- representar problemas de ordenação de tarefas, em que existem pré-requisitos e ordem
para a execução de tarefas em um processo;
- elaborar um modo de armazenar informações em bancos de dados computacionais.
Nesta unidade, vamos formalizar o conceito de relação e estudar métodos de representação,
tais como matrizes e grafos. As propriedades básicas de relações serão vistas, e certas classes e
operações importantes de relações serão introduzidas. Veremos posteriormente que uma gene-
ralização de uma relação binária forma a base para um banco de dados relacional, amplamente
utilizado em computação.
Relação Binária
Consideremos o exemplo da relação entre supervisor -
funcionário em uma empresa. Nesta relação, duas pes-
soas estarão relacionadas se uma for supervisora da
outra. O análogo matemático considera as relações
binárias para distinguir a ordem de pares de obje-
tos de outros pares de objetos e seus relacionamen-
tos.
2
INTRODUÇÃO
Sejam A e B conjuntos. Uma relação binária em A× B é um subconjunto de A× B. De-
notaremos R(A,B).
Logo, R é um conjunto de pares ordenados (a, b), onde a ∈ A e b ∈ B. Se (a, b) ∈ R, dizemos
que “a é R-relacionado a b”, escrevendo aRb. Se (a, b) /∈ R, escrevemos a/Rb.
Uma relação pode ser apresentada por meio do subconjunto dos pares ordenados de A×B,
ou por meio da definição de uma regra, em que os pares ordenados escolhidos são os que
satisfazem essa regra.
Exemplos:
1) Se temos os conjuntos X = {5, 3} e Y = {2, 3}, então o produto cartesiano X × Y =
{(5, 2), (5, 3), (3, 2), (3, 3)}. Se estamos interessados em distinguir pares ordenados iguais
(x = y), então devemos escolher o par (3, 3) que satisfaz essa relação. Mas se o interesse
fosse determinar os elementos em que a primeira coordenada é maior que a segunda
(x > y), então escolheŕıamos os pares (5, 2), (5, 3) e (3, 2).
2) Sejam A = {2, 5} e B = {1, 4, 6}. Então A×B = {(2, 1), (2, 4), (2, 6), (5, 1), (5, 4), (5, 6)}.
a) Definindo R como {(2, 4), (2, 6), (5, 6)}, podemos escrever R = {(x, y) ∈ A×B | x < y}.
Aqui temos que 2R4, 2R6 e 5R6, mas 5 /R1, por exemplo.
b) R1 = {(x, y) ∈ A× B| x+ y é par} = {(2, 4), (2, 6), (5, 1)}.
Se A e B são finitos e com número reduzido de elementos, podemos representar uma relação
de A em B por meio de um diagrama:
3
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E74
Domı́nio e Imagem de uma Relação
Seja R uma relação de A em B. O conjunto A é chamado de conjunto de partida, e B é
o conjunto de chegada, ou contradomı́nio de R. O domı́nio de R, denotado por Dom(R), é o
conjunto de todos os primeiros elementos dos pares ordenados que estão em R. A imagem de
uma relação R, denotada por Im(R), é o conjunto de todos os segundos elementos dos pares
ordenados que estão em R.
Observemos que um conjunto de pares ordenados R é uma relação de A para B se, e somente
se, Dom(R) ⊆ A e Im(R) ⊆ B.
Exemplos:
a) Dados A = {1, 3, 4, 9, 15, 16, 25} e B = {−2,−1, 0, 2, 3, 5, 6} e a relação R1 = {(x, y) ∈
A × B | x = y2}, explicite os elementos (pares) da relação e determine o conjunto de
partida, domı́nio, contradomı́nio e o conjunto imagem de R1.
• Temos que R1 é o conjunto dos pares (x, y) com x ∈ A e y ∈ B tal que x = y2 :
R1 = {(1,−1), (4,−2), (4, 2), (9, 3), (25, 5)}.
• Conjunto de partida: A
• Contradomı́nio (conjunto de chegada): B
• Domı́nio de R1 : Dom(R1)= {1, 4, 9, 25}.
• Conjunto imagem: Im(R1)= {-1, -2, 2, 3, 5 }.
b) Seja S = conjunto de todas as mulheres de Curitibae consideremos que xRy ↔ x é filha
de y, definida em S×S. Temos que o conjunto de partida é o conjunto S; o contradomı́nio
também é o conjunto S; o domı́nio de R é o conjunto das mulheres de Curitiba que tem
mãe em Curitiba, e o conjunto imagem (Im(R)) é o conjunto das mulheres de Curitiba
que têm filha(s) em Curitiba.
4
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
75
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E76
Exerćıcio:
Seja A o conjunto dos inteiros entre 0 e 10 (inclusive 10). Seja R o conjunto de todos os
pares da forma (x, x2 − 6) que estão em A× A. Determine Dom(R) e Im(R ).
Tipos de Relações Binárias
Seja R uma relação binária em A× B, com os pares ordenados da forma (x, y).
• R será do tipo um-para-um (ou injetiva, ou biuńıvoca), se cada primeira componente x
e cada segunda componente y do par ordenado aparece uma única vez na relação.
Exemplo: A relação [pessoa] e [número do CPF].
• R é do tipo um para muitos se alguma primeira componente x aparece em mais de um
par.
Exemplo: a relação [médico] e [pacientes].
• A relação é dita muitos para um se alguma segunda componente y aparecer em mais
de um par.
Exemplo: a relação [funcionários] e [supervisor].
• Finalmente, R é muitos para muitos se pelo menos um x aparece em mais de um par
e pelo menos um y também aparece em mais de um par.
Exemplo: A relação [fornecedores] e [produtos]: cada fornecedor fornece diferentes pro-
dutos e cada produto pode ser fornecido por diferentes fornecedores.
As figuras a seguir ilustram essas possibilidades:
Um para um Um para muitos
5
Propriedades das Relações
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
77
Muitos para um Muitos para muitos
Propriedades das Relações
Uma relação binária R entre elementos de um conjunto A pode ter certas propriedades. Con-
sideremos x, y e z ∈ A. Então, R pode ser:
1 Reflexiva xRx
2 Simétrica xRy ⇒ yRx
3 Anti-simétrica xRy e yRx ⇒ x = y
4 Transitiva xRy e yRz ⇒ xRz
Exemplos:
1) Seja Z o conjunto dos números inteiros, e seja R a relação ≤ sobre Z. Essa relação é:
• reflexiva: x ≤ x, para todo x ∈ Z;
• antissimétrica: (x ≤ y) ∧ (y ≤ x) ⇒ x = y, para todo x, y ∈ Z;
• transitiva: (x ≤ y) ∧ (y ≤ z) ⇒ x ≤ z, para todo x, y, z ∈ Z.
2) Seja A o conjunto das pessoas de uma cidade e R a relação sobre A definida por (xRy) ⇔
x é pai ou mãe de y. Então temos que:
• R não é reflexiva, pois nunca acontece de uma pessoa ser pai/mãe de si própria;
• R não é simétrica, pois, se x é pai ou mãe de y, então y não pode ser pai ou mãe de x;
• R também não é transitiva, pois se x é pai (ou mãe) de y e y é pai (ou mãe) de z, não
implica que x é pai (ou mãe) de z.
6
Muitos para um Muitos para muitos
Propriedades das Relações
Uma relação binária R entre elementos de um conjunto A pode ter certas propriedades. Con-
sideremos x, y e z ∈ A. Então, R pode ser:
1 Reflexiva xRx
2 Simétrica xRy ⇒ yRx
3 Anti-simétrica xRy e yRx ⇒ x = y
4 Transitiva xRy e yRz ⇒ xRz
Exemplos:
1) Seja Z o conjunto dos números inteiros, e seja R a relação ≤ sobre Z. Essa relação é:
• reflexiva: x ≤ x, para todo x ∈ Z;
• antissimétrica: (x ≤ y) ∧ (y ≤ x) ⇒ x = y, para todo x, y ∈ Z;
• transitiva: (x ≤ y) ∧ (y ≤ z) ⇒ x ≤ z, para todo x, y, z ∈ Z.
2) Seja A o conjunto das pessoas de uma cidade e R a relação sobre A definida por (xRy) ⇔
x é pai ou mãe de y. Então temos que:
• R não é reflexiva, pois nunca acontece de uma pessoa ser pai/mãe de si própria;
• R não é simétrica, pois, se x é pai ou mãe de y, então y não pode ser pai ou mãe de x;
• R também não é transitiva, pois se x é pai (ou mãe) de y e y é pai (ou mãe) de z, não
implica que x é pai (ou mãe) de z.
6
Representação de Relações
Além de representar as relações por meio das propriedades dos pares ordenados ou explicitando
todos os pares ordenados, também é posśıvel fazer a representação usando diagramas, matrizes
de zeros e uns ou grafos direcionados, quando os conjuntos são finitos.
• Diagramas de setas
Sejam A e B conjuntos finitos, e R uma relação de A para B.
A representação de R em diagramas de setas é feita escrevendo os elementos de A e os
elementos de B em dois discos (conjuntos) disjuntos, ligando com uma seta os elementos a ∈ A
que se relacionam com b ∈ B.
Exemplo
Dados A = {1, 2, 3, 4} e B = {x, y, z}, consideremos a relação de A para B dada por:
R = {(1, y), (1, z), (2, y), (3, z), (4, x), (4, z)}.
• Matrizes de Relações
Seja R uma relação de A em B (finitos). Formamos então uma matriz retangular, nomeando
as linhas pelos elementos de A e as colunas pelos elementos de B. Cada célula da matriz contém
um valor lógico: verdadeiro, que será representado por 1, ou falso, que será representado por
0. Colocamos 1 em cada posição da matriz em que a ∈ A está relacionado com b ∈ B, e 0
nas posições em que a ∈ A não se relaciona com b ∈ B. Essa matriz é chamada dematriz relação.
A matriz da relação R do exemplo anterior será dada por:
7
Representação de Relações
Além de representar as relações por meio das propriedades dos pares ordenados ou explicitando
todos os pares ordenados, também é posśıvel fazer a representação usando diagramas, matrizes
de zeros e uns ou grafos direcionados, quando os conjuntos são finitos.
• Diagramas de setas
Sejam A e B conjuntos finitos, e R uma relação de A para B.
A representação de R em diagramas de setas é feita escrevendo os elementos de A e os
elementos de B em dois discos (conjuntos) disjuntos, ligando com uma seta os elementos a ∈ A
que se relacionam com b ∈ B.
Exemplo
Dados A = {1, 2, 3, 4} e B = {x, y, z}, consideremos a relação de A para B dada por:
R = {(1, y), (1, z), (2, y), (3, z), (4, x), (4, z)}.
• Matrizes de Relações
Seja R uma relação de A em B (finitos). Formamos então uma matriz retangular, nomeando
as linhas pelos elementos de A e as colunas pelos elementos de B. Cada célula da matriz contém
um valor lógico: verdadeiro, que será representado por 1, ou falso, que será representado por
0. Colocamos 1 em cada posição da matriz em que a ∈ A está relacionado com b ∈ B, e 0
nas posições em que a ∈ A não se relaciona com b ∈ B. Essa matriz é chamada dematriz relação.
A matriz da relação R do exemplo anterior será dada por:
7
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E78
R x y z
1 0 1 1
2 0 1 0
3 0 0 1
4 1 0 1
• Grafos Orientados
Se A é finito e R é uma relação definida sobre A, então podemos descrever o conjunto (A,R)
por meio de um grafo (ou d́ıgrafo) de relações:
• Cada elemento de A é representado por um ponto, chamado de nó, nodo ou vértice do
grafo.
• Após escrevermos todos os elementos do conjunto A, cada par (x, y) da relação é repre-
sentado como uma seta, arco ou aresta, com origem em x e destino em y.
Exemplos:
1) Consideremos A = {2, 4, 7} e R = {(x, y) ∈ A | x ≥ y}. Então
R = {(2, 2), (4, 2), (4, 4), (7, 2), (7, 4), (7, 7)}.
O grafo para essa relação será:
2) Explicite a relação determinada por cada um dos grafos abaixo:
a)R1
8
Representação das Relações
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
79
A relação é: R1 = {(1, 1), (1, 2), (2, 1), (2, 2), (2, 3), (2, 4), (3, 4), (4, 1), (4, 4)}.
b) R2
A relação é: R2 = {(a, a), (a, c), (b, c), (c, b), (c, c), (d, c)}.
c) R3
A relação é: R3 = {(a, a), (b, b), (c, c)}.
3) Representar as relações R1, R2 e R3 usando matrizes de relações e diagramas de setas.9
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E80
• Matriz da relação:
a)
R1 1 2 3 4
1 1 1 0 0
2 1 1 1 1
3 0 0 0 1
4 1 0 0 1
b)
R2 a b c d
a 1 0 1 0
b 0 0 1 0
c 0 1 1 0
d 0 0 1 0
c)
R3 a b c
a 1 0 0
b 0 1 0
c 0 0 1
• Diagramas de setas:
# SAIBA MAIS #
O Problema do Caixeiro Viajante
O problema do caixeiro viajante é um problema muito famoso e muito estudado. Um
caixeiro viajante, partindo de sua cidade, deve visitar exatamente uma única vez cada cidade
de uma dada lista e retornar para casa, de modo que a distância total percorrida seja a menor
posśıvel. Este problema tem inúmeras aplicações práticas, como minimização de rotas de
véıculos, confecção de sistemas digitais, sequenciamento de atividades e outros.
No domı́nio da teoria dos grafos, cada cidade é identificada com um nó (ou vértice) e as
rotas que ligam cada par de nós são identicadas como arcos (ou arestas). A cada uma destas
10 Representação das Relações
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
81
linhas estarão associadas as distâncias (ou custos) correspondentes. Se o número de cidades
é pequeno, fica fácil determinar o melhor caminho, mas se o número de cidades aumenta, o
número de percursos alternativos cresce assustadoramente.
E se o caixeiro estivesse em Braśılia e quisesse percorrer as capitais de todos os 26 estados
brasileiros?
Em http://www.uff.br/sintoniamatematica/grandestemaseproblemas/grandestemaseproblemas-
html/audio-caixeiro-br.html você encontrará os cálculos do número total de formas de ordenar
as 26 cidades e o tempo que seria gasto para fazer as contas das distâncias de todos os percursos
posśıveis do caixeiro para visitar as 26 capitais. Os números são impressionantes!
FIM SAIBA MAIS
Relação de Ordem
Algumas relações organizam os objetos relacionados em
ńıveis. Podemos, por exemplo, organizar os funcionários
de uma empresa por faixa salarial, dizendo que xRy se, e
somente se, x está na mesma faixa salarial de y ou em faixa
salarial inferior à de y.
Outros exemplos seriam relacionar os moradores de um
prédio dizendo que xRy ⇔ x mora no mesmo andar de y
ou em andar abaixo ao de y; organizar as cidades de um
estado por sua área ou população; as tarefas que são pré-
requisitos para a fabricação de determinado artigo, ou o
processo desde a compra de um produto online até sua en-
trega.
A inclusão de conjuntos também organiza os objetos em ńıveis:
Propriedades da Inclusão:
1. Para todo conjunto A, temos que A ⊆ A.
2. Para quaisquer conjuntos A e B, se A ⊆ B e B ⊆ A, então A = B.
3. Para todos os conjuntos A,B,C, se A ⊆ B e B ⊆ C, então A ⊆ C.
Qualquer relação que tem as mesmas propriedades que a inclusão também organiza objetos
em ńıveis.
11
• Matriz da relação:
a)
R1 1 2 3 4
1 1 1 0 0
2 1 1 1 1
3 0 0 0 1
4 1 0 0 1
b)
R2 a b c d
a 1 0 1 0
b 0 0 1 0
c 0 1 1 0
d 0 0 1 0
c)
R3 a b c
a 1 0 0
b 0 1 0
c 0 0 1
• Diagramas de setas:
# SAIBA MAIS #
O Problema do Caixeiro Viajante
O problema do caixeiro viajante é um problema muito famoso e muito estudado. Um
caixeiro viajante, partindo de sua cidade, deve visitar exatamente uma única vez cada cidade
de uma dada lista e retornar para casa, de modo que a distância total percorrida seja a menor
posśıvel. Este problema tem inúmeras aplicações práticas, como minimização de rotas de
véıculos, confecção de sistemas digitais, sequenciamento de atividades e outros.
No domı́nio da teoria dos grafos, cada cidade é identificada com um nó (ou vértice) e as
rotas que ligam cada par de nós são identicadas como arcos (ou arestas). A cada uma destas
10
linhas estarão associadas as distâncias (ou custos) correspondentes. Se o número de cidades
é pequeno, fica fácil determinar o melhor caminho, mas se o número de cidades aumenta, o
número de percursos alternativos cresce assustadoramente.
E se o caixeiro estivesse em Braśılia e quisesse percorrer as capitais de todos os 26 estados
brasileiros?
Em http://www.uff.br/sintoniamatematica/grandestemaseproblemas/grandestemaseproblemas-
html/audio-caixeiro-br.html você encontrará os cálculos do número total de formas de ordenar
as 26 cidades e o tempo que seria gasto para fazer as contas das distâncias de todos os percursos
posśıveis do caixeiro para visitar as 26 capitais. Os números são impressionantes!
FIM SAIBA MAIS
Relação de Ordem
Algumas relações organizam os objetos relacionados em
ńıveis. Podemos, por exemplo, organizar os funcionários
de uma empresa por faixa salarial, dizendo que xRy se, e
somente se, x está na mesma faixa salarial de y ou em faixa
salarial inferior à de y.
Outros exemplos seriam relacionar os moradores de um
prédio dizendo que xRy ⇔ x mora no mesmo andar de y
ou em andar abaixo ao de y; organizar as cidades de um
estado por sua área ou população; as tarefas que são pré-
requisitos para a fabricação de determinado artigo, ou o
processo desde a compra de um produto online até sua en-
trega.
A inclusão de conjuntos também organiza os objetos em ńıveis:
Propriedades da Inclusão:
1. Para todo conjunto A, temos que A ⊆ A.
2. Para quaisquer conjuntos A e B, se A ⊆ B e B ⊆ A, então A = B.
3. Para todos os conjuntos A,B,C, se A ⊆ B e B ⊆ C, então A ⊆ C.
Qualquer relação que tem as mesmas propriedades que a inclusão também organiza objetos
em ńıveis.
11
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E82
• Matriz da relação:
a)
R1 1 2 3 4
1 1 1 0 0
2 1 1 1 1
3 0 0 0 1
4 1 0 0 1
b)
R2 a b c d
a 1 0 1 0
b 0 0 1 0
c 0 1 1 0
d 0 0 1 0
c)
R3 a b c
a 1 0 0
b 0 1 0
c 0 0 1
• Diagramas de setas:
# SAIBA MAIS #
O Problema do Caixeiro Viajante
O problema do caixeiro viajante é um problema muito famoso e muito estudado. Um
caixeiro viajante, partindo de sua cidade, deve visitar exatamente uma única vez cada cidade
de uma dada lista e retornar para casa, de modo que a distância total percorrida seja a menor
posśıvel. Este problema tem inúmeras aplicações práticas, como minimização de rotas de
véıculos, confecção de sistemas digitais, sequenciamento de atividades e outros.
No domı́nio da teoria dos grafos, cada cidade é identificada com um nó (ou vértice) e as
rotas que ligam cada par de nós são identicadas como arcos (ou arestas). A cada uma destas
10
linhas estarão associadas as distâncias (ou custos) correspondentes. Se o número de cidades
é pequeno, fica fácil determinar o melhor caminho, mas se o número de cidades aumenta, o
número de percursos alternativos cresce assustadoramente.
E se o caixeiro estivesse em Braśılia e quisesse percorrer as capitais de todos os 26 estados
brasileiros?
Em http://www.uff.br/sintoniamatematica/grandestemaseproblemas/grandestemaseproblemas-
html/audio-caixeiro-br.html você encontrará os cálculos do número total de formas de ordenar
as 26 cidades e o tempo que seria gasto para fazer as contas das distâncias de todos os percursos
posśıveis do caixeiro para visitar as 26 capitais. Os números são impressionantes!
FIM SAIBA MAIS
Relação de Ordem
Algumas relações organizam os objetos relacionados em
ńıveis. Podemos, por exemplo, organizar os funcionários
de uma empresa por faixa salarial, dizendo que xRy se, e
somente se, x está na mesma faixa salarial de y ou em faixa
salarial inferior à de y.
Outros exemplos seriam relacionar os moradores de um
prédio dizendo que xRy ⇔ x mora no mesmo andar de y
ou em andar abaixo ao de y; organizar as cidades de um
estado por sua área ou população; as tarefas que são pré-
requisitos para a fabricação de determinado artigo, ou o
processo desde a compra de um produto online até sua en-
trega.
Ainclusão de conjuntos também organiza os objetos em ńıveis:
Propriedades da Inclusão:
1. Para todo conjunto A, temos que A ⊆ A.
2. Para quaisquer conjuntos A e B, se A ⊆ B e B ⊆ A, então A = B.
3. Para todos os conjuntos A,B,C, se A ⊆ B e B ⊆ C, então A ⊆ C.
Qualquer relação que tem as mesmas propriedades que a inclusão também organiza objetos
em ńıveis.
11
Definição: Seja A um conjunto e R uma relação em A×A. Dizemos que R é uma relação
de ordem parcial em A se R é reflexiva, antissimétrica e transitiva.
(A,R) é chamado de conjunto parcialmente ordenado (também conhecido como poset -
partially ordered set), que será denotado por (A,�). Essa notação se deve ao fato da relação
de ordem mais comum em qualquer subconjunto de números reais, conhecida como ordem
usual, ser a relação “≤” (“menor ou igual”).
Se R é uma relação parcial de ordem sobre A, então os elementos a, b ∈ A se dizem com-
paráveis mediante R se a � b ou b � a.
Se dois elementos quaisquer de A forem comparáveis segundo a relação R, então R será
chamada de relação de ordem total sobre A, e A será chamado de conjunto totalmente
ordenado.
Exemplos:
1) Em R, xRy ⇔ x ≤ y é uma relação de ordem total:
• x ≤ x;
• x ≤ y e y ≤ x ⇒ x = y;
• x ≤ y e y ≤ z ⇒ x ≤ z.
2) Em N, xRy ⇔ x divide y é uma relação de ordem parcial em N :
• x divide x;
• se x divide y e y divide x, então x = y;
• se x divide y e y divide z, então x divide z.
A ordenação é parcial pois nem todos números naturais se relacionam segundo R. Os
números 5 e 13, por exemplo, não se relacionam pois 5 não divide 13.
3) A relação de divisibilidade não é uma ordem parcial no conjunto Z dos inteiros, pois não
satisfaz a propriedade antissimétrica. Por exemplo, temos que -3 divide 3 e 3 divide -3, mas
−3 �= 3.
Predecessores e Sucessores
Seja (A,�) um conjunto parcialmente ordenado. Se x � y, então x = y ou x �= y.
Se x � y mas x �= y,
• Escrevemos x ≺ y
• Chamamos x de predecessor de y
• Chamamos y de sucessor de x
12
Relação de Ordem
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
83
Definição: Seja A um conjunto e R uma relação em A×A. Dizemos que R é uma relação
de ordem parcial em A se R é reflexiva, antissimétrica e transitiva.
(A,R) é chamado de conjunto parcialmente ordenado (também conhecido como poset -
partially ordered set), que será denotado por (A,�). Essa notação se deve ao fato da relação
de ordem mais comum em qualquer subconjunto de números reais, conhecida como ordem
usual, ser a relação “≤” (“menor ou igual”).
Se R é uma relação parcial de ordem sobre A, então os elementos a, b ∈ A se dizem com-
paráveis mediante R se a � b ou b � a.
Se dois elementos quaisquer de A forem comparáveis segundo a relação R, então R será
chamada de relação de ordem total sobre A, e A será chamado de conjunto totalmente
ordenado.
Exemplos:
1) Em R, xRy ⇔ x ≤ y é uma relação de ordem total:
• x ≤ x;
• x ≤ y e y ≤ x ⇒ x = y;
• x ≤ y e y ≤ z ⇒ x ≤ z.
2) Em N, xRy ⇔ x divide y é uma relação de ordem parcial em N :
• x divide x;
• se x divide y e y divide x, então x = y;
• se x divide y e y divide z, então x divide z.
A ordenação é parcial pois nem todos números naturais se relacionam segundo R. Os
números 5 e 13, por exemplo, não se relacionam pois 5 não divide 13.
3) A relação de divisibilidade não é uma ordem parcial no conjunto Z dos inteiros, pois não
satisfaz a propriedade antissimétrica. Por exemplo, temos que -3 divide 3 e 3 divide -3, mas
−3 �= 3.
Predecessores e Sucessores
Seja (A,�) um conjunto parcialmente ordenado. Se x � y, então x = y ou x �= y.
Se x � y mas x �= y,
• Escrevemos x ≺ y
• Chamamos x de predecessor de y
• Chamamos y de sucessor de x
12• Se x ≺ y e se não existe outro elemento z entre x e y (não existe z tal que x ≺ z ≺ y),
então x é um predecessor imediato de y.
Exemplo:
Consideremos a relação x divide y em A = {1, 2, 3, 6, 12, 18}.
a) Escreva a relação R como um conjunto de pares ordenados.
R = {(1, 1), (1, 2), (1, 3), (1, 3), (1, 6), (1, 12), (1, 18), (2, 2), (2, 6), (2, 12), (2, 18), (3, 3), (3, 6),
(3, 12), (3, 18), (6, 6), (6, 12), (6, 18), (12, 12), (18, 18)}.
b) Escreva todos os predecessores de 6.
{1, 2, 3}.
c) Escreva todos os predecessores imediatos de 6.
{2, 3}. (1 não é predecessor imediato de 6, pois 1 divide 2 e 1 divide 3 também).
#PARA REFLETIR #
“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)
#FINAL PARA REFLETIR#
Diagrama de Hasse
Se A for um conjunto finito, podemos representar visualmente um conjunto parcialmente
ordenado (A,�) por um diagrama de Hasse (Helmut Hasse [1898-1979], matemático alemão).
Nesses diagramas, cada elemento de A é representado por um ponto, denominado nó ou vértice
do diagrama. Se x é um predecessor imediato de y, o nó que representa y é colocado acima do
nó que representa x, e os dois nós são ligados por um segmento de reta.
Como na relação de ordem valem as propriedades reflexiva e transitiva, podemos omitir as
arestas (ou setas) nos segmentos. Também, como a relação é antissimétrica, jamais ocorrerá
um ciclo, excetuando-se arcos com origem e destino num mesmo nodo. Logo, esses arcos podem
ser omitidos.
Para se construir Diagramas de Hasse:
13
• Se x ≺ y e se não existe outro elemento z entre x e y (não existe z tal que x ≺ z ≺ y),
então x é um predecessor imediato de y.
Exemplo:
Consideremos a relação x divide y em A = {1, 2, 3, 6, 12, 18}.
a) Escreva a relação R como um conjunto de pares ordenados.
R = {(1, 1), (1, 2), (1, 3), (1, 3), (1, 6), (1, 12), (1, 18), (2, 2), (2, 6), (2, 12), (2, 18), (3, 3), (3, 6),
(3, 12), (3, 18), (6, 6), (6, 12), (6, 18), (12, 12), (18, 18)}.
b) Escreva todos os predecessores de 6.
{1, 2, 3}.
c) Escreva todos os predecessores imediatos de 6.
{2, 3}. (1 não é predecessor imediato de 6, pois 1 divide 2 e 1 divide 3 também).
#PARA REFLETIR #
“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)
#FINAL PARA REFLETIR#
Diagrama de Hasse
Se A for um conjunto finito, podemos representar visualmente um conjunto parcialmente
ordenado (A,�) por um diagrama de Hasse (Helmut Hasse [1898-1979], matemático alemão).
Nesses diagramas, cada elemento de A é representado por um ponto, denominado nó ou vértice
do diagrama. Se x é um predecessor imediato de y, o nó que representa y é colocado acima do
nó que representa x, e os dois nós são ligados por um segmento de reta.
Como na relação de ordem valem as propriedades reflexiva e transitiva, podemos omitir as
arestas (ou setas) nos segmentos. Também, como a relação é antissimétrica, jamais ocorrerá
um ciclo, excetuando-se arcos com origem e destino num mesmo nodo. Logo, esses arcos podem
ser omitidos.
Para se construir Diagramas de Hasse:
13
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E84
• Se x ≺ y e se não existe outro elemento z entre x e y (não existe z tal que x ≺ z ≺ y),
então x é um predecessor imediato de y.
Exemplo:
Consideremos a relação x divide y em A = {1, 2, 3, 6, 12, 18}.
a) Escreva a relação R como um conjunto de pares ordenados.
R = {(1, 1), (1, 2), (1, 3), (1, 3), (1, 6), (1, 12), (1, 18), (2, 2), (2, 6), (2, 12), (2, 18), (3, 3), (3, 6),
(3, 12), (3, 18), (6, 6), (6, 12), (6, 18), (12, 12), (18, 18)}.
b) Escreva todos os predecessores de 6.
{1, 2, 3}.
c) Escreva todos os predecessores imediatos de 6.
{2, 3}. (1 não é predecessor imediato de 6, pois 1 divide 2 e 1 divide 3 também).
#PARA REFLETIR #
“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)
#FINAL PARA REFLETIR#
Diagrama de Hasse
Se A for um conjunto finito, podemos representar visualmente um conjunto parcialmenteordenado (A,�) por um diagrama de Hasse (Helmut Hasse [1898-1979], matemático alemão).
Nesses diagramas, cada elemento de A é representado por um ponto, denominado nó ou vértice
do diagrama. Se x é um predecessor imediato de y, o nó que representa y é colocado acima do
nó que representa x, e os dois nós são ligados por um segmento de reta.
Como na relação de ordem valem as propriedades reflexiva e transitiva, podemos omitir as
arestas (ou setas) nos segmentos. Também, como a relação é antissimétrica, jamais ocorrerá
um ciclo, excetuando-se arcos com origem e destino num mesmo nodo. Logo, esses arcos podem
ser omitidos.
Para se construir Diagramas de Hasse:
13
• Se x ≺ y e se não existe outro elemento z entre x e y (não existe z tal que x ≺ z ≺ y),
então x é um predecessor imediato de y.
Exemplo:
Consideremos a relação x divide y em A = {1, 2, 3, 6, 12, 18}.
a) Escreva a relação R como um conjunto de pares ordenados.
R = {(1, 1), (1, 2), (1, 3), (1, 3), (1, 6), (1, 12), (1, 18), (2, 2), (2, 6), (2, 12), (2, 18), (3, 3), (3, 6),
(3, 12), (3, 18), (6, 6), (6, 12), (6, 18), (12, 12), (18, 18)}.
b) Escreva todos os predecessores de 6.
{1, 2, 3}.
c) Escreva todos os predecessores imediatos de 6.
{2, 3}. (1 não é predecessor imediato de 6, pois 1 divide 2 e 1 divide 3 também).
#PARA REFLETIR #
“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)
#FINAL PARA REFLETIR#
Diagrama de Hasse
Se A for um conjunto finito, podemos representar visualmente um conjunto parcialmente
ordenado (A,�) por um diagrama de Hasse (Helmut Hasse [1898-1979], matemático alemão).
Nesses diagramas, cada elemento de A é representado por um ponto, denominado nó ou vértice
do diagrama. Se x é um predecessor imediato de y, o nó que representa y é colocado acima do
nó que representa x, e os dois nós são ligados por um segmento de reta.
Como na relação de ordem valem as propriedades reflexiva e transitiva, podemos omitir as
arestas (ou setas) nos segmentos. Também, como a relação é antissimétrica, jamais ocorrerá
um ciclo, excetuando-se arcos com origem e destino num mesmo nodo. Logo, esses arcos podem
ser omitidos.
Para se construir Diagramas de Hasse:
13
- O Diagrama de Hasse de um conjunto munido de uma relação de ordem (A,R) é o grafo
no qual os vértices são elementos de A.
- Existirá uma aresta de um vértice a para um vértice b sempre que a ≺ b.
- Ao invés de desenhar uma seta de a para b, coloca-se b mais alto do que a e desenha-se
uma linha entre eles.
- Fica subentendido que o movimento para cima indica sucessão.
Como exemplo, consideremos o conjunto parcialmente ordenado
({1, 2, 3},≤) = {(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)}.
Essa relação de ordem pode ser representada como grafo (esquerda) e como diagrama de Hasse
(direita).
O diagrama de Hasse de um conjunto parcialmente ordenado contém toda a informação
sobre a ordem parcial. Podemos reconstruir o conjunto de pares ordenados analisando o dia-
grama: observamos os pares (predecessor, sucessor) e consideramos as propriedades reflexiva,
antissimétrica e transitiva.
Exemplo:
Observando o diagrama de Hasse a seguir, podemos concluir que a relação de ordem � em
A = {a, b, c, d, e, f} estabelece o conjunto
{(a, a), (b.b), (c, c), (d, d), (e, e), (f, f), (a, b), (a, c), (a, d), (a, e), (d, e)}.
14
Relação de Ordem
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
85
- O Diagrama de Hasse de um conjunto munido de uma relação de ordem (A,R) é o grafo
no qual os vértices são elementos de A.
- Existirá uma aresta de um vértice a para um vértice b sempre que a ≺ b.
- Ao invés de desenhar uma seta de a para b, coloca-se b mais alto do que a e desenha-se
uma linha entre eles.
- Fica subentendido que o movimento para cima indica sucessão.
Como exemplo, consideremos o conjunto parcialmente ordenado
({1, 2, 3},≤) = {(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)}.
Essa relação de ordem pode ser representada como grafo (esquerda) e como diagrama de Hasse
(direita).
O diagrama de Hasse de um conjunto parcialmente ordenado contém toda a informação
sobre a ordem parcial. Podemos reconstruir o conjunto de pares ordenados analisando o dia-
grama: observamos os pares (predecessor, sucessor) e consideramos as propriedades reflexiva,
antissimétrica e transitiva.
Exemplo:
Observando o diagrama de Hasse a seguir, podemos concluir que a relação de ordem � em
A = {a, b, c, d, e, f} estabelece o conjunto
{(a, a), (b.b), (c, c), (d, d), (e, e), (f, f), (a, b), (a, c), (a, d), (a, e), (d, e)}.
14
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E86
Diagramas PERT
Problemas de ordenação de tarefas podem ser representados de maneira natural por ordens
parciais e diagramas de Hasse. Se A é um conjunto de tarefas a serem executadas, a ideia de x
como predecessor de y pode ser interpretada significando que a tarefa x tem que ser executada
antes da tarefa y, e a ordem parcial neste conjunto pode ser definida como:
x � y ↔(tarefa x = tarefa y) ou (a tarefa x é pré-requisito para tarefa y).
Além disso,
x ≺ y ↔ a tarefa x é pré-requisito para a tarefa y.
Consideremos o seguinte exemplo de agendamento de tarefas sobre a construção de cadeiras
de balanço:
Tarefa Pré-requisitos Horas para conclusão
1. Seleção da madeira N/A 3
2. Entalhamento dos arcos 1 4
3. Entalhamento do assento 1 6
4. Entalhamento do encosto 1 7
5. Entalhamento dos braços 1 3
6. Escolha do tecido N/A 1
7. Costura da almofada 6 7
8. Montagem: assento e encosto 3; 4 2
9. Fixação dos braços 5; 8 2
10. Fixação dos arcos 2; 8 3
11. Verniz 9; 10 5
12. Instalação da almofada 7; 11 0.5
Tabela 1: Agendamento de tarefas sobre a construção de cadeiras de balanço
Fonte: adaptada de Gersting (2009, p.218).
15
Diagrama PERT
Diagrama PERT
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
87
No diagrama de Hasse, para essa ordem parcial, os nós são as tarefas, os arcos as relações
de precedência, e a cada nó pode ser adicionado o tempo necessário para a conclusão da tarefa.
Também podemos orientar o diagrama da esquerda para a direita, para representar que x < y.
Tais diagramas para a ordenação de tarefas são chamados de diagramas PERT - Pro-
gram Evaluation and Review Technique, que significa técnica para análise e revisão do
programa.
Essa técnica foi desenvolvida para o Planejamento e Controle de Projetos em torno de
1950, para acompanhamento de construção de submarinos para a marinha americana. Como
exemplos de Projetos que podem utilizar PERT podemos citar:
1. Construção de uma planta, na área de engenharia.
2. Pesquisa e desenvolvimento de um produto.
3. Produção de filmes.
4. Construção de navios.
5. Instalação de um sistema de informações.
6. Condução de campanhas publicitárias, entre outras.
A figura a seguir mostra o diagrama PERT para o exemplo da produção das cadeiras de
balanço (aos nós foram associados os números das tarefas, ao invés dos nomes):
O tempo para a fabricação de uma cadeira de balanço é 38,5 horas se cada atividade for
realizada uma por vez. No entanto, existem atividades que podem ser realizadas simultanea-
mente com outras atividades, podendo com isso, reduzir o tempo necessário para se completar
o projeto.
Posteriormente faremos uma análise mais detalhada desse problema e do seu diagrama, para
responder questões tais como:
16
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E88
Relações Duais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
89
1) Qual o tempo total requerido para completar o projeto se nenhum atraso ocorrer?
2) Quais as atividades que não podem sofrer atrasos para que o projeto seja executado sem
atraso (“Atividades Gargalos”)?
Relações Duais
Se R é uma relação qualquer de A em B, podemos definir a relação dual de B em A, denotada
por R−1 da seguinte forma:
R−1 = {(b, a) | (a, b) ∈ R}.
Se R : A → B, então R−1 : B → A também pode ser chamada de relação inversa ou oposta.
Exemplo:
Se R = {(3, k), (m, 7), (n, p)}, então R−1 = {(k, 3), (7,m), (p, n)}.
Composição de Relações
Sejam A,B e C conjuntos, e seja R uma relação de A para B e S uma relação de B para C.
Então R e S podem originar uma relação de A para C, chamada de composição de R e S,
denotada por R ◦ S, definida por:
R ◦ S = {(a, c)| existe b ∈ B para o qual aRb e bRc}.
Observações:
1) Em computação e informática, é usual representar a operação de composição por “ ; ”.
Assim, se R : A → B e S : B → C, a composição R ◦ S : A → C é denotada por
R;S : A → C
2) Em muitos textos, a notação para a composição de R e S é (S ◦R).
17
3) R ◦ S é vazia se a interseção da imagem de R e do domı́nio de definição de S for vazia.
Exemplos:
1) Sejam A = {4, 5, 6}; B = {a, b, c, d} e C = {x, y, z} e consideremos as relações R : A → B
e S : B → C dadas por:
R = {(4, b), (5, c), (5, d), (6, a), (6, d)}
S = {(a, x), (a, z), (b, y)}
Observemos o diagrama de setas para R e S como na figura a seguir:
Temos que existe uma seta de 4 para b, que é seguida por uma seta de b para y. Logo, o
elemento 4 ∈ A está conectado ao elemento y ∈ C. Logo,
4(R ◦ S)y já que 4Rb e bSy.
Da mesma maneira, podemos observar que existe um caminho de 6 para a e de a para x,
bem como de a para z. Logo,
6(R ◦ S)x e 6(R ◦ S)z.
Nenhum outro elemento de A está conectado a um elemento de C, logo,
R ◦ S = {(4, y), (6, x), (6, z)}.
A composta R ◦ S pode ser representada por:
18
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIIU N I D A D E90
Relações Duais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
91
2) Consideremos o quadro que fornece a lista de funcionários de uma empresa relacionados
com o projeto que estão desenvolvendo e as funções que estão exercendo:
Nome Projeto Função
João Silva P1 Consultor
João Silva P2 Analista de Sistema
C. Xavier P2 Analista de Sistema
C. Xavier P3 Programador
Maria Souza P1 Progamador
Se consideramos as relações R1 = Nome→Projeto e R2 = Projeto→Função, temos que a
composta R = (R1 ◦R2) = Nome→Função.
Também podemos determinar R−1 : Função → Nome, que será dada por {(Consultor, João
Silva), (Analista de Sistema, João Silva), (Analista de Sistema, C. Xavier), (Programador, C.
Xavier), (Programador, Maria Souza)}.
Considerações Finais
Os elementos de um conjunto ou elementos de conjuntos diferentes muitas vezes apresentam
ligações especiais entre si que podem ser descritas como uma relação.
Nesta unidade, fizemos o estudo de relações, cujo conceito formal está muito próximo do
conceito intuitivo. No cotidiano, usamos a ideia de relação para grau de parentesco; fila de
pessoas para caixa de um banco; grupo de amigos em redes sociais etc. Podemos citar como
exemplos de relações já estudadas nas unidades anteriores a igualdade e a continência, para
Teoria dos Conjuntos, e a equivalência e implicação, para Lógica. Em computação e em in-
formática, muitas construções são baseadas em relações ou derivados de relações, podendo-se
exemplificar banco de dados relacional e Rede de Petri.
Nesta unidade, formalizamos o conceito de relação e estudamos métodos de representação,
tais como diagramas de flechas, matrizes e grafos. As propriedades básicas das relações também
foram vistas, e certas classes importantes de relações, como as relações de ordem, foram intro-
duzidas. Para as relações de ordem, em que valem as propriedades reflexiva, antissimétrica e
19
2) Consideremos o quadro que fornece a lista de funcionários de uma empresa relacionados
com o projeto que estão desenvolvendo e as funções que estão exercendo:
Nome Projeto Função
João Silva P1 Consultor
João Silva P2 Analista de Sistema
C. Xavier P2 Analista de Sistema
C. Xavier P3 Programador
Maria Souza P1 Progamador
Se consideramos as relações R1 = Nome→Projeto e R2 = Projeto→Função, temos que a
composta R = (R1 ◦R2) = Nome→Função.
Também podemos determinar R−1 : Função → Nome, que será dada por {(Consultor, João
Silva), (Analista de Sistema, João Silva), (Analista de Sistema, C. Xavier), (Programador, C.
Xavier), (Programador, Maria Souza)}.
Considerações Finais
Os elementos de um conjunto ou elementos de conjuntos diferentes muitas vezes apresentam
ligações especiais entre si que podem ser descritas como uma relação.
Nesta unidade, fizemos o estudo de relações, cujo conceito formal está muito próximo do
conceito intuitivo. No cotidiano, usamos a ideia de relação para grau de parentesco; fila de
pessoas para caixa de um banco; grupo de amigos em redes sociais etc. Podemos citar como
exemplos de relações já estudadas nas unidades anteriores a igualdade e a continência, para
Teoria dos Conjuntos, e a equivalência e implicação, para Lógica. Em computação e em in-
formática, muitas construções são baseadas em relações ou derivados de relações, podendo-se
exemplificar banco de dados relacional e Rede de Petri.
Nesta unidade, formalizamos o conceito de relação e estudamos métodos de representação,
tais como diagramas de flechas, matrizes e grafos. As propriedades básicas das relações também
foram vistas, e certas classes importantes de relações, como as relações de ordem, foram intro-
duzidas. Para as relações de ordem, em que valem as propriedades reflexiva, antissimétrica e
19
transitiva, vimos que a representação por grafos pode ser simplificada e várias setas podem ser
omitidas, o que foi definido como diagrama de Hasse. O caso particular de uma relação binária,
em que objetos estão relacionados por “pré-requisito” (ordenação parcial em um conjunto de
tarefas), foi exemplificado utilizando como representação o diagrama PERT. Esses diagramas
serão utilizados posteriormente para se determinar o tempo mı́nimo para completar um projeto
e seu caminho cŕıtico.
Por fim, as operações de dualidade, correspondendo à noção de “virar” ou “inverter” a
relação, bem como a composição de relações, ou seja, a aplicação de uma relação sobre o
resultado de outra, também foram apresentadas e exemplificadas.
Para fixar os conceitos apresentados, é importante que você faça as atividades de autoestudo
e esclareça as posśıveis dúvidas que possam surgir.
Atividades de Autoestudo
1) Considere a tabela que fornece a relação dos sete páıses melhores colocados no quadro de
medalhas geral das Olimṕıadas de Londres 2012, com o número de medalhas e o continente
a que pertencem:
Páıs Número de medalhas Continente
Estados Unidos 104 América
China 88 Ásia
Reino Unido 65 Europa
Rússia 82 Eurásia (Europa e Ásia)
Coreia do Sul 28 Ásia
Alemanha 44 Europa
França 34 Europa
Construir o diagrama de flechas e matriz para representar a relação R : A → B, sendo A o
conjunto dos sete páıses melhores colocados no quadro de medalhas geral das Olimṕıadas
de Londres 2012, e B o conjunto dos continentes.
2) Seja R a seguinte relação em A = {0, 1, 3, 4}:
R = {(0, 3), (0, 4), (3, 1), (3, 3), (3, 4)}.
a) Encontre a matriz da relação.
b) Construir o grafo orientado para a relação.
c) Determinar o domı́nio e a imagem de R.
d) Ache a relação composta R ◦R.
20
RELAÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610de 19 de fevereiro de 1998.
IIIU N I D A D E92
transitiva, vimos que a representação por grafos pode ser simplificada e várias setas podem ser
omitidas, o que foi definido como diagrama de Hasse. O caso particular de uma relação binária,
em que objetos estão relacionados por “pré-requisito” (ordenação parcial em um conjunto de
tarefas), foi exemplificado utilizando como representação o diagrama PERT. Esses diagramas
serão utilizados posteriormente para se determinar o tempo mı́nimo para completar um projeto
e seu caminho cŕıtico.
Por fim, as operações de dualidade, correspondendo à noção de “virar” ou “inverter” a
relação, bem como a composição de relações, ou seja, a aplicação de uma relação sobre o
resultado de outra, também foram apresentadas e exemplificadas.
Para fixar os conceitos apresentados, é importante que você faça as atividades de autoestudo
e esclareça as posśıveis dúvidas que possam surgir.
Atividades de Autoestudo
1) Considere a tabela que fornece a relação dos sete páıses melhores colocados no quadro de
medalhas geral das Olimṕıadas de Londres 2012, com o número de medalhas e o continente
a que pertencem:
Páıs Número de medalhas Continente
Estados Unidos 104 América
China 88 Ásia
Reino Unido 65 Europa
Rússia 82 Eurásia (Europa e Ásia)
Coreia do Sul 28 Ásia
Alemanha 44 Europa
França 34 Europa
Construir o diagrama de flechas e matriz para representar a relação R : A → B, sendo A o
conjunto dos sete páıses melhores colocados no quadro de medalhas geral das Olimṕıadas
de Londres 2012, e B o conjunto dos continentes.
2) Seja R a seguinte relação em A = {0, 1, 3, 4}:
R = {(0, 3), (0, 4), (3, 1), (3, 3), (3, 4)}.
a) Encontre a matriz da relação.
b) Construir o grafo orientado para a relação.
c) Determinar o domı́nio e a imagem de R.
d) Ache a relação composta R ◦R.
20e) Ache a relação dual R
−1.
3) Para cada uma das relações binárias R a seguir, definidas em N, decida quais dos pares
ordenados dados pertencem a R :
a) xRy ↔ x+ y ≤ 6; (1,4), (2,4), (2,5), (3,3), (4,1), (4,3).
b) xRy ↔ x = y − 2; (0,2), (1,3), (3,1), (5,2), (6,8), (7,5), (9,11).
c) xRy ↔ 2x+ 3y = 10; (5,0), (2,2), (3,1), (1,3).
4) Classifique cada das uma das relações a seguir como um para um, um para muitos, muitos
para um ou muitos para muitos:
a) R = {(1, 3), (1, 4), (1, 7), (2, 3), (4, 3)}.
b) R = {(2, 7), (4, 5), (3, 6), (7, 10)}.
c) R = {(2, 5), (6, 1), (8, 6), (9, 1)}.
d) R = (2, 7), (8, 4), (2, 5), (7, 6), (10, 1).
e) A = conjunto de todos os homens em Belo Horizonte; xRy ↔ x é pai de y.
f) B = conjunto dos alunos de uma turma; xRy ↔ x tem a mesma altura que y.
5) Desenhe o diagrama de Hasse para as seguintes ordens parciais:
a) A = {a, b, c}
R = {(a, a), (b, b), (c, c), (a, b), (b, c), (a, c)}.
b) A = {1, 2, 3, 4}
R = {(1, 1), (2, 2), (3, 3), (4, 4), (1, 2), (1, 3)}
c) A = {∅, {a}, {a, b}, {c}, {a, c}, {b}}
XRY ↔ X ⊆ Y.
6) Considerando os diagramas de Hasse abaixo, listar os pares ordenados que pertencem à
relação de ordem correspondente:
a) b) c)
21
93 
e) Ache a relação dual R−1.
3) Para cada uma das relações binárias R a seguir, definidas em N, decida quais dos pares
ordenados dados pertencem a R :
a) xRy ↔ x+ y ≤ 6; (1,4), (2,4), (2,5), (3,3), (4,1), (4,3).
b) xRy ↔ x = y − 2; (0,2), (1,3), (3,1), (5,2), (6,8), (7,5), (9,11).
c) xRy ↔ 2x+ 3y = 10; (5,0), (2,2), (3,1), (1,3).
4) Classifique cada das uma das relações a seguir como um para um, um para muitos, muitos
para um ou muitos para muitos:
a) R = {(1, 3), (1, 4), (1, 7), (2, 3), (4, 3)}.
b) R = {(2, 7), (4, 5), (3, 6), (7, 10)}.
c) R = {(2, 5), (6, 1), (8, 6), (9, 1)}.
d) R = (2, 7), (8, 4), (2, 5), (7, 6), (10, 1).
e) A = conjunto de todos os homens em Belo Horizonte; xRy ↔ x é pai de y.
f) B = conjunto dos alunos de uma turma; xRy ↔ x tem a mesma altura que y.
5) Desenhe o diagrama de Hasse para as seguintes ordens parciais:
a) A = {a, b, c}
R = {(a, a), (b, b), (c, c), (a, b), (b, c), (a, c)}.
b) A = {1, 2, 3, 4}
R = {(1, 1), (2, 2), (3, 3), (4, 4), (1, 2), (1, 3)}
c) A = {∅, {a}, {a, b}, {c}, {a, c}, {b}}
XRY ↔ X ⊆ Y.
6) Considerando os diagramas de Hasse abaixo, listar os pares ordenados que pertencem à
relação de ordem correspondente:
a) b) c)
21
7) Determine o diagrama de Hasse e a matriz da relação de ordem que tem o seguinte grafo:
a) b)
8) (Adaptado de Gersting, J. 2009, p.232) Uma biblioteca mantém um banco de dados sobre
seus livros. As informações sobre os livros incluem o t́ıtulo, o ISBN, a editora e o assunto.
Considere a seguinte tabela:
Livro
Tı́tulo ISBN Editora Assunto
Springtime Gardening 0-816-35421-9 Harding Natureza
Early Tang Paintings 0-364-87547-X Bellman Arte
Birds of Africa 0-115-01214-1 Loranie Natureza
Springtime Gardening 0-56-000142-8 Swift-Key Natureza
Baskets for Today 0-816-53705-4 Harding Arte
Autumn Annuals 0-816-88506-0 Harding Natureza
a) Classifique as relações a seguir quanto ao tipo:
“Tı́tulo - ISBN” ; “Tı́tulo - Assunto”; “Editora - Assunto.”
b) Construa o diagrama de flechas e a matriz da relação “Editora - Assunto.”
c) Supondo R a relação “Tı́tulo - Editora” e S a relação “Editora - Assunto”, determinar os
pares da relação composta R ◦ S.
9) Seja R uma relação sobre um conjunto A. R é irreflexiva se, e somente se, ela não possui
pares da forma (a, a), ou seja, dado a ∈ A, a/Ra. R é chamada assimétrica se, e somente
se, dados a, b ∈ A, (a, b) ∈ R → (b, a) �∈ R.
a) Seja A um conjunto de caixas e R, a relação sobre A, tal que aRb se, e somente se, a
caixa a cabe dentro da caixa b. Verifique se essa é uma relação irreflexiva, assimétrica ou
transitiva.
22
95 
b) Verifique se cada uma das relações abaixo, definidas no conjunto de habitantes da Terra
(com os significados usuais da linguagem coloquial), é reflexiva, simétrica, transitiva,
irreflexiva ou assimétrica.
i) “x é primo de y”.
ii) “x é filho de y”
10) Construir o diagrama PERT para as atividades envolvidas no projeto “Oferecer um Jan-
tar”, descritas na tabela abaixo:
Tarefa Pré-requisitos
1. Decidir oferecer o jantar Nenhum
2. Comprar ingredientes 1
3. Fazer lista de convidados 1
4. Fazer o jantar 2
5. Expedir os convites 3
6. Colocar casa em ordem 4
7. Recepcionar convidados 5; 6
8. Servir o jantar 7
Leitura Complementar
Abelhas resolvem dilema da computação
O Problema do Caixeiro Viajante, como visto anteriormente, consiste na procura de um
circuito que possua a menor distância, começando numa cidade qualquer, entre várias, visi-
tando cada cidade precisamente uma vez e regressando à cidade inicial. Apesar do enunciado
do problema parecer relativamente simples, apresenta elevada complexidade computacional
(quando todas as alternativas posśıveis são analisadas, a complexidade é fatorial!). Mesmo os
grandes supercomputadores podem ficar ocupados por dias tentando achar a solução para um
número relativamente pequeno de cidades. Muitos problemas combinatórios envolvem tantas
alternativas de solução quanto a do caixeiro viajante, de modo que ele é uma “unidade de
medida” para se determinar a complexidade computacional dos problemas combinatórios que
ocorrem em engenharia e em trabalhos cient́ıficos.
Acontece que uma equipe de estudiosos da Universidade de Londres, na Inglaterra, liderados
pelo professor Lars Chittka, descobriu que as abelhas, que têm um cérebro um pouco maior do
que a cabeça de um alfinete, encontram a solução para este problema quando precisam achar a
rota mais eficiente para visitar diversas flores. Segundo o professor, as abelhas têm que associar
centenas de flores de uma maneira que minimize a distância da viagem e, em seguida, encontrar
23
b) Verifique se cada uma das relações abaixo, definidas no conjunto de habitantes da Terra
(com os significados usuais da linguagem coloquial), é reflexiva, simétrica, transitiva,
irreflexiva ou assimétrica.
i)“x é primo de y”.
ii) “x é filho de y”
10) Construir o diagrama PERT para as atividades envolvidas no projeto “Oferecer um Jan-
tar”, descritas na tabela abaixo:
Tarefa Pré-requisitos
1. Decidir oferecer o jantar Nenhum
2. Comprar ingredientes 1
3. Fazer lista de convidados 1
4. Fazer o jantar 2
5. Expedir os convites 3
6. Colocar casa em ordem 4
7. Recepcionar convidados 5; 6
8. Servir o jantar 7
Leitura Complementar
Abelhas resolvem dilema da computação
O Problema do Caixeiro Viajante, como visto anteriormente, consiste na procura de um
circuito que possua a menor distância, começando numa cidade qualquer, entre várias, visi-
tando cada cidade precisamente uma vez e regressando à cidade inicial. Apesar do enunciado
do problema parecer relativamente simples, apresenta elevada complexidade computacional
(quando todas as alternativas posśıveis são analisadas, a complexidade é fatorial!). Mesmo os
grandes supercomputadores podem ficar ocupados por dias tentando achar a solução para um
número relativamente pequeno de cidades. Muitos problemas combinatórios envolvem tantas
alternativas de solução quanto a do caixeiro viajante, de modo que ele é uma “unidade de
medida” para se determinar a complexidade computacional dos problemas combinatórios que
ocorrem em engenharia e em trabalhos cient́ıficos.
Acontece que uma equipe de estudiosos da Universidade de Londres, na Inglaterra, liderados
pelo professor Lars Chittka, descobriu que as abelhas, que têm um cérebro um pouco maior do
que a cabeça de um alfinete, encontram a solução para este problema quando precisam achar a
rota mais eficiente para visitar diversas flores. Segundo o professor, as abelhas têm que associar
centenas de flores de uma maneira que minimize a distância da viagem e, em seguida, encontrar
23
de forma confiável o caminho de casa. Na pesquisa foram usadas flores artificiais controladas
pelo computador, e observou-se que depois de explorar a localização das flores, elas conseguiam
determinar uma rota mais curta. A confirmação de que a rota estabelecida pelas abelhas era
a mais curta foi feita por um computador que calculou o menor caminho posśıvel, e essa foi a
parte mais dif́ıcil da pesquisa, devido ao tempo que o computador levou para fazer os cálculos.
O estudo proporcionará aplicações em situações reais em que se busca um caminho mı́nimo
e mais eficiente para resolver um problema do tipo “caixeiro viajante”.
Fonte: Abelhas...(2010, online).
Material Complementar: Livro
Fundamentos Matemáticos para a Ciência da
Computação
Autora: Judith L. Gersting
Editora: LTC
Sinopse: A matemática discreta continua sendo um ele-
mento importante no ensino da Ciência da Computação.
O livro pretende oferecer aos estudantes os instrumentos
para que desenvolvam um vocabulário preciso, recursos
para notação, abstrações úteis e racioćınio formal, desde
o ińıcio de sua formação. Explicações claras e exatas são
mais importantes do que nunca, por isso prioriza-se o es-
tilo simples.
24
97 
de forma confiável o caminho de casa. Na pesquisa foram usadas flores artificiais controladas
pelo computador, e observou-se que depois de explorar a localização das flores, elas conseguiam
determinar uma rota mais curta. A confirmação de que a rota estabelecida pelas abelhas era
a mais curta foi feita por um computador que calculou o menor caminho posśıvel, e essa foi a
parte mais dif́ıcil da pesquisa, devido ao tempo que o computador levou para fazer os cálculos.
O estudo proporcionará aplicações em situações reais em que se busca um caminho mı́nimo
e mais eficiente para resolver um problema do tipo “caixeiro viajante”.
Fonte: Abelhas...(2010, online).
Material Complementar: Livro
Fundamentos Matemáticos para a Ciência da
Computação
Autora: Judith L. Gersting
Editora: LTC
Sinopse: A matemática discreta continua sendo um ele-
mento importante no ensino da Ciência da Computação.
O livro pretende oferecer aos estudantes os instrumentos
para que desenvolvam um vocabulário preciso, recursos
para notação, abstrações úteis e racioćınio formal, desde
o ińıcio de sua formação. Explicações claras e exatas são
mais importantes do que nunca, por isso prioriza-se o es-
tilo simples.
24
MATERIAL COMPLEMENTAR
U
N
ID
A
D
E IV
Professora Me. Edvania Gimenes de Oliveira Godoy
FUNÇÕES
Objetivos de Aprendizagem
 ■ Determinar se uma relação binária é uma função.
 ■ Verificar se uma função é sobrejetora ou injetora.
 ■ Gerar funções compostas.
 ■ Verificar se uma função tem inversa, e caso tenha, encontrá-la.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Funções
 ■ Domínio, Contradomínio e Imagem de uma Função
 ■ Igualdade de Funções
 ■ Gráfico de Funções
 ■ Função Piso e Função Teto
 ■ Propriedades de Funções
 ■ Função Composta
 ■ Funções Inversas
INTRODUÇÃOIntrodução
Um dos conceitos fundamentais em Matemática é o de função. Função é um tipo particular de
relação, que, por possuir uma propriedade especial, recebe denominação diferente.
Em matemática, sempre temos interesse em saber como certas variáveis se relacionam entre
si, mas relações funcionais ocorrem em todos os ramos do conhecimento humano. Em nosso
cotidiano, usamos constantemente o conceito de função, podendo citar como exemplos:
- a dose de um remédio para uma criança é medida em função do seu peso;
- o desconto do imposto de renda é calculado em função da faixa salarial;
- o preço a pagar por combust́ıvel é orçado em função da quantidade abastecida;
- o preço de um ônibus fretado é estimado em função da distância percorrida;
- a velocidade de um foguete varia em função de sua carga;
- o salário de um vendedor comissionado é estabelecido em função do volume de vendas;
etc.
Além da importância para a Matemática em geral, o conceito de função também é parti-
cularmente importante para computação e informática, mas nessas áreas o interesse está nas
funções discretas. A variável discreta é a que assume valores em um subconjunto dos números
naturais (ou inteiros), e uma variável cont́ınua é a que assume valores em um subconjunto
dos números reais. A sáıda gerada por um programa de computador, por exemplo, pode ser
considerada como uma função dos valores obtidos na entrada.
Nesta unidade faremos o estudo de funções, determinando seu domı́nio, contradomı́nio e ima-
gem. A visualização geométrica de uma função será feita por meio dos gráficos, que permitem
observar melhor o comportamento da função. Como as funções piso e teto são particularmente
interessantes para a área de computação, serão analisadas separadamente.
As propriedades das funções serão estabelecidas e abordaremos também os conceitos de
função composta e função inversa, estudados anteriormente em relações. A composição de
funções tem por objetivo construir uma nova função a partir de funções conhecidas.
Funções
Intuitivamente, podemos pensar em função como uma
“lei” (ou regra de correspondência), que associa a cada
elemento de um dado conjunto, um único elemento em
um outro conjunto. Essa “lei”, nada mais é do que
uma relação especial entre os dois conjuntos considera-
dos.
2
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
101
Formalmente, dados dois conjuntos A e B não vazios, uma função f de A em B é uma
relação que associa a cada elemento x ∈ A, um único elemento y ∈ B.
- Funções também são chamadas de mapeamentos ou transformações.
As funções podem ser descritas por meio de tabelas, gráficos, leis de formação, fórmulas,
ou mesmo por palavras.
- Se f é uma função de A para B, escreve-se f : A → B e se lê: “f é uma função de A em
B ou “f leva (ou mapeia)A em B.”
- Se a ∈ A, então f(a) (lê-se f de a) denota o único elemento de B que f associa a a. f(a)
é chamado imagem de a por f.
De maneira geral, representamos como y = f(x) o único elemento y ∈ B associado a
x ∈ a.
Notação:
Em geral, usaremos letras minúsculas, como f , g, h etc., para relações que são funções.
# REFLITA #
Relações “vários-para-vários” e “um-para-vários” não são funções. (Por quê?)
Fonte: A autora.
# FIM REFLITA #
3
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E102
Formalmente, dados dois conjuntos A e B não vazios, uma função f de A em B é uma
relação que associa a cada elemento x ∈ A, um único elemento y ∈ B.
- Funções também são chamadas de mapeamentos ou transformações.
As funções podem ser descritas por meio de tabelas, gráficos, leis de formação, fórmulas,
ou mesmo por palavras.
- Se f é uma função de A para B, escreve-se f : A → B e se lê: “f é uma função de A em
B ou “f leva (ou mapeia) A em B.”
- Se a ∈ A, então f(a) (lê-se f de a) denota o único elemento de B que f associa a a. f(a)
é chamado imagem de a por f.
De maneira geral, representamos como y = f(x) o único elemento y ∈ B associado a
x ∈ a.
Notação:
Em geral, usaremos letras minúsculas, como f , g, h etc., para relações que são funções.
# REFLITA #
Relações “vários-para-vários” e “um-para-vários” não são funções. (Por quê?)
Fonte: A autora.
# FIM REFLITA #
3
Formalmente, dados dois conjuntos A e B não vazios, uma função f de A em B é uma
relação que associa a cada elemento x ∈ A, um único elemento y ∈ B.
- Funções também são chamadas de mapeamentos ou transformações.
As funções podem ser descritas por meio de tabelas, gráficos, leis de formação, fórmulas,
ou mesmo por palavras.
- Se f é uma função de A para B, escreve-se f : A → B e se lê: “f é uma função de A em
B ou “f leva (ou mapeia) A em B.”
- Se a ∈ A, então f(a) (lê-se f de a) denota o único elemento de B que f associa a a. f(a)
é chamado imagem de a por f.
De maneira geral, representamos como y = f(x) o único elemento y ∈ B associado a
x ∈ a.
Notação:
Em geral, usaremos letras minúsculas, como f , g, h etc., para relações que são funções.
# REFLITA #
Relações “vários-para-vários” e “um-para-vários” não são funções. (Por quê?)
Fonte: A autora.
# FIM REFLITA #
3
Domínio, Contradomínio e Imagem de uma Função
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
103
É muito proveitoso considerar uma função como uma
máquina. Se x estiver no domı́nio da função f , quando x
entrar na máquina, ele será aceito como input, e a máquina
produzirá um output f(x) de acordo com a lei que define
a função. Assim, podemos pensar o domı́nio como o con-
junto de todos os inputs, enquanto a imagem seria como o
conjunto de todos os outputs posśıveis.
Domı́nio, Contradomı́nio e Imagem de uma Função
Como funções são um tipo particular de relações, então todos os conceitos introduzidos para
relações (como domı́nio, composição, inversa etc.) valem também para funções.
Seja f uma função definida de A para B.
- Pela definição de função, temos que o domı́nio de f é sempre o conjunto de partida A
(Dom(f) = A).
- O conjunto de chegada B é denominado contradomı́nio de f.
- O conjunto imagem de f é o conjunto de todas as imagens dos elementos de A, ou seja,
Im(f) = {f(x) : x ∈ A}.
Exemplos:
1) Sejam A = {1, 2, 3, 4} e B = {a, b, c, d} conjuntos, e consideremos f a relação definida
por f = {(1, a), (2, a), (3, d), (4, c)}.
Assim, os valores de f de x, para cada x ∈ A são: f(1) = a, f(2) = a, f(3) = d, f(4) = c.
Como para cada x ∈ A existe um único y = f(x) ∈ B, então f é uma função.
4
Dom(f) = {1, 2, 3, 4} e Im(f) = {a, c, d}.
2) Seja f : R → R definida por f = {(x, x2) | x ∈ R}. Para cada x ∈ R, temos que existe
um único y = f(x) ∈ R tal que y = x2. Logo, f é uma função com Dom(f) = R e Im(f) = R+.
3) Sejam A,B = R. A relação g : A → B definida por g = {(x2, x) | x ∈ A} não é função,
pois para um mesmo valor de x ∈ A vão corresponder dois valores de y ∈ B. Por exemplo, ao
número 4 ∈ A estão associados os números −2 e 2 ∈ B.
Podemos resumir dizendo que uma função consiste em três coisas:
1. um domı́nio Dom
2. uma imagem Im
3. uma regra que para cada x ∈ Dom, especifica um único elemento f(x) em Im.
Exerćıcio:
Quais das relações abaixo são funções do domı́nio no contradomı́nio indicado? Justifique se
alguma não for função.
a) f : A → B, onde A é o conjunto de todas as pessoas residentes em sua cidade, B é o
conjunto de todos os números de CPF e f associa a cada pessoa seu CPF.
b) g : N → N, onde g é definida por g(x) = x− 5.
c) h : S → T, onde S = T = {3, 4, 5} e h = {(3, 3), (4, 5), (5, 3), (4, 3)}.
d) f : R → R definida por f(x) = 3− 2x.
e) g : S → T, onde S = {2010, 2011, 2012, 2013}, T = {96.804, 159.125, 177.794, 212.566}, e
g é definida pelo gráfico abaixo.
5
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E104
Função de Várias Variáveis
A definição de função também inclui funções de mais de uma variável: podemos ter uma
função f : A1×A2×A3×· · ·×An → B que associa a cada n-upla de elementos (a1, a2, a3, · · · , an), ai ∈
A, um único elemento b ∈ B.
Exemplos:
1) Seja f : Z × Z → N, onde f é definida por f(x, y) = x2 + 2y2. Então f(−2, 1) =
(−2)2 + 2.(1)2 = 6.
2) g : N2 → N3, onde g é dada por g(x, y) = (2y, x, 0). Então g(2, 5) = (10, 2, 0) e g(0, 1) =
(2, 0, 0).
Os elementos no domı́nio e no contradomı́nio não precisam ser necessariamente números.
Por exemplo, se A é o conjunto de todas as cadeias de caracteres de comprimento finito e f
a associação que leva cadeia em seu número de caracteres, então f é uma função com domı́nio
A e contradomı́nio N (considerando a “cadeia vazia” que tem zero caractere).
Igualdade de Funções
Duas funções são ditas iguais se têm o mesmo domı́nio, o mesmo contradomı́nio e a mesma
associação de valores do contradomı́nio a valores do domı́nio.
Exemplo:
SejamA = {2, 3, 6} eB = {4, 9, 36}.A função f : A → B definida por f = {(2, 4), (3, 9), (6, 36)}
e g : A → B definida por g(x) = x2 são iguais.
Gráfico de Funções
Seja f uma função do conjunto A para um conjunto B. O gráfico da função f é o conjunto de
todos os pares ordenados {(x, y) | x ∈ A e y = f(x)}.
Como o gráfico de f é um subconjunto do produto cartesiano A×B, podemos representá-lo
no diagrama coordenado de A× B.
6
Igualdade de Funções
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
105
Um eletrocardiograma (ECG), por exemplo, é o gráfico
que representa uma função: mostra a atividade elétrica em
função do tempo.
Exemplos:
1) F : Z → Z, F (x) = x2.
Gráfico de F :
2) f : A = {−1, 2, 4, 5} → B = Z definida por f(x) = x− 2.
Temos que f(−1) = −3, f(2) = 0, f(4) = 2 e f(5) = 3. O gráfico de f é dado por:
7
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E106
3) Se g : R → R definida por g(x) = x− 2, então o gráfico de g será:
Podemos observar que apesar das expressões f e g serem iguais, como os domı́nios são
diferentes, o conjunto de pares ordenados é modificado. O gráfico de f é formado por pontos
discretos (separados), enquanto o gráfico de g é cont́ınuo.
Segundo Gersting (2013), a maior parte das funções que interessa para a computação são
discretas. Em um computador digital, a informação é processada em uma série de passos
distintos (discretos). Mesmo em situações nas quais uma quantidade varia continuamente em
relaçãoa uma outra, aproximamos pegando dados discretos em intervalos pequenos, como o
gráfico da função f(x) é aproximado pelo gráfico de g(x) abaixo, por exemplo.
8
Igualdade de Funções
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
107
Função Piso e Função Teto
A Função Piso atribui a cada número real x o maior inteiro que é menor ou igual a x. É
denotada por �x�.
Exemplos:
a) �2, 57� = 2, pois 2 ≤ 2, 57 < 3.
b) �5, 99� = 5, pois 5 ≤ 5, 99 < 6.
c) �−217, 5� = −218, pois −218 ≤ −217, 5 < −217.
d) �8� = 8, pois 8 ≤ 8.
A Função Teto atribui a cada número real x o menor inteiro que é maior ou igual a x. É
denotada por �x�.
Exemplos:
a) �2, 57� = 3, pois 2 < 2, 57 ≤ 3.
b) �5, 12� = 6, pois 5 < 5, 12 ≤ 6.
c) �8� = 8, pois 8 ≤ 8.
d) �−156, 22� = −156, pois −157 < −156, 22 ≤ −156.
Gráficos:
Função Piso Função Teto
Consideremos o seguinte problema:
9
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E108
Propriedades de Funções
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
109
Dados armazenados em uma mı́dia ou transmitidos em uma rede são normalmente repre-
sentados por uma string de bytes. Cada byte possui 8 bits. Quantos bytes são necessários para
codificar 329 bits de dados?
Podemos resolver o problema usando a função teto:
⌈329
8
⌉
= �41, 125� = 42.
Propriedades de Funções
ID da Imagem: 189533801
Funções Injetoras
Pela definição de função, temos que existe uma única imagem para cada elemento do
domı́nio. No entanto, um determinado elemento da imagem pode ter mais de uma imagem
inversa.
Uma função f : A → B é dita injetora (ou injetiva ou um para um) se elementos
diferentes de A têm imagens distintas em B .
∀x1 ∈ A, ∀x2 ∈ A, (x1 �= x2) ⇒ f(x1) �= f(x2).
A ideia de função injetora é a mesma de um-para-um para relações binárias em geral, com
a diferença que todos os elementos do conjunto de partida têm que aparecer como a primeira
componente do par ordenado.
Por exemplo, sejam A = {a, b, c, d}, B = {0, 1, 2, 3, 4, 5} e f : A → B definida por f :
{(a, 4), (b, 5), (c, 1), (d, 3)}. Temos que f é uma função injetora.
10
Funções Sobrejetoras
Uma função f : A → B é dita sobrejetora (ou sobrejetiva) se sua imagem é igual ao seu
contradomı́nio, ou seja, se todo elemento b ∈ B possui um elemento correspondente a ∈ A.
∀y ∈ B, ∃ x ∈ A | f(x) = y.
Por exemplo, g : A = {a, b, c, d} → B = {0, 1, 2} definida por g : {(a, 2), (b, 1), (c, 0), (d, 1)}
é sobrejetora (mas não é injetora... Por quê?).
Funções Bijetoras
Uma função f : A → B é dita bijetora (ou bijetiva ou uma bijeção) se for, ao mesmo
tempo, injetora e sobrejetora.
11
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E110
Exemplo:
h : A = {a, b, c, d} → B = {0, 1, 2, 3} definida por h : {(a, 3), (b, 1), (c, 0), (d, 2)} é bijetora.
Abaixo, seguem ilustrações de relações que não são funções, bem como de funções e suas
propriedades. Em cada caso, o domı́nio é o conjunto da esquerda, e o contradomı́nio, o da
direita:
12
Propriedades de Funções
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
111
Função Composta
Uma vez que funções são relações, podemos estender o conceito de composição de relações para
funções.
Consideremos as funções f : A → B e g : B → C. Então, podemos definir uma nova função
de A para C, denominada composição das funções f e g e denotada por g ◦ f, da seguinte
maneira:
(g ◦ f)(a) = g(f(a)).
Ou seja, dado a ∈ A, achamos a imagem de a por f e então achamos a imagem de f(a) por g.
Observações:
• A função composta (g ◦ f) de A em C só existirá se a imagem de f for um subconjunto
do domı́nio de g.
• A composição de funções não é comutativa: (g ◦ f) �= (f ◦ g).
Exemplos
1) Consideremos os conjuntos A = {−2,−1, 0}, B = {−3,−2,−1, 2} e C = {9, 4, 1}, e as
funções f : A → B e g : B → C definidas por f(x) = x− 1 e g(x) = x2.
a) Fazer o diagrama de conjuntos e setas para expressar f, g e (g ◦ f).
13
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E112
b) Determinar (g ◦ f)(−2) e (g ◦ f)(0).
• (g ◦ f)(−2) = g(f(−2)) = g(−3) = 9.
• (g ◦ f)(0) = g(f(0)) = g(−1) = 1.
c) Determinar uma expressão para a função composta h(x) = (g ◦ f)(x).
(g ◦ f)(x) = g(f(x)) = g(x− 1) = (x− 1)2 = x2 − 2x+ 1.
Podemos perceber pelo diagrama feito em (a) que a ordem é importante na composição
de funções. A composta de f e g (g ◦ f) está definida, pois Dom(f) ⊂ Im(g), mas não é
posśıvel fazer a composição de g com f (f ◦ g).
2) Consideremos f : N → N definida por f(x) = x+ 2 e g : N → N dada por g(x) = 1− 3x.
Calcular as seguintes expressões:
a) (g ◦ f)(4)
(g ◦ f)(4) = g(f(4)) = g(4 + 2) = g(6) = 1− 3.(6) = 1− 18 = −17.
b) (f ◦ g)(4)
(f ◦ g)(4) = f(g(4)) = f(1− 3.4) = f(1− 12) = f(−11) = −11 + 2 = −9.
c) (f ◦ f)(7)
(f ◦ f)(7) = f(f(7)) = f(7 + 2) = f(9) = 9 + 2 = 11.
d) (g ◦ f)(x)
(g ◦ f)(x) = g(f(x)) = g(x+ 2) = 1− 3.(x+ 2) = 1− 3x− 6 = −3x− 5.
e) (f ◦ g)(x)
(f ◦ g)(x) = f(g(x)) = f(1− 3x) = (1− 3x) + 2 = 3− 3x.
14
Propriedades de Funções
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
113
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E114
f) (g ◦ g)(x)
(g ◦ g)(x) = g(g(x)) = g(1− 3x) = 1− 3.(1− 3x) = 1− 3 + 9x = −2 + 9x.
g) (f ◦ f)(x)
(f ◦ f)(x) = f(f(x)) = f(x+ 2) = (x+ 2) + 2 = x+ 4.
Para que fazemos a composição de funções? Uma função composta substitui as aplicações su-
cessivas de duas aplicações. Assim, a composição de funções representa uma simplificação no
trato de funções.
A composição de funções preserva as propriedades das funções serem injetoras ou sobreje-
toras, podendo-se afirmar então que a composição de duas bijeções é uma bijeção.
Funções Inversas
Se uma variável dependente y está relacionada com a
variável independente x por meio da função f , isto é, se
y = f(x), então sabemos exatamente como y varia quando x
varia. Por exemplo, a fórmula para converter a temperatura
Celsius x em temperatura Kelvin é k(x) = x+ 273, 16. As-
sim, dada uma temperatura em grau Celsius, conseguimos
seu valor correspondente em grau Kelvin. Mas podeŕıamos
estar interessados no processo inverso: dada uma tempera-
tura em grau Kelvin, obter seu valor em grau Celsius.
Esse processo de saber como varia a mesma variável x
quando fazemos variar y, significa encontrar uma outra função g tal que y passe a ser a variável
independente passando x a ser a variável dependente, isto é, encontrar uma outra função g tal
que x = g(y). Essa função g pode existir ou não. Se existir, chama-se a função inversa de f e
designa-se por f−1.
Mas quando existirá a função g?
Exemplo:
Sejam A = {1, 2, 3} e B = {a, b, c} e f : A → B dada por f = {(1, a), (2, b), (3, b)}.
Podemos observar que a relação inversa g = {(a, 1), (b, 2), (b, 3)} não é uma função, pois o
elemento b ∈ B está associado a dois valores do conjunto A : 2 e 3.
15
Assim, para a inversa g estar bem definida, é preciso que cada y ∈ B corresponda a somente
um elemento x ∈ A, ou seja:
1) Cada y ∈ B tenha um elemento x ∈ A associado (por meio de g).
2) Para cada y ∈ B exista um único correspondente x ∈ A.
Reescrevendo as duas condições em termos da função f :
1) Cada y ∈ B seja transformado (por meio de f) de algum x ∈ A;
2) Aos elementos de A correspondem (pormeio de f) diferentes elementos de B.
Ou seja,
1) f é sobrejetiva;
2) f é injetiva.
Concluindo:
Para que a função g = f−1 exista, é preciso que f seja sobrejetiva e injetiva, isto é, bijetiva.
Observações:
• Se a inversa existir, será única.
• Se f é invert́ıvel, f−1 também será invert́ıvel (também é bijetiva), e a inversa de f−1 será
exatamente a função f .
Técnica para a obtenção da inversa de uma função
Se conhecemos a lei que define uma função bijetora real de variável real f : A → B, tal que
y = f(x), podemos obter a lei que define sua inversa, f−1 : B → A.
Partindo da lei que define f , encontramos a lei que define f−1 da seguinte forma:
I) Escrevemos a equação y = f(x) que define f.
16
Técnicas para Obtenção da Inversa de uma Função
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
115
II) Em y = f(x) expressamos x em função de y, obtendo x = f−1(y).
III) Para obter x como variável independente na equação para f−1, trocar x por y e y por x
na equação obtida em (II).
Exemplos:
Determinar a inversa das seguintes funções bijetoras de domı́nio e contradomı́nio indicado:
a) F : N → N definida por f(x) = 2x.
Temos que cada número natural é associado por f ao seu dobro. Assim, f(0) = 0; f(1) =
2; f(2) = 4; f(3) = 6; ..., e o conjunto imagem de f são todos os múltiplos de 2.
Para determinar a inversa de f, procedemos da seguinte maneira:
y = 2x ⇒ y
2
= x ⇒ x = y
2
.
Trocando x por y na última equação, obtemos y =
x
2
. Logo, f−1(x) =
x
2
, ou seja, a
função inversa de f associa cada elemento do conjunto imagem de f à metade do seu
valor.
b) f : R → R definida por f(x) = 5− 3x.
y = 5− 3x ⇒ −3x = y − 5 ⇒ 3x = 5− y ⇒ x = 5− y
3
.
Logo, f−1(x) =
5− x
3
.
# SAIBA MAIS #
Modelagem Matemática
As funções desempenham um papel importante na ciência. Frequentemente, observa-se que
uma grandeza é função de outra e então tenta-se encontrar uma fórmula razoável para expressar
essa função. A busca de uma função que represente uma dada situação é chamada de Mode-
lagem Matemática, e a função escolhida é o modelo matemático. Um modelo pode esclarecer
a relação entre as variáveis e nos ajudar a fazer previsões, pois o modelo permite que vejamos
pontos na função (na tabela ou no gráfico) que podemos não ter observado no fenômeno real,
assim como permite fazer mudanças matematicamente que não faziam parte da experiência
original.
Fonte: A autora.
#FIM SAIBA MAIS#
17
II) Em y = f(x) expressamos x em função de y, obtendo x = f−1(y).
III) Para obter x como variável independente na equação para f−1, trocar x por y e y por x
na equação obtida em (II).
Exemplos:
Determinar a inversa das seguintes funções bijetoras de domı́nio e contradomı́nio indicado:
a) F : N → N definida por f(x) = 2x.
Temos que cada número natural é associado por f ao seu dobro. Assim, f(0) = 0; f(1) =
2; f(2) = 4; f(3) = 6; ..., e o conjunto imagem de f são todos os múltiplos de 2.
Para determinar a inversa de f, procedemos da seguinte maneira:
y = 2x ⇒ y
2
= x ⇒ x = y
2
.
Trocando x por y na última equação, obtemos y =
x
2
. Logo, f−1(x) =
x
2
, ou seja, a
função inversa de f associa cada elemento do conjunto imagem de f à metade do seu
valor.
b) f : R → R definida por f(x) = 5− 3x.
y = 5− 3x ⇒ −3x = y − 5 ⇒ 3x = 5− y ⇒ x = 5− y
3
.
Logo, f−1(x) =
5− x
3
.
# SAIBA MAIS #
Modelagem Matemática
As funções desempenham um papel importante na ciência. Frequentemente, observa-se que
uma grandeza é função de outra e então tenta-se encontrar uma fórmula razoável para expressar
essa função. A busca de uma função que represente uma dada situação é chamada de Mode-
lagem Matemática, e a função escolhida é o modelo matemático. Um modelo pode esclarecer
a relação entre as variáveis e nos ajudar a fazer previsões, pois o modelo permite que vejamos
pontos na função (na tabela ou no gráfico) que podemos não ter observado no fenômeno real,
assim como permite fazer mudanças matematicamente que não faziam parte da experiência
original.
Fonte: A autora.
#FIM SAIBA MAIS#
17
FUNÇÕES
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IVU N I D A D E116
Considerações Finais
Função é uma palavra comum mesmo em contextos não técnicos. Em meios de comunicação ou
mesmo em conversas cotidianas, é comum ouvirmos ou usarmos a expressão “está em função
de” para expressar uma relação entre objetos. Quando se afirma, por exemplo, que a demanda
de um produto depende de seu preço, isso significa que a quantidade vendida está em função
do preço.
É claro que funções matemáticas são usadas em álgebra e cálculo, geralmente expressas por
equações do tipo y = f(x) que estabelecem uma relação funcional entre os valores de x e os
valores correspondentes y que se obtêm quando x é substitúıdo na expressão.
Funções, assim como relações, descrevem diversas situações reais. Nesta unidade, vimos que
função é um tipo particular de relação binária e que nem toda relação entre conjuntos é uma
função. Retomamos os conceitos de domı́nio, contradomı́nio e imagem para funções e definimos
a igualdade entre funções.
Uma função pode ser expressa por meio de fórmula; texto; tabela ou gráfico. Como função
é um tipo de relação binária, então seu gráfico pode ser representado como um subconjunto do
plano cartesiano A× B, sendo A o domı́nio e B o contradomı́nio da função.
Funções Piso e Teto são particularmente interessantes pois transformam qualquer número
real em número inteiro, que muitas vezes é a solução esperada para problemas práticos.
Funções também têm propriedades especiais, podendo ser classificadas como injetoras, so-
brejetoras ou bijetoras. Dependendo das propriedades da funções, podemos realizar a operação
de inversão. Estudamos que inverter uma relação entre conjuntos nem sempre acarreta a
obtenção de uma função, e a condição necessária e suficiente para se definir a função inversa é
que a função deve ser bijetora.
Outra operação estudada foi a composição, que substitui as aplicações sucessivas de duas
funções, representando uma simplificação de operações. A composição é uma operação que
pode ser realizada com as funções desde que o domı́nio de uma seja subconjunto da imagem da
outra, destacando-se que esta operação não é comutativa.
O conceito de função, junto com sua representação gráfica, é certamente um dos mais
importantes em Matemática e é ferramenta poderosa na modelagem de problemas. Na busca
de entendimento dos mais variados fenômemos, e em diversas áreas de conhecimento, esse
conceito se faz presente.
19
Considerações Finais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
117
Atividades de Autoestudo
1) O diagrama a seguir representa uma função.
a) Determinar seu domı́nio, contradomı́nio e imagem.
b) Qual é a imagem de 8? E de 4?
c) Quais são as imagens inversas de 7?
d) Essa função é injetora e/ou sobrejetora? Justifique.
2) Dados os conjuntos A = {3; 8; 15; 24} e B = {2; 3; 4; 5; 9}, pede-se:
a) Determine a relação R1 : A → B, tal que R1 = {(a, b) | b =
√
a+ 1}.
b) Determine a relação R2 : B → A, tal que R2 = {(b, a) | a = b− 1}.
c) A relação R1 é uma função? Explique. Caso seja, determine sua imagem.
d) A relação R2 é uma função? Explique. Caso seja, determine sua imagem.
3) Conside f : N → N dada por f(x) = 5− 2x e g : R → R definida por g(x) = 3x. Calcular
as seguintes expressões:
a) (f ◦ g)(3) e) (f ◦ g)(x)
b) (g ◦ f)(0) f) (g ◦ f)(x)
c) (f ◦ f)(2) g) (f ◦ f)(x)
d) (g ◦ g)(2) h) (g ◦ g)(x)
4) Para cada uma das bijeções f :R → R abaixo, encontre f−1 :
a) f(x) = 5x
20
b) f(x) = x3
c) f(x) =
2x+ 7
3
5) Sejam f : R → Z dada por f(x) = �x�, g : R → Z dada por g(x) = �x� e h : Z → N dada
por h(x) = 2x2. Determine o valor de:
a) (h ◦ f)(−6, 4) =
b) (f ◦ h)(−6, 4) =
c) (f ◦ g)(3, 75) =
Material Complementar: na Web
O v́ıdeo-documentário A História do Conceito da Função, partes 1 a 4, trata sobre a construção
do conceito matemático que hoje se denomina função. Baseado nas pesquisas do Prof. Paulo
Castor Maciel, a primeira parte trata da relação funcional, da contagem e da consequente ne-
cessidade de relacionar dois números; a parte dois trata das origens da tentativa de conceituar
função por volta do peŕıodo da Revolução Cient́ıfica; na parte três estão as contribuições de
matemáticos renomados, quando o conceito começa a ganhar forma e funções passam a ser
escritas em fórmulas, e na última parte do documentário, estudam-se as partes mais contem-
porâneas do que se conhece, hoje, por função.
Os v́ıdeos estão dispońıveis nos seguintes endereços:
<https://www.youtube.com/watch?v=pYQzdY40yr8>.
<https://www.youtube.com/watch?v=35OIMMUFAuk>.
<https://www.youtube.com/watch?v=OK5FrN4E7b4>.
<https://www.youtube.com/watch?v=HZLREejrDP0>.
Outra sugestão é o v́ıdeo “Criptografia - História”, dispońıvel em: <https://www.youtube.com/
watch?v=2kCYRgP4OOU>, que trata sobre criptografia e como as mensagens codificadas
foram importantes desde a Roma Antiga até os dias de hoje, dando exemplos de códigos e
seus usos no decorrer da história.
21
119 
Leitura Complementar
Criptografia
Desde os primórdios dos tempos que o homem tem sentido a necessidade de guardar se-gredos, 
mas tão forte quanto a necessidade nata da espécie humana de guardar segredo sobre 
determinados assuntos é a vontade dos mesmos humanos de desvendar esses segredos. Com o 
avanço dos poderes das Redes de Computadores, o mundo tende a “ficar menor”, e este avanço 
faz com que a informação e o controle sobre ela sejam estratégicos para governos e empresas.
Pensando na necessidade de se criar ferramentas capazes de proteger a informação e de prover 
segurança aos dados armazenados e transmitidos pelas organizações atravéz do mundo, veio a 
motivação para se estudar Criptografia.
Criptografia é técnica de escrever mensagens em cifras ou códigos com o intuito de manter 
sigilo sobre as informações.
Num esquema de criptografia, um transmissor deseja que essa mensagem chegue com segu-
rança a seu receptor. O transmissor escreve a mensagem em texto claro e aplica um método de 
codificação para produzir uma mensagem cifrada. A mensagem codificada é então transmitida ao 
receptor que aplica um método de decodificação para converter o texto cifrado novamente em 
texto claro. O ato de decodificar é então a operação inversa do ato de codificar:
decodificação(codificação (mensagem original))= mensagem original.
O desenvolvimento da matemática, em especial na área de Teoria dos Números, tem pro-
porcionado um avanço significativo da criptografia, que também faz uso da Álgebra Linear e 
Matemática Discreta em sua parte teórica. O mecanismo criptográfico, basicamente, 
“embaralha” um texto claro e o transforma em um texto cifrado, de acordo com um algoritmo. 
Esse sistema pode ser descrito num modelo matemático, no qual, o que difere são as funções de 
codificação e decodificação.
Num exemplo de esquema de criptografia, se consideramos A o domı́nio das mensagens não 
cifradas e B o domı́nio das mensagens criptografadas, então a criptografia é a transformação do 
texto de A para B aplicando uma função bijetora f sobre cada caractere do texto de tal modo que 
se possa calcular sua inversa. A função inversa traduz a mensagem criptografada.
Mais informações podem ser obtidas em:
<http://www.ucb.br/sites/100/103/TCC/12007/PalomaBarbosaFreire.pdf>.
<www.ucb.br/sites/100/103/TCC/22005/WaldizarBorgesdeAraujoFranco.pdf>.
b) f(x) = x3
c) f(x) =
2x+ 7
3
5) Sejam f : R → Z dada por f(x) = �x�, g : R → Z dada por g(x) = �x� e h : Z → N dada
por h(x) = 2x2. Determine o valor de:
a) (h ◦ f)(−6, 4) =
b) (f ◦ h)(−6, 4) =
c) (f ◦ g)(3, 75) =
Material Complementar: na Web
O v́ıdeo-documentário A História do Conceito da Função, partes 1 a 4, trata sobre a construção
do conceito matemático que hoje se denomina função. Baseado nas pesquisas do Prof. Paulo
Castor Maciel, a primeira parte trata da relação funcional, da contagem e da consequente ne-
cessidade de relacionar dois números; a parte dois trata das origens da tentativa de conceituar
função por volta do peŕıodo da Revolução Cient́ıfica; na parte três estão as contribuições de
matemáticos renomados, quando o conceito começa a ganhar forma e funções passam a ser
escritas em fórmulas, e na última parte do documentário, estudam-se as partes mais contem-
porâneas do que se conhece, hoje, por função.
Os v́ıdeos estão dispońıveis nos seguintes endereços:
<https://www.youtube.com/watch?v=pYQzdY40yr8>.
<https://www.youtube.com/watch?v=35OIMMUFAuk>.
<https://www.youtube.com/watch?v=OK5FrN4E7b4>.
<https://www.youtube.com/watch?v=HZLREejrDP0>.
Outra sugestão é o v́ıdeo “Criptografia - História”, dispońıvel em: <https://www.youtube.com/
watch?v=2kCYRgP4OOU>, que trata sobre criptografia e como as mensagens codificadas
foram importantes desde a Roma Antiga até os dias de hoje, dando exemplos de códigos e
seus usos no decorrer da história.
21
Material Complementar
MATERIAL COMPLEMENTAR
Material Complementar: Filme
O Jogo da Imitação
Elenco: Benedict Cumberbatch (Alan Turing)
Keira Knightley (Joan Clarke)
Matthew Goode (Hugh Alexander)
Mark Strong (Stewart Menzies)
Charles Dance (Comandante Denniston)
Direção: Morten Tyldum
Produção: Nora Grossman, Peter Heslop, Graham Moore,
Ido Ostrowsky e Teddy Schwarzman
Duração: 113 min.
Ano: 2015 (lançamento)
Gênero: Drama, Suspense, Biografia
Páıs: EUA, Reino Unido
Classificação: 12 anos
Sinopse: O Jogo da Imitação (The Imitation Game) é baseado na história real do lendário
criptoanalista inglês Alan Turing, considerado o pai da computação moderna, e narra a tensa
corrida contra o tempo de Turing e sua brilhante equipe no projeto Ultra para decifrar os
códigos de guerra nazistas e contribuir para o final do conflito. Ele foi decisivo para a derrota
do nazismo e precursor dos computadores e da inteligência artificial.
22
MATERIAL COMPLEMENTAR
U
N
ID
A
D
E V
Professora Me. Edvania Gimenes de Oliveira Godoy
APLICAÇÕES À 
COMPUTAÇÃO
Objetivos de Aprendizagem
 ■ Reconhecer e compreender aplicações de álgebra de conjuntos nas 
linguagens de programação e teoria da computação.
 ■ Entender como a linguagem de programação Prolog é constituída 
em função da lógica de predicados.
 ■ Desenhar um diagrama PERT de uma tabela de tarefas.
 ■ Encontrar o tempo mínimo para completar uma sequência ordenada 
de tarefas e determinar um caminho crítico, usando diagrama PERT.
 ■ Reconhecer um autômato finito como uma função.
 ■ Compreender o modelo entidade-relação e o modelo relacional para 
um projeto.
 ■ Efetuar operações de restrição, projeção e união em um banco de 
dados relacional.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Álgebra dos Conjuntos nas Linguagens de Programação
 ■ Programação Lógica
 ■ Caminho crítico no Diagrama PERT
 ■ Autômatos Finitos e Funções
 ■ Relações e Banco de Dados
INTRODUÇÃO
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
125
Introdução
Nas unidades anteriores, fizemos um estudo de lógica; teoria dos conjuntos; relações e funções.
A matemática, para a área de computação, é uma ferramenta a ser usada na definição formal
de conceitos computacionais. A teoriaé importante para a prática, pois provê ferramentas
conceituais que serão usadas no desenvolvimento de projetos ligados à área de atuação.
Nesta unidade, serão apresentadas algumas aplicações da Matemática estudada anterior-
mente na área de Computação.
Veremos, por meio de conceitos e exemplos, a relação da teoria dos conjuntos com as lin-
guagens de programação. Como uma linguagem de programação é definida por todos os seus
programas posśıveis, então pode ser considerada um conjunto infinito. A aplicação das regras
de inferência serão mostradas no programa Prolog, que são uma linguagem de programação
que reduzem a busca de respostas corretas à pesquisa de refutações (deduções por contradição)
a partir das sentenças do programa e da negação da consulta.
Retomaremos o assunto sobre Diagrama PERT, que é a representação de uma relação que
envolve ordenação de tarefas, e definiremos caminho cŕıtico em um diagrama, na busca do menor
tempo para realização de uma sequência de atividades ordenadas. Também destacaremos a
aplicação de relações em banco de dados relacional, que são um conjunto de dados integrados
cujo objetivo é atender a uma comunidade de usuários, e a aplicação de funções para o conceito
de autômato finito, que são um modelo computacional de definição de linguagens que são
definidas por mecanismos de reconhecimento.
O objetivo principal nesta unidade é apresentar aplicações da teoria estudada anteriormente
em tópicos espećıficos do curso, deixando claro que será desenvolvida, apenas, uma breve in-
trodução dos conceitos, visto que o estudo detalhado de muitos deles é realizado em algumas
disciplinas espećıficas.
Álgebra dos Conjuntos nas Linguagem de Programação
2
Álgebra dos Conjuntos nas Linguagens de Programação
Existem diversas aplicações da teoria dos conjuntos dentro da computação. Veremos sua
aplicação em linguagem de programação.
• Linguagem de Programação
A noção de conjunto permite definir linguagem, um dos conceitos mais fundamentais em
computação. Mas para definir linguagem é necessário, antes, introduzir os conceitos de
alfabeto e palavras ou cadeia de caracteres.
Definições:
1. Alfabeto: é um conjunto finito e não vazio de śımbolos (ou caracteres), que são denominados 
elementos do alfabeto.
2. Os śımbolos (tokens), também denominados átomos, são representações gráficas indiviśıveis. 
Cada śımbolo é considerado como uma unidade atômica, não importando a sua particular 
representação visual. São exemplos de śımbolos: b, abc, begin, if , 7045, 2.017e4.
3. Palavra (ou cadeia de caracteres, ou sentença): uma palavra ou cadeia de caracteres so-bre 
um alfabeto é uma sequência finita de śımbolos do alfabeto justapostos. As palavras sobre um 
alfabeto serão denotadas por letras gregas minúsculas: α; β; γ; ...�
Se Σ representa um alfabeto, então, Σ∗ denota o conjunto de todas as palavras posśıveis
sobre Σ.
Exemplo:
Como exemplo de alfabeto, consideremos Σ o conjunto dos d́ıgitos hexadecimais, em que cada
elemento corresponde a um śımbolo:
Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f}.
12ab, 88541aaf , e4, cdfee03, 8, são exemplos de cadeias (ou palavras) que podem ser
constrúıdas com os śımbolos de Σ.
O comprimento de uma cadeia é um número natural que designa a quantidade de śımbolos
que a compõem. O comprimento de uma cadeia α é denotado por |α|.
Exemplo:
Considerando as cadeias α = ab56d; β = 2; e γ = 4e sobre Σ, então, temos que |α| =
5; |β| = 1 e |γ| = 2.
3
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E126
Dá-se o nome de cadeia elementar (ou unitária) a qualquer cadeia formada por um único 
śımbolo. Por exemplo, α = d. Temos que |α| = 1.
Cadeia Vazia: Uma cadeia sem śımbolos também é uma cadeia válida. Denota-se por ε a 
cadeia formada por uma quantidade nula de śımbolos, isto é, a cadeia que não contém śımbolos. 
Formalmente, |ε| = 0.
ε (épsilon) denota a cadeia vazia; palavra vazia ou sentença vazia.
Se Σ é um alfabeto, já definimos Σ∗ como o conjunto de todas as palavras posśıveis sobre Σ.
Analogamente, Σ+ representa o conjunto de todas as palavras sobre Σ excetuando-se a palavra
vazia, ou seja, Σ+ = Σ∗ − {ε}.
Exemplos:
a) ε é uma palavra sobre o alfabeto Σ = {ab, ec, idf, ogh}.
b) Se Σ = {0, 1}, então, Σ∗ = {ε, 0, 1, 00, 01, 10, 11, 000, 001, 011, 111, ...}.
Linguagens
Uma linguagem formal, ou simplesmente linguagem, é um conjunto, finito ou infinito, de
cadeias de comprimento finito, formadas pela concatenação de elementos de um alfabeto finito
e não-vazio. Ou melhor: uma linguagem é um conjunto de palavras sobre um alfabeto.
Observemos que:
• ε denota a cadeia vazia, ou seja, uma cadeia de comprimento zero.
• ∅ denota uma linguagem vazia, ou seja, uma linguagem que não contém cadeia alguma; |
∅| = 0.
• {ε} denota uma linguagem que contém uma única cadeia: a cadeia vazia; |{ε}| = 1.�
Observemos também que existe uma diferença conceitual entre alfabetos, linguagens e
cadeias. Alfabetos são conjuntos, finitos e não-vazios, de śımbolos, e, por meio de sua con-
catenação, são obtidas as cadeias. Linguagens, por sua vez, são conjuntos, finitos (eventual-
mente vazios) ou infinitos, de cadeias. Uma cadeia é também denominada sentença de uma
linguagem, ou simplesmente sentença, no caso de ela pertencer à linguagem em questão. Lin-
guagens são, portanto, coleções de sentenças sobre um dado alfabeto. A figura abaixo ilustra a
relação entre os conceitos de śımbolo, alfabeto, cadeia e linguagem:
4
Álgebra dos Conjuntos nas Linguagens de Programação
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
127
Fonte: RAMOS (2008, online).
Podemos observar, então, que (i) um conjunto de śımbolos forma um alfabeto, (ii) a partir
de um alfabeto (finito) formam-se (infinitas) cadeias; (iii) determinadas cadeias são escolhidas
para fazer parte de uma linguagem; (iv) uma linguagem é um conjunto de cadeias que, por isso,
são também denominadas sentenças.
Exemplo:
Consideremos o alfabeto {c, a} e uma linguagem sobre este alfabeto:
- Śımbolos: c, a.
- Alfabeto: {c, a}.
- Cadeias: ... ccaaa; caa; aaaccc; a; cc; aaaa; c; acacaca; cccaaa; cacaacac; aa; ...
- Linguagem: {caa; aaaa; cccaaa; ccaaa}.
Notemos que essa linguagem é, naturalmente, apenas uma das inúmeras que podem ser criadas
a partir desse alfabeto.
Operação de concatenação:
A concatenação é uma operação binária sobre uma linguagem. Ela associa a cada par
de palavras, sejam elas elementares ou não, uma outra palavra formada pela justaposição da
primeira com a segunda.
Exemplos:
1) Consideremos o alfabeto Σ = {a, b, c} e as palavras α = aaba, β = bc e δ = c. Então:
a) (α.β) = aababc
b) β.α = bcaaba
c) α.(β.δ) = aababcc = (α.β).δ
d) α.ε = ε.α = aaba
5
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E128
2) Consideremos a linguagem L de paĺındromos sobre {a, b}, ou seja, o conjunto de todas as
palavras que têm a mesma leitura da esquerda para a direita, e vice-versa.
L = {ε, a, b, aa, bb, aaa, aba, bab, bbb, aaaa, abba, baab, ....}
Observemos que a concatenação das palavras aba e bbb de L será a palavra ababbb, que não é
um paĺındromo, ou seja, não pertence a L.
Assim, podemos dizer que a operação de concatenção sobre uma linguagem L não é necessari-
amente fechada sobre L, ou seja, a concatenação de duas palavras de L não é, necessariamente,
uma palavra de L.
Sendo uma linguagem qualquer coleção de cadeias sobre um determinado alfabeto Σ, e como
Σ∗ contém todas as posśıveis cadeias sobre Σ, então, toda e qualquer linguagem L sobre um
alfabetoΣ sempre poderá ser definida como sendo um subconjunto de Σ∗, ou seja, L ⊆ Σ∗.
Operações sobre Linguagens
Como uma linguagem é definida como um conjunto, as operações de união, interseção e
diferença podem ser aplicadas:
União: L1 ∪ L2 = {α | α ∈ L1 ou α ∈ L2}.
Interseção: L1 ∩ L2 = {α | α ∈ L1 e α ∈ L2}.
Diferença: L1 − L2 = {α | α ∈ L1 e α �∈ L2}.
A operação de união pode ser denotada por L1 + L2, e a interseção, por L1 ∗ L2.
Exemplo:
Sejam L1 = {0, 1, 11, 01, 011, 001, 111} e L2 = {1, 11, 111, 1111} definidas sobre Σ = {0, 1}.
Então:
L1 ∪ L2 = L1 + L2 = {0, 1, 01, 11, 011, 001, 111, 1111}.
L1 ∩ L2 = L1 ∗ L2 = {1, 11, 111}.
L1 − L2 = {0, 01, 011, 001}.
O complemento de um conjunto L sobre um alfabeto Σ consiste em todos os elementos
de Σ∗ que não pertencem a esse conjunto.
L
′
= {α | α ∈ Σ∗ e α �∈ L} = Σ∗ − L.
Exemplo:
Sejam Σ = {a, b} e L = {an;n ≥ 0}. Então:
Σ∗ = {ε, a, b, aa, ab, bb, aaa, aab, abb, bbb, aaaa, aaab, ...} e L = {ε, a, aa, aaa, aaaa, aaaaa, ...}
.
6
Álgebra dos Conjuntos nas Linguagens de Programação
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
129
(L é o conjunto de concatenações sucessivas da cadeia a, em que n indica o número de con-
catenações sucessivas).
Logo,
L
′
= {α | α ∈ Σ∗ e α �∈ L} = {b, ab, bb, aab, abb, bbb, aaab, ...}.
# REFLITA #
Toda a teoria deve ser feita para poder ser posta em prática, e toda a prática deve obedecer
a uma teoria. Só os esṕıritos superficiais desligam a teoria da prática, não olhando a que a
teoria não é senão uma teoria da prática, e a prática não é senão a prática de uma teoria.
Fonte: Fernando Pessoa
# FIM REFLITA#
Linguagem de Programação:
De acordo com Menezes (2013, p.8), podemos definir linguagem de programação como uma
linguagem sobre um alfabeto pré-determinado:
As linguagens de programação como Pascal, C e Java são lin-
guagens sobre o alfabeto constitúıdo por letras, d́ıgitos e alguns 
śımbolos especiais (como espaço, parênteses, pontuação, etc). 
Nesse caso, cada programa na linguagem corresponde a uma 
palavra sobre o alfabeto. Ou seja, uma linguagem de programaçãoé 
definida por todos os seus programas posśıveis. Portanto, Pascal, 
Java, C, bem como qualquer linguagem de programação, são 
conjuntos infinitos.
Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais
usadas para escrever programas de computador. Esses programas instruem o computador a re-
alizar determinadas tarefas espećıficas. Cada linguagem possui um conjunto único de palavras-
chaves (palavras que ela reconhece) e uma sintaxe (regras) espećıfica para organizar as instruções
dos programas.
Um compilador de uma linguagem de programação é um programa de sistema que traduz
um programa escrito em uma linguagem de alto ńıvel (linguagem fonte) para um programa
equivalente em código de máquina para um processador (linguagem objeto). Para desempenhar
suas tarefas, um compilador deve executar dois tipos de atividade. A primeira atividade é a
7
(L é o conjunto de concatenações sucessivas da cadeia a, em que n indica o número de con-
catenações sucessivas).
Logo,
L
′
= {α | α ∈ Σ∗ e α �∈ L} = {b, ab, bb, aab, abb, bbb, aaab, ...}.
# REFLITA #
Toda a teoria deve ser feita para poder ser posta em prática, e toda a prática deve obedecer
a uma teoria. Só os esṕıritos superficiais desligam a teoria da prática, não olhando a que a
teoria não é senão uma teoria da prática, e a prática não é senão a prática de uma teoria.
Fonte: Fernando Pessoa
# FIM REFLITA#
Linguagem de Programação:
De acordo com Menezes (2013, p.8), podemos definir linguagem de programação como uma
linguagem sobre um alfabeto pré-determinado:
As linguagens de programação como Pascal, C e Java são lin-
guagens sobre o alfabeto constitúıdo por letras, d́ıgitos e alguns 
śımbolos especiais (como espaço, parênteses, pontuação, etc). 
Nesse caso, cada programa na linguagem corresponde a uma 
palavra sobre o alfabeto. Ou seja, uma linguagem de programaçãoé 
definida por todos os seus programas posśıveis. Portanto, Pascal, 
Java, C, bem como qualquer linguagem de programação, são 
conjuntos infinitos.
Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais
usadas para escrever programas de computador. Esses programas instruem o computador a re-
alizar determinadas tarefas espećıficas. Cada linguagem possui um conjunto único de palavras-
chaves (palavras que ela reconhece) e uma sintaxe (regras) espećıfica para organizar as instruções
dos programas.
Um compilador de uma linguagem de programação é um programa de sistema que traduz
um programa escrito em uma linguagem de alto ńıvel (linguagem fonte) para um programa
equivalente em código de máquina para um processador (linguagem objeto). Para desempenhar
suas tarefas, um compilador deve executar dois tipos de atividade. A primeira atividade é a
7
(L é o conjunto de concatenações sucessivas da cadeia a, em que n indica o número de con-
catenações sucessivas).
Logo,
L
′
= {α | α ∈ Σ∗ e α �∈ L} = {b, ab, bb, aab, abb, bbb, aaab, ...}.
# REFLITA #
Toda a teoria deve ser feita para poder ser posta em prática, e toda a prática deve obedecer
a uma teoria. Só os esṕıritos superficiais desligam a teoria da prática, não olhando a que a
teoria não é senão uma teoria da prática, e a prática não é senão a prática de uma teoria.
Fonte: Fernando Pessoa
# FIM REFLITA#
Linguagem de Programação:
De acordo com Menezes (2013, p.8), podemos definir linguagem de programação como uma
linguagem sobre um alfabeto pré-determinado:
As linguagens de programação como Pascal, C e Java são lin-
guagens sobre o alfabeto constitúıdo por letras, d́ıgitos e alguns 
śımbolos especiais (como espaço, parênteses, pontuação, etc). 
Nesse caso, cada programa na linguagem corresponde a uma 
palavra sobre o alfabeto. Ou seja, uma linguagem de programaçãoé 
definida por todos os seus programas posśıveis. Portanto, Pascal, 
Java, C, bem como qualquer linguagem de programação, são 
conjuntos infinitos.
Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais
usadas para escrever programas de computador. Esses programas instruem o computador a re-
alizar determinadas tarefas espećıficas. Cada linguagem possui um conjunto único de palavras-
chaves (palavras que ela reconhece) e uma sintaxe (regras) espećıfica para organizar as instruções
dos programas.
Um compilador de uma linguagem de programação é um programa de sistema que traduz
um programa escrito em uma linguagem de alto ńıvel (linguagem fonte) para um programa
equivalente em código de máquina para um processador (linguagem objeto). Para desempenhar
suas tarefas, um compilador deve executar dois tipos de atividade. A primeira atividade é a
7
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E130
análise (análise léxica, análise sintática e análise semântica) do código fonte, onde a estrutura
e significado do programa de alto ńıvel são reconhecidos. A segunda atividade é a śıntese do
programa equivalente em linguagem simbólica (geração e otimização do código executável). De
maneira resumida, podemos dizer que a análise verifica se um dado programa fonte p é, de
fato, um programa válido para a linguagem L, ou seja, verifica se p ∈ L.
Caso p ∈ L, o compilador deve alertar o programador para que esse corrija os eventuais
problemas do programa. Logo, a análise de um compilador verifica se o programa fornecido de
fato petence à linguagem ou ao complemento da linguagem, ou seja, verifica se p ∈ L ou p �∈
L, ou melhor, se:
p ∈ L ou p∈ L′ .
Conjuntos nas Linguagens de Programação
Na linguagem de programaçãoPascal, é posśıvel definir tipos de dados baseados em con-
juntos finitos, variáveis conjuntos sobre esses tipos de dados, bem como constantes conjuntos
(também finitos).
Pascal possui as seguintes operações sobre conjuntos:
A or B União entre conjuntos
A and B Interseção de conjuntos
A− B Diferença de conjuntos
A <= B Testa se A está no conjunto B
A <> B Testa a desigualdade entre conjuntos
a in A Testa a presença de um elemento no conjunto A.
Exemplos:
1) Um procedimento para executar a operação diferença simétrica definida para os conjuntos:
(A ∪ B)− (A ∩ B) seria:
procedure DifSimetrica(p,q:conjunto; var r:conjunto);
begin
r:=(p or q)-(p and q);
end.
2) Consideremos o seguinte trecho de um programa em linguagem Pascal que identifica a
classe eleitoral de uma pessoa a partir de sua idade: não eleitor (menor que 16 anos de
idade); eleitor obrigatório (entre 18 e 70 anos) e eleitor facultativo (entre 16 e 18 anos e
maior que 70 anos).
8
Álgebra dos Conjuntos nas Linguagens de Programação
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
131
if (idade < 16)
writeln(‘N~ao eleitor’);
else
if (idade< 18) or (idade>70)
writeln(‘Eleitor facultativo’);
else
writeln(‘Eleitor obrigatório’);
Podemos observar o uso dos conectivos lógicos nesse trecho de programa. Se a pessoa tem
menos de 16 anos, então, não é eleitor; se a pessoa tem menos de 18 ou mais de 70 anos,
então é um eleitor facultativo, e se tem 18 anos ou mais e 70 anos ou menos, então, é um
eleitor obrigatório. Estão impĺıcitas também, nesse programa, operações com conjuntos:
O conjunto universo U é o conjunto de todas as idades.
O conjunto dos “Não-eleitores” é dado por: NE = {x ∈ U | x < 16}.
O conjunto dos “Eleitores facultativos” é dado por: EF = {x ∈ U | (x ≥ 16 e x <
18) ou (x > 70)}.
O conjunto dos “Eleitores obrigatórios” é dado por EO = {x ∈ U | x ≥ 18 e x ≤ 70}.
Podemos observar também que NE,EF e EO são disjuntos, ou seja, não têm interseção.
PROLOG
Programação em Lógica e Prolog
Algumas linguagens de programação, tais
como C, Pascal e Basic são linguagens procedimen-
tais (ou imperativas), ou seja, especificam como
deve ser feita alguma coisa. Codificam algorit-
mos. O programador, portanto, está dizendo para
o computador como resolver o problema passo a
passo.
Algumas linguagens de programação, ao invés
de procedimentais, são linguagens declarativas
ou linguagens descritivas.
Segundo Gersting(2004), uma linguagem declarativa baseia-se na lógica de predicados; essa
linguagem já vem equipada com suas próprias regras de inferência. No paradigma descritivo o
programador implementa uma descrição do problema e não as instruções para sua resolução.
9
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E132
Um programa escrito em linguagem declarativa constitui-se de uma coleção de fatos e regras
que são utilizadas por um “motor de inferência” para checar se uma consulta pode ser deduzida
desta coleção: o usuário coloca perguntas, procurando informação sobre conclusões posśıveis
dedut́ıveis das hipóteses, e o programa aplica suas regras de inferência às hipóteses para ver
quais das conclusões respondem à pergunta do usuário.
Prolog - Programming in Logic (Programando em Lógica) - é uma linguagem declarativa, ou
seja, especifica o quê se sabe e o quê deve ser feito. Prolog é mais direcionada ao conhecimento,
menos direcionada aos algoritmos.
Na lógica de predicados, usamos regras de inferência para demonstrar que uma tese é con-
sequência de determinadas hipóteses. Programação em Lógica e, especificamente, a linguagem
Prolog também pode provar teses a partir de hipóteses.
A linguagem Prolog inclui: predicados, conectivos lógicos e regras de inferência - Prinćıpio
da Resolução.
Um programa Prolog é uma coleção de fatos e regras. Fatos são sempre verdadeiros, mas
as regras precisam ser avaliadas.
Como criar um fato em uma base Prolog: homem(x). - significa que “x é um homem”;
genitor(x, y). - significa que “x é genitor de y” ou “y é genitor de x”. É responsabilidade do
programador definir os predicados corretamente.
O conjunto de declarações que forma um programa Prolog é chamada a base de dados (BD)
desse programa.
Para determinar se uma tese (consulta do usuário à BD) é ou não verdadeira, Prolog aplica
suas regras de inferência na BD sem a necessidade de instruções adicionais por parte do pro-
gramador.
Banco de Dados convencionais descrevem apenas fatos.
“Tio Patinhas é um pato.”
As sentenças de um Programa em Lógica, além de descrever fatos, permite a descrição de
regras.
“Todo pato é uma ave.”
Havendo regras, novos fatos podem ser deduzidos.
“Tio Patinhas é uma ave.”
Vejamos a tabela de conversão dos operadores Prolog:
10
PROLOG
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
133
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E134
Linguagem Natural Lógica Programas Prolog
E ∧ ,
OU ∨ ;
SE ← :-
NÃO ¬ not
Como exemplo, suponha que queremos criar um programa em prolog que descreva a árvore
genealógica de uma famı́lia:
Podemos começar com um predicado binário progenitor. Descrevemos então o predicado
fornecendo os pares de elementos no domı́nio que tornam progenitor verdadeiro, gerando os
seguintes fatos no banco de dados:
progenitor(ana, lucas)
progenitor(ana, antonio)
progenitor(paulo, antonio)
progenitor(antonio, lúısa)
progenitor(antonio, beatriz)
progenitor(beatriz, felipe).
Esse programa representa a relação progenitor, na forma de um predicado, que contém 6
cláusulas, que são todas fatos.
O programa pode ser pensado como uma tabela em um banco de dados, que pode ser
consultada de várias maneiras.
A pergunta
11
PROLOG
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
135
?progenitor(paulo, antonio)
questiona se o fato progenitor(paulo, antonio) pertence ao banco de dados, ou melhor, se Paulo
é progenitor de Antonio.
?progenitor(paulo, antonio)
true
As consultas podem ser feitas de várias maneiras:
? progenitor(ana, lucas)
true
? progenitor(antonio, lucas)
fail
? progenitor(antonio, X)
X=lúısa
X=beatriz
fail
O programa respondeu à pergunta buscando no banco de dados todos os fatos (antonio,
X), em que X é uma variável. A resposta “lúısa” é dada primeiro porque a busca é feita
ordenadamente, de cima para baixo. faill indica que não existem mais respostas que
satisfaçam a consulta.
Outro exemplo:
? progenitor(X, Y)
X = ana; Y = lucas
X = ana; Y = antonio
X = paulo; Y = antonio
X = antonio; Y = lúısa
X = antonio; Y = beatriz
X = beatriz; Y = felipe
fail
Podemos ampliar o programa acrescentando novos fatos que poderão estabelecer novas 
relações. Para o nosso exemplo, vamos adicionar a descrição de dois predicados unários, mas-
culino e feminino ao banco de dados colocando os fatos:
masculino(paulo).
masculino(lucas).
masculino(antonio).
masculino(felipe).
12
feminino(ana).
feminino(lúısa).
feminino(beatriz).
Regras são utilizadas para construir relações entre fatos, explicitando as dependências entre 
eles. Ao contrário dos fatos, que são incondicionais, as regras especificam coisas que podem ser 
verdadeiras se algumas condições forem satisfeitas.
A declaração de regras (axiomas) em linguagem de programação lógicas segue um padrão 
conhecido como cláusulas de Horn:
H ← A1, A2, A3, · · · , An
H é verdadeiro se A1 é verdadeiro, e A2 é verdadeiro, ... , e An é verdadeiro,ou, se todos os
Ai são verdadeiros, então, H é verdadeiro. Na expressão acima, H é denominado a cabeça (con-
clusão ou consequente) da cláusula e A1, A2, A3, ..., An é o seu corpo (condição ou antecedente).
Em prolog, a cabeça e o corpo são separados pelo śımbolo “:-”, que é lido como “se”.
Uma cláusula de Horn é uma cadeia de expressões válidas composta de predicados ou da
negação de predicados conectadas por disjunções, de tal forma que, no máximo, um predicado
não esteja negado.
Por meio de regras pode-se estabelecer relações entre fatos.
Exemplo: podemos, agora, estabelecer as relações “pai” e “mãe” da seguinte forma:
Em Prolog:
X é pai de Y se
X é progenitor de Y e X é masculino pai(X,Y):- progenitor(X,Y), masculino(X).
X é mãe de Y se
X é progenitor de Y e X é feminino mãe(X,Y):- progenitor(X, Y) , feminino(X).
Dessa forma, podemos obter as respostas às perguntas:
?pai(paulo, Y)
Y=Antonio
fail
?mãe(X, lucas)
X = ana
fail
13
feminino(ana).
feminino(lúısa).
feminino(beatriz).
Regras são utilizadas para construir relações entre fatos, explicitando as dependências entre 
eles. Ao contrário dos fatos, que são incondicionais, as regras especificam coisas que podem ser 
verdadeiras se algumas condições forem satisfeitas.
A declaração de regras (axiomas) em linguagem de programação lógicas segue um padrão 
conhecido como cláusulas de Horn:
H ← A1, A2, A3, · · · , An
H é verdadeiro se A1 é verdadeiro, e A2 é verdadeiro, ... , e An é verdadeiro, ou, se todos os
Ai são verdadeiros, então, H é verdadeiro. Na expressão acima, H é denominado a cabeça (con-
clusão ou consequente) da cláusula e A1, A2, A3, ..., An é o seu corpo (condição ou antecedente).
Em prolog, a cabeça e o corpo são separados pelo śımbolo “:-”, que é lido como “se”.
Uma cláusula de Horn é uma cadeia de expressões válidas composta de predicados ou da
negação de predicados conectadas por disjunções, de tal forma que, no máximo, um predicado
não esteja negado.
Por meio de regras pode-se estabelecer relações entre fatos.
Exemplo: podemos, agora, estabelecer as relações “pai” e “mãe” da seguinte forma:
Em Prolog:
X é pai de Y se
X é progenitor de Y e X é masculino pai(X,Y):- progenitor(X,Y), masculino(X).
X é mãe de Y se
X é progenitor de Y e X é feminino mãe(X,Y):- progenitor(X, Y) , feminino(X).
Dessa forma, podemos obter as respostas às perguntas:
?pai(paulo, Y)
Y=Antonio
fail
?mãe(X, lucas)
X = ana
fail
13
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E136
Agora, também podemos estabelecer outras regras, tais como irmão ou irmã; avô(ó); tio(a).
* Irmã
Vamos supor que desejássemos consultar o programa para descobrir quem é irmã de Beatriz.
Então, primeiro devemos fazer a pergunta:
“Quem é o pai de Beatriz?”. Digamos que a resposta seja X, então, depois, deveremos
descobrir quais são os genitores Y de X que são do sexo feminino:
?pai(X,beatriz), progenitor(X, Y), feminino(Y), not(Y= beatriz)
X = antonio
Y = lúısa
fail
Obs:
not(Y = beatriz) denota que Y deve ser filha de X, mas não beatriz.
Relação irmã Em Prolog
X é irmã de Y se irmã(X,Y):-
Z é progenitor de X e progenitor(Z, X),
Z é progenitor de Y e progenitor(Z, Y),
Y é feminino e feminino(Y),
X�=Y not(X = Y).
Como os fatos e as regras do Prolog se relacionam com a lógica de predicados mais formal?
Podemos descrever os fatos em nosso banco de dados do exemplo pelas seguintes cadeias
que formam expressões válidas, ou fórmulas bem formuladas - fbf:
(P: progenitor; M: masculino e F: feminino)
P(ana,lucas)
P(ana, antonio)
P(paulo, antonio)
P(antonio, lúısa)
P(antonio, beatriz)
P(beatriz, felipe)
M(paulo)
M(lucas)
M(antonio)
M(felipe)
F(ana)
14
PROLOG
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
137
F(lúısa)
F(beatriz)
e a regra “ser mãe” pela fbf
P(X,Y)∧ F(X)→ Mãe(X)
Quantificadores universais não fazem parte expĺıcita da regra como ela aparece em um programa
em Prolog, mas a linguagem trata a regra como se estivesse universalmente quantificada:
(∀X), (∀Y ) [P(X,Y) ∧ F(X)→ Mãe(X)],
e usa a particularização universal para retirar os quantificadores universais e permitir às variáveis
assumir todos os valores do conjunto universo.
Temos que a fbf
¬[P (X, Y )] ∨ ¬[F (X)] ∨mãe(X)
é um exemplo de uma cláusula de Horn, já que consite de três predicados conectados por
disjunções com apenas mãe(X) não negado. Pelas leis de De Morgan, ela é equivalente a
¬[P (X, Y ) ∧ F (X)] ∨mãe(X)
que é equivalente a
[P (X, Y ) ∧ F (X)] → mãe(X)
que representa a regra em Prolog do nosso exemplo.
Para descobrir novas relações, uma linguagem de programação lógica utiliza um processo 
conhecido como resolução. A regra de resolução do Prolog procura por um termo e sua negação 
para inferir uma cláusula de Horn de duas dadas.
Exemplificando, para responder a pergunta “quais X são mães?”, Prolog busca no banco de 
dados uma regra que tenha o predicado desejado mãe(X) como cabeça. Encontra
¬[P (X, Y )] ∨ ¬[F (X)] ∨ mãe(X)
Procura, entã,o no banco de dados por cláusulas que podem ser resolvidas com essa. A 
primeira delas é o fato P(ana, lucas). Essas duas cláusulas se resolvem em:
¬[F (ana)] ∨ mãe(ana)
15
F(lúısa)
F(beatriz)
e a regra “ser mãe” pela fbf
P(X,Y)∧ F(X)→ Mãe(X)
Quantificadores universais não fazem parte expĺıcita da regra como ela aparece em um programa
em Prolog, mas a linguagem trata a regra como se estivesse universalmente quantificada:
(∀X), (∀Y ) [P(X,Y) ∧ F(X)→ Mãe(X)],
e usa a particularização universal para retirar os quantificadores universais e permitir às variáveis
assumir todos os valores do conjunto universo.
Temos que a fbf
¬[P (X, Y )] ∨ ¬[F (X)] ∨mãe(X)
é um exemplo de uma cláusula de Horn, já que consite de três predicados conectados por
disjunções com apenas mãe(X) não negado. Pelas leis de De Morgan, ela é equivalente a
¬[P (X, Y ) ∧ F (X)] ∨mãe(X)
que é equivalente a
[P (X, Y ) ∧ F (X)] → mãe(X)
que representa a regra em Prolog do nosso exemplo.
Para descobrir novas relações, uma linguagem de programação lógica utiliza um processo 
conhecido como resolução. A regra de resolução do Prolog procura por um termo e sua negação 
para inferir uma cláusula de Horn de duas dadas.
Exemplificando, para responder a pergunta “quais X são mães?”, Prolog busca no banco de 
dados uma regra que tenha o predicado desejado mãe(X) como cabeça. Encontra
¬[P (X, Y )] ∨ ¬[F (X)] ∨ mãe(X)
Procura, entã,o no banco de dados por cláusulas que podem ser resolvidas com essa. A 
primeira delas é o fato P(ana, lucas). Essas duas cláusulas se resolvem em:
¬[F (ana)] ∨ mãe(ana)
15
F(lúısa)
F(beatriz)
e a regra “ser mãe” pela fbf
P(X,Y)∧ F(X)→ Mãe(X)
Quantificadores universais não fazem parte expĺıcita da regra como ela aparece em um programa
em Prolog, mas a linguagem trata a regra como se estivesse universalmente quantificada:
(∀X), (∀Y ) [P(X,Y) ∧ F(X)→ Mãe(X)],
e usa a particularização universal para retirar os quantificadores universais e permitir às variáveis
assumir todos os valores do conjunto universo.
Temos que a fbf
¬[P (X, Y )] ∨ ¬[F (X)] ∨mãe(X)
é um exemplo de uma cláusula de Horn, já que consite de três predicados conectados por
disjunções com apenas mãe(X) não negado. Pelas leis de De Morgan, ela é equivalente a
¬[P (X, Y ) ∧ F (X)] ∨mãe(X)
que é equivalente a
[P (X, Y ) ∧ F (X)] → mãe(X)
que representa a regra em Prolog do nosso exemplo.
Para descobrir novas relações, uma linguagem de programação lógica utiliza um processo 
conhecido como resolução. A regra de resolução do Prolog procura por um termo e sua negação 
para inferiruma cláusula de Horn de duas dadas.
Exemplificando, para responder a pergunta “quais X são mães?”, Prolog busca no banco de 
dados uma regra que tenha o predicado desejado mãe(X) como cabeça. Encontra
¬[P (X, Y )] ∨ ¬[F (X)] ∨ mãe(X)
Procura, entã,o no banco de dados por cláusulas que podem ser resolvidas com essa. A 
primeira delas é o fato P(ana, lucas). Essas duas cláusulas se resolvem em:
¬[F (ana)] ∨ mãe(ana)
15
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E138
e como F(ana) é verdadeiro, o Prolog infere que
mãe(ana),
pois F (ana),¬[F (ana)] ∨ mãe(ana) ≡ F (ana), F (ana) → mãe(ana) ≡ mãe(ana), pela regra
Modus Ponens.
Tendo obtido todas as resoluções posśıveis do fato P(ana, lucas), Prolog volta para trás,
procurando uma nova cláusula que possa ser resolvida com a regra; dessa vez encontraria P(ana,
antonio).
Caminho Cŕıtico no Diagrama PERT
No estudo de Relações, na unidade III, foi introduzido o conceito de diagrama PERT - Pro-
gramming Evaluation and Review Technique, que significa técnica para análise e revisão do
programa. São três as caracteŕısticas essenciais para a utilização do PERT:
1. O projeto é constituido por um conjunto bem definido de atividades cuja finalização
corresponde ao fim do projeto.
2. As atividades podem começar ou parar independentemente umas das outras, em uma
dada sequência.
3. As atividades são ordenadas, isto é, devem ser realizadas em uma sequência tecnológica
bem determinada.
Em um diagrama PERT (ou diagrama de Rede), denomina-se caminho a qualquer sequência
de atividades, que leve do nó inicial ao nó final, ou seja, do ińıcio ao fim do projeto.
Construção do diagrama PERT
Na Unidade III, constrúımos o diagrama PERT em que as tarefas eram os nós e as setas
apontavam para as tarefas a partir de seus pré-requisitos.
Também podemos construir o diagrama, considerando que ele é constitúıdo por uma rede
desenhada com base em dois elementos:
- atividades (representados por setas);
- acontecimentos (ou eventos) representados por ćırculos (nós).
16
Caminho Crítico no Diagrama PERT
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
139
Para cada projeto, é constrúıdo o respectivo grafo: as atividades são representadas por
letras e os acontecimentos são representados por números. Ambos se desenvolvem da esquerda
para para direita e de cima para baixo.
As atividades representam as tarefas a executar e, em geral, traduzem-se por peŕıodos de
tempo ou recursos humanos ou financeiros a utilizar.
Cada atividade possui um ińıcio e um fim, que são pontos no tempo. Esses pontos no tempo
são conhecidos como eventos. A seta aponta para o ćırculo que representa o evento final, para
dar a ideia de progressão no tempo.
Exemplo: consideremos o seguinte diagrama de rede onde as atividades são denotadas por
A, B, C, D, E, F.
Para esse diagrama, podemos distinguir dois caminhos, contendo as seguintes atividades:
Caminho 1: A C E F.
Caminho 2: B D E F.
Chama-se de duração de um caminho à soma das durações de todas as atividades que o
compõem.
Exemplo
Vamos supor que os tempos para cada atividade do diagrama anterior sejam dados pela
seguinte tabela:
A B C D E F
7h 2h 5h 3,5h 13h 8h
Logo,
- o caminho 1 (A C E F) terá duração de 7 + 5 + 13 + 8 = 33h;
- o caminho 2 (B D E F) terá duração de 2 + 3, 5 + 13 + 8 = 26, 5h.
17
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E140
Caminho Cŕıtico
Em um Diagrama de Rede, o caminho com a maior duração é chamado de caminho cŕıtico
e governa o tempo de término do projeto: o tempo de término de um projeto é igual à duração
de seu caminho cŕıtico.
Qualquer atraso nesse caminho, automaticamente, determinará um atraso no projeto.
As atividades do caminho cŕıtico são chamadas de atividades cŕıticas, e nenhuma dessas
atividades pode se atrasar sem que o projeto também se atrase. Em uma linguagem t́ıpica,
dizemos que essas atividades não têm folga ou, equivalentemente, que sua folga é zero.
Em outros caminhos que não o caminho cŕıtico, as atividades podem sofrer algum atraso
sem que isso implique em atraso do projeto.
Resumidamente,
. Caminho cŕıtico é o conjunto de atividades em que qualquer atraso compromete todo o
projeto.
. É o caminho de maior duração na rede.
Exemplos:
1) Para o diagrama anterior, temos que o caminho 1 (A C E F) é o caminho cŕıtico.
Observemos que um limite superior para o tempo necessário para se completar o pro-
jeto pode ser obtido somando-se o tempo para se completar cada tarefa, mas assim, não
estaŕıamos levando em conta o fato de que alguma tarefas podem ser realizadas paralela-
mente, como as tarefas B e C, por exemplo.
2) Calcule o tempo mı́nimo para se completar o projeto de produção de uma cadeira de
balanço, e os nós do caminho cŕıtico.
18
Caminho Crítico no Diagrama PERT
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
141
Tarefa Pré-requisitos Horas para conclusão
1. Seleção da madeira N/A 3
2. Entalhamento dos arcos 1 4
3. Entalhamento do assento 1 6
4. Entalhamento do encosto 1 7
5. Entalhamento dos braços 1 3
6. Escolha do tecido N/A 1
7. Costura da almofada 6 7
8. Montagem: assento e encosto 3; 4 2
9. Fixação dos braços 5; 8 2
10. Fixação dos arcos 2; 8 3
11. Verniz 9; 10 5
12. Instalação almofada 7; 11 0.5
Tabela 2: Agendamento de tarefas sobre a construção de cadeiras de balanço.
Fonte: adaptado de Gersting (2004, p.218)
Vimos que o diagrama PERT para esse exemplo é:
Segundo Gersting (2004, p.219), para obter o tempo mı́nimo necessário para se completar
esse projeto, podemos analisar o diagrama da esquerda para a direita, calculando, para cada
nó, o tempo mı́nimo para se completar o trabalho do ińıcio até aquele nó. Para se completar
uma tarefa x que tem diversos pré-requisitos, devemos observar que todos os pré-requisistos
deverão estar completos antes que a tarefa x seja iniciada. Logo, devemos somar ao tempo
necessário para se executar a tarefa x o tempo máximo entre os tempos necessários para que
se conclua cada pré-requisito.
Vamos calcular o tempo necessário para se completar cada tarefa para este exemplo:
19
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E142
. Tarefa 1: 3h.
. Tarefa 2: 3h+ 4h = 7h.
. Tarefa 3: 3h+ 6h = 9h.
. Tarefa 4: 3h+ 7h = 10h.
. Tarefa 5: 3h+ 3h = 6h.
. Tarefa 6: 1h.
. Tarefa 7: 1h+ 2h = 3h.
. Tarefa 8: máx(T3; T4) + T8 = máx(tempo para completar a tarefa 3; tempo para
completar a tarefa 4) + tempo para completar a tarefa 8 = máx(9h ; 10h)+ 2h = 12h.
. Tarefa 9: máx(T5; T8) + T9 = máx(6h ; 12h)+ 2h = 12h+ 2h = 14h.
. Tarefa 10: máx(T2; T8) + T10 = máx(7h ; 12h) + 3h = 12h+ 3h = 15h.
. Tarefa 11: máx(T9; T10) + T11 = máx(14h ; 15h) + 5h = 15h+ 5h = 20h.
. Tarefa 12: máx(T7; T11) + T12 = máx(3h ; 20h) + 0, 5h = 20h+ 0, 5h = 20, 5h.
Assim, o número mı́nimo de horas para se produzir uma cadeira de balanço é 20, 5h.
Para obter os nós do caminho cŕıtico, devemos percorrer o diagrama inversamente, a partir
do nó 12, selecionando em cada ponto com mais de um pré-requisito o nó que contribuiu com
o valor máximo.
Obteŕıamos a sequência
12, 11, 10, 8, 4, 1.
Logo, os nós do caminho cŕıtico são
1, 4, 8, 10, 11, 12.
As atividades sobre esse caminho são as Atividades Cŕıticas (Atividades Gargalos),
ou seja, qualquer atraso em uma dessas atividades irá atrasar a duração de todo o projeto.
Com relação às demais atividades, elas poderão ou não atrasar a duraçãode todo o projeto
caso sofram algum atraso.
Se uma tarefa que não está no caminho cŕıtico atrasar, o caminho cŕıtico poderá ser modi-
ficado para se incluir esse nó (gargalo que pode atrasar a finalização do projeto). Dessa forma,
podemos concluir que, em um projeto complexo, o caminho cŕıtico deve ser continuamente
recalculado para que decidam o melhor lugar para se alocar recursos de modo que o projeto
progrida.
20
Caminho Crítico no Diagrama PERT
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
143
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E144
Autômatos Finitos
Um sistema de estados finitos é um modelo matemático de um sistema com entradas e
sáıdas discretas que pode assumir um número finito e pré-definido de estados.
Cada estado resume somente as informações do passado necessárias para determinar as
ações para a próxima entrada.
O autômato finito ou (máquina de estados finitos) é o primeiro modelo computacional
de definição de linguagens que são definidas por mecanismo de reconhecimento, que pode
ser encarado como um teste aplicado a cada caractere da palavra. Um autômato é usado
para verificar se uma palavra w pertence a uma linguagem L, ou seja, o autômato verifica se
w∈ L ou w �∈ L.
A linguagem reconhecida pelo autômato finito é constitúıda por todas as palavras que
passem no teste. Este teste é aplicado de forma incremental, percorrendo os śımbolos da
palavra, um a um, a partir do seu ińıcio, e a decisão final só surge após o percurso completo da
palavra, conferindo a qualidade computacional dos autômatos finitos.
Segundo Menezes (2013, p.120), um Autômato Finito Determińıstico, ou simplesmente
autômato finito, pode ser visto como uma máquina composta basicamente por três partes:
1. Fita: dispositivo de entrada que contém a informação a ser processada.
É dividida em células em que cada uma armazena um śımbolo pertencente a um alfabeto
de entrada.
Não é posśıvel gravar sobre a fita; não existe memória auxiliar. Inicialmente a palavra a
ser processada, isto é, a informação de entrada ocupa toda a fita.
2. Unidade de Controle: reflete o estado corrente da máquina.
Possui uma unidade de leitura (cabeça de leitura, que acessa uma unidade da fita de
cada vez. Pode assumir um número finito e pré-definido de estados. Após cada leitura, a
cabeça move-se uma célula para a direita.
21
Autômatos Finitos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
145
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
δ a b
q0 q1 q2
q1 qf q2
q2 q1 qf
qf qf qf
A ilustração para esse autômato é:
Observemos que, relativamente ao estado q0, podemos ter:
• com origem no estado q0, ao ler o śımbolo a, o autômato assume o estado q1, o que
podemos representar pelo par ordenado ((q0, a), q1).
• com origem no estado q0, ao ler o śımbolo b, o autômato assume o estado q2, o que
podemos representar pelo par ordenado ((q0, b), q2).
O algoritmo apresentado usa os estados q1 e q2 para “memorizar” o śımbolo anterior. Assim,
q1 representa “o śımbolo anterior é a” e q2 representa “o śımbolo anterior é b”.
Após identificar dois a ou dois b consecutivos ((aa) ou (bb)), o autômato assume o estado
qf (final) e varre o sufixo da palavra de entrada sem qualquer controle lógico, somente para
terminar o processamento.
Podemos concluir, então, que o autômato M aceita todas as palavras sobre o alfabeto
Σ = {a, b} que possuem aa ou bb como subpalavra.
Linguagem definida por um Autômato Finito
A linguagem L definida por um autômato finito M é o conjunto de todas as cadeias w sobre
o alfabeto Σ que levam M da sua configuração inicial para alguma configuração final por meio
da aplicação sucessiva de transições definidas pela função δ.
Podemos denotar esse conjunto da seguinte forma:
L(M) = {w ∈ Σ∗ | δ(q0, w) ∈ F}
24
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
δ a b
q0 q1 q2
q1 qf q2
q2 q1 qf
qf qf qf
A ilustração para esse autômato é:
Observemos que, relativamente ao estado q0, podemos ter:
• com origem no estado q0, ao ler o śımbolo a, o autômato assume o estado q1, o que
podemos representar pelo par ordenado ((q0, a), q1).
• com origem no estado q0, ao ler o śımbolo b, o autômato assume o estado q2, o que
podemos representar pelo par ordenado ((q0, b), q2).
O algoritmo apresentado usa os estados q1 e q2 para “memorizar” o śımbolo anterior. Assim,
q1 representa “o śımbolo anterior é a” e q2 representa “o śımbolo anterior é b”.
Após identificar dois a ou dois b consecutivos ((aa) ou (bb)), o autômato assume o estado
qf (final) e varre o sufixo da palavra de entrada sem qualquer controle lógico, somente para
terminar o processamento.
Podemos concluir, então, que o autômato M aceita todas as palavras sobre o alfabeto
Σ = {a, b} que possuem aa ou bb como subpalavra.
Linguagem definida por um Autômato Finito
A linguagem L definida por um autômato finito M é o conjunto de todas as cadeias w sobre
o alfabeto Σ que levam M da sua configuração inicial para alguma configuração final por meio
da aplicação sucessiva de transições definidas pela função δ.
Podemos denotar esse conjunto da seguinte forma:
L(M) = {w ∈ Σ∗ | δ(q0, w) ∈ F}
24
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segunda componente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
3. Programa ou Função de Transição: função que comanda as leituras e define o estado da
máquina. Dependendo do estado corrente e do śımbolo lido, determina o novo estado
do autômato. Usa-se o conceito de estado para armazenar as informações necessárias à
determinação do próximo estado, uma vez que não há memória auxiliar.
A figura a seguir representa um autômato finito como uma máquina com controle finito:
Definição: Autômato Finito Determińıstico (AFD)
Um autômato finito determińıstico (AFD), ou simplesmente autômato finito (M)é uma
qúıntupla:
M = (Σ, Q, δ, q0, F ),
em que:
Σ - Alfabeto de śımbolos de entrada
Q - Conjunto finito de estados posśıveis do autômato
δ - Função de Transição ou Função Programa
δ : Q× Σ → Q
Por essa função, temos que, se M está no estado Q e vê a entrada a, o autômato vai para
o estado δ(q, a),
ou melhor
segundo a função de transição, um par da forma ((q, a), p), ou seja, tal que δ(q, a) = p, indica
que, no estado q, ao ler o śımbolo a, o autômato assume o estado p.
Cada par ordenado é tal que a primeira componente define o estado corrente e o śımbolo
lido da fita, e a segundacomponente é o novo estado.
q0 - Estado inicial tal que q0 ∈ Q.
F - Conjunto de estados finais, tais que F ⊆ Q.
O estado qf é dito estado final.
22
Representação de um autômato
A Função de Transição pode ser representada como um grafo orientado finito em que:
• Nós representam estados do autômato (que são em número finito).
• Arcos representam transições ou computações atômicas (também em número finito). O
programa do autômato é o conjunto de todas as transições.
• q0 é o nodo destino de uma seta de origem, por ser o estado inicial.
• qf (estado final) é representado de forma diferenciada, sendo o traço da circunferência do
nó mais forte ou duplo.
Representação dos estados inicial e final como nós de um grafo:
Representação da Função Programa como um grafo:
O processamento de um autômato finito M para uma palavra de entrada w consiste na
sucessiva aplicação da Função de Transição para cada śımbolo de w, da esquerda para direita,
até ocorrer uma condição de parada.
Exemplos: Autômato Finito
1) Consideremos o autômato finito M = ({a, b}, {q0, q1, q2, qf}, δ, q0, {qf}), em que:
Σ = {a, b}
Q = {q0, q1, q2, qf} são os estados posśıveis
δ : (Q× Σ) → Q é a função de transição
Q={qf} é o estado final,
sendo a função de transição δ representada pela seguinte tabela:
23
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E146
δ a b
q0 q1 q2
q1 qf q2
q2 q1 qf
qf qf qf
A ilustração para esse autômato é:
Observemos que, relativamente ao estado q0, podemos ter:
• com origem no estado q0, ao ler o śımbolo a, o autômato assume o estado q1, o que
podemos representar pelo par ordenado ((q0, a), q1).
• com origem no estado q0, ao ler o śımbolo b, o autômato assume o estado q2, o que
podemos representar pelo par ordenado ((q0, b), q2).
O algoritmo apresentado usa os estados q1 e q2 para “memorizar” o śımbolo anterior. Assim,
q1 representa “o śımbolo anterior é a” e q2 representa “o śımbolo anterior é b”.
Após identificar dois a ou dois b consecutivos ((aa) ou (bb)), o autômato assume o estado
qf (final) e varre o sufixo da palavra de entrada sem qualquer controle lógico, somente para
terminar o processamento.
Podemos concluir, então, que o autômato M aceita todas as palavras sobre o alfabeto
Σ = {a, b} que possuem aa ou bb como subpalavra.
Linguagem definida por um Autômato Finito
A linguagem L definida por um autômato finito M é o conjunto de todas as cadeias w sobre
o alfabeto Σ que levam M da sua configuração inicial para alguma configuração final por meio
da aplicação sucessiva de transições definidas pela função δ.
Podemos denotar esse conjunto da seguinte forma:
L(M) = {w ∈ Σ∗ | δ(q0, w) ∈ F}
24
Autômatos Finitos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
147
Considerando o autômato M do exemplo 1, podemos citar algumas linguagens que M
reconhece:
• L1 = {aa, aaa, aaaa, ...}
• L2 = {bb, bba, bbab, bbaaba, bbabb}
• L3 = {abaa, abb, abba, abbb, aab}
A figura abaixo ilustra o processamento do autômato M para a entrada w = baaab, a qual
é aceita.
2) (Menezes, 2013, p.122) Considere M1 o autômato finito ilustrado na figura abaixo, o qual
representa a interface “homem × máquina” de uma máquina de vendas de refrigerante,
cigarro e doce.
25
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E148
Autômatos Finitos
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
149
Podemos observar que:
Com origem no estado q0, ao receber a informação “moeda”, o autômato assume o estado
q1.
No estado q1, ao receber a informação “tecla doce”, o autômato assume o estado q2.
Portanto, dependendo do estado corrente e da informação lida, o autômato assume um novo
estado.
Traduzindo os itens acima como pares ordenados, obtem-se respectivamente:
((q0,moeda), q1) e ((q1, tecla−doce), q2)
.
Assim, cada par ordenado acima é tal que:
A primeira componente é um par ordenado, o qual define o estado corrente e a informação
lida; a segunda componente é o novo estado.
Supondo que: Q = {q0, q1, q2, q3, q4}
Σ = {moeda, tecla−doce, tecla−cigarro, tecla−refri, libera−doce, libera−cigarro,
libera−refri},
então
δ : Σ×Q → Q
é a função programa (ou de transição) do autômato M1.
Restrição de um autômato finito
Considerando o autômato finito M1, vamos supor que se deseje uma nova máquina análoga
a essa, mas sem as funções relacionadas com cigarro. Para obter essa máquina, pode-se realizar
a seguinte operação de restrição:
(δ \Q× Σ0) : Q× Σ0 → Q
em que:
Σ0 ={moeda, tecla−doce, tecla−refri, libera−doce, libera−refri}.
Pergunta: como ficaria o esquema do autômato para este operador restrição?
26
Podemos observar que:
Com origem no estado q0, ao receber a informação “moeda”, o autômato assume o estado
q1.
No estado q1, ao receber a informação “tecla doce”, o autômato assume o estado q2.
Portanto, dependendo do estado corrente e da informação lida, o autômato assume um novo
estado.
Traduzindo os itens acima como pares ordenados, obtem-se respectivamente:
((q0,moeda), q1) e ((q1, tecla−doce), q2)
.
Assim, cada par ordenado acima é tal que:
A primeira componente é um par ordenado, o qual define o estado corrente e a informação
lida; a segunda componente é o novo estado.
Supondo que: Q = {q0, q1, q2, q3, q4}
Σ = {moeda, tecla−doce, tecla−cigarro, tecla−refri, libera−doce, libera−cigarro,
libera−refri},
então
δ : Σ×Q → Q
é a função programa (ou de transição) do autômato M1.
Restrição de um autômato finito
Considerando o autômato finito M1, vamos supor que se deseje uma nova máquina análoga
a essa, mas sem as funções relacionadas com cigarro. Para obter essa máquina, pode-se realizar
a seguinte operação de restrição:
(δ \Q× Σ0) : Q× Σ0 → Q
em que:
Σ0 ={moeda, tecla−doce, tecla−refri, libera−doce, libera−refri}.
Pergunta: como ficaria o esquema do autômato para este operador restrição?
26
Podemos observar que:
Com origem no estado q0, ao receber a informação “moeda”, o autômato assume o estado
q1.
No estado q1, ao receber a informação “tecla doce”, o autômato assume o estado q2.
Portanto, dependendo do estado corrente e da informação lida, o autômato assume um novo
estado.
Traduzindo os itens acima como pares ordenados, obtem-se respectivamente:
((q0,moeda), q1) e ((q1, tecla−doce), q2)
.
Assim, cada par ordenado acima é tal que:
A primeira componente é um par ordenado, o qual define o estado corrente e a informação
lida; a segunda componente é o novo estado.
Supondo que: Q = {q0, q1, q2, q3, q4}
Σ = {moeda, tecla−doce, tecla−cigarro, tecla−refri, libera−doce, libera−cigarro,
libera−refri},
então
δ : Σ×Q → Q
é a função programa (ou de transição) do autômato M1.
Restrição de um autômato finito
Considerando o autômato finito M1, vamos supor que se deseje uma nova máquina análoga
a essa, mas sem as funções relacionadas com cigarro. Para obter essa máquina, pode-se realizar
a seguinte operação de restrição:
(δ \Q× Σ0) : Q× Σ0 → Q
em que:
Σ0 ={moeda, tecla−doce, tecla−refri, libera−doce, libera−refri}.
Pergunta: como ficaria o esquema do autômato para este operador restrição?
26
Podemos observar que:
Com origem no estado q0, ao receber a informação “moeda”, o autômato assume o estado
q1.
No estado q1, ao receber a informação “tecla doce”, o autômato assume o estado q2.
Portanto, dependendo do estado corrente e da informação lida, o autômato assume um novo
estado.
Traduzindo os itens acima como pares ordenados, obtem-se respectivamente:
((q0,moeda), q1) e ((q1, tecla−doce),q2)
.
Assim, cada par ordenado acima é tal que:
A primeira componente é um par ordenado, o qual define o estado corrente e a informação
lida; a segunda componente é o novo estado.
Supondo que: Q = {q0, q1, q2, q3, q4}
Σ = {moeda, tecla−doce, tecla−cigarro, tecla−refri, libera−doce, libera−cigarro,
libera−refri},
então
δ : Σ×Q → Q
é a função programa (ou de transição) do autômato M1.
Restrição de um autômato finito
Considerando o autômato finito M1, vamos supor que se deseje uma nova máquina análoga
a essa, mas sem as funções relacionadas com cigarro. Para obter essa máquina, pode-se realizar
a seguinte operação de restrição:
(δ \Q× Σ0) : Q× Σ0 → Q
em que:
Σ0 ={moeda, tecla−doce, tecla−refri, libera−doce, libera−refri}.
Pergunta: como ficaria o esquema do autômato para este operador restrição?
26
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E150
Relações e Banco de Dados
Um banco de dados é um conjunto de informações associadas sobre algum empreendi-
mento, cujo objetivo é atender a uma comunidade de usuários.
Um banco de dados relacional é um banco de dados cujos dados são conjuntos (repre-
sentados como tabelas) que são relacionados com outros conjuntos (tabelas).
Cada tabela terá um nome, que será único, e um conjunto de atributos com seus respectivos
nomes e domı́nios. Além disso, todos os valores de uma coluna são do mesmo tipo de dados.
Exemplo: tabela de empregados de uma empresa
Empregado
Matr. Nome Endereço Função Salário Dep.
147 Maria Lopes R. Antonio Soop, 632 Secretária 1200,00 D1
086 Zilda P. Silva R. Sibipiruna, 063 Aux. Admin. 1350,00 D3
204 André Teixeira Av. Palmares, 1027 Engenheiro 7900,00 D1
213 Sônia Valadares Av. Brasil, 3255 Engenheiro 8200,00 D2
136 Rogério Porto R. Armando Costa, 147 Técnico 1950,00 D1
Podemos pensar nesta tabela como composta por seis conjuntos (tabelas): Matŕıcula, Nome, 
Endereço, Função, Salário e Departamento. Cada item destacado é um atributo de empregado, 
que seria a entidade, ou seja, o objeto importante no modelo. Os atributos representam as 
propriedades das entidades.
Cada linha da tabela contém os valores dos 6 atributos de um elemento particular desse 
conjunto. Cada linha individual é chamada de tupla.
A tabela relacional pode ser considerada um conjunto de linhas. De acordo com a ideia de 
teoria dos conjuntos, não existem tuplas duplicadas e não se tem ordem entre as tuplas. A ordem 
dos atributos também não é importante, mas cada coluna na tabela deve conter somente os 
valores de um atributo.
27
O número de atributos é chamado de grau da relação. No exemplo, o grau da relação
“Empregado” é 6.
O número de tuplas (linhas) é chamado de cardinalidade da relação. Para o exemplo, a
cardinalidade da relação é 5.
Mais formalmente, Gersting(2014, p.225) define uma relação em um banco de dados como
um subconjunto D1 × D2 × D3 × ... × Dn, em que Di é o domı́nio do atributo Ai, ou seja, o
conjunto no qual o atributo toma seus valores.
O projeto de um banco de dados é geralmente realizado usando-se um modelo conceitual,
que é a descrição do sistema proposto na forma de um conjunto de ideias e conceitos integrados
a respeito do que o sistema deve fazer, como ele deve se comportar e como ele deve se parecer.
O objetivo desse modelo é representar de forma abstrata, independente da implementação em
computador, os dados que serão armazenados no banco de dados.
Um modelo conceitual frequentemente adotado é o diagrama entidade-relacionamento
ou simplesmente diagrama E-R. Em um modelo E-R, retângulos denotam conjuntos de enti-
dades; elipses denotam atributos e losangos denotam relações.
Exemplos:
1) O diagrama entidade-relação para a relação Empregado é dado por:
2) Consideremos as seguintes informações sobre as entidades “Automóvel” e “Cliente”, de
uma oficina mecânica que presta serviço para uma seguradora:
Automóvel
Placa Marca Modelo Chassi Propriet. Fabricante Ano
AHC-3192 Gol LX 3KG00324MH9 João da Silva Volkswagem 2009
ASX-9634 Fiesta SE 5GH00849MH9 Sueli Moraes Ford 2011
AYB-1400 Focus GLX 6JK00884MH8 Bruno Matos Ford 2011
BFR-4798 Cruze LT 2HF0035MH6 Diogo Furtado Chevrolet 2013
28
Relações e Banco de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
151
Cliente
Identidade Nome Endereço Telefone Cidade
2345633-1-SP João da Silva Prudente de Moraes, 622 3267-3049 Maringá
5846997-0-PR Bruno Matos Carlos Poppi, 1033 3233-8514 Mandaguari
4712336-6-PR Roberto Garcia Herval, 1074 3246-1562 Maringá
2458933-7-PE Maria Gonçalves Brasil, 3512 9964-2586 Apucarana
0125444-9-MT Álvaro Santos José C. Lucco, 391 9868-9114 Maringá
Temos que as entidades são automóveis e clientes. Os automóveis têm os atributos placa;
marca; modelo; chassi; proprietário; fabricante e ano, enquanto clientes têm os atributos iden-
tidade; nome; endereço; telefone e cidade. Podemos estabelecer a relação “proprietário”, que
indica que clientes são proprietários de automóveis. A relação “é proprietário de” é uma relação
binária de cliente para automóvel. Podemos dizer que essa relação é do tipo um para muitos,
ou seja, cada cliente pode ter mais de um automóvel, mas cada automóvel terá somente um
cliente cadastrado. Um diagrama E-R para a relação Proprietário está apresentado a seguir:
O “1” e o “N” nos segmentos indicam que a relação é binária do tipo um para muitos (1:N).
Em uma tabela relacional, um atributo ou uma combinação de atributos pode identificar de
forma única uma tupla (linha) da tabela. Esse atributo determinante recebe o nome de chave
primária ou Primary key (PK).
29
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E152
Cada tabela deve incluir um campo ou conjunto de campos que identifique de forma ex-
clusiva, cada registro armazenado na tabela para que se crie uma identificação única. Se o
subconjunto mı́nimo de atributos que pode ser usado para identificar cada tupla de forma
única contém mais de um atributo, temos uma chave primária composta.
Para a relação “Cliente” apresentada anteriormente, temos que o atributo Identidade é uma
chave primária, pois identifica de maneira única cada tupla:
Cliente (Identidade, Nome, End., Telefone, Cidade),
em que o atributo destacado é a chave primária.
Quando em uma relação existe mais de uma combinação de atributos possuindo a pro-
priedade de identificação única, então, temos uma chave candidata. A chave candidata é
apenas conceitual, ou seja, ela não é implementada. O que acontece é que ela possui as mesmas
propriedades para ser chave primária. Podemos citar Matŕıcula, CPF, RG e Titulo Eleitor
como exemplos de chaves candidatas. A chave candidata que não é primária, é chamada de
chave alternativa.
Para a relação “automóvel”, temos que Placa e Chassi são chaves candidatas. Escolhe-se
para chave primária aquela com o atributo único ou menor número de caracteres.
Quando é necessário criar um atributo (um código de identificação) para ser usado como
chave primária, teremos uma chave inviśıvel. O nome é justificado pelo fato de que nenhum
usuário tem necessidade de vê-la.
Chave estrangeira ou Foreign key (FK) é o campo que estabelece o relacionamento
entre duas tabelas. Assim, um atributo (coluna) de uma relação (tabela) corresponde à mesma
coluna que é a chave primária de outra tabela. Dessa forma, deve-se especificar na tabela que
contém a chave estrangeira quais são essas colunas e a qual tabela está relacionada. O banco
de dados irá verificar se todos os campos que fazem referências à tabela estão especificados.
A chave estrangeira implementa orelacionamento em um banco de dados relacional.
A integridade dos dados é feita por meio de restrições, que são condições obrigatórias
impostas pelo modelo. Por exemplo, a restrição de chave afirma que toda relação deve ter pelo
menos uma chave primária.
#REFLITA#
Integridade da Entidade: nenhum valor de chave primária pode ser nulo.
Fonte: a autora.
#FIM REFLITA#
30
Cada tabela deve incluir um campo ou conjunto de campos que identifique de forma ex-
clusiva, cada registro armazenado na tabela para que se crie uma identificação única. Se o
subconjunto mı́nimo de atributos que pode ser usado para identificar cada tupla de forma
única contém mais de um atributo, temos uma chave primária composta.
Para a relação “Cliente” apresentada anteriormente, temos que o atributo Identidade é uma
chave primária, pois identifica de maneira única cada tupla:
Cliente (Identidade, Nome, End., Telefone, Cidade),
em que o atributo destacado é a chave primária.
Quando em uma relação existe mais de uma combinação de atributos possuindo a pro-
priedade de identificação única, então, temos uma chave candidata. A chave candidata é
apenas conceitual, ou seja, ela não é implementada. O que acontece é que ela possui as mesmas
propriedades para ser chave primária. Podemos citar Matŕıcula, CPF, RG e Titulo Eleitor
como exemplos de chaves candidatas. A chave candidata que não é primária, é chamada de
chave alternativa.
Para a relação “automóvel”, temos que Placa e Chassi são chaves candidatas. Escolhe-se
para chave primária aquela com o atributo único ou menor número de caracteres.
Quando é necessário criar um atributo (um código de identificação) para ser usado como
chave primária, teremos uma chave inviśıvel. O nome é justificado pelo fato de que nenhum
usuário tem necessidade de vê-la.
Chave estrangeira ou Foreign key (FK) é o campo que estabelece o relacionamento
entre duas tabelas. Assim, um atributo (coluna) de uma relação (tabela) corresponde à mesma
coluna que é a chave primária de outra tabela. Dessa forma, deve-se especificar na tabela que
contém a chave estrangeira quais são essas colunas e a qual tabela está relacionada. O banco
de dados irá verificar se todos os campos que fazem referências à tabela estão especificados.
A chave estrangeira implementa o relacionamento em um banco de dados relacional.
A integridade dos dados é feita por meio de restrições, que são condições obrigatórias
impostas pelo modelo. Por exemplo, a restrição de chave afirma que toda relação deve ter pelo
menos uma chave primária.
#REFLITA#
Integridade da Entidade: nenhum valor de chave primária pode ser nulo.
Fonte: a autora.
#FIM REFLITA#
30
Relações e Banco de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
153
Exemplo 1: A relação cliente-automóvel pode ser representada na relação “Proprietário”:
Proprietário
Identidade Placa
2345633-1-SP AHC-3192
5846997-0-PR ASX-9634
4712336-6-PR AYB-1400
0125444-9-MT BFR-4798
Clientes que não têm automóvel, não estão representados em Proprietário.
Exemplo 2: Se consideramos as seguintes tabelas:
Depto
CódigoDepto NomeDepto
Empregado
CodigoEmp Nome CodigoDepto CategFuncional CIC
então, o atributo “CodigoDepto” da tabela “Empregado” é uma chave estrangeira em
relação à chave primária da tabela “Depto”.
Exemplo 3:
Considere o diagrama de banco de dados a seguir, com quatro tabelas relacionadas. Podemos
observar a presença de chaves primárias (PK) e as chaves estrangeiras (FK).
31
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E154
Como IdCliente é uma chave estrangeira na relação Animal, então, as duas relações podem
ser combinadas usando uma operação chamada junção externa baseada em IdCliente, formando
a relação Animal-Proprietário.
Animal-Proprietário
idCliente idAnimal Nome Idade Sexo idEspécie
Operações nas relações
Duas operações unárias que podem ser executadas em relações são as operações de restrição
e de projeção.
Projeção: operação que cria uma nova relação formada pelas tuplas da relação original
que satisfazem uma determinada propriedade.
Exemplo:
Consideremos o seguinte esquema da base de dados relacional COMPANHIA e as respec-
tivas tabelas das entidades Empregado; Departamento; Locais Depto; Projeto; Trabalha em e
Dependente:
32
Relações e Banco de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
155
Dispońıvel em: https://www.ime.usp.br/ jef/apostila.pdf
33
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E156
Consideremos, agora, a relação “Depto-Local”, combinando as relações Departamento e
Locais−Depto pela junção externa:
Depto-Local
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Bellaire
Pesquisa 5 333445555 22-mai-78 Sugariand
Pesquisa 5 333445555 22-mai-78 Houston
Administrativo 4 987654321 01-jan-85 Stafford
Gerencial 1 888665555 19-jun-71 Houston
A operação Restrição de Depto-Local onde D-Localização = “Houston” fornecendo
Depto-Houston resulta na relação Departamento-Cidade de Houston:
Depto-Cidade de Houston
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Houston
Gerencial 1 888665555 19-jun-71 Houston
34
Relações e Banco de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
157
Consideremos, agora, a relação “Depto-Local”, combinando as relações Departamento e
Locais−Depto pela junção externa:
Depto-Local
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Bellaire
Pesquisa 5 333445555 22-mai-78 Sugariand
Pesquisa 5 333445555 22-mai-78 Houston
Administrativo 4 987654321 01-jan-85 Stafford
Gerencial 1 888665555 19-jun-71 Houston
A operação Restrição de Depto-Local onde D-Localização = “Houston” fornecendo
Depto-Houston resulta na relação Departamento-Cidade de Houston:
Depto-Cidade de Houston
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Houston
Gerencial 1 888665555 19-jun-71 Houston
34
Consideremos, agora, a relação “Depto-Local”, combinando as relações Departamento e
Locais−Depto pela junção externa:
Depto-Local
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Bellaire
Pesquisa 5 333445555 22-mai-78 Sugariand
Pesquisa 5 333445555 22-mai-78 Houston
Administrativo 4 987654321 01-jan-85 Stafford
Gerencial 1 888665555 19-jun-71 Houston
A operação Restrição de Depto-Local onde D-Localização = “Houston” fornecendo
Depto-Houston resulta na relação Departamento-Cidade de Houston:
Depto-Cidade de Houston
DNome DNúmero NSSger DatInicGer PLocalização
Pesquisa 5 333445555 22-mai-78 Houston
Gerencial 1 888665555 19-jun-71 Houston
34
Consideremos a relação “Empregado” no banco de dados. A operação projeção de Empre-
gado sobre (NSS, Salário) fornecendo Salário será:
Salário
NSS Salário
123456789 3000
333445555 4000
999887777 2500
987654321 4300
666884444 3800
453453453 2500
987987987 2500
888665555 5500
Como relações são conjuntos de n-uplas, as operações binárias de união, interseção e diferença
entre conjuntos podem ser aplicadas a duas relações que têm a mesma estrutura básica. Para a
interseção de duas tabelas com mesma estrutura, por exemplo, produziria uma relação contendo
todas as n-uplas comuns.
A operação junção pode ser executada em duas tabelas com um atributo comum (coluna).
As operaçõesde restrição, projeção e junção podem ser aplicadas em diversas combinações para
que um usuário possa pesquisar o banco de dados.
# SAIBA MAIS#
Não se pode questionar os benef́ıcios da tecnologia na área empresarial, como em tantas
outras áreas. Para uma empresa, os clientes são diferentes, tanto em seu valor como em suas
necessidades, e o uso adequado de um banco de dados pode favorecer o atendimento do cliente
com qualidade. Um banco de dados pode armazenar informações que poderão oferecer dados
valiosos a respeito dos clientes atuais e em potencial.
Para saber mais sobre a importância do assunto nesta área, leia o artigo Importância do
banco de dados para seu negócio, dispońıvel em <http://www.dgabc.com.br/Noticia/460146/
importancia-do-banco-de-dados-para-seu-negocio>.
Fonte: A autora.
#FIM SAIBA MAIS#
35
Consideremos a relação “Empregado” no banco de dados. A operação projeção de Empre-
gado sobre (NSS, Salário) fornecendo Salário será:
Salário
NSS Salário
123456789 3000
333445555 4000
999887777 2500
987654321 4300
666884444 3800
453453453 2500
987987987 2500
888665555 5500
Como relações são conjuntos de n-uplas, as operações binárias de união, interseção e diferença
entre conjuntos podem ser aplicadas a duas relações que têm a mesma estrutura básica. Para a
interseção de duas tabelas com mesma estrutura, por exemplo, produziria uma relação contendo
todas as n-uplas comuns.
A operação junção pode ser executada em duas tabelas com um atributo comum (coluna).
As operações de restrição, projeção e junção podem ser aplicadas em diversas combinações para
que um usuário possa pesquisar o banco de dados.
# SAIBA MAIS#
Não se pode questionar os benef́ıcios da tecnologia na área empresarial, como em tantas
outras áreas. Para uma empresa, os clientes são diferentes, tanto em seu valor como em suas
necessidades, e o uso adequado de um banco de dados pode favorecer o atendimento do cliente
com qualidade. Um banco de dados pode armazenar informações que poderão oferecer dados
valiosos a respeito dos clientes atuais e em potencial.
Para saber mais sobre a importância do assunto nesta área, leia o artigo Importância do
banco de dados para seu negócio, dispońıvel em <http://www.dgabc.com.br/Noticia/460146/
importancia-do-banco-de-dados-para-seu-negocio>.
Fonte: A autora.
#FIM SAIBA MAIS#
35
APLICAÇÕES À COMPUTAÇÃO
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
VU N I D A D E158
É
Considerações Finais
Encerramos esta última unidade fazendo aplicações de toda teoria matemática desenvolvida 
anteriormente na área de computação.
Inicialmente, vimos que as linguagens formais (ou linguagens estruturadas em frases) podem 
ser vistas como conjuntos. Consequentemente, muito da teoria e dos principais resultados da
área de linguagens formais está baseado na ainda mais fundamental teoria dos conjuntos da 
matemática discreta. As linguagens de programação são linguagem sobre um alfabeto prede-
terminado formado por letras, d́ıgitos e alguns śımbolos. Uma linguagem de programação é 
definida por todos os seus programas posśıveis, ou seja, são conjuntos infinitos.
Como aplicação de lógica, vimos o item Programação Lógica. Um programa em lógica
é um modelo de um determinado problema ou situação expresso por meio de um conjunto 
finito de sentenças lógicas. O ponto fundamental de Prolog consiste em identificar a noção de 
computação com a noção de dedução.
Retomamos o assunto sobre conjuntos parcialmente ordenados e problemas de ordenação 
de tarefas relembrando o conceito de diagrama PERT e definindo caminho cŕıtico para um 
diagrama. Um caminho cŕıtico representa o tempo mı́nimo para se completar o projeto inteiro. 
Atrasos em alguma tarefa do caminho cŕıtico acarretarão atrasos no projeto.
O conceito de relação e função foi aplicado em autômatos, que são usados para verificar se 
uma palavra pertence ou não a uma linguagem. O mecanismo de controle de um elevador é um 
bom exemplo de um sistema de estados finitos (autômato).
Vimos também que uma generalização de uma relação binária forma a base para um banco 
de dados relacional.
claro que as aplicações desta unidade foram desenvolvidas de maneira simples, com 
exemplos que permitiam a compreensão do conceito, estabelecendo a relação entre a teoria 
matemática e a computação. Muitos tópicos serão abordados posteriormente, em outras 
disciplinas, mas já fica claro que a teoria desenvolvida aqui será de extrema importância para a 
compreensão de assuntos espećıficos do curso.
Atividades de Autoestudo
1) (Gersting, 2004) Um banco de dados Prolog contém os dados a seguir, onde patrão(X, Y )
significa que “X é patrão de Y ” e supervisor(X, Y ) significa que “X é supervisor de Y ”.
patrão(Miguel, Joana).
patrão(Judite, Miguel).
patrão(Anita, Judite).
patrão(Judite, Kim).
patrão(Kim, Henrique).
patrão(Anita, Samuel).
patrão(Henrique, Jeferson).
36
Considerações Finais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
159
patrão(Miguel, Hamal).
supervisor(X,Y):- patrão(X,Y).
supervisor(X,Y):- patrão(X,Z), supervisor(Z,Y).
Encontre os resultados das seguinte perguntas:
a) ?patrão(X, Samuel)
b) ?patrão(Judite, X)
c) ?supervisor(Anita,X)
2) Considere o seguinte banco de dados:
come(urso,peixe).
come(peixe,peixinho).
come(peixinho,alga).
come(peixe,alga).
come(urso,raposa).
come(veado,grama).
come(peixe,minhoca).
come(urso,guaxinim).
come(raposa,coelho).
come(urso,veado).
come(lince,veado).
come(planta−carńıvora,mosca).
come(veado,planta−carńıvora).
animal(urso).
animal(peixe).
animal(raposa).
animal(veado).
animal(minhoca).
animal(lince).
animal(coelho).
animal(guaxinim).
animal(mosca).
animal(peixinho).
planta(grama).
planta(alga).
37
É
Considerações Finais
Encerramos esta última unidade fazendo aplicações de toda teoria matemática desenvolvida 
anteriormente na área de computação.
Inicialmente, vimos que as linguagens formais (ou linguagens estruturadas em frases) podem 
ser vistas como conjuntos. Consequentemente, muito da teoria e dos principais resultados da
área de linguagens formais está baseado na ainda mais fundamental teoria dos conjuntos da 
matemática discreta. As linguagens de programação são linguagem sobre um alfabeto prede-
terminado formado por letras, d́ıgitos e alguns śımbolos. Uma linguagem de programação é 
definida por todos os seus programas posśıveis, ou seja, são conjuntos infinitos.
Como aplicação de lógica, vimos o item Programação Lógica. Um programa em lógica
é um modelo de um determinado problema ou situação expresso por meio de um conjunto 
finito de sentenças lógicas. O ponto fundamental de Prolog consiste em identificar a noção de 
computação com a noção de dedução.
Retomamos o assunto sobre conjuntos parcialmente ordenados e problemas de ordenação 
de tarefas relembrando o conceito de diagrama PERT e definindo caminho cŕıtico para um 
diagrama. Um caminho cŕıtico representa o tempo mı́nimo para se completar o projeto inteiro. 
Atrasos em alguma tarefa do caminho cŕıtico acarretarão atrasos no projeto.
O conceito de relação e função foi aplicado em autômatos, que são usados para verificar se 
uma palavra pertence ou não a uma linguagem. O mecanismo de controle de um elevador é um 
bom exemplo de um sistema de estados finitos (autômato).
Vimos também que uma generalização de uma relação binária forma a base para um banco 
de dados relacional.
claro que as aplicações desta unidade foram desenvolvidas de maneira simples, com 
exemplos que permitiam a compreensão do conceito, estabelecendo a relação entre a teoria 
matemática e a computação. Muitos tópicos serão abordadosposteriormente, em outras 
disciplinas, mas já fica claro que a teoria desenvolvida aqui será de extrema importância para a 
compreensão de assuntos espećıficos do curso.
Atividades de Autoestudo
1) (Gersting, 2004) Um banco de dados Prolog contém os dados a seguir, onde patrão(X, Y )
significa que “X é patrão de Y ” e supervisor(X, Y ) significa que “X é supervisor de Y ”.
patrão(Miguel, Joana).
patrão(Judite, Miguel).
patrão(Anita, Judite).
patrão(Judite, Kim).
patrão(Kim, Henrique).
patrão(Anita, Samuel).
patrão(Henrique, Jeferson).
36
patrão(Miguel, Hamal).
supervisor(X,Y):- patrão(X,Y).
supervisor(X,Y):- patrão(X,Z), supervisor(Z,Y).
Encontre os resultados das seguinte perguntas:
a) ?patrão(X, Samuel)
b) ?patrão(Judite, X)
c) ?supervisor(Anita,X)
2) Considere o seguinte banco de dados:
come(urso,peixe).
come(peixe,peixinho).
come(peixinho,alga).
come(peixe,alga).
come(urso,raposa).
come(veado,grama).
come(peixe,minhoca).
come(urso,guaxinim).
come(raposa,coelho).
come(urso,veado).
come(lince,veado).
come(planta−carńıvora,mosca).
come(veado,planta−carńıvora).
animal(urso).
animal(peixe).
animal(raposa).
animal(veado).
animal(minhoca).
animal(lince).
animal(coelho).
animal(guaxinim).
animal(mosca).
animal(peixinho).
planta(grama).
planta(alga).
37planta(planta−carńıvora).
• Encontre o resultado das seguintes perguntas:
a) ?come(X, peixe)
b) ?come(peixe, X)
c) ?animal(X)
d) ?come(X,Y), planta(Y)
e) ?come(X,Y), come(Y, alga)
• Observe a regra abaixo:
Português: Carńıvoro é quem come animal.
Lógica: (∀X)(∀Y )come(X, Y ) ∧ animal(Y ) → carńıvoro(X)
Prolog: carńıvoro(X):-come(X,Y), animal(Y).
Escreva as regras para definir os itens abaixo:
f) herb́ıvoro: herb́ıvoro é quem come planta e não come animal.
g) predador: predador é carńıvoro e também é animal.
h) presa: presa é quem é comido por predador e também é animal.
i) caçado: caçado é quem é presa.
• Escreva as seguintes perguntas em Prolog:
j) Peixe come peixinho e minhoca?
l) Quais são as plantas?
m) Quem é comido pelo urso?
n) Quem é predador?
o) Quem é predador e também presa?
p) Quem é presa e herb́ıvoro?
Fonte: Cristóvão (2012).�
3) Construa um diagrama PERT das tabelas de tarefas a seguir; calcule o tempo mı́nimo
para completá-las e indique o caminho cŕıtico:
38
161 
a)
Tarefa Pré-requisitos Tempo para a Conclusão
A E 3
B C, D 5
C A 2
D A 6
E Nenhum 2
F A, G 4
G E 4
H B, F 1
b) A tabela abaixo apresenta a sequência de tarefas necessárias para realizar o conserto de
um torno que apresenta defeitos na árvore e na bomba de lubrificação.
Tarefas Descrição Pré-requisitos Tempo para a Conclusão
A Retirar placa, proteções e esgotar óleo - 1 h
B Retirar árvore e transportá-la A 3 h
C Lavar cabeçote A 2 h
D Trocar rolamentos B 3 h
E Trocar reparo da bomba de lubrificação B e C 2 h
F Montar, abastecer e testar o conjunto D e E 4 h
4) Considerando o diagrama de rede abaixo, em que cada letra designa a atividade com a
duração dada na tabela abaixo, determinar o caminho cŕıtico e o tempo mı́nimo para
completar as tarefas.
A B C D E
8 semanas 4 semanas 6 semanas 4 semanas 6 semanas
F G H I
12 semanas 10 semanas 10 semanas 5 semanas
39
planta(planta−carńıvora).
• Encontre o resultado das seguintes perguntas:
a) ?come(X, peixe)
b) ?come(peixe, X)
c) ?animal(X)
d) ?come(X,Y), planta(Y)
e) ?come(X,Y), come(Y, alga)
• Observe a regra abaixo:
Português: Carńıvoro é quem come animal.
Lógica: (∀X)(∀Y )come(X, Y ) ∧ animal(Y ) → carńıvoro(X)
Prolog: carńıvoro(X):-come(X,Y), animal(Y).
Escreva as regras para definir os itens abaixo:
f) herb́ıvoro: herb́ıvoro é quem come planta e não come animal.
g) predador: predador é carńıvoro e também é animal.
h) presa: presa é quem é comido por predador e também é animal.
i) caçado: caçado é quem é presa.
• Escreva as seguintes perguntas em Prolog:
j) Peixe come peixinho e minhoca?
l) Quais são as plantas?
m) Quem é comido pelo urso?
n) Quem é predador?
o) Quem é predador e também presa?
p) Quem é presa e herb́ıvoro?
Fonte: Cristóvão (2012).�
3) Construa um diagrama PERT das tabelas de tarefas a seguir; calcule o tempo mı́nimo
para completá-las e indique o caminho cŕıtico:
38
a)
Tarefa Pré-requisitos Tempo para a Conclusão
A E 3
B C, D 5
C A 2
D A 6
E Nenhum 2
F A, G 4
G E 4
H B, F 1
b) A tabela abaixo apresenta a sequência de tarefas necessárias para realizar o conserto de
um torno que apresenta defeitos na árvore e na bomba de lubrificação.
Tarefas Descrição Pré-requisitos Tempo para a Conclusão
A Retirar placa, proteções e esgotar óleo - 1 h
B Retirar árvore e transportá-la A 3 h
C Lavar cabeçote A 2 h
D Trocar rolamentos B 3 h
E Trocar reparo da bomba de lubrificação B e C 2 h
F Montar, abastecer e testar o conjunto D e E 4 h
4) Considerando o diagrama de rede abaixo, em que cada letra designa a atividade com a
duração dada na tabela abaixo, determinar o caminho cŕıtico e o tempo mı́nimo para
completar as tarefas.
A B C D E
8 semanas 4 semanas 6 semanas 4 semanas 6 semanas
F G H I
12 semanas 10 semanas 10 semanas 5 semanas
39
163 
Leitura Complementar
Integridade de Banco de Dados
Informações novas podem ser inclúıdas em um banco de dados de tempos em tempos; 
informações obsoletas podem ser exclúıdas e mudanças, ou atualizações, podem ser feitas em 
informações existentes. Em outras palavras, o banco de dados está sujeito às operações de 
inclusão, exclusão e modificação. Uma operação de inclusão pode ser efetuada criando-se 
uma segunda tabela com a informação nova e fazendo uma união de conjuntos da tabela 
existente com a nova tabela. A exclusão pode ser feita criando-se uma segunda tabela com 
a tuplas que devem ser apagadas e fazendo uma diferença entre conjuntos, retirando a tabela 
nova da tabela existente. A modificação pode ser feita através de uma exclusão (da tupla velha) 
seguida de uma inclusão (da tupla modificada).
Essas operações têm que ser efetuadas de modo que a informação no banco de dados per-
maneça correta e consistente, obedecendo às regras do negócio. Fazer com que se cumpra três 
regras de integridade ajuda. A integridade dos dados requer que os valores de um atributo 
pertençam, de fato, ao domı́nio do atributo. Por exemplo, o atributo Estado tem que ser uma 
abreviação válida de duas letras representando o Estado (ou o valor nulo). A integridade 
da entidade requer que nenhum componente de uma chave primária seja nulo. Esta restrição 
simplesmente confirma que cada tupla tem que ter um valor em sua chave primária para dis-
tingúı-la das outras, e que todos os atributos na chave primária são necessários para identificar 
univocamente a tupla.
A integridade referencial requer que quaisquer valores de chaves estrangeiras em outras 
relações sejam nulas ou tenham valores iguais aos das chaves primárias correspondentes nessas 
relações. A restrição de integridade referencial afeta tanto a inclusão quanto a exclusão (e 
portanto, a modificação).
Fonte: Gersting (2004).
Material Complementar: Livro
Matemática Discreta Para Computação e Informática -
Vol.16
Autor: Paulo Blauth Menezes
Editora: Bookman
Sinopse: Apresenta os principais conceitos de matemática disc-
reta, explicados e exemplificados. O conteúdo é rigoroso, simples e
didático. É o livro-texto de Aprendendo matemática discreta com
exerćıcios, volume 19 da mesma coleção.
40
CONCLUSÃO
165
CONCLUSÃO
CONCLUSÃO
Caros alunos, chegamos ao fim de mais uma etapa de estudos, concluindo a disciplina de Lógica 
para Computação Matemática I. Este livro apresentou alguns conceitos de matemática discreta 
de forma simples e acesśıvel, mas com o devido cuidado com os aspectos matemáticos formais e 
desenvolvimento do racioćınio. A Matemática discreta provê um conjunto de técnicaspara 
modelar problemas em Ciência da Computação.
Tivemos oportunidade de conhecer ou aprofundar conhecimentos sobre lógica matemática; teo-
ria dos conjuntos; relações e funções. Dos tópicos estudados, podemos citar alguns exemplos 
em Ciência da Computação: a parte de Lógica (lógica proposicional e lógica de predicados) se 
aplica em banco de dados, circuitos integrados, inteligência artificial, sistemas computacionais 
(hardware e software) e sistemas distribúıdos; Teoria dos Conjuntos se aplica em banco de da-
dos, circuitos integrados, inteligência artificial e sistemas distribúıdos; Funções têm aplicação 
em otimização e projeto de algoritmos, e Relações são utilizadas em sistemas distribúıdos, 
autômatos e banco de dados.
Sempre que posśıvel, os conceitos teóricos apresentados foram aplicadas na área de com-
putação, mas um caṕıtulo foi inteiramente dedicado ao estudo de alguns casos aplicados à 
computação em variadas matérias e disciplinas: linguagem de programação (procedimental e 
declarativa), banco de dados, linguagens formais e autômatos. Cabe lembrar que não era o 
objetivo do curso detalhar os conceitos espećıficos da área, mas apresentar aplicações da teoria 
matemática estudada e oferecer instrumentos e recursos para que desenvolvam um vocabulário 
preciso, notação matemática, abstrações e racioćınio formal.
Após o estudo desta disciplina, espero que vocês sejam capazes de aplicar os conceitos básicos 
da matemática discreta como uma ferramenta, seja no estudo de outras disciplinas do curso, ou 
posteriomente, em sua área de atuação, e que vocês possam enfrentar com grande naturalidade 
diversos estudos subsequentes, resultando em um aproveitamento muito mais efetivo do curso.
Muito sucesso!
Prof.a Edvania Gimenes de Oliveira Godoy
1
REFERÊNCIAS
167
ABELHAS resolvem dilema da computação. Inovação Tecnológica. Disponível em 
http://www.inovacaotecnologica.com.br/noticias/noticia.php?artigo=abelhas-re-
solvem-problema-caixeiro-viajante#.Vk35UW4afcc. Acesso em 14 jul. 2015. 
ALENCAR FILHO, E. Iniciação à Lógica Matemática. São Paulo: Nobel, 2002.
CRISTÓVÃO, H. M. Roteiro de Exercícios para Aula Prática de PROLOG. Disponível 
em: https://hudsoncosta.files.wordpress.com/2012/01/henriquecristovao-prolog_
roteiro_aula_pratica.pdf . Acesso em: 25 ago. 2015. 
DAGHLIAN, J. Lógica e Álgebra de Boole. 4. ed. São Paulo: Atlas, 2012.
FAJARDO, R. A. dos S. Lógica Matemática. Instituto de Matemática e Estatística 
– Universidade de São Paulo. Disponível em: www.ime.usp.br/~fajardo/logica.pdf. 
Acesso em 03 ago. 2015.
FRANCO, V.; GERÔNIMO, J. R. Fundamentos de Matemática. Vol. 1. Lógica, Teoria 
dos Conjuntos, Relações e Funções. Maringá, 2001.
GERSTING, J. L. Fundamentos Matemáticos para a Ciência da Computação: um 
Tratamento Moderno de Matemática Discreta. 5. ed. Rio de Janeiro: LTC, 2004.
GOMIDE, A.; STOLFI, J. Elementos de Matemática Discreta para Computação. 
Versão Preliminar. Disponível em: http://www.ic.unicamp.br/~stolfi/cursos/MC358-
2012-1-A/docs/apostila.pdf. Acesso em: 30 mar. 2015.
JOHN Venn. Só Matemática. Disponível em: www.somatematica.com.br/biograf/
venn.php . Acesso em 25 mai. 2015.
KMETEUK FILHO, O.; FÁVARO, S. Noções de Lógica e Matemática Básica. Rio de 
Janeiro: Editora Ciência Moderna, 2005.
LEONARD Euler. Só Matemática. Disponível em: www.somatematica.com.br/bio-
graf/euler.php. Acesso em 25 mai. 2015.
LIPSCHUTZ, S.; LIPSON, M. L. Teoria e Problemas de Matemática Discreta. 2. ed. 
Porto alegre, Bookman, 2004.
MENEZES, P. B. Matemática Discreta para Computação e Informática. 4. ed. Porto 
Alegre: Bookman, 2013.
MENEZES, P. B.; TOSCANI, L. V.; LÓPEZ, J. G. Aprendendo Matemática Discreta com 
Exercícios. Série Livros Didáticos, n. 19. Porto Alegre: Bookman, 2009.
PINHO, A. A. Introdução à Lógica Matemática. Rio de Janeiro, 1999. Disponível 
em: ftp://ftp.ifes.edu.br/cursos/Matematica/Oscar/introducao_logica/Apostila%20
de%20Logica.pdf . Acesso em: 15 abr. 2015.
RAMOS, Marcus Vinícius Midena. Linguagens Formais e Autômatos. Disponível 
em: http://www.univasf.edu.br/~marcus.ramos/lfa-2008-1/Apostila.pdf. Acesso em: 
17 set. 2015.
REFERÊNCIAS
GABARITO
169
Gabarito
Unidade I
* Exerćıcio
a) Disjunção: p ∨ q ≡∼ (∼ p∧ ∼ q)
p ∨ q ↔ ∼ (∼ p ∧ ∼ q)
V V V V V F F F
V V F V V F F V
F V V V V V F F
F F F V F V V V
1 3 1 5 4 2 3 2
Como p ∨ q ↔∼ (∼ p∧ ∼ q) é tautologia, segue que p ∨ q ≡∼ (∼ p∧ ∼ q).
b) Condicional: p → q ≡∼ (p∧ ∼ q)
p → q ↔ ∼ (p ∧ ∼ q)
V V V V V V F F
V F F V F V V V
F V V V V F F F
F V F V V F F V
1 3 1 5 4 1 3 2
Como p → q ↔∼ (p∧ ∼ q) é tautologia, segue que p → q ≡∼ (p∧ ∼ q).
c) Bicondicional: p ↔ q ≡∼ (∼ (p ∧ q)∧ ∼ (∼ p∧ ∼ q))
p ↔ q ≡ ∼ [∼ (p ∧ q) ∧ ∼ (∼ p ∧ ∼ q)]
V V V V V F V V V F V F F F
V F F V F V V F F V V F F V
F F V V F V F F V V V V F F
F V F V V V F F F F F V V V
1 3 1 7 6 4 1 3 1 5 4 2 3 2
Como p ↔ q ↔∼ (∼ (p ∧ q)∧ ∼ (∼ p∧ ∼ q)) é tautologia, segue que p ↔ q ≡∼ (∼
(p ∧ q)∧ ∼ (∼ p∧ ∼ q)).
* Exerćıcio
1) p ⇒ p ∧ q
p → ( p ∧ q)
V V V V V
V V V V F
F V F V V
F V F F F
1 3 1 2 1
1
Gabarito
UnidadeI
*Exerćıcio
a)Disjunção:p∨q≡∼(∼p∧∼q)
p∨q↔∼(∼p∧∼q)
VVVVVFFF
VVFVVFFV
FVVVVVFF
FFFVFVVV
13154232
Comop∨q↔∼(∼p∧∼q)étautologia,seguequep∨q≡∼(∼p∧∼q).
b)Condicional:p→q≡∼(p∧∼q)
p→q↔∼(p∧∼q)
VVVVVVFF
VFFVFVVV
FVVVVFFF
FVFVVFFV
13154132
Comop→q↔∼(p∧∼q)étautologia,seguequep→q≡∼(p∧∼q).
c)Bicondicional:p↔q≡∼(∼(p∧q)∧∼(∼p∧∼q))
p↔q≡∼[∼(p∧q)∧∼(∼p∧∼q)]
VVVVVFVVVFVFFF
VFFVFVVFFVVFFV
FFVVFVFFVVVVFF
FVFVVVFFFFFVVV
13176413154232
Comop↔q↔∼(∼(p∧q)∧∼(∼p∧∼q))étautologia,seguequep↔q≡∼(∼
(p∧q)∧∼(∼p∧∼q)).
*Exerćıcio
1)p⇒p∧q
p→(p∧q)
VVVVV
VVVVF
FVFVV
FVFFF
13121
1
Gabarito
UnidadeI
*Exerćıcio
a)Disjunção:p∨q≡∼(∼p∧∼q)
p∨q↔∼(∼p∧∼q)
VVVVVFFF
VVFVVFFV
FVVVVVFF
FFFVFVVV
13154232
Comop∨q↔∼(∼p∧∼q)étautologia,seguequep∨q≡∼(∼p∧∼q).
b)Condicional:p→q≡∼(p∧∼q)
p→q↔∼(p∧∼q)
VVVVVVFF
VFFVFVVV
FVVVVFFF
FVFVVFFV
13154132
Comop→q↔∼(p∧∼q)étautologia,seguequep→q≡∼(p∧∼q).
c)Bicondicional:p↔q≡∼(∼(p∧q)∧∼(∼p∧∼q))
p↔q≡∼[∼(p∧q)∧∼(∼p∧∼q)]
VVVVVFVVVFVFFF
VFFVFVVFFVVFFV
FFVVFVFFVVVVFF
FVFVVVFFFFFVVV
13176413154232
Comop↔q↔∼(∼(p∧q)∧∼(∼p∧∼q))étautologia,seguequep↔q≡∼(∼
(p∧q)∧∼(∼p∧∼q)).
*Exerćıcio
1)p⇒p∧q
p→(p∧q)
VVVVV
VVVVF
FVFVV
FVFFF
13121
1
GABARITO
Como p → p ∧ q é tautologia, segue que p ⇒ p ∧ q.
2) a) p ∧ q ⇒ p b) p ∧ q ⇒ q
( p ∧ q) → p
V V V V V
V F F V V
F F V V F
F F F V F
1 2 1 3 1
( p ∧ q) → q
V V V V V
V F F V F
F F V V V
F F F V F
1 2 1 3 1
3) (p → q) ∧ p ⇒ q
( p → q) ∧ p → q
V V V V V V V
V F F F V V F
F V V F F V V
F V F F F V F
1 2 1 3 1 2 1
Como [(p → q) ∧ p] → q é tautologia, segue que (p → q) ∧ p ⇒ q.
4) (p → q)∧ ∼ q ⇒∼ p
( p → q) ∧ ∼ q → ∼ p
V V V F F V F
V F F F V V F
F V V F F V V
F V F V V V V
1 3 1 4 2 5 2
Como (p → q)∧ ∼ q →∼ p é tautologia, segue que (p → q)∧ ∼ q ⇒∼ p.
5) (p ∨ q)∧ ∼ p ⇒ q
( p ∨ q) ∧ ∼ p → q
V V V F F V V
V V F F F V F
F V V V V V V
F F F F V V F
1 3 1 4 2 5 1
Como (p ∨ q)∧ ∼ p → q é tautologia, segue que (p ∨ q)∧ ∼ p ⇒ q.
6) (p → q) ∧ (q → r) ⇒ (p → r)
2
Gabarito
UnidadeI
*Exerćıcio
a)Disjunção:p∨q≡∼(∼p∧∼q)
p∨q↔∼(∼p∧∼q)
VVVVVFFF
VVFVVFFV
FVVVVVFF
FFFVFVVV
13154232
Comop∨q↔∼(∼p∧∼q)étautologia,seguequep∨q≡∼(∼p∧∼q).
b)Condicional:p→q≡∼(p∧∼q)
p→q↔∼(p∧∼q)
VVVVVVFF
VFFVFVVV
FVVVVFFF
FVFVVFFV
13154132
Comop→q↔∼(p∧∼q)étautologia,seguequep→q≡∼(p∧∼q).
c)Bicondicional:p↔q≡∼(∼(p∧q)∧∼(∼p∧∼q))
p↔q≡∼[∼(p∧q)∧∼(∼p∧∼q)]
VVVVVFVVVFVFFF
VFFVFVVFFVVFFV
FFVVFVFFVVVVFF
FVFVVVFFFFFVVV
13176413154232
Comop↔q↔∼(∼(p∧q)∧∼(∼p∧∼q))étautologia,seguequep↔q≡∼(∼
(p∧q)∧∼(∼p∧∼q)).
*Exerćıcio
1)p⇒p∧q
p→(p∧q)
VVVVV
VVVVF
FVFVV
FVFFF
13121
1
Gabarito
UnidadeI
*Exerćıcio
a)Disjunção:p∨q≡∼(∼p∧∼q)
p∨q↔∼(∼p∧∼q)
VVVVVFFF
VVFVVFFV
FVVVVVFF
FFFVFVVV
13154232
Comop∨q↔∼(∼p∧∼q)étautologia,seguequep∨q≡∼(∼p∧∼q).
b)Condicional:p→q≡∼(p∧∼q)
p→q↔∼(p∧∼q)
VVVVVVFF
VFFVFVVV
FVVVVFFF
FVFVVFFV
13154132
Comop→q↔∼(p∧∼q)étautologia,seguequep→q≡∼(p∧∼q).
c)Bicondicional:p↔q≡∼(∼(p∧q)∧∼(∼p∧∼q))p↔q≡∼[∼(p∧q)∧∼(∼p∧∼q)]
VVVVVFVVVFVFFF
VFFVFVVFFVVFFV
FFVVFVFFVVVVFF
FVFVVVFFFFFVVV
13176413154232
Comop↔q↔∼(∼(p∧q)∧∼(∼p∧∼q))étautologia,seguequep↔q≡∼(∼
(p∧q)∧∼(∼p∧∼q)).
*Exerćıcio
1)p⇒p∧q
p→(p∧q)
VVVVV
VVVVF
FVFVV
FVFFF
13121
1
GABARITO
171
(p → q) ∧ (q → r) ⇒ (p → r)
V V V V V V V V V V V
V V V F V F F V V F F
V F F F F V V V V V V
V F F F F V F V V F F
F V V V V V V V F V V
F V V F V F F V F V F
F V F V F V V V F V V
F V F V F V F V F V F
1 2 1 3 1 2 1 4 1 2 1
Como (p → q)∧ (q → r) → (p → r) é tautologia,segue que (p → q)∧ (q → r) ⇒ (p → r).
7) p → F ⇒∼ p
(p → F → ∼ p
V F F V F
F V F V V
1 3 1 4 2
Como p → F →∼ p é tautologia, segue que p → F ⇒∼ p.
Atividades de Autoestudo
1)
a) F, pois se V(q)=F, V(p ∧ q)=F.
b) V, pois V (p ∨ q) = F ⇔ V (p) = F e V (q) = F.
c) V, pois V (p ∧ q) = V ⇔ V (p) = V (q) = V.
d) F, pois como V (p) = V , então se V (q) = V teremos V (p → q) = V.
e) F, pois V (p → q) = F quando V (p) = V e V (q) = F.
f) V, pois V (p ↔ q) = V somente quando V (p) = V (q), e como V (p) = V , então V(q)
deverá ser V para que p ↔ q seja V.
2)
a) Seja P = [p ∧ (∼ q → q)]∨ ∼ [(r ↔∼ q) → (q∧ ∼ r)]
[p ∧ (∼ q → q)] ∨ ∼ [(r ↔ ∼ q) → (q ∧ ∼ r)]
F F F V V F F V F F V V F F
1 4 2 3 1 6 5 1 3 2 4 1 3 2
Logo, V(P) = F.
3
GABARITO
b) Seja Q = (p ∧ q)∨ ∼ s →∼ (q ↔∼ r).
[(p ∧ q) ∨ ∼ s → ∼ (q ↔ ∼ r)
F F V V V V V V F F
Logo, V(Q)=V.
c) Seja R = (p ∧ q → r) ∨ (∼ p ↔ q∨ ∼ r).
((p ∧ q) → r) ∨ (∼ p ↔ ( q ∨ ∼ r))
F F V V V V V V V V F
Logo, V(R)=V.
d) Seja S =∼ (r → (∼ r → s)).
∼ (r → (∼ r → s))
F V V F V F
Logo, V(S)=F.
3)
a) Como a conjunção só e verdadeira quando as duas proposições envolvidas são veradeiras
e V (∼ r) = F , então, o valor lógico de (p ↔ q)∧ ∼ r será F.
b) Como V (p∨ r) = V , segue que o valor lógico da condicional (p∧ q) → (p∨ r) será V, pois
a condicional sempre é verdadeira quando o consequente é V.
c) A conjunção de duas proposições, quando uma delas é falsa, tem o valor lógico F. Logo,
V (∼ p∧ ∼ r) = R, pois V (∼ r) = F , e, consequentemente, o valor da conjunção
(p →∼ q) ∧ (∼ p∧ ∼ r) será F.
4)
- operador não-e ou nand: p � q =∼ (p ∧ q)
(Negação da conjunção)
p q p � q
V V F
V F V
F V V
F F V
- operador não-ou ou nor: p � q =∼ (p ∨ q)
(Negação da disjunção)
p q p � q
V V F
V F F
F V F
F F V
5)
a) Linux não é software livre ou Pascal não é uma linguagem de programação.
4
b) Seja Q = (p ∧ q)∨ ∼ s →∼ (q ↔∼ r).
[(p ∧ q) ∨ ∼ s → ∼ (q ↔ ∼ r)
F F V V V V V V F F
Logo, V(Q)=V.
c) Seja R = (p ∧ q → r) ∨ (∼ p ↔ q∨ ∼ r).
((p ∧ q) → r) ∨ (∼ p ↔ ( q ∨ ∼ r))
F F V V V V V V V V F
Logo, V(R)=V.
d) Seja S =∼ (r → (∼ r → s)).
∼ (r → (∼ r → s))
F V V F V F
Logo, V(S)=F.
3)
a) Como a conjunção só e verdadeira quando as duas proposições envolvidas são veradeiras
e V (∼ r) = F , então, o valor lógico de (p ↔ q)∧ ∼ r será F.
b) Como V (p∨ r) = V , segue que o valor lógico da condicional (p∧ q) → (p∨ r) será V, pois
a condicional sempre é verdadeira quando o consequente é V.
c) A conjunção de duas proposições, quando uma delas é falsa, tem o valor lógico F. Logo,
V (∼ p∧ ∼ r) = R, pois V (∼ r) = F , e, consequentemente, o valor da conjunção
(p →∼ q) ∧ (∼ p∧ ∼ r) será F.
4)
- operador não-e ou nand: p � q =∼ (p ∧ q)
(Negação da conjunção)
p q p � q
V V F
V F V
F V V
F F V
- operador não-ou ou nor: p � q =∼ (p ∨ q)
(Negação da disjunção)
p q p � q
V V F
V F F
F V F
F F V
5)
a) Linux não é software livre ou Pascal não é uma linguagem de programação.
4
GABARITO
173
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que não é positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que não é positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que não é positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que nãoé positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que não é positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
b) Existem homens que não são bons motoristas.
c) T é um trapézio e T não é uma quadrilátero (Lembrar que ∼ (p → q) ≡ p∧ ∼ q).
d) O processador não é rápido ou a impressora não é lenta.
e) O processador é rápido e a impressora não é lenta.
f) Todos os números ı́mpares são múltiplos de 2.
g) Canta e não está vivo.
h) Existe solução de x2 − 6 = 0 que não é positiva.
i) Todos os inteiros são ı́mpares e não são diviśıveis por 5.
j) Windows não é um editor de textos, ou Pascal é uma planilha eletrônica.
6)
a) F, basta considerar x = 8 e y = 2, por exemplo.
b) F, pois se x = 2, x.y será um número par, ∀y.
c) F. Não existe um número x tal que seu quadrado é maior que qualquer número y ∈ R.
d) V. Dado x, basta considerar y tal que x > y.
7)
a) Consideremos as proposições:
S: segurança é um problema.
C: o controle será aumentado.
I: os negócios na Internet irão aumentar.
Podemos reescrever o argumento da seguinte forma:
S → C (Hipótese 1)
∼ S → I (Hipótese 2)
∼ C → I (Tese ou conclusão)
Devemos provar que (S → C) ∧ (∼ S → I) ⇒ (∼ C → I).
1. S → C (hipótese)
2. ∼ S → I (hipótese)
3. ∼ C →∼ S (1, contrapositiva)
4. ∼ C → I (3, 2, transitividade)
b) Sejam as proposições:
P: o produto é bom.
C: o produto ganha o concurso.
L: o ĺıder do grupo é culpado.
E: a equipe fica contente.
5
GABARITO
O argumento pode ser reescrito em lógica proposicional como:
P → C (hipótese 1)
∼ P → L (hipótese 2)
C → E (hipótese 3)
∼ E (hipótese 4)
L (conclusão)
Devemos provar que (P → C) ∧ (∼ P → L) ∧ (C → E)∧ ∼ E ⇒ L
1. P → C (hipótese)
2. ∼ P → L (hipótese)
3. C → E (hipótese)
4. ∼ E (hipótese)
5. ∼ C (3, 4, Modus Tollens)
6. ∼ P (1, 5, Modus Tollens)
7. L (2, 6, Modus Ponens)
Unidade II
* Exerćıcio
Os conjuntos {a} e {{a}} são diferentes, pois o elemento de {a} é a, e o elemento de
{{a}} é {a}.
* Exerćıcio:
A = {♥, ∗} e B = {1, 2}
a) A× B × B = {(x, y, z); x ∈ A, y ∈ B e z ∈ B}
A×B×B = {(♥, 1, 1), (♥, 1, 2), (♥, 2, 1), (♥, 2, 2), (∗, 1, 1), (∗, 1, 2), (∗, 2, 1), (∗, 2, 2)}.
b) (A × B) × B �= (A × B × B), pois os elementos de (A × B) × B são pares ordenados e
(A× B × B) é um conjunto de ternas ordenadas.
* Exerćıcio:
a) b)
6
GABARITO
175
Atividades de Autoestudo
1)
a) V b) F
c) F d) V
e) F f) V
g) F h) V
i) V j) F (A ∩ B = B)
k) V (Se A = {x, y}, então P (A) = {∅, {x}, {y}, {x, y}}. Logo, A ∩ P (A) = ∅.)
2) Sejam os conjuntos: C = {pessoas competentes}; E = {engenheiros} e P = {profissionais}.
Logo, alguns profissionais são competentes. Alternativa (a).
3) A = {a, 5, b}.
P (A) = {∅, {a}, {5}, {b}, {a, 5}, {a, b}, {5, b}, {a, 5, b}}.
A �⊂ P (A), pois os elementos de A não são elementos de P (A).
A ∈ P (a), pois {a, 5, b} é um elemento de P (A).
4) B possui dois elementos: a e b. Logo, B = {a, b}.
5) B possui dois elementos: x e {x}. Logo, B = {x, {x}}.
6) A = {2, 3, 4, 5};B = {2, 3, 5, 7, 11, 13};C = {2, 4, 5, 6, 11} e
U = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}.
a) A ∪ B = {2, 3, 4, 5, 7, 11, 13}
b) A ∩ B ∩ C = {2, 5}
c) B ∩ C = {2, 5, 11}
d) A− B = {4}
e) B ∩ B′ = ∅
f) (A ∩ B)′ = {0, 1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
7
GABARITO
g) C − B = {4, 6}
h) (A ∩ B) ∪ C ′ = {0, 1, 2, 3, 5, 7, 8, 9, 10, 12, 13, 14, 15}
i) (B − A)′ ∩ (A− B) = {4}
j) (B∩C)×A = {(2, 2), (2, 3), (2, 4), (2, 5), (5, 2), (5, 3), (5, 4), (5, 5), (11, 2), (11, 3), (11, 4), (11, 5)}
k) A
′ ∩∅ = ∅
l) (A ∩ C) ∪∅ = A ∩ C = {2, 4, 5}
7)
a) X = {1, 3, 5}
b) Y = {1, 2, 3, 4, 5, 6, 7, 8}
c) Y −X = {2, 4, 6, 7, 8}
8)
a) F
A palavra dois ∈ B mas /∈ C.
b) V
c) V
B ∩ C={x / x é palavra que aparece depois de “diploma” e tem mais de 5 letras}.
d V
B ∩ C ′= {x / x é palavra depois de “diploma” e tem 5 letras ou menos }.
e) V
A ∩ B ∩ C ={x / x é palavra depois de “diploma”; antes de “elefante”, e com mais de 5
letras}.
f) V
B
′
= {x / x é palavra que aparece antes de “diploma” ou x é a palavra “diploma”}.
g) F
A
′
= {x / x é a palavra “elefante” ou palavra que aparece depois de “elefante”}.
8
GABARITO
177
h) V
A − B = {x / x é palavra que aparece antes de “elefante” e x não aparece depois de
“diploma”}.
9)
a)
b) A⊕ B = {3, 4, 5, 8, 11}.
c) A⊕ A = ∅.
d) ∅⊕ A = A.
10
a) 8
b) 50 (34 Windows, 12 Unix e 4 Mac).
c) 75
11)
a) 208
b) 50
c) 88
Unidade III
1)
• diagrama:
9
GABARITO
• matriz
R América Ásia Europa
EUA 1 0 0
China 0 1 0
Reino Unido 0 0 1
Rússia 0 1 1
Coreia do Sul 0 1 0
Alemanha 0 0 1
França 0 0 1
2)
a)
R 0 1 3 4
0 0 0 1 1
1 0 0 0 0
3 0 1 1 1
4 0 0 0 0
b)
c) DomR = {0, 3} ; ImR{1, 3, 4}.
d) R ◦R = {(0, 1), (0, 3), (0, 4), (3, 1), (3, 3), (3, 4)}.
e) R−1 = {(1, 3), (3, 0), (3, 3), (4, 0), (4, 3)}.
3)
a) (1, 4), (2, 4), (3, 3), (4, 1)
b) (0, 2), (1, 3), (6, 8), (9, 11)
c) (5, 0), (2, 2)
4)
a) Um para muitos.
b) Um para um.
c) Muitos para um.
d) Um para muitos.
e) Um para muitos.
10
GABARITO
179
f) Muitos para muitos.
5)
a)
b)
c)
6)
a) R = {(a, a), (b, b), (c, c), (d, d), (e, e), (a, c), (a, e), (b, d), (b, e), (c, e), (d, e)}
b) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 3), (2, 5), (4, 6)}
c) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)}
7)
a)
R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1
11
f) Muitos para muitos.
5)
a)
b)
c)
6)
a) R = {(a, a), (b, b), (c, c), (d, d), (e, e), (a, c), (a, e), (b, d), (b, e), (c, e), (d, e)}
b) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 3), (2, 5), (4, 6)}
c) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4),(3, 5), (4, 5)}
7)
a)
R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1
11
f)
M
u
it
os
p
ar
a
m
u
it
os
.
5) a) b
) c) 6) a)
R
=
{(
a
,a
),
(b
,b
),
(c
,c
),
(d
,d
),
(e
,e
),
(a
,c
),
(a
,e
),
(b
,d
),
(b
,e
),
(c
,e
),
(d
,e
)}
b
)
R
=
{(
1,
1)
,(
2,
2)
,(
3,
3)
,(
4,
4)
,(
5,
5)
,(
6,
6)
,(
1,
3)
,(
2,
5)
,(
4,
6)
}
c)
R
=
{(
1,
1)
,(
2,
2)
,(
3,
3)
,(
4,
4)
,(
5,
5)
,(
1,
2)
,(
1,
3)
,(
1,
4)
,(
1,
5)
,(
2,
4)
,(
2,
5)
,(
3,
4)
,(
3,
5)
,(
4,
5)
}
7) a)
R
a
b
c
d
e
a
1
0
0
0
0
b
1
1
0
0
0
c
1
1
1
0
0
d
1
1
0
1
1
e
1
0
0
0
1
11
f) Muitos para muitos.
5)
a)
b)
c)
6)
a) R = {(a, a), (b, b), (c, c), (d, d), (e, e), (a, c), (a, e), (b, d), (b, e), (c, e), (d, e)}
b) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 3), (2, 5), (4, 6)}
c) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)}
7)
a)
R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1
11
f) Muitos para muitos.
5)
a)
b)
c)
6)
a) R = {(a, a), (b, b), (c, c), (d, d), (e, e), (a, c), (a, e), (b, d), (b, e), (c, e), (d, e)}
b) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 3), (2, 5), (4, 6)}
c) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)}
7)
a)
R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1
11
f) Muitos para muitos.
5)
a)
b)
c)
6)
a) R = {(a, a), (b, b), (c, c), (d, d), (e, e), (a, c), (a, e), (b, d), (b, e), (c, e), (d, e)}
b) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 3), (2, 5), (4, 6)}
c) R = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)}
7)
a)
R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1
11
GABARITO
b)
R 1 2 3 4 6 8 12
1 1 1 1 1 1 1 1
2 0 1 0 1 1 1 1
3 0 0 1 0 1 0 1
4 0 0 0 1 0 1 1
6 0 0 0 0 1 0 1
8 0 0 0 0 0 1 0
12 0 0 0 0 0 0 1
8)
a)
• T́ıtulo-ISBN: um para um.
• T́ıtulo-assunto: muitos para um.
• Editora-assunto: muitos para muitos.
b)
c) R ◦ S = {(Springtime Gardening, Natureza), (Springtime Gardening, Arte), (Early Tang
Paintings, Arte), (Birds of Africa, Natureza), (Baskets for Today, Natureza),(Baskets for
Today, Arte), (Autumn Annuals, Natureza), (Autumn Annuals, Arte)}.
9)
a) R é irreflexiva (pois a caixa a não cabe dentro de si própria); assimétrica (pois se a cabe
dentro de b), então, b não cabe dentro de a e transitiva (se a cabe dentro de b e b cabe
dentro de c, então, a cabe dentro de c).
b)
i) R não é reflexiva, pois uma pessoa x não é prima de si mesma (x � Rx) (é irreflexiva).
R é simétrica, pois se x é primo de y, então y é primo de x (xRy ⇒ yRx).
R não é transitiva, pois se x é primo de y e y é primo de z, não implica que x é primo de
z (xRy ∧ yRz � xRz).
ii) R não é reflexiva, nem simétrica, nem transitiva. R é irreflexiva e assimétrica.
12
b)
R12346812
11111111
20101111
30010101
40001011
60000101
80000010
120000001
8)
a)
•T́ıtulo-ISBN:umparaum.
•T́ıtulo-assunto:muitosparaum.
•Editora-assunto:muitosparamuitos.
b)
c)R◦S={(SpringtimeGardening,Natureza),(SpringtimeGardening,Arte),(EarlyTang
Paintings,Arte),(BirdsofAfrica,Natureza),(BasketsforToday,Natureza),(Basketsfor
Today,Arte),(AutumnAnnuals,Natureza),(AutumnAnnuals,Arte)}.
9)
a)Réirreflexiva(poisacaixaanãocabedentrodesiprópria);assimétrica(poisseacabe
dentrodeb),então,bnãocabedentrodeaetransitiva(seacabedentrodebebcabe
dentrodec,então,acabedentrodec).
b)
i)Rnãoéreflexiva,poisumapessoaxnãoéprimadesimesma(x�Rx)(éirreflexiva).
Résimétrica,poissexéprimodey,entãoyéprimodex(xRy⇒yRx).
Rnãoétransitiva,poissexéprimodeyeyéprimodez,nãoimplicaquexéprimode
z(xRy∧yRz�xRz).
ii)Rnãoéreflexiva,nemsimétrica,nemtransitiva.Réirreflexivaeassimétrica.
12
GABARITO
181
10)
Unidade IV
1)
a) Domı́nio ={2, 4, 5, 6, 8} ; Contradomı́nio = {4, 5, 7, 8, 9} e Imagem ={4, 7, 8}.
b) 7; 4
c) 6; 8
d) Não é injetora, pois dois elementos distintos do domı́nio tem a mesma imagem: por 
exemplo, 6 e 8 tem imagem 7. Não é sobrejetora, pois o elemento 5 do contradomı́nio, nãoé 
imagem de elemento algum do domı́nio.�
2)
a) R1 = {(3, 2), (8, 3), (15, 4), (24, 5)}.
b) R2 = {(4, 3), (9, 8)}.
c) R1 é função de A em B, pois a cada elemento do conjunto A, está associado um único
elemento do conjunto B. Imagem = {2, 3, 4, 5}.
d) R2 não é uma função de B em A, pois existem elementos de B que não estão associados
a elementos de A.
3)
a) -13
b) 15
c) 3
d) 18
e) 5− 6x
f) 15− 6x
g) 4x− 5
13
GABARITO
h) 9x
4)
a) f−1(x) =
x
5
b) f−1(x) = 3
√
x
c) f−1(x) =
3x− 7
2
5)
a) h(f(−6, 4)) = h(−7) = 98
b) 81
c) 4
Unidade V
1)
a) Anita
b) Miguel
Kim
c) Judite
Samuel
Miguel
Kim
2)
a) urso
b) peixinho
alga
minhoca
c) urso
peixe
raposa
veado
minhoca
lince
coelho
guaxinim
mosca
peixinho
14
GABARITO
183
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
h) 9x
4)
a) f−1(x) =
x
5
b) f−1(x) = 3
√
x
c) f−1(x) =
3x− 7
2
5)
a) h(f(−6, 4)) = h(−7) = 98
b) 81
c) 4
Unidade V
1)
a) Anita
b) Miguel
Kim
c) Judite
Samuel
Miguel
Kim
2)
a) urso
b) peixinho
alga
minhoca
c) urso
peixe
raposa
veado
minhoca
lince
coelho
guaxinim
mosca
peixinho
14
h) 9x
4)
a) f−1(x) =
x
5
b) f−1(x) = 3
√
x
c) f−1(x) =
3x− 7
2
5)
a) h(f(−6, 4)) = h(−7) = 98
b) 81
c) 4
Unidade V
1)
a) Anita
b) Miguel
Kim
c) Judite
Samuel
Miguel
Kim
2)
a) urso
b) peixinhoalga
minhoca
c) urso
peixe
raposa
veado
minhoca
lince
coelho
guaxinim
mosca
peixinho
14
A(1)
B(3)
C(2)
E(2)
D(3)
F(4)
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
g) C − B = {4, 6}
h) (A ∩ B) ∪ C ′ = {0, 1, 2, 3, 5, 7, 8, 9, 10, 12, 13, 14, 15}
i) (B − A)′ ∩ (A− B) = {4}
j) (B∩C)×A = {(2, 2), (2, 3), (2, 4), (2, 5), (5, 2), (5, 3), (5, 4), (5, 5), (11, 2), (11, 3), (11, 4), (11, 5)}
k) A
′ ∩∅ = ∅
l) (A ∩ C) ∪∅ = A ∩ C = {2, 4, 5}
7)
a) X = {1, 3, 5}
b) Y = {1, 2, 3, 4, 5, 6, 7, 8}
c) Y −X = {2, 4, 6, 7, 8}
8)
a) F
A palavra dois ∈ B mas /∈ C.
b) V
c) V
B ∩ C={x / x é palavra que aparece depois de “diploma” e tem mais de 5 letras}.
d V
B ∩ C ′= {x / x é palavra depois de “diploma” e tem 5 letras ou menos }.
e) V
A ∩ B ∩ C ={x / x é palavra depois de “diploma”; antes de “elefante”, e com mais de 5
letras}.
f) V
B
′
= {x / x é palavra que aparece antes de “diploma” ou x é a palavra “diploma”}.
g) F
A
′
= {x / x é a palavra “elefante” ou palavra que aparece depois de “elefante”}.
8
d) peixinho alga
peixe alga
veado grama
veado planta−carńıvora
e) urso peixe
f) herb́ıvoro(X):= come(X,Y), planta(Y), \+ carńıvoro(X) (para regras prolog, \+ a indica
a negação de a, ou seja , ∼ a)
g) predador(X):= carńıvoro(X), animal(X)
h) presa(X):= come(Y,X), predador(Y), animal(X)
i) caçado:= presa(X)
j) ?come(peixe, peixinho), come(peixe, minhoca)
l) ?planta(X)
m) ?come(urso, X)
n) ?come(X, peixe)
o) ?predador(X)
p) ?presa(X), predador(X)
q) ? presa(X), herb́ıvoro(X)
3)
Tempo mı́nimo: 17 unidades de tempo;
caminho cŕıtico: E, A, D, B, H.
4) Caminho cŕıtico: A, C, H; tempo mı́nimo: 24 semanas.
15
	UNIDADE I
	LÓGICA MATEMÁTICA
	Introdução
	Lógica Proposicional
	Proposições e Valores Lógicos
	Conectivos Lógicos
	Tabela-Verdade
	Tautologias e Contradições
	Equivalência Lógicas
	Implicações Lógicas
	Método Dedutivo
	Quantificadores e Predicados
	Negação de Sentenças Quantificadas
	Considerações Finais
	UNIDADE II
	Teoria dos conjuntos
	Introdução
	Conceitos Primitivos
	Descricão de Conjuntos
	Igualdade de Conjuntos
	Tipos de Conjuntos
	Subconjuntos
	Conjunto das Partes
	Diagramas de Venn-Euler
	Produto Cartesiano
	Relação Entre Lógica e Álgebra dos Conjuntos
	Princípio da inclusão e exclusão
	Considerações Finais
	UNIDADE III
	RELAÇÕES
	Introdução
	Relação Binária
	Tipos de Relações Binárias
	Propriedades das Relações
	Representação das Relações
	Relação de Ordem
	Diagrama de Hasse
	Diagrama PERT
	Relações Duais
	Composição de Relações
	Consideração Finais
	UNIDADE IV
	funções
	Introdução
	Funções
	Domínio, Contradomínio e Imagem de uma Função
	Igualdade de Funções
	Gráfico de Funções
	Função Piso e Função Teto
	Propriedades de Funções
	Função Composta
	Funções Inversas
	Técnicas para Obtenção da Inversa de uma Função
	Considerações Finais
	UNIDADE V
	APLICAÇÕES À COMPUTAÇÃO
	Introdução
	Álgebra dos Conjuntos nas Linguagens de Programação
	PROLOG
	Caminho Crítico no Diagrama PERT
	Autômatos Finitos
	Relações e Banco de Dados
	Considerações Finais
	Conclusão
	Referências

Mais conteúdos dessa disciplina