Este documento fornece uma introdução aos conceitos básicos da Teoria da Computação, incluindo:
1) A definição de computação e os objetivos da Teoria da Computação;
2) Exemplos de conjuntos finitos e infinitos e operações entre conjuntos;
3) Uma explicação de relações binárias, funções, grafos orientados e tipos especiais de relações.
O documento descreve a hierarquia de Chomsky, que classifica as linguagens formais em quatro tipos principais com base na potência expressiva de suas gramáticas geradoras e reconhecedores associados. O documento explica cada tipo de linguagem formal na hierarquia, começando pelas linguagens regulares no nível 3 e terminando com as linguagens recursivamente enumeráveis no nível 0.
Frequent itemset mining using pattern growth methodShani729
The document discusses the FP-growth algorithm for mining frequent patterns without candidate generation. It begins with an overview of the performance bottlenecks of the Apriori algorithm and introduces the FP-growth approach. The key steps of FP-growth include compressing the transaction database into a frequent-pattern tree (FP-tree) structure, and then mining the FP-tree to find all frequent patterns. The mining process recursively constructs conditional FP-trees to decompose the problem into smaller sub-problems without candidate generation. Examples are provided to illustrate the FP-tree construction and pattern mining.
Lista de Exercícios - Linguagem Formais e AutômatosTárcio Sales
O documento apresenta uma lista de exercícios de Teoria dos Autômatos para o curso de Ciência da Computação. Os exercícios incluem: (1) construção de autômatos finitos determinísticos e não-determinísticos para reconhecer linguagens regulares; (2) conversão de autômato finito não-determinístico para determinístico; e (3) desenvolvimento de autômatos de pilha para reconhecer linguagens de pilha.
O documento explica como resolver inequações do primeiro grau, inequações produto e inequações quociente. Para resolver inequações do primeiro grau, iguala-se a expressão a zero e estuda-se o sinal. Para resolver inequações produto e quociente, determina-se as funções envolvidas, suas raízes e sinal para verificar a condição imposta pela inequação. Exemplos ilustram cada tipo de resolução.
This document discusses different types of fact tables used in data warehousing: transaction fact tables track discrete processes over time; periodic snapshot fact tables record activity during repeating time periods like months; and accumulating snapshot fact tables overwrite facts as a process progresses, allowing intermediate snapshots of processes like orders. Accumulating snapshots are appropriate for short, definite processes while periodic snapshots work for long-running ones.
O documento descreve a evolução dos conjuntos numéricos, começando pelos números naturais e chegando aos números reais. Explica como cada novo conjunto foi necessário para resolver problemas matemáticos e como eles se relacionam entre si, com cada um englobando o anterior e acrescentando novos tipos de números.
Problema da Mochila 0-1 (Knapsack problem)Marcos Castro
O documento descreve o problema da mochila 0-1, no qual o objetivo é selecionar um conjunto de itens de modo a maximizar o valor total dentro da capacidade máxima de uma mochila. O documento discute abordagens gulosas e de programação dinâmica para resolver o problema, concluindo com uma recorrência recursiva para calcular a solução ótima de forma eficiente.
O documento apresenta exemplos de problemas de combinação simples resolvidos por Niccollo Fontana, Pierre de Fermat e Blaise Pascal. Os exemplos incluem o cálculo de triângulos formados por pontos, escolha de estudantes em uma classe, escolha de camisetas e formação de times de vôlei levando em conta posições específicas.
O documento descreve a hierarquia de Chomsky, que classifica as linguagens formais em quatro tipos principais com base na potência expressiva de suas gramáticas geradoras e reconhecedores associados. O documento explica cada tipo de linguagem formal na hierarquia, começando pelas linguagens regulares no nível 3 e terminando com as linguagens recursivamente enumeráveis no nível 0.
Frequent itemset mining using pattern growth methodShani729
The document discusses the FP-growth algorithm for mining frequent patterns without candidate generation. It begins with an overview of the performance bottlenecks of the Apriori algorithm and introduces the FP-growth approach. The key steps of FP-growth include compressing the transaction database into a frequent-pattern tree (FP-tree) structure, and then mining the FP-tree to find all frequent patterns. The mining process recursively constructs conditional FP-trees to decompose the problem into smaller sub-problems without candidate generation. Examples are provided to illustrate the FP-tree construction and pattern mining.
Lista de Exercícios - Linguagem Formais e AutômatosTárcio Sales
O documento apresenta uma lista de exercícios de Teoria dos Autômatos para o curso de Ciência da Computação. Os exercícios incluem: (1) construção de autômatos finitos determinísticos e não-determinísticos para reconhecer linguagens regulares; (2) conversão de autômato finito não-determinístico para determinístico; e (3) desenvolvimento de autômatos de pilha para reconhecer linguagens de pilha.
O documento explica como resolver inequações do primeiro grau, inequações produto e inequações quociente. Para resolver inequações do primeiro grau, iguala-se a expressão a zero e estuda-se o sinal. Para resolver inequações produto e quociente, determina-se as funções envolvidas, suas raízes e sinal para verificar a condição imposta pela inequação. Exemplos ilustram cada tipo de resolução.
This document discusses different types of fact tables used in data warehousing: transaction fact tables track discrete processes over time; periodic snapshot fact tables record activity during repeating time periods like months; and accumulating snapshot fact tables overwrite facts as a process progresses, allowing intermediate snapshots of processes like orders. Accumulating snapshots are appropriate for short, definite processes while periodic snapshots work for long-running ones.
O documento descreve a evolução dos conjuntos numéricos, começando pelos números naturais e chegando aos números reais. Explica como cada novo conjunto foi necessário para resolver problemas matemáticos e como eles se relacionam entre si, com cada um englobando o anterior e acrescentando novos tipos de números.
Problema da Mochila 0-1 (Knapsack problem)Marcos Castro
O documento descreve o problema da mochila 0-1, no qual o objetivo é selecionar um conjunto de itens de modo a maximizar o valor total dentro da capacidade máxima de uma mochila. O documento discute abordagens gulosas e de programação dinâmica para resolver o problema, concluindo com uma recorrência recursiva para calcular a solução ótima de forma eficiente.
O documento apresenta exemplos de problemas de combinação simples resolvidos por Niccollo Fontana, Pierre de Fermat e Blaise Pascal. Os exemplos incluem o cálculo de triângulos formados por pontos, escolha de estudantes em uma classe, escolha de camisetas e formação de times de vôlei levando em conta posições específicas.
O documento explica como realizar a multiplicação de matrizes. Primeiro, verifica-se se a quantidade de colunas da primeira matriz é igual à quantidade de linhas da segunda matriz. Em seguida, multiplicam-se os elementos de cada linha da primeira matriz pelos elementos de cada coluna da segunda e somam-se os resultados para obter os elementos da matriz resultante.
O documento discute o conceito de medição e as unidades de medida, especificamente o Sistema Internacional de Unidades (SI). Explica que medir é determinar um valor como múltiplo ou fração de uma unidade padrão. Resume a história das unidades de medida e a importância de um sistema unificado para garantir coerência e simplificar equações físicas. Detalha as sete unidades básicas do SI - metro, quilograma, segundo, ampere, kelvin, candela e mol - e suas definições atuais.
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Universidade de São Paulo
Este documento discute a complexidade de algoritmos e a notação assintótica. Apresenta como a análise de complexidade de algoritmos reduz um algoritmo a uma função matemática que representa o número de instruções executadas em função do tamanho da entrada. Explora os conceitos de limite assintótico superior, inferior e estrito e como eles são usados para classificar algoritmos de acordo com sua taxa de crescimento, ignorando constantes e termos de menor ordem.
8 ano - Congruência e Semelhança e Angulos em Triangulos.pptDaniloConceiodaSilva
O documento discute conceitos de congruência e semelhança de triângulos. Apresenta critérios para determinar se triângulos são congruentes ou semelhantes e exemplos de resolução de problemas usando esses critérios.
Este documento fornece instruções sobre como resolver inequações exponenciais. Explica que as funções exponenciais são crescentes para expoentes maiores que 1 e decrescentes para expoentes entre 0 e 1. Também descreve como manter ou inverter a desigualdade dependendo do valor do expoente ao resolver uma inequação exponencial. Fornece exemplos resolvidos passo a passo para ilustrar o processo.
1. O documento discute recorrências lineares de primeira e segunda ordem, definindo-as e apresentando seus métodos de solução.
2. Inclui exemplos e exercícios sobre recorrências lineares de primeira ordem homogêneas e não homogêneas.
3. Também trata de recorrências lineares de segunda ordem homogêneas e não homogêneas, apresentando teoremas e métodos para resolvê-las.
O documento prova que o problema da parada é indecidível usando o método da diagonalização. Ele constrói uma máquina de Turing D que faz o oposto do que faria uma máquina H que supostamente decide o problema da aceitação. Quando D roda em si mesma, gera uma contradição, mostrando que o problema da parada não pode ser decidido.
O documento introduz conceitos básicos sobre análise e complexidade de algoritmos. Aborda o que é um algoritmo, tipos importantes de problemas, estratégias de projeto de algoritmos e como calcular a complexidade temporal e espacial de um algoritmo, analisando os casos de melhor, pior e médio caso. Também apresenta a notação assintótica O, Ω e θ para definir limites do crescimento de funções.
Programando para web com python - Introdução a PythonAlvaro Oliveira
O documento apresenta uma palestra sobre a linguagem de programação Python. Resume os principais pontos da seguinte forma:
1) Apresenta breve histórico da linguagem Python, criada em 1990 por Guido van Rossum com foco em usuários como físicos e engenheiros.
2) Discutem as principais características da linguagem como interpretação, tipagem dinâmica, controle de fluxo por indentação, orientação a objetos e biblioteca padrão rica.
3) Explicam porque Python é uma boa opção para
O documento resume e compara algoritmos de ordenação como bubble sort, selection sort, quick sort, merge sort e heap sort, descrevendo suas definições, complexidades assimptóticas e demonstrações passo a passo.
Este documento apresenta uma palestra sobre a linguagem de programação Python. As principais ideias apresentadas são:
1) Python é uma linguagem de uso geral amplamente utilizada em diversas áreas como internet, computação gráfica, desktop, operações de empresas e computação científica.
2) Existem diversas implementações de Python como CPython, Jython, IronPython e PyPy. CPython é a implementação principal escrita em C.
3) Python tem evoluído gradualmente ao longo dos anos com novas versões lançadas a cada alguns anos que trazem melhor
Paradigmas de Programação - Imperativo, Orientado a Objetos e FuncionalGustavo Coutinho
1. A aula aborda os três principais paradigmas de programação: imperativo, orientado a objetos e funcional.
2. O paradigma imperativo é baseado na arquitetura de von Neumann e tem no coração a idéia de atribuição. Suporta declaração de variáveis, estruturas de controle e abstração procedural.
3. O paradigma orientado a objetos trata programas como coleções de objetos que se comunicam, concentrando responsabilidades em classes. Conceitos como herança, polimorfismo e interfaces são abordados.
4
Este documento fornece informações sobre o curso de Trigonometria e Números Complexos oferecido pela Universidade do Sul de Santa Catarina (Unisul). Ele apresenta os créditos do curso, a ementa, os objetivos gerais e específicos, a carga horária e a equipe responsável pelo curso.
O documento resume os principais conceitos de geometria plana e sólidos geométricos, incluindo: 1) Fórmulas para calcular áreas de figuras planas como retângulos, quadrados e triângulos; 2) Definição e elementos de prismas retos; 3) Cálculo de áreas da base, área lateral e área total de prismas; 4) Definição e cálculo de volumes de prismas.
Estrutura de dados - Lista Circular Duplamente Encadeada e Matriz EsparsaLucas Sabadini
Seminário sobre Lista Circular Duplamente Encadeada e Matriz Esparsa apresentado na disciplina de Estrutura de Dados do curso de Engenharia da Computação, do Centro Universitário de Votuporanga - UNIFEV.
Este documento apresenta os conceitos fundamentais da Máquina de Turing, incluindo:
1) A Máquina de Turing é constituída por uma fita, unidade de controle e função de transição.
2) A função de transição define o novo estado, símbolo a ser gravado e sentido de movimento da cabeça da fita.
3) Uma Máquina de Turing pode ser usada para reconhecer linguagens, aceitando ou rejeitando palavras de entrada.
The document provides an introduction to programming in Python. It discusses how Python can be used for web development, desktop applications, data science, machine learning, and more. It also covers executing Python programs, reading keyboard input, decision making and loops in Python, standard data types like numbers, strings, lists, tuples and dictionaries. Additionally, it describes functions, opening and reading/writing files, regular expressions, and provides examples of SQLite database connections in Python projects.
Triângulo de Pascal - Exercícios resolvidostadilu3
1) O documento discute o Triângulo de Pascal, no qual os elementos são dispostos em forma triangular de acordo com fórmulas matemáticas.
2) Apresenta propriedades do triângulo de Pascal como termos equidistantes iguais e soma de termos consecutivos.
3) Exemplifica como usar o triângulo de Pascal para resolver problemas envolvendo a soma e posição de termos.
The document discusses the Knuth-Morris-Pratt string matching algorithm. It begins with an explanation of the string matching problem and an inefficient O(mn) solution. It then introduces the KMP algorithm which uses a prefix function to avoid repeating comparisons, solving the problem in linear O(n) time. The prefix function is computed by analyzing shifts of the pattern against itself. The KMP matcher uses the prefix function to efficiently search the string without backtracking.
Este documento fornece uma introdução abrangente sobre logaritmos, incluindo definições, propriedades, equações logarítmicas e funções logarítmicas. Explica que logaritmos representam expoentes e definem logaritmos em diferentes bases. Fornece exemplos detalhados e exercícios para fixar o conteúdo.
O documento discute os principais conceitos da Teoria da Computação, incluindo: (1) A Tese de Church afirma que qualquer função efetivamente computável pode ser computada por uma Máquina de Turing; (2) Problemas são decidíveis ou indecidíveis dependendo se podem ou não ser resolvidos por algoritmos; (3) A computabilidade está relacionada aos modelos formais que descrevem processos computacionais como Máquina de Turing e Cálculo Lambda.
Este documento describe los pasos para configurar una nueva red WiFi. Explica cómo conectar el router a la línea telefónica, configurar la contraseña de la red y compartir la conexión WiFi con otros dispositivos electrónicos como computadoras, teléfonos y tabletas.
O documento explica como realizar a multiplicação de matrizes. Primeiro, verifica-se se a quantidade de colunas da primeira matriz é igual à quantidade de linhas da segunda matriz. Em seguida, multiplicam-se os elementos de cada linha da primeira matriz pelos elementos de cada coluna da segunda e somam-se os resultados para obter os elementos da matriz resultante.
O documento discute o conceito de medição e as unidades de medida, especificamente o Sistema Internacional de Unidades (SI). Explica que medir é determinar um valor como múltiplo ou fração de uma unidade padrão. Resume a história das unidades de medida e a importância de um sistema unificado para garantir coerência e simplificar equações físicas. Detalha as sete unidades básicas do SI - metro, quilograma, segundo, ampere, kelvin, candela e mol - e suas definições atuais.
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Universidade de São Paulo
Este documento discute a complexidade de algoritmos e a notação assintótica. Apresenta como a análise de complexidade de algoritmos reduz um algoritmo a uma função matemática que representa o número de instruções executadas em função do tamanho da entrada. Explora os conceitos de limite assintótico superior, inferior e estrito e como eles são usados para classificar algoritmos de acordo com sua taxa de crescimento, ignorando constantes e termos de menor ordem.
8 ano - Congruência e Semelhança e Angulos em Triangulos.pptDaniloConceiodaSilva
O documento discute conceitos de congruência e semelhança de triângulos. Apresenta critérios para determinar se triângulos são congruentes ou semelhantes e exemplos de resolução de problemas usando esses critérios.
Este documento fornece instruções sobre como resolver inequações exponenciais. Explica que as funções exponenciais são crescentes para expoentes maiores que 1 e decrescentes para expoentes entre 0 e 1. Também descreve como manter ou inverter a desigualdade dependendo do valor do expoente ao resolver uma inequação exponencial. Fornece exemplos resolvidos passo a passo para ilustrar o processo.
1. O documento discute recorrências lineares de primeira e segunda ordem, definindo-as e apresentando seus métodos de solução.
2. Inclui exemplos e exercícios sobre recorrências lineares de primeira ordem homogêneas e não homogêneas.
3. Também trata de recorrências lineares de segunda ordem homogêneas e não homogêneas, apresentando teoremas e métodos para resolvê-las.
O documento prova que o problema da parada é indecidível usando o método da diagonalização. Ele constrói uma máquina de Turing D que faz o oposto do que faria uma máquina H que supostamente decide o problema da aceitação. Quando D roda em si mesma, gera uma contradição, mostrando que o problema da parada não pode ser decidido.
O documento introduz conceitos básicos sobre análise e complexidade de algoritmos. Aborda o que é um algoritmo, tipos importantes de problemas, estratégias de projeto de algoritmos e como calcular a complexidade temporal e espacial de um algoritmo, analisando os casos de melhor, pior e médio caso. Também apresenta a notação assintótica O, Ω e θ para definir limites do crescimento de funções.
Programando para web com python - Introdução a PythonAlvaro Oliveira
O documento apresenta uma palestra sobre a linguagem de programação Python. Resume os principais pontos da seguinte forma:
1) Apresenta breve histórico da linguagem Python, criada em 1990 por Guido van Rossum com foco em usuários como físicos e engenheiros.
2) Discutem as principais características da linguagem como interpretação, tipagem dinâmica, controle de fluxo por indentação, orientação a objetos e biblioteca padrão rica.
3) Explicam porque Python é uma boa opção para
O documento resume e compara algoritmos de ordenação como bubble sort, selection sort, quick sort, merge sort e heap sort, descrevendo suas definições, complexidades assimptóticas e demonstrações passo a passo.
Este documento apresenta uma palestra sobre a linguagem de programação Python. As principais ideias apresentadas são:
1) Python é uma linguagem de uso geral amplamente utilizada em diversas áreas como internet, computação gráfica, desktop, operações de empresas e computação científica.
2) Existem diversas implementações de Python como CPython, Jython, IronPython e PyPy. CPython é a implementação principal escrita em C.
3) Python tem evoluído gradualmente ao longo dos anos com novas versões lançadas a cada alguns anos que trazem melhor
Paradigmas de Programação - Imperativo, Orientado a Objetos e FuncionalGustavo Coutinho
1. A aula aborda os três principais paradigmas de programação: imperativo, orientado a objetos e funcional.
2. O paradigma imperativo é baseado na arquitetura de von Neumann e tem no coração a idéia de atribuição. Suporta declaração de variáveis, estruturas de controle e abstração procedural.
3. O paradigma orientado a objetos trata programas como coleções de objetos que se comunicam, concentrando responsabilidades em classes. Conceitos como herança, polimorfismo e interfaces são abordados.
4
Este documento fornece informações sobre o curso de Trigonometria e Números Complexos oferecido pela Universidade do Sul de Santa Catarina (Unisul). Ele apresenta os créditos do curso, a ementa, os objetivos gerais e específicos, a carga horária e a equipe responsável pelo curso.
O documento resume os principais conceitos de geometria plana e sólidos geométricos, incluindo: 1) Fórmulas para calcular áreas de figuras planas como retângulos, quadrados e triângulos; 2) Definição e elementos de prismas retos; 3) Cálculo de áreas da base, área lateral e área total de prismas; 4) Definição e cálculo de volumes de prismas.
Estrutura de dados - Lista Circular Duplamente Encadeada e Matriz EsparsaLucas Sabadini
Seminário sobre Lista Circular Duplamente Encadeada e Matriz Esparsa apresentado na disciplina de Estrutura de Dados do curso de Engenharia da Computação, do Centro Universitário de Votuporanga - UNIFEV.
Este documento apresenta os conceitos fundamentais da Máquina de Turing, incluindo:
1) A Máquina de Turing é constituída por uma fita, unidade de controle e função de transição.
2) A função de transição define o novo estado, símbolo a ser gravado e sentido de movimento da cabeça da fita.
3) Uma Máquina de Turing pode ser usada para reconhecer linguagens, aceitando ou rejeitando palavras de entrada.
The document provides an introduction to programming in Python. It discusses how Python can be used for web development, desktop applications, data science, machine learning, and more. It also covers executing Python programs, reading keyboard input, decision making and loops in Python, standard data types like numbers, strings, lists, tuples and dictionaries. Additionally, it describes functions, opening and reading/writing files, regular expressions, and provides examples of SQLite database connections in Python projects.
Triângulo de Pascal - Exercícios resolvidostadilu3
1) O documento discute o Triângulo de Pascal, no qual os elementos são dispostos em forma triangular de acordo com fórmulas matemáticas.
2) Apresenta propriedades do triângulo de Pascal como termos equidistantes iguais e soma de termos consecutivos.
3) Exemplifica como usar o triângulo de Pascal para resolver problemas envolvendo a soma e posição de termos.
The document discusses the Knuth-Morris-Pratt string matching algorithm. It begins with an explanation of the string matching problem and an inefficient O(mn) solution. It then introduces the KMP algorithm which uses a prefix function to avoid repeating comparisons, solving the problem in linear O(n) time. The prefix function is computed by analyzing shifts of the pattern against itself. The KMP matcher uses the prefix function to efficiently search the string without backtracking.
Este documento fornece uma introdução abrangente sobre logaritmos, incluindo definições, propriedades, equações logarítmicas e funções logarítmicas. Explica que logaritmos representam expoentes e definem logaritmos em diferentes bases. Fornece exemplos detalhados e exercícios para fixar o conteúdo.
O documento discute os principais conceitos da Teoria da Computação, incluindo: (1) A Tese de Church afirma que qualquer função efetivamente computável pode ser computada por uma Máquina de Turing; (2) Problemas são decidíveis ou indecidíveis dependendo se podem ou não ser resolvidos por algoritmos; (3) A computabilidade está relacionada aos modelos formais que descrevem processos computacionais como Máquina de Turing e Cálculo Lambda.
Este documento describe los pasos para configurar una nueva red WiFi. Explica cómo conectar el router a la línea telefónica, configurar la contraseña de la red y compartir la conexión WiFi con otros dispositivos electrónicos como computadoras, teléfonos y tabletas.
O documento discute autômatos celulares, definindo-os como modelos matemáticos compostos por células em grade que evoluem segundo regras locais. Apresenta contribuições históricas como o Jogo da Vida de Conway e os trabalhos de Wolfram, e exemplos de aplicações como simulação de sistemas físicos, biológicos e musicais.
Este documento apresenta uma introdução à Teoria da Computação. Aborda tópicos como classes de problemas computacionais, linguagens formais e autômatos. Explica que a Teoria da Computação estuda o que pode e não pode ser computado, definindo formalmente linguagens e modelos de computação.
1. O documento apresenta a disciplina SCE0185 Teoria da Computação e Linguagens Formais ministrada por João Luís Garcia Rosa no Instituto de Ciências Matemáticas e de Computação da Universidade de São Paulo em São Carlos.
2. A disciplina aborda os objetivos, programa e método de avaliação da disciplina de Teoria da Computação e Linguagens Formais.
3. O documento fornece informações sobre a estrutura e conteúdo programático da disciplina ministrada por João Luís Garcia Rosa.
O documento apresenta os fundamentos teóricos da computação, abordando tópicos como autômatos, linguagens, gramáticas, computabilidade, complexidade, máquinas de Turing, decidibilidade, problemas NP-completos e computação quântica. Inclui também apêndices sobre conceitos matemáticos relevantes como conjuntos, grafos e espaços vetoriais.
Este documento discute linguagens regulares e autômatos finitos. Ele apresenta gramáticas e linguagens, autômatos de estados finitos e autômatos finitos com saída.
1. O documento discute linguagens livres de contexto e autômatos de pilha.
2. Apresenta as linguagens livres de contexto, o lema do bombeamento e formas normais para gramáticas livres de contexto.
3. Também descreve autômatos de pilha, a pilha como processador de linguagem e o teorema de equivalência entre autômatos de pilha e linguagens livres de contexto.
Este documento fornece um resumo dos principais conceitos de conjuntos e relações na Teoria da Computação. Aborda definições de conjuntos, operações entre conjuntos, relações binárias, funções e seus tipos.
1) O documento apresenta notas de aula sobre conjuntos numéricos e funções reais para o pré-cálculo diferencial e integral. 2) Aborda tópicos como noção de conjunto, operações com conjuntos, sistemas de coordenadas e relações e funções no plano cartesiano. 3) Tem o objetivo de auxiliar os estudantes na revisão de conteúdos básicos para o estudo do cálculo diferencial e integral.
1) O documento apresenta notas de aula sobre conjuntos numéricos e funções reais. 2) Aborda conceitos básicos de conjuntos como conjunto, subconjunto, conjunto das partes, operações com conjuntos e conjuntos numéricos. 3) Também discute sistemas de coordenadas, relações e funções no plano cartesiano.
1) O documento apresenta notas de aula sobre conjuntos numéricos e funções reais para o pré-cálculo diferencial e integral. 2) É fornecido um índice com os principais tópicos abordados, incluindo conjuntos numéricos, sistemas de coordenadas e relações e funções no plano cartesiano. 3) A professora pede que eventuais erros sejam comunicados e que o material possa ser usado por outros estudantes desde que citada a fonte.
O documento apresenta os seguintes conceitos fundamentais da Teoria dos Conjuntos:
1) Define o que é um conjunto e apresenta exemplos de representação de conjuntos utilizando chaves;
2) Apresenta os conceitos primitivos da teoria dos conjuntos como elemento, pertinência, inclusão e cardinalidade;
3) Discorre sobre tipos de conjuntos como finitos, infinitos, unitários e vazios.
Este documento fornece um resumo de conceitos básicos de matemática como operações numéricas e algébricas, frações, potenciação, expressões algébricas, polinômios, funções e gráficos de função. Inclui exemplos e exercícios para praticar cada tópico.
1) O documento apresenta conceitos básicos de matemática, incluindo conjuntos, números, operações com conjuntos e frações.
2) É definido o que são conjuntos, subconjuntos, união, interseção e diferença de conjuntos. Também são explicados os conjuntos numéricos fundamentais.
3) O texto descreve intervalos numéricos, partição de conjuntos e a fórmula para calcular o número de elementos da união de dois conjuntos. Por fim, é apresentada a definição de fração.
Conjuntos Autor Antonio Carlos Carneiro Barrosoguestbf5561
O documento resume conceitos fundamentais sobre operações com conjuntos, incluindo união, interseção, diferença, complementar e partição. Também aborda conjuntos numéricos como naturais, inteiros, racionais, irracionais e reais. Por fim, apresenta exercícios sobre o tema.
O documento apresenta os seguintes conceitos fundamentais da Teoria dos Conjuntos:
1) Define o que é um conjunto e apresenta exemplos de conjuntos;
2) Apresenta os conceitos primitivos da Teoria dos Conjuntos como elemento, pertinência, inclusão e cardinalidade;
3) Explica as representações gráficas dos conjuntos utilizando símbolos como chaves e vírgula.
O documento discute conceitos básicos de teoria de conjuntos, incluindo definições de conjunto, subconjunto, operações entre conjuntos como união e intersecção. Explica que um conjunto é uma coleção de objetos com uma propriedade em comum, e que um subconjunto é definido como um conjunto cujos elementos também pertencem a outro conjunto maior.
O documento discute conceitos básicos de teoria de conjuntos, incluindo definições de conjunto, subconjunto, operações entre conjuntos como união e intersecção. Explica que um conjunto é uma coleção de objetos com uma propriedade em comum, e que um subconjunto é definido como um conjunto cujos elementos também pertencem a outro conjunto maior.
Matemática Discreta - Parte IV teoria dos-conjuntosUlrich Schiel
Este documento apresenta os principais conceitos da teoria dos conjuntos, incluindo:
1) Definição de conjunto e notação;
2) Descrição de conjuntos através de listagem, indução ou propriedades características;
3) Conjunto vazio e paradoxo de Russel;
4) Relações entre conjuntos como inclusão, igualdade, interseção e união.
O documento apresenta notas de uma aula de Matemática Discreta sobre conjuntos e combinatória. A aula discute conjuntos, operações em conjuntos, relações entre conjuntos, contagem, princípios da multiplicação e adição, e exemplos ilustrativos desses conceitos.
O documento apresenta noções básicas de conjuntos, incluindo definições de conjunto, elementos, subconjuntos, conjunto universal, conjunto vazio e operações com conjuntos como união, interseção e diferença.
(1) O documento introduz os conceitos básicos de teoria de conjuntos, incluindo definição de conjunto, representação de conjuntos, relações de pertinência e inclusão, e operações básicas com conjuntos como união e interseção; (2) Apresenta os conjuntos numéricos naturais, inteiros e racionais e como surgem da necessidade de realizar operações matemáticas; (3) Explica as representações de números racionais como exatos e periódicos.
1) O documento apresenta um resumo teórico de matemática dividido em duas partes, abordando conceitos como conjuntos, funções, equações, sequências, números complexos, polinômios e relações.
2) Na primeira parte, são definidos conjuntos, operações com conjuntos, conjuntos numéricos, noções básicas de funções, classificações de funções, equações e sequências.
3) Na segunda parte, são explicados conceitos de matemática básica, números complexos, polinômios, equações algébricas e rel
O documento introduz os conceitos básicos de teoria dos conjuntos, incluindo definição de conjunto, elementos, pertinência, igualdade, subconjuntos, conjunto das partes e operações básicas como interseção, união e diferença.
1) O documento apresenta símbolos e conceitos matemáticos relacionados a conjuntos numéricos, incluindo números naturais, inteiros, racionais e reais.
2) São definidas propriedades básicas de operações como adição, subtração, multiplicação e divisão para números reais.
3) Exemplos ilustram regras como propriedades comutativa, associativa, elemento neutro e oposto, distribuição e cancelamento.
O documento introduz os conceitos básicos de teoria dos conjuntos, incluindo: (1) conjuntos são coleções de objetos definidos por uma propriedade comum; (2) notação para representar conjuntos como listas ou descrições; (3) relações entre elementos e conjuntos como pertencimento.
1. O documento descreve o conteúdo de uma disciplina de matemática básica, incluindo tópicos como conjuntos numéricos, álgebra elementar, funções, trigonometria e cálculo.
2. Os principais tópicos abordados são conjuntos numéricos, expressões algébricas, equações, funções do primeiro e segundo grau, exponenciais e logaritmos, e trigonometria.
3. A bibliografia inclui livros didáticos de matemática básica, cálculo e á
Semelhante a Conceitos Básicos da Teoria da Computação (20)
1. Teoria da Computação
Curso: Ciência da Computação
Turma: 6ª Série
Teoria da Computação
Aula 2
Conceitos Básicos da Teoria da Computação
2. Teoria da Computação
Teoria da Computação
Computação pode ser definida como a solução de
um problema ou, formalmente, o cálculo de uma
função, através de um algoritmo. A teoria da
computação, um subcampo da ciência da
computação e matemática, busca determinar
quais problemas podem ser computados em um
dado modelo de computação. Por milhares de
anos, a computação foi feita com lápis e papel, ou
giz e quadro, ou mentalmente, às vezes com a
ajuda de tabelas.
7. Teoria da Computação
Introdução
● Linguagem Natural
● Não tem padrão
● Linguagem Computacional
● São mais simples.
● São criadas artificialmente para representação.
● São padronizadas.
● Isso acontece para que os problemas possam ser
tratados e resolvidos de maneira satisfatória pelo
computador.
8. Teoria da Computação
Linguagem Computacional
● As maneiras sistemáticas de descrever uma
linguagem de programação são:
● um método que permite construir programas
sintaticamente corretos - geração (Gramática);
● um método que permite verificar se um programa
escrito está sintaticamente correto -
reconhecimento (Autômatos);
9. Teoria da Computação
Conjuntos, Relações e Linguagens
● Um conjunto é uma coleção de objetos.
● Por exemplo o conjunto L é composto de 4
letras. Escrevemos L={a,b,c,d}.
● Os componentes de um conjunto são
chamados de elementos ou membros do
conjunto.
● Por exemplo b é um elemento de L.
Escrevemos b є L.
● Podemos dizer também L contém b.
● Por outro lado z não pertence a L.
10. Teoria da Computação
Conjuntos
● Há também um conjunto sem elementos
denominado conjunto vazio
● Ele é representado por {} ou Ø
● Podemos indicar um conjunto como referência
de outro.
● Por exemplo seja I = {1,3,9} e G = {3,9}
● Podemos indicar G da seguinte maneira:
– G = {x:x є I tal que x > 2}
11. Teoria da Computação
Conjuntos
● Como podemos por exemplo representar os números
naturais ímpares?
● O = {x: є N e x não é divisível por 2}
● Dizemos então que O é um subconjunto de N.
● Um conjunto A é um subconjunto de B – A está
contido em B – se cada elemento de A também é um
elemento de B.
● Qualquer conjunto é um subconjunto dele próprio.
● O conjunto vazio é um subconjunto de qualquer
conjunto.
● Como podemos provar então que dois conjuntos são
iguais?
13. Teoria da Computação
Operações entre Conjuntos
● União
● A U B = {x : x є A ou x є B}
● Exemplo {1,3,9} U {3, 5, 6} = {1,3,5,7,9}
● Intersecção
● A ∩ B = {x : x є A e x є B}
● Exemplo {1,3,9} ∩ {3,5,7} = {3}
● Diferença
● A – B = {x : x є A e x não pertence a B}
● {1,3,9} – {3,5,7} = {1,9}
14. Teoria da Computação
Conceitos Básicos
Propriedades de conjuntos
● A U A = A ou A ∩ A = A → Idempotência.
● A U B = B U A ou A ∩ B = B ∩ A → Comutatividade
● (A U B) U C = A U (B U C) ou (A ∩ B) ∩ C = A ∩ (B ∩ C) →
Associatividade
● (A U B) ∩ C = (A ∩ C) U (B ∩ C) ou (A ∩ B) U C = (A U C) ∩ (B U C)
→ Distributividade
● (A U B) ∩ A = A ou (A ∩ B) U A = A → Absorção
● A – (B U C) = (A – B) ∩ (A – C) ou A – (B ∩ C) = (A – B) U (A – C) →
Leis de Morgan
16. Teoria da Computação
Conjuntos
● Dois conjuntos são disjuntos se não tiverem nenhum
elemento em comum.
● Temos também US={x : x є P para algum conjunto P є
S}
● Exemplo: S = {{a,b}, {b,c}, {c,d}}, então US = {a,b,c,d}
● A coleção de todos os subconjuntos de A é ela própria
um conjunto chamado conjunto-potência de A, e
denominado 2A
.
● Por exemplo os subconjuntos de {c,d} são:
– O próprio conjunto {c,d}
– E os conjuntos unitários {c} e {d}
– E o conjunto vazio Ø
17. Teoria da Computação
Conjuntos
● Uma partição de um conjunto não vazio A é qualquer
subconjunto ∏ de 2A
, tal que Ø não seja elemento de
∏, e que cada elemento de A pertença a um e
somente um dos conjuntos contidos em ∏. Em outras
palavras, ∏ é uma partição de A, se ∏ for um conjunto
de subconjuntos de A, tal que:
1.Cada elemento de ∏ é não vazio;
2.Membros distintos de ∏ são disjuntos;
3.U∏ = A;
● Por exemplo, {{a,b},{c},{d}} é uma partição de {a,b,c,d},
mas {{b,c,{c,d}} não o é.
18. Teoria da Computação
Relações e Funções
● Par ordenado: A ordem dentro do conjunto é
importante. Formado por dois elementos.
● Exemplo: {a,b} ≠ {b,a} quando estamos falando de
par ordenado.
● O produto cartesiano de A x B é um conjunto de
pares ordenados com a є A e b є B:
● {1,3,9} x {b,c,d} = {(1,b), (1,c), (1,d) …}
● Esse produto cartesiano também é uma
relação binária.
19. Teoria da Computação
Vamos definir juntos então
● O que seria uma Tripla?
● E uma Quádrupla?
● E uma Quíntupla?
● E uma Tupla?
●
● Se A1
,...,An
são conjuntos quaisquer, então o produto cartesiano
múltiplo de nível n A1
x … x An
é o conjunto de todas as n-tuplas
ordenadas (a1
, ...,an
), com ai
є Ai
, para cada i = 1,...,n
● Temos também como notação A x … x A = An
● Por exemplo N2
é o conjunto de todos os possíveis pares
ordenados dos números naturais.
21. Teoria da Computação
Função
● É uma associação de cada objeto de um tipo
com um único objeto de outro tipo.
● Pessoas com seu pai.
● Cães com seus donos.
● Formalmente: Uma função de um conjunto A
para um conjunto B é uma relação binária R
sobre A e B com a seguinte propriedade
especial: para cada elemento a є A, há
exatamente um par ordenado em R cuja
primeira componente é a.
22. Teoria da Computação
Função
● Exemplo: seja
● R1 = {(x,y) : x є C, u є S e x é uma cidade do
estado y}
● R2 = {(x,y) : x є S, y є C e y é uma cidade do
estado x}
● R1 é uma função mas R2 não é uma função.
● Cada cidade está em um e somente um
estado.
● No segundo caso um estado pode conter várias
cidades.
23. Teoria da Computação
Funções
● f:A → B
● Dizemos que A é o domínio da função.
● Se a é algum elemento de A escrevemos f(a)
para designar o elemento de B, tal que (a,b) є f.
● O objeto f(a) é conhecido como imagem de a
sobre f.
● O contra-domínio de f é a imagem do seu
domínio.
● Exemplo: função soma m e n
● f((m,n)) = m + n
24. Teoria da Computação
Funções
● Função injetora: Uma função f: A → B é dita injetora se, para quaisquer dois
elementos distintos a, a' є A, f(a) ≠ f(a').
● Exemplo: Se C for o conjunto das cidades do Brasil, S é o conjunto de estados e se a
função g: S → C for especificada como g(s) = a capital do estado S para cada s є S; então
g é injetora, uma vez que nenhum par de estados apresenta a mesma capital.
● Função sobrejetora: Uma função f: A → B é dita sobrejetora se cada elemento de B
for a imagem, sob f, de algum dos elementos de A. A função g acima não é
sobrejetora mas a função R1 é, já que cada estado contém, pelo menos, uma
cidade.
● Bijeção: Um mapeamento f: A → B é dita uma bijeção entre A e B, se ele for
simultaneamente injetor e sobrejetor.
● Por exemplo, se Co
é o conjunto das cidades que são capitais de estado, então a
função g: S → Co
, acima especificada, g(s) = a capital do estado s é uma
bijeção entre S e Co
.
● A inversa de uma relação binária R está contido A x B é denotada R-1
está contido B
x A, e é simplesmente a relação {(b,a): (a,b) є R). Por exemplo, a relação R2 definida
anteriormente é a inversa de R1.
● Uma função f: A → B também pode não ter uma inversa caso haja algum elemento b
є B, tal que, f(a) ≠ b para todo a є A.. No entanto se f for uma bijeção nenhuma
dessas situações podem ocorrer.
25. Teoria da Computação
Tipos Especiais de Relações Binárias
● Uma relação binária pode ser representada por
um grafo orientado.
● Seja A um conjunto e R é um subconjunto de A
x A, então cada elemento de A é representado
por um pequeno círculo – denominado vértice
do grafo orientado.
● Uma seta apontando de a para b, ocorre no
grafo se, e somente se, (a,b) є R.
● Essas setas são denominados arcos do grafo
orientado ou também arestas.
26. Teoria da Computação
Grafo Orientado
● Exemplo: Seja R = {(a,b),(b,a),(a,d),(d,c),(c,c),(c,a)} é
representado pelo grafo da figura abaixo.
●
●
●
●
●
● Grafos orientados e não orientados são muito úteis
para representar sistemas complexos como tráfego de
redes de comunicação, estruturas e processos
computacionais.
a
cd
b
27. Teoria da Computação
Grafos Orientados
● Relação reflexiva: se (a,a) є R para cada a є A.
Os grafos orientados reflexivos têm em cada
vértice um arco apontando para si mesmo.
● Uma relação R subconjunto de A x A é
simétrica se (b,a) є R, sempre que (a,b) є R.
● Dê um exemplo de uma relação simétrica e
outro de uma relação reflexiva.
28. Teoria da Computação
Relação Simétrica e Relação Reflexiva
● Simétrica: Conjunto de 6 amigos a, b, c, d, e, f.
Se a é amigo de b, b é amigo de a e assim
sucessivamente.
● Reflexiva: Conjunto dos números naturais
menores ou iguais a ele mesmo.
29. Teoria da Computação
Grafos
● Uma relação simétrica que não apresenta
pares da forma (a,a) costuma ser representada
na forma de grafo não orientado, ou
simplesmente, grafo.
a
cd
b
30. Teoria da Computação
Grafos
Uma relação R é dita anti-simétrica quando, sempre que (a,b)
є R, e a e b forem distintos, então, (b,a) não pertence R.
● Por exemplo seja P o conjunto de todas as pessoas.
Então {(a,b): a,b є P e a é o pai de b} é anti-simétrica.
Uma relação pode não ser simétrica, nem anti-simétrica; por
exemplo a relação {(a,b): a,b є P e a gosta de b}.
Uma relação binária é dita transitiva quando sempre que
(a,b) є R e (b,c) є R, então (a,c) є R. Por exemplo a relação
{(a,b): a,b є P e a é ancestral de b} é transitiva, pois, se a é
um ancestral de b, e b é um ancestral de de c, então a é um
ancestral de c.
Como representamos em um grafo a transitividade. Vamos
pensar em termos dos ascestrais....
31. Teoria da Computação
Exemplo de Grafo de uma Relação Transitiva
a
cb
d
● Sempre que houver um conjunto de setas que
leve a até z haverá uma seta direta ligando a
até z.
32. Teoria da Computação
Tipos Especiais de Relações Binárias
● Uma relação que seja reflexiva, simétrica, e
transitiva é denominada relação de
equivalência.
● A representação de uma relação de
equivalência por meio de um grafo não
orientado compõe-se de um certo conjunto de
clusters.
● Em cada um desses clusters , cada par de
vértices é conectado por uma linha.
33. Teoria da Computação
Conjuntos Finito e Infinitos
● Quando trabalhamos com conjuntos finitos algumas afirmações
sobre os conjuntos não exigem demonstração pois são óbvias.
● Por exemplo se A é subconjunto de B o número de elementos de A é
menor ou igual ao número de elementos de B.
● Entretanto quando começamos a trabalhar com conjuntos infinitos
essas afirmações não são tão óbvias.
● Será que existem mais múltiplos de 17 {0, 17, 34, 51, …} do que
quadrados perfeitos { 0, 1, 4, 9, 16, ...}
● Dizemos que dois conjuntos, A e B, são equinumerosos se houver
uma função bijetora f: A → B.
● Lembre-se que se há uma bijeção f: A → B então há uma bijeção f-1
:
B → A: logo, a equinumerosidade é uma relação simétrica.
● Por exemplo, {8, vermelho, {Ø,b}} e {1,2,3} são equinumerosos;
suponha que f(8)=1, f(vermelho)=2, f({ Ø,b})=3.
34. Teoria da Computação
Conjuntos Finito e Infinitos
● No caso geral dizemos que um conjunto é finito se, intuitivamente ele
for equinumeroso com {1,2,3,...,n} para algum número natural N.
● Dizemos que o número de elementos de um conjunto finito é a sua
cardinalidade |A|.
● Já um conjunto é dito infinito quando ele não for finito.
● Por exemplo o conjunto dos números naturais N é infinito.
35. Teoria da Computação
Técnicas de Demonstração
● Indução Matemática.
● Princípio das Casas de Pombo.
● Diagonalização.
36. Teoria da Computação
Princípio da Indução Matemática
Seja A um conjunto de números naturais tal que:
1. 0 є A, e,
2. Para cada número natural n, se {0,1,...,n} é um subconjunto de A, então
n+1 є A
Neste caso A = N.
Em termos menos formais, o princípio da indução matemática garante
que qualquer conjunto de números naturais que contenha o zero e que
goze da propriedade de conter o número n+1 sempre que contiver todos
os números de 0 até n, deve ser, o próprio conjunto de todos os
números naturais.
A justificativa desse princípio deve ser intuitivamente clara; todo número
natural deve ser encontrado em A, já que ele pode ser atingido, a partir
de zero, através de uma sucessão finita de passos, que adiciona ao
conjunto um elemento de cada vez.
37. Teoria da Computação
Princípio da Indução Matemática
Outro argumento em favor da mesma ideia explora a contradição:
suponhamos que (1) e (2) são válidas, mas que A ≠ N. Nesse caso,
algum número natural de N terá sido omitido em A.. Em particular, seja n
o primeiro número de N omitido em A.. Então n, não pode ser zero, uma
vez que 0 є A por (1); e uma vez que {0,1,...,n-1) é um subconjunto de A
pela escolha de n, então n є A por (2), o que é uma contradição.
● Como utilizamos a indução:
● Como base da indução, demonstramos que 0 є A, isto é, que P é
verdadeiro para 0.
● Na hipótese da indução é pressuposto que, para algum n>=0 fixo,
mas arbitrário, a propriedade se aplica para número natural 0, 1,
2, ...,n.
● No passo indutivo, demonstramos, utilizando a hipótese da
indução, que P é verdadeiro para n+1. Pelo princípio da indução,
A será, então, igual a N, ou seja, a propriedade P se aplica a
todos os números naturais.
38. Teoria da Computação
Indução Matemática
● Exemplo: Demonstraremos que, para qualquer
n>=0, 1+2+...+n=(n2
+n)/2
● Base da indução. Seja n=0. Então, a somatória, do
lado esquerdo da igualdade, é nula, pela ausência
de elementos a somar. A expressão à direita
também é 0.
● Hipótese da indução. Admitamos como verdade
que, para algum n>=0, 1+2+...+m=(m2
+m)/2
sempre que m<=n.
● Passo indutivo 1+2+...+n+(n+1) = (1+2+...+n)+(n+1)
= (n2
+n)/2 + (n + 1) (Pela hipótese da indução) =
(n2
+ n + 2n + 2)/2 = [(n+1)2
+ (n+1)]/2 CQD.
39. Teoria da Computação
O Princípio das Casas de Pombos
● Se A e B são conjuntos finitos, e |A| > |B|, então
não pode haver nenhuma função injetora de A
para B.
● Em outras palavras, se tentarmos fazer
corresponder os elementos de A (os pombos)
aos elementos de B (as casas de pombos),
cedo ou tarde teremos de colocar mais de um
pombo em uma mesma casa.
Se uma função é so crescente ou só decrescente, valores diferentes de x possuem
imagens diferentes. Quando isso ocorre dizemos que a função é injetora.
Em outras palavras, uma função é dita injetora se dois elementos distintos de A
correspondem sempre a duas imagens distintas em B.
40. Teoria da Computação
Prova do Princípio das Casas de Pombos
● Suponhamos que |b| = 0, isto é, B = Ø. Então não pode haver
nenhuma função f: A → B de qualquer natureza e, portanto, não pode
haver nenhuma função injetora de A para B.
● Hipótese da indução. Suponha que f não seja injetora, garantindo-se
que f:A → B, |A| > |B|, |B| <= n com n>=0.
● Passo indutivo. Suponhamos que f: A → B e |A| > |B| = n+1.
Escolhamos algum a є A (uma vez que |A| > |B| = n+1 >=1, A é não
vazio e portanto tal escolha é possível. Se houver outro elemento de
A, digamos a', tal que f(a) = f(a'), então, obviamente f não será uma
função injetora e teremos concluída a prova.
● Suponhamos, então, que a seja o único elemento mapeado por f
para o valor f(a) em B. Consideraremos, agora, os conjuntos A -{a}, B
– {f(a)} e a função g de A – {a} para B – {f(a)} que concorda com f em
todos os elementos, de A -{a}. Agora a hipótese indutiva se aplica,
porque B – {f(a)} tem n elementos e |A-{a}| = |A| - 1 > |B| - 1 = |B –
{f(A)}|. Portanto, há em |A| - {a} dois elementos distintos que são
mapeados por g (e portanto por f) para o mesmo elemento de B-{b}
e, assim, f não poderia ser injetora.
41. Teoria da Computação
Teorema
● Seja R uma relação binária em um conjunto finito A se seja a,b
є A.. Se houver algum caminho de a para b em R, então,
existirá em R um caminho cujo comprimento seja no máximo
igual a |A|, de a para b.
● Prova: Suponhamos que (a1
, a2
,...,an
) seja o caminho mais
curto de a1
= a para an
= b, isto é, o caminho com o menor
comprimento possível entre esses dois elementos e suponha
que n > |A|. Pelo princípio das casas de pombos, deve haver
algum elemento de A visitado mais do que uma vez neste
caminho. Seja, ai
=aj
para 1 <= i < j <+ n. Nesta hipótese,
entretanto, (a1
,a2
,...,ai
,aj+1
,...,an
) será um caminho mais curto de
a para b, contradizendo nosso pressuposto de que (a1
, a2
,...,an
)
é o caminho mais curto de a para b.
42. Teoria da Computação
Princípio da Diagonalização
● Muito utilizado para demonstrar alguns fatos da
teoria da computação.
● Seja R uma relação binária sobre um conjunto
A Seja D, o conjunto diagonal para R, dado por
{a:a є A e {a,a} não pertence a R}. Para cada a
є A, seja Ra
= {b: b є A e (a,b) є R}. Nessas
condições, D será distinto de cada Ra
.
43. Teoria da Computação
O Princípio da Diagonalização
Seja A um conjunto finito, então R pode ser representado
como uma matriz quadrada; as linhas e as colunas são
rotulados com os elementos de A, e há um x na célula da
matriz cunha linha esteja rotulado com a, e cuja coluna
esteja rotulada com b, nos casos em que (a,b) є R. O
conjunto diagonal D corresponde ao complemento da
sequência de células da diagonal principal. Nessa
sequência, as células com x da diagonal principal são
substituídas por células vazias e vice versa. Os
conjuntos Ra
correspondem às diversas linhas da matriz.
O princípio da diagonalização pode, em vista disso, ser
reenunciado: “o complemento da diagonal é diferente de
cada uma das linhas da matriz a que corresponde.
44. Teoria da Computação
Exemplo: O Princípio da Diagonalização
Considere a relação R = {(a,b),(a,d),(b,b),(b,c),(c,c),
(d,b),(d,c),(d,e),(d,f),(e,e),(e,f),(f,a),(f,c),(f,d),(f,e)};
observe que Ra
= {b,d},Rb
={b,c}, Rc
={c}, Rd
={b,c,e,f},
Re
={a,e} e Rf
={c,d,e}.
Levando tudo isso em conta R pode ser
representada de acordo com a seguinte matriz ao
lado.
A sequencia de células da diagonal é
Seu complemento é
O qual corresponde ao conjunto diagonal D ={a,d,f}.
De fato, D é diferente de cada uma das linhas da
matriz; pois D, por construção, difere da primeira
linha ao menos na primeira posição; da segunda ao
menos na segunda posição, e assim por diante.
O princípio da diagonalização também se aplica a
conjuntos infinitos pela mesma razão.
a b c d e f
a x x
b x x
c x
d x x x x
e x x
f x x x x
x x x
x x x
45. Teoria da Computação
Exercícios para Entregar
1. Descreva o conjunto dos números que satisfazem a seguinte condição: G = {x : x є I e x > 2}
2. Se A é um subconjunto de B e B é um subconjunto de A o que podemos afirmar sobre esses dois conjuntos?
3. Determine quais das afirmações abaixo são verdadeiras e quais são falsas:
a) Ø está contido Ø
b) Ø є Ø
c) Ø є {Ø}
d) Ø está contido em {Ø}
e) {a,b} є {a,b,c,{a,b}}
f) {a,b} está contido em {a,b,{a,b}}
g) {a,b,{a,b}} – {a,b} = {a,b}
4. O que são os conjuntos abaixo? Denote-os utilizando somente chaves, vírgulas e numerais.
a) ({1,3,5} U {3,1}) ∩ {3,5,7}
b) U {{3}, {3,5}, ∩ {{5,7},{7,9}}}
5. Prove cada uma das seguintes igualdades
a) A U (B ∩ C) = (A U B) ∩ (A U C)
b) A ∩ (B U C) = (A ∩ B) U (A ∩ C)
6. Escreva explicitamente cada uma das seguinte expressões.
1. {1} x {1,2} x {1,2,3}
2. Ø x {1,2}
7. Escreva os elementos do conjunto da função f: A → B tal que f(a) = a2
sendo que A={1,2,3,4,5,6)
46. Teoria da Computação
Exercícios para Entregar
8. Suponha que R = {(a,c),(c,e),(e,e),(e,b),(d,b),(d,d)}. Desenhe os grafos orientados representando cada uma das seguintes relações:
8. R
9. R-1
10. R U R-1
11. R ∩ R-1
9. Desenhe dois grafos orientados representando relações dos seguintes tipos:
8. Reflexiva, transitiva e anti-simétrica.
9. Reflexiva, transitiva e nem simétrica nem anti-simétrica.
10. Demonstre por indução que:
1.2.3 + 2.3.4+3.4.5+...+n.(n+1)(n+2) = [n.(n+1).(n+2).(n+3)]/4.