![Page 1: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/1.jpg)
Teoria da Computação – 01/2018
Teoria da Computação
Aula 01
Celso Olivete Júnior
www.fct.unesp.br/docentes/dmec/olivete/tc
1
![Page 2: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/2.jpg)
Teoria da Computação – 01/2018
Professor Celso Olivete Júnior• Bacharelado em Ciência da Computação (Unoeste-2002)
• Mestrado e Doutorado em Engenharia Elétrica – Área:
Visão Computacional (USP-SC-2005/2009)
• Áreas de interesse e atuação:
Celso Olivete Júnior 2
• Áreas de interesse e atuação:
visão computacional
desenvolvimento Web
compiladores
![Page 3: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/3.jpg)
Teoria da Computação – 01/2018
Site do Curso
www.fct.unesp.br/docentes/dmec/olivete/tc
• slides, exercícios, notas e demais materiais estarão
disponíveis no site
Celso Olivete Júnior 3
• Envio de trabalhos e dúvidas através do email
![Page 4: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/4.jpg)
Teoria da Computação – 01/2018
Celso Olivete Júnior 4
62%
![Page 5: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/5.jpg)
A disciplina Teoria da Computação
• Objetivo geral do curso
• Dar ao aluno noções sobre as capacidades (e as
limitações) de resolução de problemas das
Teoria da Computação – 01/2018
limitações) de resolução de problemas das
máquinas.
Celso Olivete Júnior 5
![Page 6: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/6.jpg)
A disciplina Teoria da Computação• O que será estudado?
1. Definir o que a teoria estuda e suas limitações
• Definir o que a teoria estuda é definir o que écomputável
Teoria da Computação – 01/2018
computável
• Utilizando Modelos formais:
• Caracterizam em nível conceitual: programas,máquinas e enfim a computação;
• Especificam o que é computável ou não: o maisfamoso é a Máquina de Turing
Celso Olivete Júnior 6
![Page 7: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/7.jpg)
A disciplina Teoria da Computação• Máquina de Turing: modelo construído com circuitos digitais
Teoria da Computação – 01/2018
http://www.youtube.com/watch?v=E3keLeMwfHY
Celso Olivete Júnior 7
![Page 8: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/8.jpg)
A disciplina Teoria da Computação• Máquina de Turing: modelo construído com lego
Teoria da Computação – 01/2018
http://www.youtube.com/watch?v=-qetuN11LbI
Celso Olivete Júnior 8
![Page 9: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/9.jpg)
A disciplina Teoria da Computação• Máquina de Turing: reportagem...
Teoria da Computação – 01/2018
http://www.youtube.com/watch?v=yIluxaHL0v0
Celso Olivete Júnior 9
![Page 10: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/10.jpg)
A disciplina Teoria da Computação
• O que será estudado?
1. Definir o que a teoria estuda e suas
limitações
Teoria da Computação – 01/2018
• Apresentar a hipótese de Church-Turing (1936):
• “A capacidade de computação representada pela
Máquina de Turing é o limite máximo que pode ser
atingido por qualquer dispositivo de computação,
independentemente da tecnologia”
Celso Olivete Júnior 10
![Page 11: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/11.jpg)
A disciplina Teoria da Computação
• O que será estudado?
2. Apresentar linguagens (ou problemas) reconhecidas por MT
(recursivamente enumeráveis) e decididas por MT(recursivas).
3. Mostrar que tipos de problemas algorítmicos são
Teoria da Computação – 01/2018
insolúveis/indecidíveis
Celso Olivete Júnior 11
Linguagens Regulares
Linguagens Livres de Contexto
Linguagens Sensíveis ao Contexto
Linguagens Recursivamente Enumeráveis
AFD
AFND
AFS
GR
ER
AP
GLC
MT
NORMA
POST
![Page 12: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/12.jpg)
Programa detalhado1. Introdução e conceitos básicos:
• Símbolos, cadeias, conjuntos e suas operações;
2. Programas, Máquinas e Computação:• Tipos de Programas, Máquinas, Computações e Funções Computadas,Equivalência de Programas e Máquinas, Verificação da Equivalência Forte deProgramas
Teoria da Computação – 01/2018
Programas
3. Máquinas Universais:• Codificação de Conjuntos Estruturados, Máquina de Registradores –Norma, Máquina Norma como Máquina Universal, Máquina de Turing, OutrosModelos de Máquinas Universais, Modificações sobre as MáquinasUniversais, Hierarquia de Classes de Máquinas e Hipótese de Church
4. Computabilidade• Classes de Solucionabilidade de Problemas
Celso Olivete Júnior 12
![Page 13: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/13.jpg)
Avaliação• Avaliação 1: 23-24/04 Avaliação 2: 25-26/06 EXAME: 02/07• As notas de todas as atividades – entre 0 (zero) e 10,0 (dez) – serão atribuídas individualmente, mesmo em atividades em grupo;•A média final será calculada da seguinte maneira:
MA = (NP1 + NP2)/2Mt = (NT1 + NT2 +...+ NTn) / nMT = (7 * NPJ + 3 * Mt)
• Média Final:MF = (7*MA + 3*MT)/10 SE E SOMENTE SE (MA>=5 E MT>=5)
•Caso contrário (MA<5 OU MT<5) MF = Menor Nota (MA ou MT)
• Sendo: MF = Média Final.MA = Média de ProvasMP = Média de Trabalhos e ProjetoMt = Média de Trabalho (Listas de Exercícios)
Teoria da Computação – 01/2018
Mt = Média de Trabalho (Listas de Exercícios)NPJ = Nota Projeto MT = Média final dos trabalhos (parte prática).
• Atendendo a RESOLUÇÃO UNESP 75/2016, que extingue o Regime de Recuperação e implanta o Processo de Recuperação,
composto por: ações pedagógicas, no qual serão propostas atividades extra sala, durante o semestre letivo objetivando minimizar as
dificuldades de aprendizagem dos estudantes identificados com baixo rendimento; e a Realização do Exame Final, constituído por
uma avaliação contendo todo o conteúdo programático, teórico e das atividades práticas. Todos os alunos com Média Semestral
(MS) menor do que 5.0 (cinco) poderão fazer o Exame Final. Desta forma, a nova Média Final do aluno será obtida pela média
aritmética simples entre a Média Semestral e a nota do Exame Final, que deverá ser igual ou maior que 5.0 (cinco) para aprovação:
Média Final = (Média Semestral + Exame Final) / 2
se Média Final ≥ 5: "Aprovado"; caso contrário: "Reprovado“
Celso Olivete Júnior 13
![Page 14: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/14.jpg)
Teoria da Computação – 01/2018
Avaliação• A “cola” ou plágio em provas, exercícios ouatividades práticas implicará na atribuição de notazero para todos os envolvidos. Dependendo dagravidade do incidente, o caso será levado ao
Celso Olivete Júnior 14
gravidade do incidente, o caso será levado aoconhecimento da Coordenação e do Conselho doDepartamento, para as providências cabíveis. Nadúvida do que é considerado cópia ou plágio, o alunodeve consultar o professor antes de entregar umtrabalho.
![Page 15: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/15.jpg)
Teoria da Computação – 01/2018
BIBLIOGRAFIA COMPLEMENTAR
•KFOURY, A. F., A programming approach to computability, Springer.
•MINSKY, M., Computation: finite and infinite machines, Prentice-Hall
•GERSTING, J. L., Fundamentos Matemáticos para a Ciência da Computação. 4ª
ed., Editora LTC, 2001.
•PIPPENGER, N., Theories of Computability. Cambridge Univ. Press, 1997.
•KFOURY, A. F., A programming approach to computability, Editora Springer-
Celso Olivete Júnior 15
•KFOURY, A. F., A programming approach to computability, Editora Springer-
Verlag.
BIBLIOGRAFIA BÁSICA
•DIVERIO, T. A.; MENEZES, P. B. Teoria da Computação: Máquinas Universais e
Computabilidade. Porto Alegre: Sagra-Luzzatto, 2000.
•HOPCROFT, J. E.; ULLMAN, J. D.; MOTWANI, R. Introdução à Teoria de
Autômatos, Linguagens e Computação. Rio de Janeiro: Elsevier, 2002.
![Page 16: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/16.jpg)
Visão geral da disciplina
• Dentro da Teoria da Computação encontra-
se duas linhas de estudo:
Teoria da Computação – 01/2018
Celso Olivete Júnior 16
Teoria da Computação
Máquinas Universais e
Computabilidade Linguagens Formais e
Autômatos
![Page 17: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/17.jpg)
Visão geral da disciplina
• LFA
• trata das definições e propriedades de
modelos matemáticos que tem um papel
Teoria da Computação – 01/2018
modelos matemáticos que tem um papel
fundamental em várias áreas da Computação
como o processamento de textos, compiladores,
definição de LP’s, dentre outras.
Celso Olivete Júnior 17
![Page 18: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/18.jpg)
Visão geral da disciplina
• Dentro da Teoria da Computação encontra-
se duas linhas de estudo:
Teoria da Computação – 01/2018
Celso Olivete Júnior 18
Teoria da Computação
Máquinas Universais e
Computabilidade Linguagens Formais e
Autômatos
![Page 19: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/19.jpg)
Visão geral da disciplina
• Máquinas universais:• Se um problema algorítmico não pode sersolucionado por uma máquina universal, então nãoexiste uma solução computável para ele.
Teoria da Computação – 01/2018
existe uma solução computável para ele.
• Computabilidade• classifica os problemas em solúveis, parcialmentesolúveis e insolúveis, e se forem problemas dedecisão, em problemas decidíveis, parcialmentedecidíveis e indecidíveis.
Celso Olivete Júnior 19
![Page 20: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/20.jpg)
Visão geral da disciplina
Teoria da Computação – 01/2018
Celso Olivete Júnior 20
![Page 21: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/21.jpg)
Visão geral da disciplina
Teoria da Computação – 01/2018
Celso Olivete Júnior 21
![Page 22: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/22.jpg)
Programa, máquina, computação e função
computada• Programa: “Conjunto estruturado de instruções que
capacitam uma máquina a aplicar sucessivamente certas
operações básicas e testes sobre dados iniciais
Teoria da Computação – 01/2018
operações básicas e testes sobre dados iniciais
fornecidos, com o objetivo de transformar estes dados
numa forma desejável.”
Celso Olivete Júnior 22
![Page 23: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/23.jpg)
Programa, máquina, computação e função
computada• um programa deve possuir uma estrutura de controle
de operações e testes.
Estruturação Monolítica
Teoria da Computação – 01/2018
•Estruturação Monolítica
•Estruturação Iterativa
•Estruturação Recursiva
Celso Olivete Júnior 23
![Page 24: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/24.jpg)
Programa, máquina, computação e função
computada• Estruturação Monolítica - exemplo
Teoria da Computação – 01/2018
Não faz uso explícito de mecanismos
como iteração, subdivisão ou recursão.
partida
F
T1 v
Celso Olivete Júnior 24
1: faça F vá_para 2
2: se T1 então vá_para 1 senão vá_para 3
3: faça G vá_para 4
4: se T2 então 5 (�) senão vá_para 1
como iteração, subdivisão ou recursão.
parada
G
T1 v
f T2
![Page 25: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/25.jpg)
Programa, máquina, computação e função
computada• Estruturação Iterativa - exemplo
Teoria da Computação – 01/2018
Substitui desvios incondicionais por estruturas de testes ou
repetições resultando em uma melhor estruturação de desvios
Celso Olivete Júnior 25
repetições resultando em uma melhor estruturação de desvios
Enquanto T faça V
V v T f
![Page 26: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/26.jpg)
Programa, máquina, computação e função
computada• Estruturação Recursiva - exemplo
Teoria da Computação – 01/2018
Admite a definição de sub-rotinas recursivas
Celso Olivete Júnior 26
P é R; S onde
R def F; (se T então R senão G; S),
S def (se T então � senão F; R)
![Page 27: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/27.jpg)
Programa, máquina, computação e função
computada
• Máquina
•Cabe a máquina dar significado aos
Teoria da Computação – 01/2018
•Cabe a máquina dar significado aos
identificadores das operações e testes
• exemplos: Norma, Post, Turing
Celso Olivete Júnior 27
![Page 28: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/28.jpg)
Programa, máquina, computação e função
computada
• Computação
• É um histórico do funcionamento da máquina para o
Teoria da Computação – 01/2018
programa, considerando um valor inicial.
•Função computada
• É o resultado obtido após o término da computação
(finita)
Celso Olivete Júnior 28
![Page 29: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/29.jpg)
Programa, máquina, computação e funçãocomputada
• usando noções de programa, máquina ecomputação é estudado o conceito decomputabilidade
Teoria da Computação – 01/2018
computabilidade• um programa para uma máquina pode induzir a umacomputação
• se a computação for finita, então é definida a funçãocomputada (resultado) por esse programa nessa máquina� descreve o que o programa faz.
Celso Olivete Júnior 29
![Page 30: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/30.jpg)
Visão geral da disciplina
Teoria da Computação – 01/2018
Celso Olivete Júnior 30
![Page 31: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/31.jpg)
Equivalência de programas
• Se dois programas, em uma máquina,possuem a mesma função computada(resultado), ou seja, computam a mesma
Teoria da Computação – 01/2018
(resultado), ou seja, computam a mesmafunção, então eles são equivalentes.
• O conceito de equivalência é utilizado paraotimizar o programa � eliminar instruçõesdesnecessárias
Celso Olivete Júnior 31
![Page 32: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/32.jpg)
Equivalência de programas• Exemplo
Teoria da Computação – 01/2018
partidapartida
Celso Olivete Júnior 32
parada
T Fv
f
parada T
FT
parada
v
v
f
f
![Page 33: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/33.jpg)
Visão geral da disciplina
Teoria da Computação – 01/2018
Celso Olivete Júnior 33
![Page 34: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/34.jpg)
Equivalência de máquinas
• Se duas máquinas simulam-se mutuamente,
é porque elas são equivalentes. Nesse caso,
ambas tem o mesmo poder computacional.
Teoria da Computação – 01/2018
ambas tem o mesmo poder computacional.
Celso Olivete Júnior 34
![Page 35: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/35.jpg)
Visão geral da disciplina
Teoria da Computação – 01/2018
Celso Olivete Júnior 35
![Page 36: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/36.jpg)
Funções computáveis e máquinas universais
• uma máquina é universal se toda função
computável puder ser executada nela
• uma função computável é aquela que pode ser
Teoria da Computação – 01/2018
• uma função computável é aquela que pode ser
processada numa Máquina de Turing ou
equivalente (Post, Norma, Pilhas)
Celso Olivete Júnior 36
![Page 37: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/37.jpg)
Visão geral da disciplina
• Teoria da Computação provê conceitos e princípiosque ajudam a entender a natureza geral dacomputação
• utiliza-se de computadores abstratos para resolução de
Teoria da Computação – 01/2018
• utiliza-se de computadores abstratos para resolução deproblemas
• Para modelar o hardware do computador pode-seutilizar o conceito de AF’s, que possuem ascaracterísticas de um computador digital – entrada,tomada de decisão, armazenamento e saída.
Celso Olivete Júnior 37
![Page 38: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/38.jpg)
Visão geral da disciplina• após estudar os conceitos de LFA torna-se necessário umestudo aprofundado sobre questões pertinentes a TC:
� quais são as capacidades e limitações fundamentais doscomputadores?
� o que pode e o que não pode ser resolvido pelos computadores?
Teoria da Computação – 01/2018
� o que faz alguns problemas serem mais computacionalmentedifíceis do que os outros?
• ao tentar responder essas questões, exploram-se os conceitosde computabilidade, decidibilidade, redutibilidade ecomplexidade.
Celso Olivete Júnior 38
![Page 39: Teoria da Computação Aula 01docs.fct.unesp.br/docentes/dmec/olivete/tc/arquivos/Aula1.pdf · Teoria da Computação –01/2018 ProfessorCelsoOliveteJúnior • BachareladoemCiênciadaComputação(Unoeste-2002)](https://reader031.vdocuments.mx/reader031/viewer/2022021909/5be79f6b09d3f2db738caa36/html5/thumbnails/39.jpg)
Visão geral da disciplina
• Computabilidade, decidibilidade, redutibilidade �
conceitos que serão estudados utilizando modelos
matemáticos, capazes de representar o que é uma
computação
Teoria da Computação – 01/2018
computação
Celso Olivete Júnior 39
Linguagens Regulares
Linguagens Livres de Contexto
Linguagens Sensíveis ao Contexto
Linguagens Recursivamente Enumeráveis
AFD
AFND
AFS
GR
ER
AP
GLC
MT
NORMA
POST