Anda di halaman 1dari 183

LÓGICA PARA

COMPUTAÇÃO

Professora Me. Edvania Gimenes de Oliveira Godoy

GRADUAÇÃO

Unicesumar
Reitor
Wilson de Matos Silva
Vice-Reitor
Wilson de Matos Silva Filho
Pró-Reitor de Administração
Wilson de Matos Silva Filho
Pró-Reitor de EAD
Willian Victor Kendrick de Matos Silva
Presidente da Mantenedora
Cláudio Ferdinandi

NEAD - Núcleo de Educação a Distância


Direção Operacional de Ensino
Kátia Coelho
Direção de Planejamento de Ensino
Fabrício Lazilha
Direção de Operações
Chrystiano Mincoff
Direção de Mercado
Hilton Pereira
Direção de Polos Próprios
James Prestes
Direção de Desenvolvimento
Dayane Almeida
Direção de Relacionamento
Alessandra Baron
Gerência de Produção de Conteúdo
Juliano de Souza
Supervisão do Núcleo de Produção de
Materiais
Nádila de Almeida Toledo
Coordenador de conteúdo
Fabiana de Lima
Design Educacional
Paulo Victor Souza e Silva
Projeto Gráfico
Jaime de Marchi Junior
José Jhonny Coelho
C397 CENTRO UNIVERSITÁRIO DE MARINGÁ. Núcleo de Educação a
Distância; GODOY, Edvania Gimenes de Oliveira. Editoração
Bruna Marconato
Lógica para Computação. Edvania Gimenes de Oliveira Daniel Fuverki Hey
Godoy.
Maringá-Pr.: UniCesumar, 2016. Revisão Textual
183 p. Keren Pardini
“Graduação - EaD”.

1. Lógica 2. Computação . 3. Matemática 4. EaD. I. Título.

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
Viver e trabalhar em uma sociedade global é um
grande desafio para todos os cidadãos. A busca
por tecnologia, informação, conhecimento de
qualidade, novas habilidades para liderança e so-
lução de problemas com eficiência tornou-se uma
questão de sobrevivência no mundo do trabalho.
Cada um de nós tem uma grande responsabilida-
de: as escolhas que fizermos por nós e pelos nos-
sos farão grande diferença no futuro.
Com essa visão, o Centro Universitário Cesumar
assume o compromisso de democratizar o conhe-
cimento por meio de alta tecnologia e contribuir
para o futuro dos brasileiros.
No cumprimento de sua missão – “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” –, o Centro Universi-
tário Cesumar busca a integração do ensino-pes-
quisa-extensão com as demandas institucionais
e sociais; a realização de uma prática acadêmica
que contribua para o desenvolvimento da consci-
ência social e política e, por fim, a democratização
do conhecimento acadêmico com a articulação e
a integração com a sociedade.
Diante disso, o Centro Universitário Cesumar al-
meja ser reconhecido como uma instituição uni-
versitária de referência regional e nacional pela
qualidade e compromisso do corpo docente;
aquisição de competências institucionais para
o desenvolvimento de linhas de pesquisa; con-
solidação da extensão universitária; qualidade
da oferta dos ensinos presencial e a distância;
bem-estar e satisfação da comunidade interna;
qualidade da gestão acadêmica e administrati-
va; compromisso social de inclusão; processos de
cooperação e parceria com o mundo do trabalho,
como também pelo compromisso e relaciona-
mento permanente com os egressos, incentivan-
do a educação continuada.
Seja bem-vindo(a), caro(a) acadêmico(a)! Você está
iniciando um processo de transformação, pois quan-
do investimos em nossa formação, seja ela pessoal
ou profissional, nos transformamos e, consequente-
Diretoria de
mente, transformamos também a sociedade na qual
Planejamento de Ensino
estamos inseridos. De que forma o fazemos? Criando
oportunidades e/ou estabelecendo mudanças capa-
zes de alcançar um nível de desenvolvimento compa-
tível com os desafios que surgem no mundo contem-
porâneo.
O Centro Universitário Cesumar mediante o Núcleo de
Diretoria Operacional
Educação a Distância, o(a) acompanhará durante todo
de Ensino
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, contribuindo no processo educacional, comple-
mentando sua formação profissional, desenvolvendo
competências e habilidades, e aplicando conceitos
teóricos em situação de realidade, de maneira a inse-
ri-lo no mercado de trabalho. Ou seja, estes materiais
têm como principal objetivo “provocar uma aproxi-
mação entre você e o conteúdo”, desta forma possi-
bilita o desenvolvimento da autonomia em busca dos
conhecimentos necessários para a sua formação pes-
soal e profissional.
Portanto, nossa distância nesse processo de cres-
cimento e construção do conhecimento deve ser
apenas geográfica. Utilize os diversos recursos peda-
gógicos que o Centro Universitário Cesumar lhe possi-
bilita. Ou seja, acesse regularmente o AVA – Ambiente
Virtual de Aprendizagem, interaja nos fóruns e en-
quetes, assista às aulas ao vivo e participe das discus-
sõ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.
AUTORA

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.
APRESENTAÇÃO

LÓGICA PARA
APRESENTAÇ ÃO COMPUTAÇÃO

LÓGICA PARA COMPUTAÇÃO


SEJA BEM-VINDO(A)!

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 raciocı́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á possı́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 reversı́veis (união e interseção) e reversı́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
APRESENTAÇÃO

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 crı́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 especı́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
09
SUMÁRIO

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ência 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


11
SUMÁRIO

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
Professora Me. Edvania Gimenes de Oliveira Godoy

I
UNIDADE
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
15

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 raciocı́nio matemático e do
raciocı́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 inı́cio na Grécia Antiga, sendo
sistematizado por Aristóteles (384a.C.-322a.C.), com a formulação de leis gerais de encadea-
mentos de conceitos e juı́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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 sı́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, é
construı́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
I

Lógica Proposicional

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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.

LÓGICA MATEMÁTICA
17

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 possı́veis juı́zos que atribuiremos
a uma proposição: verdadeiro, denotado por V (ou 1), ou falso, denotado por F (ou 0).

Princı́pios Básicos das Proposições:

I) Princı́pio da não contradição: Uma proposição não pode ser verdadeira e falsa simultane-
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

amente.

II) Princı́pio do terceiro excluı́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 sı́mbolos usados para formar
novas proposições a partir de proposições dadas são
chamados de conectivos.

Conectivos Lógicos
I

Os conectivos fundamentais da Lógica Matemática são:


Os conectivos fundamentais da Lógica Matemática são:

Conectivo Sı́mbolo
Conectivo Sı́mbolo
1) não; não é verdade que ∼ Negação ou modificador
1) não; não é verdade que ∼ Negação ou modificador
2) e ∧ Conjunção
2) e ∧ Conjunção
3) ou ∨ Disjunção
3) ou ∨ Disjunção
4) se ... então → Condicional
4) se ... então → Condicional
5) se, e somente se ↔ Bicondicional
5) se, e somente se ↔ Bicondicional
Dadas as proposições simples p e q, podemos com o uso de conectivos formar novas proposições
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:
a partir de p e q. Assim temos:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
1) A negação de p ∼p não p
1) A negação de p ∼p não p
2) A conjunção de p e q p∧q peq
2) A conjunção de p e q p∧q peq
3) A disjunção de p e q p∨q p ou 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
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
5) A bicondicional de p e q p↔q p se, e somente se, q
Exemplo:
Exemplo:
Dadas as proposições p: 2 é um número par e q: 6 é múltiplo de 3, faça as traduções para
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 linguagem corrente para as seguintes proposições:
a) ∼ p 2 não é um número par. (ou: 2 é um número ı́mpar.)
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.
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.
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.
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.
e) ∼ (p ∧ ∼ q) Não é verdade que 2 é par e 6 não é um múltiplo de 3.

# SAIBA MAIS #:
# SAIBA MAIS #:

Alguns dos conectivos apresentados podem ser denotados por outros sı́mbolos ou expressões.
Alguns dos conectivos apresentados podem ser denotados por outros sı́mbolos ou expressões.
Consideremos p, q proposições:
Consideremos p, q proposições:

Conectivo lógico Sı́mbolo


Conectivo lógico Sı́mbolo
Negação ¬p; p 
Negação ¬p; p
Conjunção p.q
Conjunção p.q
Disjunção p+q
Disjunção p+q

5
5

LÓGICA MATEMÁTICA
19

A linguagem Pascal (assim como a maioria das linguagens de programação) possui os


A linguagem
seguintes Pascal
conectivos (assim como a maioria das linguagens de programação) possui os
lógicos:
seguintes conectivos lógicos:

not Negação
not
and Negação
Conjunção
andor Conjunção
Disjunção
or
<= Disjunção
Condicional
<== Condicional
Bicondicional
= Bicondicional
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Fonte: Menezes (2013).


Fonte: Menezes (2013).
# FIM SAIBA MAIS#
# FIM SAIBA MAIS#

O valor lógico de uma proposição composta (verdadeiro ou falso) depende do valor lógico das
O valor lógico
proposições de uma
simples queproposição
a compõemcomposta (verdadeiro
e da maneira ou falso)
como elas depende do pelos
são combinadas valor conectivos.
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
Conhecendo-se
das proposições: ∼os p;
valores
p ∧ q;lógicos
p ∨ q;de pduas
→ qproposições
e p ↔ q.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 (∼)
1. Negação (∼)
Dada uma proposição p, a negação de p será indicada por ∼ p (Lê-se ”não p”). O valor
Dada uma
verdade proposição∼p,
da proposição a negação
p será de do
o oposto p será
valorindicada
verdadepor ∼ p (Lê-se ”não p”). O valor
de p.
verdade da proposição ∼ p será o oposto do valor verdade de p.
Em resumo:
Em resumo:se V(p) = V então V(∼ p) = F e se V(p) = F então V(∼ p).
Negação:
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-
Essas
nada possibilidadesUma
tabela-verdade. paratabela
os valores lógicos
verdade podem
é uma serque
tabela colocadas
contém em uma tabela,nas
as proposições denomi-
colunas
nada tabela-verdade. Uma tabela verdade é uma tabela que contém as proposições
e as possibilidades de valores-verdade nas linhas. É comum expressar os resultados de uma nas colunas
e proposição
as possibilidades de por
composta valores-verdade nas verdade,
meio de tabelas- linhas. Éque
comum expressar
permitem os seus
analisar resultados de uma
valores-verdade.
proposição composta por meio de tabelas- verdade, que permitem analisar seus valores-verdade.
Tabela-verdade para a negação de p:
Tabela-verdade para a negação de p:
p ∼p
p ∼p
V F
V F
F V
F V

Proposições e Valores Lógicos


I

2. Conjunção (∧)

O operador conjunção “∧” representa intuitivamente o papel análogo ao conectivo “e” da


Lı́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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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.

LÓGICA MATEMÁTICA
21

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ção Exclusiva: (∨)

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,
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Proposições e Valores Lógicos


I

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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
(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”
é destituı́da de “sentido” na lı́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.

LÓGICA MATEMÁTICA
23

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


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

quadrado.”

• Recı́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

Proposições e Valores Lógicos


I

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
25

Tabelas-Verdade
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Tabela-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

Tabela-Verdade
12
I

# REFLITA#
# REFLITA#
Número de linhas de uma tabela-verdade
Número de linhas de uma tabela-verdade
“A tabela-verdade de uma proposição composta com
“A tabela-verdade
n proposições de uma proposição
simples componentes contémcomposta com
2n linhas”.
n proposições simples componentes contém 2n linhas”.
Fonte: a autora.
Fonte:
#FIM a autora.
REFLITA#
#FIM REFLITA#

Um outro modo de se construir a tabela-verdade de uma proposição composta é dada a


seguir, Um
ondeoutro modo todos
colocamos de se osconstruir a tabela-verdade
elementos de uma proposição
envolvidos na proposição composta composta é dada
e numeramos as a

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
seguir,
etapas; onde colocamos
a solução todosetapa:
será a última 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).
3) Encontrar a tabela-verdade da proposição composta S = (p∨ ∼ q) → (p ∧ q ↔ r).

p q r (p ∨ ∼ q) → (p ∧ q ↔ r)
V pV qV rV (pV ∨ F ∼ q)V →V (pV ∧V qV ↔V r)
V VV VF VV VV V F F F VV VV VV VF VF V
V VF VV FV VV V V F F FV VF VF VF FV F
V VF FF VV VV V V V V FV VF FF FV FF V
F VV FV FF VF V F V V VF VF FV FF VV F
F FV VF VF FF F F F V VF FF FV VV FF V
F FF VV FF FV F V F F VF FF FF VF VV F
F FF FF VF FV V V V V FF FF FF FV FF 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
1 1 1 1 3 2 6 1 4 1 5 1
4) Construir a tabela-verdade de (p ∧ q)∨ ∼ (p → q).
4) Construir a tabela-verdade de (p ∧ q)∨ ∼ (p → q).

(p ∧ q) ∨ ∼ (p → q)
V (pV ∧V q)V ∨F ∼V (pV →V q)
V VF VF VV VV FV VF VF V
F VF FV FF VF FV VF VV F
F FF FF VF FF
FF FV VF V
F F F F F F V F
1 2 1 5 4 1 3 1
1 2 1 5 4 1 3 1

Tautologias e Contradições
Tautologias e Contradições
Uma tautologia é uma proposição composta que é sempre verdadeira, quaisquer que sejam os
Umalógicos
valores tautologia é uma proposição
das proposições simplescomposta que é sempre
que a compõem, verdadeira,
ou seja, a coluna quaisquer quedesejam
de resultado sua 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 13
27

tabela-verdade contém somente valores lógicos verdadeiros (V). Por outro lado, uma proposição
composta que tabela-verdade
é sempre falsa contém
é chamada de contradição.
somente Uma
valores lógicos proposição
verdadeiros composta
(V). quelado,
Por outro não uma
é proposição
uma tautologia nem uma contradição é denominada contingência.
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:
Exemplos:
1) A proposição composta p ∧ q → q é uma tautologia.
1) A proposição composta p ∧ q → q é uma tautologia.
p ∧ q → q
V V V Vp V∧ q → q
V F F VV FV V V V
F F V VV VF F V F
F F F VF FF V V V
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

1 2 1 3 F 1F F V F
1 contradição.
2) A proposição composta (p ∧ q)∧ ∼ (p ∨ q) é uma 2 1 3 1

2) A proposição composta (p ∧ q)∧ ∼ (p ∨ q) é uma contradição.


(p ∧ q) ∧ ∼ (p ∨ q)
V V V F(p F∧ Vq) V∧ V∼ (p ∨ q)
V F F FV VV VV VF FF V V V
F F V FV VF FF VF VV V V F
F F F FF VF FV FF FV F V V
1 2 1 5F 4F 1F 3F 1V F F F

3) A proposição composta q →∼ q é uma 1contingência.


2 1 5 4 1 3 1

3) A proposição composta q →∼ q é uma contingência.


q → ∼q
V F F q → ∼q
F V V V F F
F V emVmétodos de prova, e é através
As tautologias e contradições têm fundamental importância
das tautologias que
As podemos simplificar
tautologias expressões
e contradições lógicas.
têm fundamental importância em métodos de prova, e é através
das tautologias que podemos simplificar expressões lógicas.

# REFLITA #
# REFLITA #
A Lógica é a anatomia do pensamento. (John Locke)
A Lógica é a anatomia do pensamento. (John Locke)

# FIM REFLITA #
# FIM REFLITA #
14
14
Tautologias e Contradições
I

Equivalências Lógicas

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Equivalência 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

LÓGICA MATEMÁTICA
29

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
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
I

Exercı́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 disponı́veis em muitas linguagens de

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 substituı́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

LÓGICA MATEMÁTICA
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 raciocı́nio, isto é, são formas que nos permitem
concluir o consequente, uma vez que consideremos o antecedente verdadeiro; em termos textu-
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Implicações Lógicas
I

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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Exercı́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

LÓGICA MATEMÁTICA
33

Exemplo:
Todo aluno de Engenharia de Software precisa estudar Lógica. (premissa)
Leonardo é aluno de Engenharia de Software. (premissa)
19
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.


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
Método Dedutivo
I

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
∼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
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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Quantificadores e Predicados
I

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Não é possı́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
37

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-se Conjunto-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 }
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Quantificadores e Predicados
I

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)).

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
e) Todo dia que é ensolarado não é chuvoso.
Considerando os sı́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 < y 2 .”

25

LÓGICA MATEMÁTICA
39

a) Com o uso de sı́mbolos predicados e quantificadores apropriados, escrever simbolicamente


a sentença:
(∀x)(∀y)(x < y → x2 < y 2 ).

b) Escrever, simbolicamente e em linguagem usual, a negação da sentença dada.

   
∼ (∀x)(∀y)(x < y → x2 < y 2 ) ≡ (∃x) ∼ (∀y)(x < y → x2 < y 2 )
 
≡ (∃x)(∃y) ∼ (x < y → x2 < y 2 )
 
≡ (∃x)(∃y) x < y∧ ∼ (x2 < y 2 )
 
≡ (∃x)(∃y) x < y ∧ (x2 ≥ y 2 ) .

“Existem x e y, com x < y e (x2 ≥ y 2 )”.


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 raciocı́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 distribuı́dos. Como a Lógica possui uma linguagem simbólica própria, torna-se possı́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 sı́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 constituı́das em função da lógica de predicados, e a lógica
formal é essencial para o curso, daı́ a importância do estudo dos tópicos dessa unidade.

26

Considerações Finais
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
41

g) É suficiente cantar para estar vivo.


h) Toda solução de x2 − 6 = 0 é positiva.
i) Alguns inteiros são pares ou divisı́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 lı́der do grupo
é culpado. Se o produto ganha o concurso, a equipe fica contente. A equipe não está
contente. Logo, o lı́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 raciocı́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 lı́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, constituı́da por sı́mbolos
especı́ficos.
Entendemos por linguagem um conjunto de sı́mbolos (geralmente visuais ou sonoros) que,
dependendo da maneira como são dispostos em sequência, apresentam signicados distintos.

28
é culpado. Se o produto ganha o concurso, a equipe fica contente. A equipe não está
contente. Logo, o lı́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 raciocı́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 lı́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, constituı́da por sı́mbolos
especı́ficos.
Entendemos por linguagem um conjunto de sı́mbolos (geralmente visuais ou sonoros) que,
dependendo da maneira como são dispostos em sequência, apresentam signicados distintos.
Por exemplo, um idioma pode ser visto como duas linguagens: uma em que os sı́mbolos usados
28
são sons (a linguagem falada) e outra em que os sı́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 lı́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 é constituı́da de dois elementos. A sintaxe consiste
no conjunto de sı́mbolos usados e nas regras de formação de palavras e frases a partir desses
sı́mbolos. A semântica de uma linguagem é a forma como esses sı́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.
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.
43
Percebemos, então, que toda linguagem é constituı́da de dois elementos. A sintaxe consiste
no conjunto de sı́mbolos usados e nas regras de formação de palavras e frases a partir desses
sı́mbolos. A semântica de uma linguagem é a forma como esses sı́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, disponı́vel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-

29
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

MATERIAL COMPLEMENTAR
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, disponı́vel em
<http://www.devmedia.com.br/logica-uma-ferramenta-indispensavel-na-programacao-de-
computadores/28386>. Acesso em: 31 mar. 2015.
29
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
computadores/28386>.Acesso
computadores/28386>. Acessoem:em:3131mar.
mar.2015.
2015.
de máquinas automáticas, em especial, a criação dos computadores, tendo como base o modelo
da Máquina de Turing.
Outroartigo,
Outro artigo,a asaber,
saber,OOenvolvimento
envolvimentodadaMatemática
Matemáticacomcoma acriação
criaçãodos
dosComputadores,
Computadores,dede
Esse artigo está disponı́vel em <http://www.ipv.pt/millenium/Millenium25/25 28.htm>.
ElzaFigueiredo
Elza FigueiredoChagas,
Chagas,mostra
mostraa aimportância
importânciadedeconceitos
conceitosmatemáticos
matemáticosnanacriação
criaçãodedemodelos
modelos
Acesso em: 16 mar. 2015.
de máquinas automáticas, em especial, a criação dos computadores, tendo como
de máquinas automáticas, em especial, a criação dos computadores, tendo como base o modelo base o modelo
da Máquina de Turing.
da Máquina de Turing.
Esseartigo
Esse artigoestá
estádisponı́vel
disponı́velemem<http://www.ipv.pt/millenium/Millenium25/25
<http://www.ipv.pt/millenium/Millenium25/2528.htm>. 28.htm>.
Acesso
Material
Acesso em: 16 mar.
em: 16Complementar:
mar. 2015.2015. Livro

Iniciação à Lógica Matemática


Autor: Edgard de Alencar Filho
Material
Material
Editora: Complementar:Livro
Complementar:
Nobel Livro
Sinopse: Esse livro aborda diretamente a iniciação à
Iniciaçãoà àLógica
Iniciação LógicaMatemática
Matemática
lógica matemática, de uma forma simples e aprofundada
Autor:Edgard
Autor: EdgarddedeAlencar
AlencarFilho
Filho
no assunto.
Editora:Nobel
Editora: Nobel
Sinopse:Esse
Sinopse: Esselivro
livroaborda
abordadiretamente
diretamentea ainiciação
iniciaçãoà à
lógicamatemática,
lógica matemática,dedeumaumaforma
formasimples
simplese aprofundada
e aprofundada
no assunto.
no assunto.
Professora Me. Edvania Gimenes de Oliveira Godoy

II
UNIDADE
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 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
47

INTRODUÇÃO
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 é indivisı́vel da lógica, na qual a Informática e Ciência
da Computação têm as suas raı́zes, ela é amplamente aplicada nessas áreas, como em banco de
dados; circuitos integrados; inteligência artificial; sistemas distribuı́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
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

claramente distinguı́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 paı́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 possı́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.

Introdução
2
II

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 caracterı́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 caracterı́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, ...

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
• 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 caracterı́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:

TEORIA DOS CONJUNTOS


49

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}.


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 sı́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.
7 3 11
Exemplos: 7 = ; = 0, 75 e = 1, 22222... são números racionais
1 4 9
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.

Descricão de Conjuntos
II

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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.

TEORIA DOS CONJUNTOS


51

Notação: ∅ ou { }.
Exemplo: A = {x | x é dinossauro vivo}.

• Conjunto Unitário: Possui apenas um elemento.


 
−5
Exemplo: B = {x ∈ R | 2x + 4 = −1} ⇒ B = .
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 é possı́vel enumerar seus elementos.


Exemplo: D = {x ∈ N | x é múltiplo de 5} = {0, 5, 10, 15, 20, 25, ...}.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Observação:

Para representar o conjunto vazio, usamos o sı́mbolo ∅ ou { }, mas nunca o sı́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:

Subconjuntos
II

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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:

a) Se A = {x | x é vogal} e B = {y
| y é letra do alfabeto}, então temos que A ⊂ B.

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.

TEORIA DOS CONJUNTOS


53

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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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} tem 2 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.

Conjunto das Partes


II

Diagramas de Venn-Euler
Diagramas
Os diagramas de Venn-Euler
de Venn-Euler são universalmente conhecidos e muito usados na Teoria dos
Diagramas
conjuntos. de Venn-Euler
Trata-se de uma representação de conjuntosconhecidos
Os diagramas de Venn-Euler são universalmente por meio de áreas usados
e muito delimitadas por dos
na Teoria
curvas
Os no plano.
conjuntos.
diagramas de Trata-se
Venn-Euler de são
umauniversalmente
representação de conjuntose por
conhecidos muitomeio de áreas
usados delimitadas
na Teoria dos por
O conjunto universo
curvasTrata-se
conjuntos. no plano.U é representado pelo interior de um retângulo, e os outros
de uma representação de conjuntos por meio de áreas delimitadas por conjuntos, por
uma área limitada
curvasOnoconjunto por curvas fechadas, geralmente cı́rculos. O interior dessas curvas representa,
plano. universo U é representado pelo interior de um retângulo, e os outros conjuntos, por
Osimbolicamente,
uma área
conjunto a coleção
limitada
universo U é por decurvas
elementos
representado dointerior
pelo conjunto.
fechadas, geralmente
de umcı́rculos. O interior
retângulo, dessas
e os outros curvas representa,
conjuntos, por
simbolicamente,
uma área a coleção
limitada por curvas de elementos
fechadas, do conjunto.
geralmente cı́rculos. O interior dessas curvas representa,
simbolicamente, a coleção de elementos do conjunto.
# SAIBA MAIS #
# SAIBA MAIS #
John Venn
# SAIBA MAIS (1834-1923),
# matemático inglês, desenvolveu e am-

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
pliou a lógica matemática
John Venn (1834-1923), de George Boole,inglês,
matemático tornando-se con- e am-
desenvolveu
hecido
Johnpelos
pliou
Venn seus diagramas
a (1834-1923), para
lógica matemática representar
de George
matemático uniões
inglês, Boole, e interseções
tornando-se
desenvolveu e am- con-
entre conjunto.
pliou a lógica matemática de George Boole, tornando-se interseções
hecido pelos seus diagramas para representar uniões e con-
Fonte:entre
hecido John...(online)
pelos conjunto.
seus diagramas para representar uniões e interseções
Fonte: John...(online)
entre conjunto.
Fonte: John...(online)

Leonard Euler (1707-1783), matemático suiço, representava


conjuntosLeonard
de objetos por(1707-1783),
Euler cı́rculos no plano, e por isso
matemático esses
suiço, dia-
representava
gramas eramEuler
Leonard chamados
conjuntos de cı́rculos
de(1707-1783),
objetos de Euler.
por cı́rculos no plano,
matemático suiço,e representava
por isso esses dia-
Fonte: Leonard...(online)
gramas
conjuntos eram chamados
de objetos de cı́rculos
por cı́rculos de eEuler.
no plano, por isso esses dia-
gramasFonte:
eram Leonard...(online)
chamados de cı́rculos de Euler.
Fonte: Leonard...(online)
# FIM SAIBA MAIS #
# FIM SAIBA MAIS #
# FIM SAIBA MAIS #

Operações com Conjuntos


Operações
Em aritmética, com realizar
podemos Conjuntos
operações de adição, multi-
Operações
plicação e com
subtração Conjuntos
de dois ou mais
Em aritmética, podemos realizar números. Nos conjuntos,
operações de adição,asmulti-
operações
Em de união,
plicação
aritmética, interseção
e subtração
podemos de dois
realizare diferença,
ou quedeserão
mais números.
operações vistas
Nos
adição, neste
conjuntos,
multi- as
tópico,
plicação se comportam
operações
e subtração de
de união, maneira
interseção
de dois semelhante
e diferença,
ou mais números. às
Nos operações
que arit-
serão vistas
conjuntos, as neste
méticas
operações dedeadição,
tópico, união, multiplicação
se comportam e subtração,
interseçãodee maneira
diferença, que respectivamente.
semelhante às operações
serão vistas neste arit-
Asméticas
tópico, operações entrede
de adição,
se comportam conjuntos
maneira são
multiplicação formas de
às criar
e subtração,
semelhante novos arit-
con-
respectivamente.
operações
juntos a partir de
méticas deAsadição, conjuntos
operações já existentes.
entre conjuntos
multiplicação são formas
e subtração, de criar novos con-
respectivamente.
As juntos a partir
operações entredeconjuntos
conjuntossão
já existentes.
formas de criar novos con-
juntos a partir de conjuntos já existentes.

9
9
TEORIA DOS CONJUNTOS 9
55

• 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}.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
II

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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

TEORIA DOS CONJUNTOS


57


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:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
II

Produto Cartesiano

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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


59

d) (A × B) × B = {((♥, 1), 1), ((♥, 1), 2), ((♥, 2), 1), ((♥, 2), 2), ((, 1), 1),
((, 1), 2), ((, 2), 1), ((, 2), 2)}.

Exercı́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 = ∅.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 é constituı́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

Relação Entre Lógica e Álgebra dos Conjuntos


II

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Exercı́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.

Princı́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


61

Notemos que se A e B são conjuntos quaisquer, então:

n(A ∪ B) = n(A) + n(B) − n(A ∩ B).


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Este é o chamado Princı́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 Princı́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 Princı́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

Princípio da inclusão e exclusão


II

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 NeM NeG MeG NeMeG Outras


No de alunos 148 256 162 41 25 52 8 152

17

TEORIA DOS CONJUNTOS


63

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:


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

* 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

Princípio da inclusão e exclusão


II

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 princı́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

TEORIA DOS 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.
65

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}.

f) ( ) {3} ⊂ {1, 2, 3}.

g) ( ) {7, 9} ⊂ {7, 8, {7, 9}}. 19

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.
(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.

h) (A ∩ B) ∪ C .
20

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}.


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:
67
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).

a) Desenhe um diagrama de Venn para ilustrar A ⊕ B.


21 encontre A ⊕ B.
b) Para A = {5, 7, 9, 11} e B = {3, 4, 7, 8, 9},

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 disponı́vel um sistema
baseado em Windows, 34 têm disponı́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 disponı́vel Windows ou Mac?

11) Em uma avaliação admissional constituı́da por duas questões, 120 candidatos acertaram
somente uma delas; 70, a segunda; 38 candidatos acertaram as duas e 82 erraram a
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 disponı́vel Windows ou Mac?

11) Em uma avaliação admissional constituı́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
b) Quantos candidatos erraram as duas questões?
69
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.
A técnica para definir união disjunta, de maneira a garantir a não existência de elementos
22
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
C + RH= {PedroC , JoséC , JoanaC , MariaC , JudithRH , CéliaRH , JoséRH , MariaRH }.

MATERIAL COMPLEMENTAR
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 capı́tulos: Capı́tulo 1 - A Linguagem do Universo;
Capı́tulo 2 - O Gênio do Oriente; Capı́tulo 3 - As Fronteiras do Espaço e Capı́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-
cioná-los. Entre esses problemas, encontra-se os trabalhos de Cantor sobre os infinitos.

23
A História da Matemática 4 - Além do Infinito está disponı́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
exercı́cios, volume 19 da mesma coleção.
Professora Me. Edvania Gimenes de Oliveira Godoy

III
UNIDADE
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
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

RELAÇÕES
III
73

INTRODUÇÃO
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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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.

Introdução
2
III

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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
(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 escolherı́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:

RELAÇÕES
75

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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 = y 2 }, 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 = y 2 :


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 Curitiba e 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.

Introdução
III

Exercı́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 biunı́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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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

RELAÇÕES
77

Muitos para um Muitos para muitos

Propriedades das Relações


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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.

Propriedades das Relações


III

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 é possı́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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 de matriz relação.

A matriz da relação R do exemplo anterior será dada por:

RELAÇÕES
79

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


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Representação das Relações


III

A relação é: R1 = {(1, 1), (1, 2), (2, 1), (2, 2), (2, 3), (2, 4), (3, 4), (4, 1), (4, 4)}.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
81

• Matriz da relação:

R1 1 2 3 4 R2 a b c d R3 a b c
1 1 1 0 0 a 1 0 1 0 a 1 0 0
c)
a) 2 1 1 1 1 b) b 0 0 1 0 b 0 1 0
3 0 0 0 1 c 0 1 1 0 c 0 0 1
4 1 0 0 1 d 0 0 1 0

• Diagramas de setas:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

# 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
possı́vel. Este problema tem inúmeras aplicações práticas, como minimização de rotas de
veı́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
III

# 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
possı́vel. Este problema tem inúmeras aplicações práticas, como minimização de rotas de
veı́culos, confecção
linhas estarão de sistemas
associadas digitais, (ou
as distâncias sequenciamento de atividades Se
custos) correspondentes. e outros.
o número de cidades
No domı́nio
é pequeno, fica da teoria
fácil dos grafos,
determinar cada cidade
o melhor caminho,é identificada com um
mas se o número denó (ou vértice)
cidades aumenta,e aso
rotas que ligam cada par de nós são identicadas
número de percursos alternativos cresce assustadoramente.como arcos (ou arestas). A cada uma destas

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
linhasE seestarão associadas
o caixeiro as em
estivesse distâncias
Brası́lia(ou custos) percorrer
e quisesse correspondentes. Se de
as capitais o número
todos osde26cidades
estados
ébrasileiros? 10
pequeno, fica fácil determinar o melhor caminho, mas se o número de cidades aumenta, o
número de percursos alternativos cresce assustadoramente.
Em http://www.uff.br/sintoniamatematica/grandestemaseproblemas/grandestemaseproblemas-
E se o caixeiro estivesse em
html/audio-caixeiro-br.html Brası́lia
você e quisesse
encontrará percorrer
os cálculos as capitais
do número dede
total todos os 26
formas de estados
ordenar
brasileiros?
as 26 cidades e o tempo que seria gasto para fazer as contas das distâncias de todos os percursos
Em http://www.uff.br/sintoniamatematica/grandestemaseproblemas/grandestemaseproblemas-
possı́veis do caixeiro para visitar as 26 capitais. Os números são impressionantes!
html/audio-caixeiro-br.html você encontrará os cálculos do número total de formas de ordenar
as 26FIMcidades
SAIBAe o tempo
MAIS que seria gasto para fazer as contas das distâncias de todos os percursos
possı́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
nı́veis. Podemos, por exemplo, organizar os funcionários
Relação de Ordem
de uma empresa por faixa salarial, dizendo que xRy se, e
Algumas
somente se, relações
x está organizam os objetos
na mesma faixa salarialrelacionados em
de y ou em faixa
nı́veis. Podemos, por
salarial inferior à de y. exemplo, organizar os funcionários
de uma empresa
Outros exemplos por seriam
faixa salarial, dizendo
relacionar que xRyde
os moradores se,um
e
somente se, x está
prédio dizendo quenaxRy
mesma
⇔ faixa salarial
x mora de y ou
no mesmo em faixa
andar de y
salarial inferior à de y.
ou em andar abaixo ao de y; organizar as cidades de um
Outros
estado porexemplos
sua área seriam relacionar
ou população; asos moradores
tarefas de pré-
que são um
prédio dizendo
requisitos paraque xRy ⇔ x de
a fabricação mora no mesmo artigo,
determinado andar de ou yo
ou em andar
processo desdeabaixo ao dedey;um
a compra organizar
produto as cidades
online até de
suaumen-
estado
trega. por sua área ou população; as tarefas que são pré-
requisitos para a fabricação de determinado artigo, ou o
processo desde adecompra
A inclusão de um
conjuntos produto
também onlineosaté
organiza sua en-
objetos em nı́veis:
trega.Propriedades da Inclusão:

1. inclusão
A Para todode conjunto
conjuntosA,também
temos que A ⊆ A.
organiza os objetos em nı́veis:
Propriedades da Inclusão:
RELAÇÕES
2. Para quaisquer conjuntos A e B, se A ⊆ B e B ⊆ A, então A = B.
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é- 83

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 nı́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 nı́veis.
Definição: Seja A um conjunto e R uma relação em A × A. Dizemos que R é uma relação
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

de ordem parcial em A se R é reflexiva, antissimétrica e transitiva.


(A, R) é chamado de conjunto parcialmente 11 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. Relação de Ordem
• x divide x;

III • 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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
• 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

RELAÇÕES
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).
b) Escreva todos os predecessores de 6.
b) Escreva todos os predecessores de 6.
{1, 2, 3}.
{1, 2, 3}. 85
c) Escreva todos os predecessores imediatos de 6.
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).
{2, 3}. (1 não é predecessor imediato de 6, pois 1 divide 2 e 1 divide 3 também).

#PARA REFLETIR #
#PARA REFLETIR #

“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)


“O estudo é uma espécie de alimento natural da mente.” (Robert Louis Stevenson)

#FINAL PARA REFLETIR#


#FINAL PARA REFLETIR#

Diagrama de Hasse
Diagrama de Hasse
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Se A for um conjunto finito, podemos representar visualmente um conjunto parcialmente


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).
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
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
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.
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
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á
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
um ciclo, excetuando-se arcos com origem e destino num mesmo nodo. Logo, esses arcos podem
ser omitidos.
ser omitidos.

Para se construir Diagramas de Hasse:


Para se construir Diagramas de Hasse:
- 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.
13
13
- 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).

Diagrama de Hasse
- 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.
III - 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).

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
87

Diagramas PERT
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Diagrama 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
III

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
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:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Relações Duais
III

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
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:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Consideração Finais
III

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 crı́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 possı́veis dúvidas que possam surgir.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Atividades de Autoestudo
1) Considere a tabela que fornece a relação dos sete paı́ses melhores colocados no quadro de
medalhas geral das Olimpı́adas de Londres 2012, com o número de medalhas e o continente
a que pertencem:

Paı́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 paı́ses melhores colocados no quadro de medalhas geral das Olimpı́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
resultado de outra, também foram apresentadas e exemplificadas.
Para fixar os conceitos apresentados, é importante que você faça as atividades de autoestudo
93
e esclareça as possı́veis dúvidas que possam surgir.

Atividades de Autoestudo
1) Considere a tabela que fornece a relação dos sete paı́ses melhores colocados no quadro de
medalhas geral das Olimpı́adas de Londres 2012, com o número de medalhas e o continente
a que pertencem:

Paı́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 paı́ses melhores colocados no quadro de medalhas geral das Olimpı́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.

e) Ache a relação dual R−1 . 20

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).
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
95

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
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 possı́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
6. Colocar casa em ordem 4
7. Recepcionar convidados 5; 6
8. Servir o jantar 7 97

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 possı́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
de forma confiável o caminho de casa. Na pesquisa foram usadas flores artificiais controladas
pelo computador, e observou-se que depois de explorar
23 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 possı́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 raciocı́nio formal, desde
o inı́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.
a mais curta foi feita por um computador que calculou o menor caminho possı́vel, e essa foi a
parte mais difı́cil da pesquisa, devido ao tempo que o computador levou para fazer os cálculos.

MATERIAL COMPLEMENTAR
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 raciocı́nio formal, desde
o inı́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
Professora Me. Edvania Gimenes de Oliveira Godoy

IV
UNIDADE
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
101

INTRODUÇÃO
Introduçã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;


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

- 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 saı́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.

Introdução
2
IV

Formalmente, dados dois conjuntos A e B não vazios, uma função f de A em B é uma


Formalmente, dados dois
relação que associa conjuntos
a cada A xe ∈BA,
elemento não
umvazios,
únicouma funçãoy ∈
elemento f B.
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.
- 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,
As funções podem
ou mesmo porserpalavras.
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
- Se f éBuma função
ou “f leva de
(ouAmapeia) em B.” f : A → B e se lê: “f é uma função de A em
para B,Aescreve-se
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)
- Se a ∈é A, então fimagem
chamado (a) (lê-sedef adepor
a) f.
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. geral, representamos como y = f (x) o único elemento y ∈ B associado a
De maneira

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
x ∈ a.

Notação:
Notação:
Em geral, usaremos letras minúsculas, como f , g, h etc., para relações que são funções.
Em geral, usaremos letras minúsculas, como f , g, h etc., para relações que são funções.

# REFLITA #
# REFLITA #

Relações “vários-para-vários” e “um-para-vários” não são funções. (Por quê?)


Relações “vários-para-vários” e “um-para-vários” não são funções. (Por quê?)
Fonte: A autora.
Fonte: A autora.

# FIM REFLITA #
# FIM REFLITA #

3
3
FUNÇÕES
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 possı́veis.

Domı́nio, Contradomı́nio e Imagem de uma Função


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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ínio, Contradomínio e Imagem de uma Função
IV

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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
2. uma imagem Im
3. uma regra que para cada x ∈ Dom, especifica um único elemento f (x) em Im.

Exercı́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.

FUNÇÕES
105

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 + 2y 2 . 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).
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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:
Sejam A = {2, 3, 6} e B = {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.

Igualdade de Funções
IV

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 :

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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:

FUNÇÕES
107

3) Se g : R → R definida por g(x) = x − 2, então o gráfico de g será:


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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ção a 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.

Igualdade de Funções
IV

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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:

FUNÇÕES
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 
= 41, 125 = 42.
8

Propriedades de Funções
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Propriedades de Funções
IV

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
111

Exemplo:
h : A = {a, b, c, d} → B = {0, 1, 2, 3} definida por h : {(a, 3), (b, 1), (c, 0), (d, 2)} é bijetora.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
IV

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
113

b) Determinar (g ◦ f )(−2) e (g ◦ f )(0).

• (g ◦ f )(−2) = g(f (−2)) = g(−3) = 9.


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

• (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 é
possı́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

Função Composta
IV

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 poderı́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

FUNÇÕES
115

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).


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 (por meio 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


IV

II) Em y = f (x) expressamos x em função de y, obtendo x = f −1 (y).


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
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).
na equação obtida em (II).

Exemplos:
Exemplos:
Determinar a inversa das seguintes funções bijetoras de domı́nio e contradomı́nio indicado:
Determinar a inversa das seguintes funções bijetoras de domı́nio e contradomı́nio indicado:
a) F : N → N definida por f (x) = 2x.
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) =
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.
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:
Para determinar a inversa de f, procedemos da seguinte maneira:
y y

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
y = 2x ⇒ y = x ⇒ x = y .
y = 2x ⇒ 2 = x ⇒ x = 2 .
2 2
x x
Trocando x por y na última equação, obtemos y = x . Logo, f −1 (x) = x , ou seja, a
Trocando x por y na última equação, obtemos y = 2 . Logo, f −1 (x) = 2 , ou seja, a
função inversa de f associa cada elemento do conjunto2 imagem de f à metade2 do seu
função inversa de f associa cada elemento do conjunto imagem de f à metade do seu
valor.
valor.
b) f : R → R definida por f (x) = 5 − 3x.
b) f : R → R definida por f (x) = 5 − 3x.

5−y
y = 5 − 3x ⇒ −3x = y − 5 ⇒ 3x = 5 − y ⇒ x = 5 − y .
y = 5 − 3x ⇒ −3x = y − 5 ⇒ 3x = 5 − y ⇒ x = 3 .
3
5−x
Logo, f −1 (x) = 5 − x .
Logo, f −1 (x) = 3 .
3

# SAIBA MAIS #
# SAIBA MAIS #
Modelagem Matemática
Modelagem Matemática

As funções desempenham um papel importante na ciência. Frequentemente, observa-se que


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
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-
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
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
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,
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
assim como permite fazer mudanças matematicamente que não faziam parte da experiência
original.
original.

Fonte: A autora.
Fonte: A autora.
#FIM SAIBA MAIS#
#FIM SAIBA MAIS#
17
17

FUNÇÕES
117

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 é substituı́do na expressão.
Funções, assim como relações, descrevem diversas situações reais. Nesta unidade, vimos que
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
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
119

b) f (x) = x3
2x + 7
c) f (x) =
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 perı́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 disponı́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”, disponı́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
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, “embar-
alha” 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>.

18
a) (h ◦ f )(−6, 4) =

b) (f ◦ h)(−6, 4) =

MATERIAL COMPLEMENTAR
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 perı́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 disponı́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”, disponı́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
Paı́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
Professora Me. Edvania Gimenes de Oliveira Godoy

APLICAÇÕES À

V
UNIDADE
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
125

INTRODUÇÃO
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 possı́veis, então pode ser considerada um conjunto infinito. A aplicação das regras
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 crı́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 especı́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 especı́ficas.

Álgebra dos Conjuntos nas Linguagens de Programação


Álgebra dos Conjuntos nas Linguagem de Programação

Introdução
2
V

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 sı́mbolos (ou caracteres), que são denom-
inados elementos do alfabeto.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
2. Os sı́mbolos (tokens), também denominados átomos, são representações gráficas indi-
visı́veis. Cada sı́mbolo é considerado como uma unidade atômica, não importando a
sua particular representação visual. São exemplos de sı́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 sı́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 possı́veis


sobre Σ.

Exemplo:
Como exemplo de alfabeto, consideremos Σ o conjunto dos dı́gitos hexadecimais, em que cada
elemento corresponde a um sı́mbolo:

Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f }.

12ab, 88541aaf , e4, cdf ee03, 8, são exemplos de cadeias (ou palavras) que podem ser
construı́das com os sı́mbolos de Σ.

O comprimento de uma cadeia é um número natural que designa a quantidade de sı́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.

APLICAÇÕES À COMPUTAÇÃO
127

Dá-se o nome de cadeia elementar (ou unitária) a qualquer cadeia formada por um único
sı́mbolo. Por exemplo, α = d. Temos que |α| = 1.

Cadeia Vazia: Uuma cadeia sem sı́mbolos também é uma cadeia válida. Denota-se por
ε a cadeia formada por uma quantidade nula de sı́mbolos, isto é, a cadeia que não contém
sı́mbolos. Formalmente, |ε| = 0.
ε (épisilon) denota a cadeia vazia; palavra vazia ou sentença vazia.
Se Σ é um alfabeto, já definimos Σ∗ como o conjunto de todas as palavras possı́veis sobre Σ.
Analogamente, Σ+ representa o conjunto de todas as palavras sobre Σ excetuando-se a palavra
vazia, ou seja, Σ+ = Σ∗ − {ε}.

Exemplos:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 sı́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 sı́mbolo, alfabeto, cadeia e linguagem:

Álgebra dos Conjuntos nas Linguagens de Programação


V

Fonte: RAMOS (2008, online).

Podemos observar, então, que (i) um conjunto de sı́mbolos forma um alfabeto, (ii) a partir

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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:
- Sı́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

APLICAÇÕES À COMPUTAÇÃO
129

2) Consideremos a linguagem L de palı́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 palı́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 possı́veis cadeias sobre Σ, então, toda e qualquer linguagem L sobre um
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
V

(L é o conjunto de concatenações sucessivas da cadeia a, em que n indica o número de con-


catenações sucessivas).
(L ééLogo,
(L oo conjunto
conjunto de
de

concatenações sucessivas
concatenações sucessivas da
da cadeia
cadeia a,
a, em
em que
que nn indica
indica oo número
número de
de con-
con-
catenações L = {α | α ∈ Σ∗ e α ∈ L} = {b, ab, bb, aab, abb, bbb, aaab, ...}.
sucessivas).
catenações sucessivas).
Logo,
Logo, 
L =
L {α || α
= {α α∈ Σ∗∗ ee α
∈Σ ∈ L}
α ∈ L} = {b, ab,
= {b, ab, bb,
bb, aab,
aab, abb,
abb, bbb,
bbb, aaab,
aaab, ...}.
...}.

# REFLITA #

Toda a teoria #
# REFLITA
REFLITA deve ser feita para poder ser posta em prática, e toda a prática deve obedecer
# #
a uma teoria. Só os espı́ritos superficiais desligam a teoria da prática, não olhando a que a
teoria nãoa éteoria
Toda senãodeve
umaserteoria
feitada prática,
para poder esera prática
ser posta em
em não é senão
prática, a prática de uma
deveteoria.
Toda a teoria deve ser feita para poder posta prática, ee toda
toda aa prática
prática deve obedecer
obedecer

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Fonte: Fernando Pessoa
a uma teoria. Só os espı́ritos superficiais desligam a teoria da prática, não olhando aa que
a uma teoria. Só os espı́ritos superficiais desligam a teoria da prática, não olhando que aa
teoria não
teoria não éé senão
senão uma
uma teoria
teoria da
da prática,
prática, ee aa prática
prática não
não éé senão
senão aa prática
prática de
de uma
uma teoria.
teoria.
# FIM
Fonte: REFLITA#
Fernando Pessoa
Fonte: Fernando Pessoa

# FIM
# FIM REFLITA#
REFLITA#

Linguagem de Programação:

De acordo com
Linguagem deMenezes (2013, p.8), podemos definir linguagem de programação como uma
Programação:
Linguagem de Programação:
linguagem sobre um alfabeto pré-determinado:
De acordo
De acordo com
com Menezes
Menezes As
(2013,
(2013, p.8), podemos
p.8),
linguagenspodemos definir linguagem
definir linguagem
de programação de programação
de programação
como Pascal, C e Java como
como uma
são uma
lin-
linguagem sobre um alfabeto
linguagem sobre um alfabeto pré-determinado:
pré-determinado:
guagens sobre o alfabeto constituı́do por letras, dı́gitos e alguns
sı́mbolos
As linguagens especiais
linguagens (como espaço,
de programação
programação como parênteses,
Pascal, C Cpontuação,sãoetc).
As de como Pascal, ee Java
Java são lin-
lin-
Nesse
guagens caso,
sobrecada
o programa
alfabeto na linguagem
constituı́do por corresponde
letras, dı́gitos e aalguns
uma
guagens sobre o alfabeto constituı́do por letras, dı́gitos e alguns
palavra
sı́mbolossobre o alfabeto.
especiais (comoOuespaço,
seja, uma
espaço, linguagempontuação,
parênteses, de programação
etc).
sı́mbolos especiais (como parênteses, pontuação, etc).
éNesse
definida por
caso, todos
cada os seus
programa programas
na possı́veis.
linguagem Portano,
corresponde Pascal,
a uma
Nesse caso, cada programa na linguagem corresponde a uma
Java,
palavra C,sobre
bemo alfabeto.
como qualquer
Ou linguagem
seja, uma de programação,
linguagem de são
programação
palavra sobre o alfabeto. Ou seja, uma linguagem de programação
conjuntos
definida infinitos.
éé definida por todos
por todos osos seus
seus programas
programas possı́veis.
possı́veis. Portano,
Portano, Pascal,
Pascal,
Java, C,
Java, C, ébem
Uma linguagem de programação bem como
um como qualquer
qualquer
vocabulário linguagem
e umlinguagem de programação,
conjunto de regras
programação, são
são
gramaticais
conjuntos
conjuntos
usadas para escrever programas infinitos.
infinitos. Esses programas instruem o computador a re-
de computador.
alizar
Umadeterminadas
linguagem tarefas especı́ficas.é Cada
de programação
programação linguagem possui
um vocabulário
vocabulário um conjunto único de palavras-
Uma linguagem de é um ee um
um conjunto
conjunto de regras
de regras gramaticais
gramaticais
chaves (palavras
usadas para que
para escrever ela reconhece)
escrever programas
programas de e uma sintaxe
de computador.
computador. Esses(regras) especı́fica
Esses programas
programas instruem para organizar as
instruem oo computador instruções
computador aa re- re-
usadas
dos programas.
alizar determinadas tarefas especı́ficas. Cada linguagem possui um conjunto único de palavras-
alizar determinadas tarefas especı́ficas. Cada linguagem possui um conjunto único de palavras-
Um(palavras
chaves compiladorquedeelauma linguagem
reconhece) de sintaxe
programação
(regras)é especı́fica
um programa de sistemaasque traduz
chaves (palavras que ela reconhece) ee uma
uma sintaxe (regras) especı́fica para organizar
para organizar instruções
as instruções
um programa
dos programas.
programas. escrito em uma linguagem de alto nı́vel (linguagem fonte) para um programa
dos
equivalente
Um em código
compilador de de máquina
uma para de
linguagem umprogramação
processador (linguagem objeto). Para desempenhar
Um compilador de uma linguagem de programação éé um
um programa
programa de sistema
de sistema que traduz
que traduz
suas tarefas,
um programa um
programa escritocompilador
escrito em
em uma deve executar
uma linguagem
linguagem de dois
de altotipos de
alto nı́vel atividade.
nı́vel (linguagem A
(linguagem fonte) primeira
fonte) para
para um atividade
um programa é a
programa
um
equivalente em
equivalente em código
código de
de máquina
máquina para
para um um processador
processador (linguagem
(linguagem objeto).
objeto). Para
Para desempenhar
desempenhar
7
suas tarefas, um compilador deve executar dois tipos de atividade. A primeira atividade éé aa
suas tarefas, um compilador deve executar dois tipos de atividade. A primeira atividade

APLICAÇÕES À COMPUTAÇÃO 77
131

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 nı́vel são reconhecidos. A segunda atividade é a sı́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


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Na linguagem de programação Pascal, é possı́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).

Álgebra dos Conjuntos nas Linguagens de Programação


V

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 implı́citas também, nesse programa, operações com conjuntos:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
O conjunto universo U é o conjunto de todas as idades.
O conjunto dos “Não-eleitores” é dado por: N E = {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 N E, 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.

APLICAÇÕES À COMPUTAÇÃO
133

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 possı́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 - Princı́pio
da Resolução.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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
V

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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, luı́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

APLICAÇÕES À COMPUTAÇÃO
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
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

? progenitor(antonio, X)
X=luı́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 “luı́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 = luı́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

PROLOG
V

feminino(ana)
feminino(luı́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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 sı́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
137

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 = luı́sa
fail
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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, luı́sa)
P(antonio, beatriz)
P(beatriz, felipe)
M(paulo)
M(lucas)
M(antonio)
M(felipe)
F(ana)

14

PROLOG
V

F(luı́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 explı́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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 e 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
139

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 possı́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 Crı́tico no Diagrama PERT


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 caracterı́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 inı́cio ao fim do projeto.

Construção do diagrama PERT

Na Unidade III, construı́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 é constituı́do por uma rede
desenhada com base em dois elementos:

- atividades (representados por setas);

- acontecimentos (ou eventos) representados por cı́rculos (nós).

16

Caminho Crítico no Diagrama PERT


V

Para cada projeto, é construı́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 perı́odos de
tempo ou recursos humanos ou financeiros a utilizar.
Cada atividade possui um inı́cio e um fim, que são pontos no tempo. Esses pontos no tempo
são conhecidos como eventos. A seta aponta para o cı́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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
141

Caminho Crı́tico

Em um Diagrama de Rede, o caminho com a maior duração é chamado de caminho crı́tico


e governa o tempo de término do projeto: o tempo de término de um projeto é igual à duração
de seu caminho crı́tico.

Qualquer atraso nesse caminho, automaticamente, determinará um atraso no projeto.


As atividades do caminho crı́tico são chamadas de atividades crı́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 crı́tico, as atividades podem sofrer algum atraso
sem que isso implique em atraso do projeto.
Resumidamente,
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

. Caminho crı́tico é o conjunto de atividades e 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 crı́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
estarı́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 crı́tico.

18

Caminho Crítico no Diagrama PERT


V

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

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 inı́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
143

. 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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

. 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 crı́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.
Obterı́amos a sequência
12, 11, 10, 8, 4, 1.

Logo, os nós do caminho crı́tico são

1, 4, 8, 10, 11, 12.

As atividades sobre esse caminho são as Atividades Crı́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ção de todo o projeto
caso sofram algum atraso.

Se uma tarefa que não está no caminho crı́tico atrasar, o caminho crı́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 crı́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


V

Autômatos Finitos

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
Um sistema de estados finitos é um modelo matemático de um sistema com entradas e
saı́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 é constituı́da por todas as palavras que
passem no teste. Este teste é aplicado de forma incremental, percorrendo os sı́mbolos da
palavra, um a um, a partir do seu inı́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 Determinı́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 sı́mbolo pertencente a um alfabeto
de entrada.
Não é possı́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

APLICAÇÕES À COMPUTAÇÃO
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 sı́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:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Definição: Autômato Finito Determinı́stico (AFD)

Um autômato finito determinı́stico (AFD), ou simplesmente autômato finito (M)é uma


quı́ntupla:
M = (Σ, Q, δ, q0 , F ),

em que:

Σ - Alfabeto de sı́mbolos de entrada


Q - Conjunto finito de estados possı́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 sı́mbolo a, o autômato assume o estado p.

Cada par ordenado é tal que a primeira componente define o estado corrente e o sı́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

Autômatos Finitos
V

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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 sı́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 possı́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
147

δ a b
q0 q1 q2
q1 qf q2
q2 q1 qf
qf qf qf

A ilustração para esse autômato é:


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Observemos que, relativamente ao estado q0 , podemos ter:

• com origem no estado q0 , ao ler o sı́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 sı́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 sı́mbolo anterior. Assim,


q1 representa “o sı́mbolo anterior é a” e q2 representa “o sı́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
V

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.

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
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:
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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

Autômatos Finitos
V

Relações e Banco de Dados

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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): Matrı́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 conjutnos, 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

APLICAÇÕES À COMPUTAÇÃO
151

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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 é dada por:

2) Consideremos as seguinte 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


V

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,

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
153

Cada tabela deve incluir um campo ou conjunto de campos que identifique de forma ex-
clusiva, cada
Cadaregistro
tabela armazenado na tabela
deve incluir um campo para que se crie
ou conjunto uma identificação
de campos única.de Se
que identifique o ex-
forma
subconjunto mı́nimo de atributos que pode ser usado para identificar cada tupla de forma
clusiva, cada registro armazenado na tabela para que se crie uma identificação única. Se o
única subconjunto
contém mais mı́nimo
de um atributo, temosque
de atributos umapode
chave
ser primária composta.
usado para identificar cada tupla de forma
Para a relação
única contém“Cliente”
mais de apresentada
um atributo,anteriormente,
temos uma chavetemosprimária
que o atributo Identidade é uma
composta.
chave primária, pois identifica de maneira única cada tupla:
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),
Cliente (Identidade, Nome, End., Telefone, Cidade),
em que o atributo destacado é a chave primária.
Quando
em queem uma relação
o atributo existeé mais
destacado de primária.
a chave uma combinação de atributos possuindo a pro-
priedade Quando
de identificação
em umaúnica, então,
relação existetemos
mais uma chave
de uma candidata.
combinação A chave candidata
de atributos possuindo éa pro-
apenaspriedade
conceitual, ou seja, ela não é implementada. O que acontece é que
de identificação única, então, temos uma chave candidata. A chave ela possui as mesmas
candidata é
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

propriedades para ser chave primária. Podemos citar Matrı́cula, CPF, RG


apenas conceitual, ou seja, ela não é implementada. O que acontece é que ela possui e Titulo Eleitor
as mesmas
como propriedades
exemplos de chaves
para ser chave primária. Podemos citar Matrı́cula, CPF, RG e TitulodeEleitor
candidatas. A chave candidata que não é primária, é chamada
chave como
alternativa.
exemplos de chaves candidatas. A chave candidata que não é primária, é chamada de
Para a relação
chave “automóvel”, temos que Placa e Chassi são chaves candidatas. Escolhe-se
alternativa.
para chave primária
Para aquela
a relação com o atributo
“automóvel”, temosúnico
que ou menor
Placa número
e Chassi sãodechaves
caracteres.
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,
Quandoteremos uma chave
é necessário invisı́vel.
criar um atributoO(um
nome é justificado
código pelo fato de
de identificação) quesernenhum
para usado como
usuário tem necessidade de vê-la.
chave primária, teremos uma chave invisı́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 duasChave
tabelas.estrangeira
Assim, um atributo
ou Foreign(coluna)
key de umaé relação
(FK) o campo (tabela) corresponde
que estabelece à mesma
o relacionamento
colunaentre
que éduas
a chave primária
tabelas. Assim,deum
outra tabela.
atributo Dessa forma,
(coluna) de umadeve-se
relaçãoespecificar na tabela que
(tabela) corresponde à mesma
contém
coluna que é a chave primária de outra tabela. Dessa forma, deve-se especificar Onabanco
a chave estrangeira quais são essas colunas e a qual tabela está relacionada. tabela que
de dados irá verificar
contém a chave se todos os campos
estrangeira que
quais são fazem
essas referências
colunas e a qualà tabela
tabelaestão
está especificados.
relacionada. O banco
A de
chave estrangeira
dados implementa
irá verificar se todos oosrelacionamento
campos que fazemem um banco deà dados
referências tabelarelacional.
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 A
pelo modelo. Pordos
integridade exemplo,
dadosa érestrição
feita pordemeio
chave
deafirma que toda
restrições, que relação deve terobrigatórias
são condições pelo
menosimpostas
uma chave primária.
pelo modelo. Por exemplo, a restrição de chave afirma que toda relação deve ter pelo
menos uma chave primária.
#REFLITA#
#REFLITA#
Integridade da Entidade: nenhum valor de chave primária pode ser nulo.
Integridade da Entidade: nenhum valor de chave primária pode ser nulo.
Fonte: a autora.
#FIM REFLITA#
Fonte: a autora.
#FIM REFLITA#
30
30
Relações e Banco de Dados
V

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:

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
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
155

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.
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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


Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

Disponı́vel em: https://www.ime.usp.br/ jef/apostila.pdf

33
APLICAÇÕES À COMPUTAÇÃO
V
157
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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


V

Consideremos a relação “Empregado” no banco de dados. A operação projeção de Empre-


Consideremos
gado sobre a relação
(NSS, Salário) “Empregado”
fornecendo no banco
Salário será: de dados. A operação projeção de Empre-
gado sobre (NSS, Salário) fornecendo Salário será:

Salário
NSS Salário
Salário
NSS
123456789 Salário
3000
123456789 4000
333445555 3000
333445555
999887777 4000
2500
999887777 4300
987654321 2500
987654321 3800
666884444 4300
666884444 2500
453453453 3800
453453453
987987987 2500
2500
987987987 5500
2500

Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
888665555
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 Como relações
conjuntos podem sãoser
conjuntos de an-uplas,
aplicadas as operações
duas relações binárias
que têm a mesmade união, interseção
estrutura básica.e diferença
Para a
entre conjuntos podem ser aplicadas a duas relações que têm a mesma estrutura
interseção de duas tabelas com mesma estrutura, por exemplo, produziria uma relação contendo básica. Para a
interseção de duas
todas as n-uplas comuns. tabelas com mesma estrutura, por exemplo, produziria uma relação contendo
todas as n-uplas
A operação comuns.
junção pode ser executada em duas tabelas com um atributo comum (coluna).
A operação
As operações junção projeção
de restrição, pode ser executada em duas
e junção podem ser tabelas
aplicadascomemum atributo
diversas comum (coluna).
combinações para
As operações de restrição, projeção e
que um usuário possa pesquisar o banco de dados.junção podem ser aplicadas em diversas combinações para
que um usuário possa pesquisar o banco de dados.

# SAIBA MAIS#
# SAIBA MAIS#
Não se pode questionar os benefı́cios da tecnologia na área empresarial, como em tantas
outrasNão se pode
áreas. Para questionar
uma empresa, os benefı́cios
os clientesdasão
tecnologia natanto
diferentes, área em
empresarial,
seu valor como em suas
como em tantas
outras áreas. Para uma empresa, os clientes são diferentes, tanto em seu
necessidades, e o uso adequado de um banco de dados pode favorecer o atendimento do clientevalor como em suas
necessidades, e o uso adequado de um banco de dados pode favorecer o atendimento
com qualidade. Um banco de dados pode armazenar informações que poderão oferecer dados do cliente
com qualidade.
valiosos a respeito Umdos banco
clientesdeatuais
dadose pode armazenar informações que poderão oferecer dados
em potencial.
valiosos a respeito dos clientes atuais e
Para saber mais sobre a importância do assuntoem potencial. nesta área, leia o artigo Importância do
banco de dados para seu negócio, disponı́vel emassunto
Para saber mais sobre a importância do nesta área, leia o artigo Importância do
<http://www.dgabc.com.br/Noticia/460146/
banco de dados para seu negócio, disponı́vel em <http://www.dgabc.com.br/Noticia/460146/
importancia-do-banco-de-dados-para-seu-negocio>.
importancia-do-banco-de-dados-para-seu-negocio>.
Fonte: A autora.
Fonte: A autora.
#FIM SAIBA MAIS#
#FIM SAIBA MAIS#

35
35

APLICAÇÕES À COMPUTAÇÃO
159

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 sı́mbolos. Uma linguagem de programação é
definida por todos os seus programas possı́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
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.

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 crı́tico para um
diagrama. Um caminho crı́tico representa o tempo mı́nimo para se completar o projeto inteiro.
Atrasos em alguma tarefa do caminho crı́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 exemp-
los 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 especı́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
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 especı́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)
patrão(Miguel, Hamal)
36

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− carnı́vora,mosca).
come(veado,planta− carnı́vora).
animal(urso).
animal(peixe).
animal(raposa).
animal(veado).
animal(minhoca).
animal(lince).
come(urso,veado).
come(lince,veado).
come(planta− carnı́vora,mosca). 161
come(veado,planta− carnı́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).
planta(planta− carnı́vora).

37
• 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: Carnı́voro é quem come animal.
Lógica: (∀X)(∀Y )come(X, Y ) ∧ animal(Y ) → carnı́voro(X)
Prolog: carnı́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 é carnı́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 come peixe?

o) Quem é predador?

p) Quem é predador e também presa?


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 come peixe?

o) Quem é predador?

p) Quem é predador e também presa?

q) 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 crı́tico:

Tarefa Pré-requisitos38 Tempo para a Conclusão


A E 3
B C, D 5
C A 2
a) 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 - 1h
B Retirar árvore e transportá-la A 3h
C Lavar cabeçote A 2h
D Trocar rolamentos B 3h
E Trocar reparo da bomba de lubrificação BeC 2h
F Montar, abastecer e testar o conjunto DeE 4h

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 crı́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
A Retirar placa, proteções e esgotar óleo - 1h
B Retirar árvore e transportá-la A 3h
C Lavar cabeçote A 2h 163

D Trocar rolamentos B 3h
E Trocar reparo da bomba de lubrificação BeC 2h
F Montar, abastecer e testar o conjunto DeE 4h

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 crı́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
Leitura Complementar
Integridade de Banco de Dados
Informações novas podem ser incluı́das em um banco de dados de tempos em tempos;
informações obsoletas podem ser excluı́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, exlusã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-
tinguı́-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
exercı́cios, volume 19 da mesma coleção.

40
165
CONCLUSÃO
CONCLUSÃO

Caros alunos, chegamos ao fim de mais uma etapa de estudos, concluindo a disciplina de
Matemática I. Este livro apresentou alguns conceitos de matemática discreta de forma simples
e acessı́vel, mas com o devido cuidado com os aspectos matemáticos formais e desenvolvimento
do raciocı́nio. A Matemática discreta provê um conjunto de técnicas para 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 distribuı́dos; Teoria dos Conjuntos se aplica em banco de da-
dos, circuitos integrados, inteligência artificial e sistemas distribuı́dos; Funções têm aplicação
em otimização e projeto de algoritmos, e Relações são utilizadas em sistemas distribuı́dos,
autômatos e banco de dados.

Sempre que possı́vel, os conceitos teóricos apresentados foram aplicadas na área de com-
putação, mas um capı́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 especı́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 raciocı́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
167
REFERÊNCIAS

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.
169
GABARITO

Gabarito
Unidade I
* Exercı́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)).

* Exercı́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

Como p → p ∧ q é tautologia, segue que p ⇒ p ∧ q.

2) a) p ∧ q ⇒ p b) p ∧ q ⇒ q
(p ∧ q) → p (p ∧ q) → q
V V V V V V V V V V
V F F V V V F F V F
F F V V F F F V V V
F F F V F F F F V F
1 2 1 3 1 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
171
GABARITO

(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 pq
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 pq
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
173
GABARITO

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 divisı́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 lı́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
* Exercı́cio
Os conjuntos {a} e {{a}} são diferentes, pois o elemento de {a} é a, e o elemento de
{{a}} é {a}.

* Exercı́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.

* Exercı́cio:

a) b)

6
175
GABARITO

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
177
GABARITO

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)

R 0 1 3 4
0 0 0 1 1
a) 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
179
GABARITO

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)

R a b c d e
a 1 0 0 0 0
b 1 1 0 0 0
a)
c 1 1 1 0 0
d 1 1 0 1 1
e 1 0 0 0 1

11
GABARITO

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
b)
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
181
GABARITO

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 ex-
emplo, 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)
x
a) f −1 (x) =
5

b) f −1 (x) = 3
x
3x − 7
c) f −1 (x) =
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
183
GABARITO

d) peixinho alga
peixe alga
veado grama
veado planta− carnı́vora

e) urso peixe

f) herbı́voro(X):= come(X,Y), planta(Y), \+ carnı́voro(X) (para regras prolog, \ + a indica


a negação de a, ou seja , ∼ a)

g) predador(X):= carnı́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)

Tempo mı́nimo: 17 unidades de tempo;


3)
caminho crı́tico: E, A, D, B, H.

4) Caminho crı́tico: A, C, H; tempo mı́nimo: 24 semanas.

15

Anda mungkin juga menyukai