1 teoria da computaÇÃo motivação licenciatura em ciência e tecnologia da computação...

12
1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

Upload: internet

Post on 22-Apr-2015

114 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

1

TEORIA DA COMPUTAÇÃO

Motivação

Licenciatura em Ciência e Tecnologia da ComputaçãoLicenciatura em Engenharia Informática e de Computadores (Prep.)

Page 2: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

2

TEORIA DA COMPUTAÇÃO

CIÊNCIAS DA COMPUTAÇÃO

Processamento da informação Processos de informação Estruturas de informação e

respectivos procedimentos de representação

Implementação de sistemas ...

Page 3: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

3

PRINCIPAIS ÁREAS DE ESTUDO DAS CIÊNCIAS DA

COMPUTAÇÃO

Concepção

Formulação

Implementação em computador

Análise

Avaliação de algoritmos

Page 4: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

4

RELAÇÃO DAS CIÊNCIAS DA COMPUTAÇÃO COM OUTRAS CIÊNCIAS

MATEMÁTICA

ENGENHARIA

LINGUÍSTICA

BIOLOGIA

ETC.

Page 5: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

5

QUESTÕES FUNDAMENTAIS NAS CIÊNCIAS DA COMPUTAÇÃO

O que é que pode ser automatizado

de forma eficiente?

Pode um problema ser resolvido por

um computador? É possível escrever

o respectivo programa? O programa

estará correcto? É eficiente?

Como garantir a correcção de

programas?

Como compor sistemas?

Page 6: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

6

ALGORITMO

Noção que está no centro da Ciência da Computação

É um método para desempenhar uma operação de forma mecânica

Os primeiros algoritmos (informais) surgiram no tempo da Grécia Antiga

A formulação precisa do conceito de algoritmo só surgiu no século XX

Page 7: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

7

Estudos actualmente desenvolvidos em torno da noção de algoritmo:

Limitações do método algorítmico (computabilidade e decidibilidade)

Eficiência (complexidade) Correcção (verificação) Linguagens de programação (sintaxe

e semântica) Modelos de dados (teorias de tipos de

dados) Paradigmas da programação

(imperativo, declarativo, etc.) ...

Page 8: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

8

Alguns modelos alternativos no estudo da computabilidade Turing : Máquina de Turing (1936); Church: Funções definidas por termos

(1936); Gödel e Kleene : Funções (parciais)

recursivas (1936); Post : Sistemas de derivação de Post (1943) Markov : Algoritmos de Markov(1951) Shepherdson e Sturgis : Máquina URM

(1963)

Todas estas abordagens definem a mesma classe de funções.

Máquinas Físicas versus Máquinas Abstractas

Page 9: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

9

Postulado de Church- Turing

A classe intuitiva e formal das funções efectivamente computáveis coincide com a classe das funções computáveis pela máquina URM.

Diversas propostas para a formulação precisa do conceito de função efectivamente computável têm conduzido à mesma classe de funções.

Todas as funções efectivamente computáveis conhecidas são computáveis pela máquina URM (Turing,...).

Ainda não foi encontrada uma função intuitivamente computável que não seja computável pela máquina URM (Turing,...).

Page 10: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

1010

““Mapa” dos principais conceitos associados a Mapa” dos principais conceitos associados a programaprograma

MatemáticaMatemáticadiscretadiscreta

ÁlgebraArquitectura de Computadores

Programa

Estruturas de Informação

Controlo

ProcessoComputacional

ComplexidadeComputacional

Algoritmo

Linguagem

Teoria da ComputaçãoComputabilidade

Fundamentos

Estudo delinguagens

formais

Abstracções

Especificações

Processadoresde linguagens

Adaptado de “Programação em Scheme”, J. Pavão Martins e Mª dos Remédios Cravo, IST Press, 2004

Page 11: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

1111

““Mapa” dos principais conceitos associados a Mapa” dos principais conceitos associados a programaçãoprogramação

InteligênciaInteligênciaartificialartificial

Interfaces gráficas

Bases de Dados

Programação

Sistemas operativos

Arquitectura de Programas

Arquitectura de Computadores

Programação imperativa

Programação funcional

Programação com objectos

Programação em Lógica

Técnicas Paradigmas

Adaptado de “Programação em Scheme”, J. Pavão Martins e Mª dos Remédios Cravo, IST Press, 2004

Page 12: 1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)

12

“Os especialistas de informática, na vida de todos os dias, devem ser capazes de traduzir problemas reais em abstracções baseadas no uso de modelos formais, para manipular essas descrições formais e para raciocinar acerca das suas propriedades de modo rigoroso. Esta atitude muito particular distingue o especialista de informática da maior parte dos técnicos profissionais...

Os tópicos teóricos não devem ser considerados como opções a serem mais tarde acrescentadas aos currículos. Deviam antes ser vistos como a base que inspirará e informará todos os currículos, e, em especial, todos os outros cursos práticos"

In Theoretical Foundations of Computer ScienceMandrioli e Ghezzi

John Wiley, 1987