Complexidade computacional
|
|
|
- Bárbara Castilhos Angelim
- 8 Há anos
- Visualizações:
Transcrição
1 Complexidade computacional CLRS sec 34.1 e 34.2 Algoritmos p. 1
2 Algumas questões Por que alguns problemas parecem ser (computacionalmente) mais difíceis do que outros? Algoritmos p. 2
3 Algumas questões Por que alguns problemas parecem ser (computacionalmente) mais difíceis do que outros? Como podemos medir ou comprovar este diferente e aparentemente intrínseco grau de dificuldade? Algoritmos p. 2
4 Algumas questões Por que alguns problemas parecem ser (computacionalmente) mais difíceis do que outros? Como podemos medir ou comprovar este diferente e aparentemente intrínseco grau de dificuldade? Quais problemas podem ser resolvidos por um algoritmo? Quais não podem? Por quê? Algoritmos p. 2
5 Algumas questões Por que alguns problemas parecem ser (computacionalmente) mais difíceis do que outros? Como podemos medir ou comprovar este diferente e aparentemente intrínseco grau de dificuldade? Quais problemas podem ser resolvidos por um algoritmo? Quais não podem? Por quê? Quais problemas podem ser resolvidos por um algoritmo eficiente? Quais não podem? Por quê? Algoritmos p. 2
6 Problema abstrato Problema abstrato de decisão: conjunto I de instâncias e função f : I {SIM, NÃO} Algoritmos p. 3
7 Problema abstrato Problema abstrato de decisão: conjunto I de instâncias e função f : I {SIM, NÃO} Exemplo: Problema circuito hamiltoniano. I: conjunto de todos os grafos. Para todo G em I, { f(g) = SIM NÃO se G tem um circuito hamiltoniano caso contrário Algoritmos p. 3
8 Problema abstrato Problema abstrato de decisão: conjunto I de instâncias e função f : I {SIM, NÃO} Exemplo: Problema circuito hamiltoniano. I: conjunto de todos os grafos. Para todo G em I, { f(g) = SIM NÃO se G tem um circuito hamiltoniano caso contrário O valor de f(x) é a resposta do problema para a instância X em I. Algoritmos p. 3
9 Problema concreto Para um problema abstrato ser resolvido, instâncias devem estar convenientemente codificadas. Algoritmos p. 4
10 Problema concreto Para um problema abstrato ser resolvido, instâncias devem estar convenientemente codificadas. Problema concreto de decisão: problema abstrato de decisão em que as instâncias estão codificadas convenientemente em um alfabeto finito Σ. Algoritmos p. 4
11 Problema concreto Para um problema abstrato ser resolvido, instâncias devem estar convenientemente codificadas. Problema concreto de decisão: problema abstrato de decisão em que as instâncias estão codificadas convenientemente em um alfabeto finito Σ. Exemplo: Problema circuito hamiltoniano. G dado pelas suas listas de adjacências. Algoritmos p. 4
12 Problema concreto Para um problema abstrato ser resolvido, instâncias devem estar convenientemente codificadas. Problema concreto de decisão: problema abstrato de decisão em que as instâncias estão codificadas convenientemente em um alfabeto finito Σ. Exemplo: Problema circuito hamiltoniano. G dado pelas suas listas de adjacências. Considere, sem perda de generalidade, que Σ = {0,1}. Algoritmos p. 4
13 Problema concreto Para um problema abstrato ser resolvido, instâncias devem estar convenientemente codificadas. Problema concreto de decisão: problema abstrato de decisão em que as instâncias estão codificadas convenientemente em um alfabeto finito Σ. Exemplo: Problema circuito hamiltoniano. G dado pelas suas listas de adjacências. Considere, sem perda de generalidade, que Σ = {0,1}. Daqui para frente, todos os problemas são concretos. Algoritmos p. 4
14 Modelo de computação Algoritmo: programa escrito em uma linguagem como C ou Pascal. Algoritmos p. 5
15 Modelo de computação Algoritmo: programa escrito em uma linguagem como C ou Pascal. Custo de uma operação: proporcional ao número de bits dos operandos Custo de um acesso à memória: proporcional ao número de bits dos operandos. Algoritmos p. 5
16 Modelo de computação Algoritmo: programa escrito em uma linguagem como C ou Pascal. Custo de uma operação: proporcional ao número de bits dos operandos Custo de um acesso à memória: proporcional ao número de bits dos operandos. (Isto é polinomialmente equivalente à máquina de Turing.) Algoritmos p. 5
17 Modelo de computação Algoritmo: programa escrito em uma linguagem como C ou Pascal. Custo de uma operação: proporcional ao número de bits dos operandos Custo de um acesso à memória: proporcional ao número de bits dos operandos. (Isto é polinomialmente equivalente à máquina de Turing.) Um algoritmo resolve ou decide um problema de decisão (I,f) se, para cada X em I, o algoritmo encontra a resposta para X, isto é, o algoritmo calcula f(x). Algoritmos p. 5
18 Problemas indecidíveis Existem problemas para os quais não existe um algoritmo: são os ditos problemas indecidíveis. Algoritmos p. 6
19 Problemas indecidíveis Existem problemas para os quais não existe um algoritmo: são os ditos problemas indecidíveis. Exemplo: Problema da parada dado um programa e um arquivo de entrada para ele, decidir se tal programa pára ou não decidir quando executado com este arquivo de entrada. Algoritmos p. 6
20 Problemas indecidíveis Existem problemas para os quais não existe um algoritmo: são os ditos problemas indecidíveis. Exemplo: Problema da parada dado um programa e um arquivo de entrada para ele, decidir se tal programa pára ou não decidir quando executado com este arquivo de entrada. Não existe algoritmo que resolva o problema da parada. Algoritmos p. 6
21 A classe P Um algoritmo resolve (ou decide) um problema de decisão (I,f) em tempo O(T(n)) se, para cada n em N e cada X em I com X = n, o algoritmo encontra a resposta f(x) para X em tempo O(T(n)). Algoritmos p. 7
22 A classe P Um algoritmo resolve (ou decide) um problema de decisão (I,f) em tempo O(T(n)) se, para cada n em N e cada X em I com X = n, o algoritmo encontra a resposta f(x) para X em tempo O(T(n)). Um problema de decisão é solúvel em tempo polinomial se existe algum k para o qual existe um algoritmo que resolve o problema em tempo O(n k ). Algoritmos p. 7
23 A classe P Um algoritmo resolve (ou decide) um problema de decisão (I,f) em tempo O(T(n)) se, para cada n em N e cada X em I com X = n, o algoritmo encontra a resposta f(x) para X em tempo O(T(n)). Um problema de decisão é solúvel em tempo polinomial se existe algum k para o qual existe um algoritmo que resolve o problema em tempo O(n k ). Tais problemas são ditos tratáveis. Algoritmos p. 7
24 A classe P Um algoritmo resolve (ou decide) um problema de decisão (I,f) em tempo O(T(n)) se, para cada n em N e cada X em I com X = n, o algoritmo encontra a resposta f(x) para X em tempo O(T(n)). Um problema de decisão é solúvel em tempo polinomial se existe algum k para o qual existe um algoritmo que resolve o problema em tempo O(n k ). Tais problemas são ditos tratáveis. Classe de complexidade P: conjunto dos problemas de decisão tratáveis (isto é, que são solúveis em tempo polinomial) Algoritmos p. 7
25 A classe NP Considere o problema circuito hamiltoniano. Algoritmos p. 8
26 A classe NP Considere o problema circuito hamiltoniano. Se a resposta para uma instância G for SIM, então existe um circuito hamiltoniano C no grafo. Algoritmos p. 8
27 A classe NP Considere o problema circuito hamiltoniano. Se a resposta para uma instância G for SIM, então existe um circuito hamiltoniano C no grafo. Dados G e C, é possível verificar em tempo polinomial em G se C é de fato um circuito hamiltoniano em G ou não. Algoritmos p. 8
28 A classe NP Considere o problema circuito hamiltoniano. Se a resposta para uma instância G for SIM, então existe um circuito hamiltoniano C no grafo. Dados G e C, é possível verificar em tempo polinomial em G se C é de fato um circuito hamiltoniano em G ou não. Ou seja, temos como certificar eficientemente que a resposta SIM está correta. Algoritmos p. 8
29 A classe NP Considere o problema circuito hamiltoniano. Se a resposta para uma instância G for SIM, então existe um circuito hamiltoniano C no grafo. Dados G e C, é possível verificar em tempo polinomial em G se C é de fato um circuito hamiltoniano em G ou não. Ou seja, temos como certificar eficientemente que a resposta SIM está correta. Conseguimos certificar eficientemente a resposta NÃO? Surpreendentemente, não se conhece nenhum método de certificação eficiente para a resposta NÃO no caso do problema circuito hamiltoniano. Algoritmos p. 8
30 A classe NP Classe de complexidade NP: problemas para os quais a resposta SIM pode ser certificada e verificada em tempo polinomial. Algoritmos p. 9
31 A classe NP Classe de complexidade NP: problemas para os quais a resposta SIM pode ser certificada e verificada em tempo polinomial. Mais precisamente, um problema de decisão está em NP se existe um algoritmo A tal que 1. para qualquer instância X do problema com resposta SIM, existe um Y em Σ tal que A(X,Y) devolve SIM; 2. para qualquer instância X do problema com resposta NÃO, para todo Y em Σ, A(X,Y) devolve NÃO; 3. A consome tempo polinomial em X. Algoritmos p. 9
32 A classe NP Classe de complexidade NP: problemas para os quais a resposta SIM pode ser certificada e verificada em tempo polinomial. Mais precisamente, um problema de decisão está em NP se existe um algoritmo A tal que 1. para qualquer instância X do problema com resposta SIM, existe um Y em Σ tal que A(X,Y) devolve SIM; 2. para qualquer instância X do problema com resposta NÃO, para todo Y em Σ, A(X,Y) devolve NÃO; 3. A consome tempo polinomial em X. Y é chamado de certificado para SIM da instância X. Algoritmos p. 9
33 A classe conp Complemento de um problema de decisão Q: problema de decisão obtido invertendo-se o SIM e o NÃO na resposta ao problema Q. Algoritmos p. 10
34 A classe conp Complemento de um problema de decisão Q: problema de decisão obtido invertendo-se o SIM e o NÃO na resposta ao problema Q. Exemplo: Problema não-hamiltoniano Resposta é SIM sempre que o grafo não tem um circuito hamiltoniano e NÃO caso contrário. Algoritmos p. 10
35 A classe conp Complemento de um problema de decisão Q: problema de decisão obtido invertendo-se o SIM e o NÃO na resposta ao problema Q. Exemplo: Problema não-hamiltoniano Resposta é SIM sempre que o grafo não tem um circuito hamiltoniano e NÃO caso contrário. Classe de complexidade conp: problemas de decisão que são complemento de problemas de decisão em NP. Algoritmos p. 10
36 A classe conp Complemento de um problema de decisão Q: problema de decisão obtido invertendo-se o SIM e o NÃO na resposta ao problema Q. Exemplo: Problema não-hamiltoniano Resposta é SIM sempre que o grafo não tem um circuito hamiltoniano e NÃO caso contrário. Classe de complexidade conp: problemas de decisão que são complemento de problemas de decisão em NP. Problemas para os quais existe um certificado (curto) para a resposta NÃO. Algoritmos p. 10
37 P NP conp O problema circuito hamiltoniano é um exemplo de problema em NP enquanto que o problema não-hamiltoniano é um exemplo de problema em conp. Algoritmos p. 11
38 P NP conp O problema circuito hamiltoniano é um exemplo de problema em NP enquanto que o problema não-hamiltoniano é um exemplo de problema em conp. Note ainda que P NP conp. Algoritmos p. 11
39 P NP conp O problema circuito hamiltoniano é um exemplo de problema em NP enquanto que o problema não-hamiltoniano é um exemplo de problema em conp. Note ainda que P NP conp. NP=coNP P NP P conp P=NP=coNP NP P conp Algoritmos p. 11
Complexidade de Algoritmos. Edson Prestes
Edson Prestes O limite superior de complexidade de um problema refere-se ao melhor algoritmo que o resolve. nlog 2 n é um limite superior para o problema de classificação. O limite inferior de um problema
PCC104 - Projeto e Análise de Algoritmos
PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 5 de dezembro de 2017 Marco Antonio
Complexidade computacional
Complexidade computacional Marina Andretta ICMC-USP 15 de setembro de 2015 Baseado no livro Uma introdução sucinta a Algoritmos de Aproximação, de M. H. Carvalho, M. R. Cerioli, R. Dahab, P. Feofiloff,
Teoria da Computação. Computabilidade
Cristiano Lehrer Introdução O objetivo do estudo da solucionabilidade de problemas é investigar a existência ou não de algoritmos que solucionem determinada classe de problemas. Ou seja, investigar os
MAC5722 Complexidade Computacional
MAC5722 Complexidade Computacional Complexidade Computacional p. 1 MAC5722 Complexidade Computacional Qual é o seu problema? http://qwiki.stanford.edu/wiki/complexity_zoo Complexidade Computacional p.
Teoria da Computação. Complexidade computacional classes de problemas
Teoria da Computação Complexidade computacional classes de problemas 1 Universo de problemas Problemas indecidíveis ou não-computáveis Não admitem algoritmos Problemas intratáveis Não admitem algoritmos
Teoria da Computação. Computabilidade e complexidade computacional
Teoria da Computação Computabilidade e complexidade computacional 1 Computabilidade e Complexidade Computabilidade: verifica a existência de algoritmos que resolva uma classe de linguagens trata a possibilidade
INTRATABILIDADE e NP-COMPLETUDE
INTRATABILIDADE e NP-COMPLETUDE Sandro Santos Andrade Doutorado Multiinstitucional em Ciência da Computação UFBA/UNIFACS/UEFS Junho/2008 Grafos e Análise de Algoritmos Introdução Para alguns problemas
Teoria da Complexidade Computacional
Teoria da Complexidade Computacional Letícia Rodrigues Bueno UFABC Motivação Motivação I can t find an efficient algorithm, I guess I m just too dumb. Fonte: GAREY, M. R. e JOHNSON, D. S. Computers and
Teoria da Complexidade Computacional
Teoria da Complexidade Computacional 25 de novembro de 2011 Enquanto a teoria de análise de algoritmos estuda a análise de complexidade de algoritmos, a teoria da complexidade estuda a classificação de
Marcos Castilho. DInf/UFPR. 16 de maio de 2019
16 de maio de 2019 Motivação Quais são os limites da computação? O que é um Problema de decisão? Um problema de decisão é um conjunto de perguntas, cada uma das quais tem um SIM ou um NÃO como resposta.
Complexidade de Algoritmos. Edson Prestes
Edson Prestes A classe P consiste nos problemas que podem ser resolvidos em tempo Polinomial (Problemas tratáveis) A classe NP consiste nos problemas que podem ser verificados em tempo polinomial (Problemas
Aula 10: Tratabilidade
Teoria da Computação DAINF-UTFPR Aula 10: Tratabilidade Prof. Ricardo Dutra da Silva Na aula anterior discutimos problemas que podem e que não podem ser computados. Nesta aula vamos considerar apenas problemas
Teoria da Computação. Computabilidade e complexidade computacional
Teoria da Computação Computabilidade e complexidade computacional 1 Computabilidade e Complexidade Computabilidade: verifica a existência de algoritmos que resolva uma classe de linguagens trata a possibilidade
Melhores momentos AULA 24. Algoritmos p.906/953
Melhores momentos AULA 24 Algoritmos p.906/953 Problemas polinomiais Analise de um algoritmo em um determinado modelo de computação estima o seu consumo de tempo e quantidade de espaço como uma função
Máquinas de Turing - Computabilidade
BCC244-Teoria da Computação Prof. Lucília Figueiredo Lista de Exercícios 03 DECOM ICEB - UFOP Máquinas de Turing - Computabilidade 1. Seja L uma linguagem não livre de contexto. Mostre que: (a) Se X uma
ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Aula 25
ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO Aula 25 Cap 7.2 A classe P Profa. Ariane Machado Lima [email protected] 1 Cap 7.2 A classe P 2 Tempo polinomial e exponencial Ex: Máquina de tempo n 3 (tempo
I.2 Introdução a Teoria da Computação
I.2 Introdução a Teoria da Computação O que é? Fundamento da Ciência da Computação Tratamento Matemático da Ciência da Computação Estudo Matemático da Transformação da Informação Qual sua importância?
Projeto e Análise de Algoritmos NP Completude Parte 2. Prof. Humberto Brandão
Projeto e Análise de Algoritmos NP Completude Parte 2 Prof. Humberto Brandão [email protected] Universidade Federal de Alfenas Departamento de Ciências Exatas versão da aula: 0.2 Última aula
Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão
Projeto e Análise de Algoritmos NP Completude Prof. Humberto Brandão [email protected] Universidade Federal de Alfenas versão da aula: 0.4 Introdução Problemas intratáveis ou difíceis são comuns
Apostila 06. Objetivos: Estudar a Computabilidade Estudar a Decidibilidade Estudar a Redutibilidade
Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e
Capítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel Introdução.
Capítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel 8.1 - Introdução. Como observado no capítulo anterior, podemos substituir a definição informal de procedimento pela
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferencia-se das máquinas de Turing e Post principalmente pelo fato de possuir a memória de entrada separada
Análise e Projeto de Algoritmos
Análise e Projeto de Algoritmos 2018.2 Classes P e NP P São os problemas que podem ser resolvidos em tempo polinomial por uma Máquina de Turing Determinística. NP São os problemas que podem ser decididos
Redução polinomial. Permite comparar o grau de complexidade de problemas diferentes.
Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução de um problema Π a um problema Π é um algoritmo ALG que resolve Π usando uma subrotina hipotética ALG que
Teoria da Computação. Máquinas Universais Máquina de Turing
Máquinas Universais Máquina de Turing Cristiano Lehrer Máquina de Turing Proposta por Alan Turing, em 1936. Universalmente conhecida e aceita como formalização de algoritmo. Trata-se de um mecanismo simples
Introdução Maquinas de Turing universais O problema da parada. Indecidibilidade. Rodrigo Gabriel Ferreira Soares DEINFO - UFRPE.
DEINFO - UFRPE Julho, 2014 Motivação Introdução O que pode ser computado? E mais intrigantemente, o que não pode ser computado? Motivação Introdução O que pode ser computado? E mais intrigantemente, o
INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação
INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: [email protected]
Máquinas de Turing 3
Máquinas de Turing 3 Exercícios Máquinas de Turing com Múltiplas Fitas Máquinas de Turing Não-deterministicas A Tese/Hipótese de Church-Turing Linguagens decidíveis por Máquinas de Turing (Recursivas)
Linguagens Formais e Autômatos. Autômatos Finitos Determinísticos (AFD)
Linguagens Formais e Autômatos Autômatos Finitos Determinísticos (AFD) Cristiano Lehrer, M.Sc. Linguagens Regulares A teoria da computação começa com uma pergunta: O que é um computador? É, talvez, uma
Algoritmos Combinatórios: Introdução
[email protected] UFSC, Fevereiro, 2010 Estruturas e Problemas Combinatórios Introdução a Algoritmos Combinatórios O que são: Estruturas Combinatórias? Algoritmos Combinatórios? Problemas Combinatórios?
Projeto e Análise de Algoritmos. Introdução. Prof. Ademir Constantino Universidade Estadual de Maringá Departamento de Informática
Projeto e Análise de Algoritmos Introdução Prof. Ademir Constantino Universidade Estadual de Maringá Departamento de Informática Projeto e Análise de Algoritmos Eu penso que o projeto de algoritmos eficientes
Análise de Algoritmos. Slides de Paulo Feofiloff
Análise de Algoritmos Slides de Paulo Feofiloff [com erros do coelho e agora também da cris] Algoritmos p. 1 Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução
Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada [email protected], [email protected] Grafos e Algoritmos Preparado a partir do texto: Rangel, Socorro.
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma C01 Engenharia da Computação e Ciência da Computação Horário: Segunda e Quinta:
Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018
22 de Fevereiro de 2018 Motivação O que é um computador? O que é um algoritmo? Para que serve um algoritmo? Quando um algoritmo é bom? A análise de um algoritmo depende do computador? Motivação Em teoria
Aula 10: Decidibilidade
Teoria da Computação Aula 10: Decidibilidade DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. Um problema de decisão P é um conjunto de questões para as quais as respostas são sim ou não. Exemplo
Aula 10: Decidibilidade
Teoria da Computação Segundo Semestre, 2014 Aula 10: Decidibilidade DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. Um problema de decisão P é um conjunto de questões para as quais as respostas
Redutibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)
Redutibilidade Mário S. Alvim ([email protected]) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim ([email protected]) Redutibilidade DCC-UFMG (2018/02) 1 / 46 Redutibilidade:
Teoria da computabilidade Indecidíveis Decidíveis
Bacharelado em Ciência da Computação Disciplina: Algoritmos e Estruturas de Dados I Professor: Mário Luiz Rodrigues Oliveira Teoria da computabilidade Indecidíveis Decidíveis Teoria da complexidade Intratáveis:
Aula 01. Murilo V. G. da Silva DINF/UFPR
Aula 01 DINF/UFPR Antes de qualquer coisa... Computação quântica é algo quente nos noticiários... Antes de qualquer coisa... Computação quântica é algo quente nos noticiários... mas Antes de qualquer coisa...
COMPUTABILIDADE 2. Indecidibilidade
Licenciatura em Ciências da Computação COMPUTABILIDADE 2. Indecidibilidade José Carlos Costa Dep. Matemática e Aplicações Universidade do Minho 15 de Novembro de 2011 José Carlos Costa DMA-UMinho 15 de
Introdução à classe de problemas NP- Completos
Introdução à classe de problemas NP- Completos R. Rossetti, A.P. Rocha, A. Pereira, P.B. Silva, T. Fernandes FEUP, MIEIC, CAL, 2010/2011 1 Introdução Considerações Práticas Em alguns casos práticos, alguns
Teoria da Computação 31 de Maio de 2017 Teste 2A Duração: 1h30
31 de Maio de 2017 Teste 2A Duração: 1h30 Seja Σ um alfabeto. Considere as seguintes linguagens: L 1 = {M M : M é máquina classificadora}, L 2 = {M M : L ac (M) = Σ }. a) Use o teorema de Rice para demonstrar
COMPLEXIDADE PARAMETRIZADA PARTE 1. Rafael Coelho.
UMA BREVE INTRODUÇÃO À TEORIA DE COMPLEXIDADE PARAMETRIZADA PARTE 1 Rafael Coelho [email protected] Instituto de Matemática e Estatística Universidade de São Paulo Seminários de Teoria da Computação,
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma A01 Engenharia da Computação e Ciência da Computação Horário: Segunda, Terça e Quinta.
Linguagens recursivamente enumeráveis
Linguagens recursivamente enumeráveis Uma palavra x Σ é aceite por uma máquina de Turing M ( x L(M)) se M iniciando com a palavra x na fita e no estado inicial, pára num estado final. Caso contrário, M
Faculdade de Computação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação Professora : Sandra de Amo Solução da Lista de Exercícios n o 8 - Indecidibilidade Exercicio 1-5.5 do Livro
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Máquina de Turing Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa [email protected] Teoria da Computação Ciência da Computação
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Proposta por Alan Turing em 1936; É universalmente conhecida e aceita como formalização de algoritmo; Teoria
SCC-5832 Teoria da Computação
Teoria da Computação SCC-5832 Teoria da Computação João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma C01 Engenharia da Computação e Ciência da Computação Horário: Terça e Sexta: 20:30
Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente
ESIN/UCPel 058814 Linguagens Formais e Autômatos TEXTO 5 Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente Prof. Luiz A M Palazzo Maio de 2007 0. Introdução A Ciência da Computação
Capítulo 2: Procedimentos e algoritmos
Capítulo 2: Procedimentos e algoritmos Para estudar o processo de computação de um ponto de vista teórico, com a finalidade de caracterizar o que é ou não é computável, é necessário introduzir um modelo
4º 20/10/2003. ÍNDICE
Universidade Federal de Juiz de Fora UFJF. Departamento de Ciência da Computação DCC. Curso de Ciência da Computação. Análise e Projeto de Algoritmos 4º período. Filippe Jabour. Atualizado em 20/10/2003.
Agenda. Complexidade Não Determinista A classe NP. A classe Co-NP Reduções de tempo polinomial. Definida por. Exemplos em:
A Classe NP Agenda Complexidade Não Determinista A classe NP Definida por aceitação em tempo polinomial por NTM s instâncias positivas com provas de tamanho polinomial aceitação por verificadores em tempo
Linguagens Formais e Problemas de Decisão
Linguagens Formais e Problemas de Decisão Mário S. Alvim ([email protected]) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim ([email protected]) Linguagens Formais e Problemas
TEORIA DE COMPLEXIDADE
UFMG/ICEX/DCC PROJETO E ANÁLISE DE ALGORITMOS TEORIA DE COMPLEXIDADE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO 1 O SEMESTRE DE 2008 Antonio Alfredo Ferreira Loureiro [email protected] http://www.dcc.ufmg.br/~loureiro
Coloração. Carolina Moraes e Lucas Glir
Coloração Carolina Moraes e Lucas Glir Introdução Os primeiros questionamentos sobre o assunto surgiram por volta de 1800, com o problema das 4 cores. Os primeiros resultados sobre coloração de grafos
Busca e Decisão. Problemas de Otimização. Kakuro. P e NP. Pode-se resolver o Kakuro somente resolvendo problemas de decisão?
Busca e Decisão Universidade Federal de Ouro Preto Departamento de Computação P e NP Decisão: Respostas SIM ou NÃO Eiste uma clique de tamanho k no grafo? Eiste um preenchimento da mochila com lucro z?
SCC Introdução à Teoria da Computação
SCC-0505 João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis/ [email protected]
Uma introdução à complexidade parametrizada
Vinicius Fernandes dos Santos - CEFET-MG Uéverton dos Santos Souza - UFF/CEFET-RJ 34 o JAI - Jornadas de Atualização em Informática XXXV Congresso da Sociedade Brasileira de Computação Recife, Julho 20
Teoria da Computação. Máquinas Universais Máquina com Pilhas
Máquinas Universais Máquina com Pilhas Cristiano Lehrer Introdução A Máquina com Pilhas diferencia-se das Máquinas de Turing e de Post principalmente pelo fato de possuir uma memória de entrada separada
Teoria dos Grafos Aula 16
Teoria dos Grafos Aula 16 Aula passada Primeira prova Aula de hoje Pontes de Königsberg Ciclo Euleriano Ciclo Hamiltoniano Quem foi Turing? As 7 Pontes de Königsberg Königsberg, cidade na Prússia (atual
ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Aula 18. Cap O Problema da Parada
ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO Aula 18 Cap 4.2 - O Problema da Parada Profa. Ariane Machado Lima [email protected] 1 Nas últimas aulas Tese de Church-Turing Problemas computacionais descritos
Como saber se um problema está em NP e não está em P?
? P = NP Uma das principais questões em aberto é se P = NP, isto é, se de fato tudo o que pode ser feito em tempo polinomial por uma MTND poderia ser feito por uma MTD em tempo polinomial, talvez com um
