P
RÁTICAS DEE
NSINO DEL
ÓGICA(06245)
Millena de Andrade Almeida Gomes Cavalcanti [email protected]
O
BJETIVOS DOC
URSOApresentar os principais conceitos de lógica e programação lógica
Apresentar e avaliar as principais estratégias e ferramentas para o ensino de lógica.
E
MENTAConceito de Lógica e Programação Lógica Conceitos Básicos, Problemas e Soluções da Literatura. Ensino de Programação Lógica
Estratégias e Métodos;
Planos Pedagógicos e Projetos de Pesquisa; Faixas Etárias e o Ensino de Programação de Lógica Aplicações.
Ferramentas de Ensino Exemplos, Uso e Avaliação; Projeto;
Aplicações.
Aplicabilidade de Ferramentas segundo critérios Faixa Etária e Formação;
Usabilidade e Ensino a Distância.
Projeto de Desenvolvimento de Ferramentas de Ensino
P
ROGRAMA DAD
ISCIPLINAData Conteúdo
15/08 Apresentação da Disciplina 17/08 Principais conceitos de lógica
22/08 Principais conceitos de programação lógica 24/08 Ferramentas de ensino de lógica 29/08 Exercícios e proposição de temas
31/08 Ensino de Programação Lógica: Estratégias e Métodos 05/09 Ensino de Programação Lógica: Planos Pedagógicos e
Projetos de Pesquisa 07/09 Feriado
12/09 Ensino de Programação Lógica: Projeto de Extensão e Aplicações
14/09 Confecção de planos 19/09 Apresentação de trabalhos: planos 21/09 Apresentação de trabalhos: planos 26/09 Apresentação de trabalhos: planos
P
ROGRAMA DAD
ISCIPLINAData Conteúdo
28/09 Apresentação de trabalhos: planos 03/10 Revisão 1VA
05/10 Realização da 1VA
10/10 Avaliação de estado da arte no ensino de lógica 12/10 Feriado
17/10 Avaliação de estado da arte no ensino de lógica 19/10 Avaliação de estado da arte no ensino de lógica 24/10 Avaliação de estado da arte no ensino de lógica 26/10 Apresentação de Seminário
P
ROGRAMA DAD
ISCIPLINAData Conteúdo
14/11 Desenvolvimento do projeto – status e dúvidas 16/11 Desenvolvimento do projeto – status e dúvidas 21/11 Desenvolvimento do projeto – status e dúvidas 23/11 Desenvolvimento do projeto – status e dúvidas 28/11 Apresentação do Projeto: 2ª VA
A
VALIAÇÕES Primeira VA Prova teórica: 50% Trabalho: 50% Segunda VA Seminário: 50% Projeto: 50% Terceira VA Trabalho: 100% Final Prova teórica Média: Soma das 2 maiores notas dividida por 2P
ROJETOS DAD
ISCIPLINA Trabalho 1Plano de ensino e pesquisa
Seminário
Ensino de Lógica no Ensino Médio
Projeto
Ferramenta para auxílio no ensino de lógica
Trabalho 2
Resenhas sobre o ensino de lógica
L
IVROST
EXTO1. Nilsson, Ulf. and Luszynski, Jan Ma. Logic,
Programming and Prolog. John Wiley and Sons. 2nd Edition, 2000.
2. Gallier, J. Logic for Computer Science. John Wiley and Sons, 1987.
3. Clocksin, W.F. and Mellish, C.S. Programming in Prolog. Springer-Verlag. 4thEdition. 1994. 4. Barwise, J. and Etchemendy, J. Language, Proof
and Logic. Seven Bridges Press, 2000. 5. van Dalen, D. Logic and Structure. Springer,
1994.
6. Cormen, Thomas H. et. al. Algoritmos: Teoria e Prática. Editora Campus, 2002.
S
ITE https://sites.google.com/site/praticasdeensinod elogica ou http://acessa.me/pelI
NTRODUÇÃO AL
ÓGICAM
OTIVAÇÃOPor que um licenciado em Computação deve ensinar lógica?
(Por que não um licenciado em matemática?)
M
OTIVAÇÃOVamos ver as conexões entre Lógica,
Matemática e Computação
Dois tipos de conexão Aplicações de lógica
Origem da computação moderna
C
ONCEITOA Lógicaé o ramo da Filosofia e da Matemática que estuda os métodos e princípios que permitem
fazer distinção entre raciocínios válidos e não válidos, determinando o processo que leva
ao conhecimento verdadeiro.
O
RIGEM DAC
OMPUTAÇÃOA própria origem da Computação está intimamente ligada à Lógica e à Matemática em geral
O que é Computação afinal?
É, principalmente, o estudo de algoritmos
(além disso, estuda as tecnologias desenvolvidas a partir deles)
O
RIGEM DAC
OMPUTAÇÃOOs algoritmos são métodos para “calcular” qualquer coisa ou, de forma geral, para resolver problemas
Grande parte da Matemática envolve algoritmos
As contas de somar, subtrair, multiplicar, dividir
que aprendemos na escola
Métodos para resolver equações (e sistemas de
equações) do 1º grau e do 2º grau
Etc.
O
RIGEM DAC
OMPUTAÇÃOPorém, até o século XIX:
Não havia uma definição precisa do que é um algoritmo
(era uma noção informal)
Os matemáticos vivem de “provar” teoremas, mas não
se conhecia um algoritmo para provar todo e qualquer teorema
O
RIGEM DAC
OMPUTAÇÃOEm 1900 e 1928, Hilbert desafia alguém a propor um método para responder se uma “pergunta matemática” em um “sistema formal” é ou não verdadeira
Ou seja, um algoritmo para provar se um suposto
O
RIGEM DAC
OMPUTAÇÃOEm especial, Hilbert gostaria de um método geral para provar/verificar se uma sentença de lógica de 1ª ordem era verdadeira
Pois boa parte da Matemática pode ser
expressa em lógica de 1ª ordem
Hilbert achava que não existiria problema matemático sem solução (ou teorema sem demonstração)
O
RIGEM DAC
OMPUTAÇÃODois pontos a serem resolvidos na questão levantada por Hilbert:
O que é um algoritmo?
Qual o algoritmo que resolve “todos os
problemas”? Ele existe?
O
RIGEM DAC
OMPUTAÇÃOKurt Gödel (1931)
Provou que não é possível escolher um conjunto de
sentenças que permita responder a todas as perguntas matemáticas
Não usou nenhuma definição de algoritmo específica!
O
RIGEM DAC
OMPUTAÇÃOKurt Gödel (1931)
Uma teoria eficientemente gerada (por algum algoritmo)
ou é
Incompleta (não prova tudo), ou é:
Inconsistente (contraditória, que é uma teoria indesejada para a matemática)
O
RIGEM DAC
OMPUTAÇÃOAlan Turing (1936/1937):
Propôs outra definição de algoritmo: máquinas de
Turing
Inspirou a criação dos computadores reais
Propôs um problema sem solução
Testar se uma máquina de Turing pára (problema da parada)
O
RIGEM DAC
OMPUTAÇÃOLogo, vemos que a computação surgiu dentro da Matemática
E surgiu para responder a uma questão que envolve Lógica
C
ONCLUSÃOLógica, Matemática e Computação são três áreas entrelaçadas, porém com três visões distintas:
A visão filosófica da Lógica, talvez, é a da representação
do raciocínio correto
Computação usa bastante Lógica, então alguém da área
conhece (ou deveria conhecer) muito bem a importância prática da Lógica
Alguém de Matemática talvez tenha uma visão mais
“introspectiva” da Lógica, como algo que serve para representar a Matemática
A
PLICAÇÕES Formalizar as linguagens de programação Especificação de programas Inferências em programas Base para aplicações deInteligência artificial Verificação de software e
hardware
A
PLICAÇÕESEm Inteligência Artificial, existem os sistemas baseados em lógica
Possuem um “conhecimento” do domínio
representado com lógica formal (principal: lógica de 1ª ordem)
Usam algum tipo de dedução lógica para tomar
as ações mais racionais
Podem ser usados em: robótica, sistemas de
filtragem de spam
A
PLICAÇÕESOs Métodos Formais de engenharia de software usam lógica para especificar exatamente o que se deseja de um programa
Permitem provar que um certo programa faz
aquilo que se deseja
Ou seja, permitem desenvolver programas 100% corretos
Usados em aplicações críticas: foguetes
espaciais, aviões, equipamentos médicos
A
PLICAÇÕESOutras aplicações da Lógica na Computação (e vice-versa)
Sistemas de reescrita
Semântica de linguagens de programação Programação lógica (Prolog)
A
PLICAÇÕES
Os Circuitos Digitais são usados para projetar os processadores
Tudo é definido em termos “0” e “1” (F e V) e de
operadores lógicos “and”, “or” e “not
Modelagem de circuitos (hardware) Minimização de circuitos