a integração do tutorial interativo trylogic ims learning ... · depamentoart de informática e...

135

Upload: hakhuong

Post on 11-Jan-2019

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Universidade Federal do Rio Grande do Norte

Centro de Ciências Exatas e da Terra

Departamento de Informática e Matemática Aplicada

Programa de Pós-Graduação em Sistemas e Computação

Mestrado Acadêmico em Sistemas e Computação

A integração do tutorial interativo TryLogicvia IMS Learning Tools Interoperability :

construindo uma infraestrutura para o ensinode Lógica através de estratégias de

Demonstração e Refutação

Patrick Cesar Alves Terrematte

Natal-RN

Junho de 2013

Page 2: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Patrick Cesar Alves Terrematte

A integração do tutorial interativo TryLogic via IMS

Learning Tools Interoperability : construindo uma

infraestrutura para o ensino de Lógica através de

estratégias de Demonstração e Refutação

Dissertação de Mestrado apresentada ao Pro-grama de Pós-Graduação em Sistemas eComputação do Departamento de Informá-tica e Matemática Aplicada da UniversidadeFederal do Rio Grande do Norte como re-quisito parcial para a obtenção do grau deMestre em Sistemas e Computação.

Linha de pesquisa:Fundamentos da Computação

Orientador:

Prof. Dr. João Marcos de Almeida

PPgSC � Programa de Pós-Graduação em Sistemas e Computação

DIMAp � Departamento de Informática e Matemática Aplicada

CCET � Centro de Ciências Exatas e da Terra

UFRN � Universidade Federal do Rio Grande do Norte

Natal-RN

Junho de 2013

Page 3: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Catalogação da Publicação na Fonte. UFRN / SISBI / Biblioteca Setorial Centro de Ciências Exatas e da Terra – CCET.

Terrematte, Patrick Cesar Alves.A integração do tutorial interativo Trylogic via IMS learning tools

interoperability: construindo uma infraestrutura para o ensino de lógica através de estratégias de demonstração e refutação / Patrick Cesar Alves Terrematte. - Natal, 2013.

133 f.: il.

Orientador: João Marcos de Almeida.

Dissertação (Mestrado) – Universidade Federal do Rio Grande do Norte. Centro de Ciências Exatas e da Terra. Programa de Pós-Graduação em Sistemas e Computação.

1. Lógica matemática – Dissertação. 2. Assistente de demonstração – Dissertação. 3. Tutorial interativo – Dissertação. 4. Ensino de lógica – Dissertação. I. Marcos, João. II. Título.

RN/UF/BSE-CCET CDU: 510.6

Page 4: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção
Page 5: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Dédié à la memoire de mon pére et ami César Jo TERREMATTE (1922∼2012),pour la Baraka des faits.

Page 6: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Agradecimentos

Agradeço ao Prof. João Marcosφ,λ pela orientação e formação sine qua non. Agradeço

também ao Prof. Daniel Duranteλ,φ, Prof. Eduardo Mouraφ, Profa. Maria da Pazφ, Prof.

Leonardo Cunhaλ, Prof. Regivan Santiagoλ, Prof. Adolfo Netoλ, Profa. Elaine Pimentelλ

e ao Prof. Edward Hermann Haeuslerλ, pelos comentários atenciosos sobre o trabalho de-

senvolvido e pelo papel essencial na minha formação acadêmica. Agradeço ao colegas de

graduaço pela colaboraram implementando, documentando e apontando sugestões para

o trabalho desenvolvido: Thiago Medeirosλ, Thales Galdinoλ, Hudson Geovaneλ, Elias

Amaralλ e Kaline Negreirosλ. Sou imensamente grato aos meus amigos pela força inesti-

mável em diversas situações na minha trajetória acadêmica e pessoal, em particular, sou

grato aos grandes colegas de Filoso�as e/ou Lógicas, Arthur Vianaφ, Carlos Arturφ, David

Gomesφ, Flammarion Gomesφ e Sanderson Molickφ; bem como, sou grato aos colegas do

LoLITA, Adriano Dodóλ e Claúdio Callejasλ; e fraternalmente agradeço a Bruno Rafael,

Filipe Martins, Jaerton Carvalho, Joseyoshi Kitayama, Hallesson Lucas, Thiago/Priscilla

e a Welisson Bruno. Grato a minha esposa, J .L.S. que tem uma parte essencial na minha

vida nos últimos anos. Grato a minha mãe por ter sempre me apoiado e por ter suportado

tristes di�culdades na minha frequente ausência. Grato ao meu pai pelo que sou.

Page 7: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

�(...) Knowledge never hurts � what hurts is helplessness, the futility of banging your

head against a brick wall without �nding either proof or disproof. I have often spent weeks

trying to prove a false statement � and when I learned that it's false, I felt victorious.

Progress was made, knowledge was acquired, one more step toward the truth was taken.�

(Paul R. Halmos, I Want to be a Mathematician: An Automathography, 1985)

Page 8: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

A integração do tutorial interativo TryLogic via IMSLearning Tools Interoperability : construindo umainfraestrutura para o ensino de Lógica através de

estratégias de Demonstração e Refutação

Autor: Patrick Cesar Alves Terrematte

Orientador: Prof. Dr. João Marcos de Almeida

Resumo

A disciplina de Lógica representa um desa�o tanto para docentes como para discentes, o

que em muitos casos resulta em reprovações e desistências. Dentre as di�culdades enfrenta-

das pelos alunos está a sobrecarga da capacidade cognitiva para compreender os conceitos

lógicos de forma relevante. Neste sentido, as ferramentas computacionais de aprendizagem

são recursos que auxiliam a redução de cenários de sobrecarga cognitiva, como também

permitem a experiência prática de conceitos teóricos. O presente trabalho propõe uma

tutorial interativo chamado TryLogic, visando ao ensino da tarefa de Demonstração

ou Refutação (DxR) de conjecturas lógicas. Trata-se de uma ferramenta desenvolvida a

partir da arquitetura do TryOcaml através do suporte de comunicação da interface web

ProofWeb para acessar o assistente de demonstração de teoremas Coq. Os objetivos do

TryLogic são: (1) Apresentar um conjunto de lições para aplicar estratégias heurísticas

de análise de problemas em Lógica Proposicional; (2) Organizar em passo-a-passo a expo-

sição dos conteúdos de Dedução Natural e Semântica Proposicional de forma sequencial;

e (3) Fornecer aos alunos tarefas interativas. O presente trabalho propõe também apre-

sentar a nossa implementação de um sistema formal de refutação; descrever a integração

de nossa infraestrutura com o Ambiente Virtual de Aprendizagem Moodle através da es-

peci�cação IMS Learning Tools Interoperability ; apresentar o Gerador de Conjecturas de

tarefas de Demonstração e Refutação e, por �m, avaliar a experiência da aprendizagem

de alunos de Lógica através da aplicação da tarefa de DxR em associação à utilização do

TryLogic.

Palavras-chave: Lógica Matemática, Assistente de Demonstração, Tutorial Interativo, En-

sino de Lógica.

Page 9: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

The integration of the interactive tutorial TryLogic viaIMS Learning Tools Interoperability: constructing aframework to teaching logic by proofs and refutations

Author: Patrick Cesar Alves Terrematte

Supervisor: Prof. Dr. João Marcos de Almeida

Abstract

Logic courses represent a pedagogical challenge and the recorded number of cases of fai-

lures and of discontinuity in them is often high. Amont other di�culties, students face

a cognitive overload to understand logical concepts in a relevant way. On that track,

computational tools for learning are resources that help both in alleviating the cogni-

tive overload scenarios and in allowing for the practical experimenting with theoretical

concepts. The present study proposes an interactive tutorial, namely the TryLogic, ai-

med at teaching to solve logical conjectures either by proofs or refutations. The tool was

developed from the architecture of the tool TryOcaml, through support of the communi-

cation of the web interface ProofWeb in accessing the proof assistant Coq. The goals of

TryLogic are: (1) presenting a set of lessons for applying heuristic strategies in solving

problems set in Propositional Logic; (2) stepwise organizing the exposition of concepts

related to Natural Deduction and to Propositional Semantics in sequential steps; (3) pro-

viding interactive tasks to the students. The present study also aims at: presenting our

implementation of a formal system for refutation; describing the integration of our in-

frastructure with the Virtual Learning Environment Moodle through the IMS Learning

Tools Interoperability speci�cation; presenting the Conjecture Generator that works for

the tasks involving proving and refuting; and, �nally to evaluate the learning experience

of Logic students through the application of the conjecture solving task associated to the

use of the TryLogic.

Keywords : Mathematical Logic, Proof assistant, Interactive Tutorial, Teaching Logic.

Page 10: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Lista de �guras

1 Estilos de Dedução Natural . . . . . . . . . . . . . . . . . . . . . . . . p. 33

2 Árvore de refutação versus método de Tableaux - I . . . . . . . . . . . p. 42

3 Árvore de refutação versus método de Tableaux - II . . . . . . . . . . . p. 42

4 Demonstração no Proof Lab . . . . . . . . . . . . . . . . . . . . . . . . p. 48

5 Demonstração no HemeraWeb . . . . . . . . . . . . . . . . . . . . . . . . p. 49

6 Demonstração no J∀P∃ . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 50

7 Módulos do Logicamente . . . . . . . . . . . . . . . . . . . . . . . . p. 51

8 Estrutura de um assistente de demonstração . . . . . . . . . . . . . . . p. 54

9 Demonstração no ProofWeb . . . . . . . . . . . . . . . . . . . . . . . . p. 55

10 Táticas no Coq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 56

11 Demonstração proposicional no Coq . . . . . . . . . . . . . . . . . . . . p. 58

12 Logicamente disponível online atualmente . . . . . . . . . . . . . . . p. 64

13 Script para produção de refutação no ProofWeb 1 . . . . . . . . . . . . p. 68

14 Script para produção de refutação no ProofWeb 2 . . . . . . . . . . . . p. 69

15 Gerador de conjecturas DxR integrado ao Moodle . . . . . . . . . . . . p. 71

16 TryOCaml: Tutorial interativo para o Ensino de OCaml . . . . . . . . . p. 74

17 Lições do TryLogic integradas ao Moodle . . . . . . . . . . . . . . . . p. 76

18 Arquitetura do IMS LTI. . . . . . . . . . . . . . . . . . . . . . . . . . . p. 79

19 Estrutura de Diretórios do Moodle . . . . . . . . . . . . . . . . . . . . . p. 81

20 Con�guração do TryLogic para acesso no Moodle (IMS LTI ) . . . . . p. 82

21 Visão de implantação do TryLogic com o Moodle (IMS LTI ) . . . . . p. 83

22 Estrutura de fórmulas do Logicamente . . . . . . . . . . . . . . . . . p. 107

Page 11: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

23 Estrutura do WFF Generator do Logicamente . . . . . . . . . . . . p. 107

24 Módulos do Logicamente- 1 . . . . . . . . . . . . . . . . . . . . . . . p. 108

25 Módulos do Logicamente- 2 . . . . . . . . . . . . . . . . . . . . . . . p. 109

Page 12: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Lista de tabelas

1 Algumas ferramentas para o ensino de Lógica . . . . . . . . . . . . . . p. 47

2 Resultado dos alunos na Experiência 1 no Semestre 2012.2. . . . . . . p. 93

3 Resultado dos alunos na Experiência 2 no Semestre 2013.1.† . . . . . p. 93

Page 13: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Lista de Siglas

fbf Fórmula bem formada, p. 31

Complx Função Complexidade, p. 31

Subfor Subfórmula, p. 31

CLT Cognitive Load Theory , p. 44

AVA Ambiente Virtual de Aprendizagem, p. 61

IMS Full LTI IMS Full Learning Tools Interoperability, p. 77

TC Tool Consumer , p. 77

TP Tool Provider , p. 77

IMS Basic LTI IMS Basic Learning Tools Interoperability, p. 77

LAaC Lógica Aplicada à Computação, p. 85

Page 14: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Lista de Simbolos

Γ |∼α Conjectura, p. 29

∧2 Conectivo Lógico da Conjunção, p. 30

∨2 Conectivo Lógico da Disjunção, p. 30

→2 Conectivo Lógico da Implicação, p. 30

↔2 Conectivo Lógico da Bi-implicação, p. 30

¬1 Conectivo Lógico da Negação, p. 30

⊥0 Símbolo Lógico do Absurdo, p. 30

Prop Conjunto de letras proposicionais, p. 30

Np Sistema Formal de Dedução Natural, p. 31

Γ Conjunto de Fórmulas, p. 34

Γ `S α Derivação em S de α a partir de Γ, p. 34

v α Função valoração, p. 36

Γ � α α é consequência semântica de Γ, p. 36

Γ 2 α α não é consequência semântica de Γ, p. 36

Semp Sistema Formal de Refutação, p. 37

Page 15: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

Sumário

1 Introdução p. 17

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 17

1.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 18

1.3 Trabalhos Resultantes do Projeto . . . . . . . . . . . . . . . . . . . . . p. 19

1.4 Plano Geral e Estrutura da Dissertação . . . . . . . . . . . . . . . . . . p. 20

2 O uso de estratégias para demonstrar ou refutar: uma proposta de

integração para o ensino de Lógica p. 22

2.1 O papel da Lógica no currículo da Computação . . . . . . . . . . . . . p. 23

2.2 Ensino de Lógica para DxR conjecturas . . . . . . . . . . . . . . . . . . p. 28

2.3 Lógica Proposicional para Demonstrar: Dedução Natural . . . . . . . . p. 30

2.3.1 Exemplos de derivação em Np . . . . . . . . . . . . . . . . . . . p. 34

2.3.2 Considerações sobre Np . . . . . . . . . . . . . . . . . . . . . . . p. 35

2.4 Lógica Proposicional para Refutar: Formalismo Semântico proposicional p. 35

2.4.1 Exemplo de heurística Semântica . . . . . . . . . . . . . . . . . p. 39

2.5 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 41

3 Ferramentas para o ensino de Lógica p. 44

3.1 Ferramentas para o Ensino de Lógica: desa�os . . . . . . . . . . . . . . p. 44

3.2 AproS Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 46

3.3 Hemera Web e TableauxProver . . . . . . . . . . . . . . . . . . . . . . p. 48

3.4 Jape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 49

3.5 Panda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 50

Page 16: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

3.6 Coq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 51

3.6.1 Assistentes de Demonstração de Teoremas . . . . . . . . . . . . p. 53

3.7 ProofWeb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 54

3.8 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 58

4 O tutorial interativo TryLogic e integração de ferramentas exter-

nas entre diferentes plataformas p. 60

4.1 Convergência de recursos em e-learning . . . . . . . . . . . . . . . . . . p. 60

4.2 Logicamente: a construção modular de ferramentas para o ensino de Lógica p. 64

4.2.1 Desa�os para o Logicamente . . . . . . . . . . . . . . . . . . p. 65

4.3 Nossa contribuição ao ProofWeb: Teoria Semântica . . . . . . . . . . . p. 66

4.4 Gerador de conjecturas em Lógica Proposicional . . . . . . . . . . . . . p. 69

4.4.1 Aspectos a serem desenvolvidos . . . . . . . . . . . . . . . . . . p. 72

4.5 Nossa contribuição: o tutorial interativo TryLogic . . . . . . . . . . . p. 73

4.5.1 TryOCaml: um tutorial para ensino de OCaml . . . . . . . . . . p. 73

4.5.2 Objetivos do TryLogic . . . . . . . . . . . . . . . . . . . . . . p. 74

4.6 A integração de ferramentas externas entre diferentes plataformas . . . p. 76

4.7 Nossa Contribuição: A integração do TryLogic e do Gerador de Con-

jecturas através do IMS Basic LTI . . . . . . . . . . . . . . . . . . . . p. 78

4.7.1 A integração modular do TryLogic no Moodle . . . . . . . . . p. 79

4.8 Considerações �nais e trabalhos futuros . . . . . . . . . . . . . . . . . . p. 83

5 Análise das experiências com o TryLogic p. 85

5.1 Experiência 1: TryLogic e Gerador de Conjecturas . . . . . . . . . . . p. 86

5.2 Experiência 2: integração do Moodle com Gerador de Conjecturas, ProofWeb

e TryLogic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 87

5.3 Questionários sobre as experiências . . . . . . . . . . . . . . . . . . . . p. 88

5.3.1 Sobre o per�l dos alunos . . . . . . . . . . . . . . . . . . . . . . p. 88

Page 17: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

5.3.2 Sobre os recursos de aprendizagem . . . . . . . . . . . . . . . . p. 89

5.3.3 Sobre a Tarefa de Derivar ou Refutar (DxR) . . . . . . . . . . . p. 89

5.3.4 Sobre o signi�cado da tarefa de Derivar ou Refutar (DxR) . . . p. 91

5.3.5 Resultados das Experiências . . . . . . . . . . . . . . . . . . . . p. 91

5.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 94

Considerações Finais p. 95

Perspectivas Futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 96

Referências p. 97

Apêndice A -- Teoria Semântica do Coq p. 102

Apêndice B -- Descrição dos Módulos do Logicamente p. 106

Apêndice C -- Questionários: TryLogic e Tarefa DxR p. 111

C.1 Experiência 1 : Pesquisa TryLogic em 2012.2 . . . . . . . . . . . . . . p. 111

C.1.1 Sobre o per�l dos alunos . . . . . . . . . . . . . . . . . . . . . . p. 111

C.1.2 Sobre recursos de aprendizagem . . . . . . . . . . . . . . . . . . p. 111

C.1.3 Sobre a Tarefa de Derivar ou Refutar (DxR) . . . . . . . . . . . p. 113

C.1.4 Questões sobre o signi�cado de Derivar ou Refutar . . . . . . . p. 114

C.2 Experiência 2: Questionário sobre Dedução Natural . . . . . . . . . . . p. 117

C.2.1 Uso das Regras . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 117

C.2.2 Completar derivações . . . . . . . . . . . . . . . . . . . . . . . . p. 119

C.3 Experiência 2: Questionário sobre Semântica . . . . . . . . . . . . . . . p. 121

C.3.1 Sobre interpretação proposicional . . . . . . . . . . . . . . . . . p. 121

C.3.2 Sobre a noção de valoração . . . . . . . . . . . . . . . . . . . . . p. 121

C.3.3 Sobre tautologias, contingências e contradições . . . . . . . . . . p. 122

C.3.4 Sobre a relação de consequência - Nível 1 . . . . . . . . . . . . . p. 123

Page 18: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

C.3.5 Sobre a relação de consequência - Nível 2 . . . . . . . . . . . . . p. 123

C.4 Experiência 2 : Pesquisa TryLogic em 2013.1 . . . . . . . . . . . . . . p. 125

C.4.1 Sobre o per�l dos alunos . . . . . . . . . . . . . . . . . . . . . . p. 125

C.4.2 Sobre recursos de aprendizagem . . . . . . . . . . . . . . . . . . p. 125

C.4.3 Sobre a Tarefa de Derivar ou Refutar (DxR) . . . . . . . . . . . p. 126

C.4.4 Questões sobre o signi�cado de Derivar ou Refutar (2013.1) . . . p. 127

Apêndice D -- Lista de softwares didáticos de Lógica p. 130

Page 19: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

17

1 Introdução

A Lógica é uma disciplina basilar para a alfabetização cientí�ca, e fundamental para

diversas áreas. Todavia a disciplina de Lógica enfrenta desa�os no seu ensino, o que

em muitos casos resulta em reprovações ou desistências. Nossa proposta é apresentar

um conjunto de ferramentas com a �nalidade de auxiliar o ensino de Lógica através da

resolução de tarefas desa�adoras.

A nossa proposta, originalmente, surgiu com uma intenção didática e prática durante

o segundo semestre de 2006, sob a idealização e orientação do professor João Marcos

através do um projeto �nal da disciplina de Lógica Aplicada à Computação. O objetivo

inicial do projeto foi ensinar através da implementação de alguns dos principais conceitos

e métodos de Lógica, tais como tabelas de verdade, estruturas de fórmulas, método de

resolução, fórmulas prenex, substituição de formulas, entre outros. Como resultado do

projeto surgiu o Logicamente, desenvolvido em semestres subsequentes a partir do

trabalho colaborativo de alunos de Computação.

A principal di�culdade no processo de desenvolvimento do Logicamente era a ca-

rência de uma estratégia didática para o ensino de Lógica. Isto nos motivou a elaborar

uma metodologia de ensino para guiar o aluno em tarefas que combinam características

do ensino presencial tradicional com recursos da educação à distância. Os desa�os pre-

sentes no Logicamente motivaram a elaboração de aplicações da Lógica para resolver

tarefas de demonstrar ou refutar, a construção de um Gerador de Conjecturas, visando a

distribuição automática de exercícios, e a criação de um tutorial interativo para guiar o

aluno de forma gradual e sequencial: o TryLogic.

1.1 Objetivos

O nosso objetivo principal é apresentar uma infraestrutura para ensinar Lógica através de

tarefas de demonstrar ou refutar (DxR) asserções em Lógica Proposicional. Os objetivos

Page 20: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

18

especí�cos realizados através do presente trabalho são:

• Auxiliar a compreensão de estratégias que envolvam tarefas de demonstrar ou refutar

conjecturas em Lógica Proposicional.

• Apresentar a resolução de conjecturas através de uma interface online ao assistente de

demonstração de teoremas Coq.

• Apresentar um conjunto de Lições para exempli�car a tarefa de Demonstrar com o

Sistema de Dedução Natural para Lógica Proposicional através de assistentes de de-

monstração.

• Apresentar o tutorial interativo TryLogic com um conjunto de Lições para aplicar

estratégias heurísticas para demonstrar ou refutar em Lógica Proposicional.

• Apresentar a integração entre o TryLogic, o Gerador de Conjecturas e o ProofWeb

com o Moodle, implementada através do padrão de comunicação IMS Learning Tools

Interoperability.

• Apresentar uma análise da aplicação da ferramenta TryLogic em uma disciplina de

Lógica Aplicada à Computação.

1.2 Metodologia

A nossa metodologia durante a preparação do trabalho foi realizada através da investi-

gação do estado da arte das ferramentas de ensino de Lógica, em particular, analisamos

as ferramentas publicadas nas edições dos congressos �International Conference Tools for

Teaching Logic� e �International Workshop On User Interfaces for Theorem Proving�.

Para a análise sobre o papel da Lógica nos cursos de Computação buscamos as orienta-

ções curriculares de organizações como a Association for Computing Machinery (ACM)

e a IEEE Computer Society. Para a construção de nossa infraestrutura optamos utilizar

e integrar as seguintes ferramentas:

• ProofWeb: trata-se de uma ferramenta de ensino e prática de Lógica para a comunicação

com assistentes de demonstração de teoremas.

• Coq: trata-se de um assistente de demonstração de teoremas que possibilita a imple-

mentação de teorias formais para demonstrar ou refutar.

• Gerador de Conjecturas: trata-se de uma ferramenta de geração de tarefas para de-

monstrar ou refutar no ProofWeb e foi desenvolvida por alunos de iniciação cientí�ca

em colaboração conosco.

• TryOCaml: trata-se de uma infraestrutura de tutorial interativo para o ensino e a inte-

Page 21: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

19

ração com a linguagem de programação funcional OCaml.

• Moodle: trata-se de um ambiente virtual de aprendizagem para acompanhamento de

alunos, disponibilização de recursos educacionais e gerenciamento de cursos na web.

• IMS Basic Learning Tools Interoperability : trata-se de uma especi�cação para imple-

mentação da integração de ferramentas educacionais.

Nossa metodologia envolveu a integração das ferramentas descritas acima e a imple-

mentação de uma teoria no Coq para refutar conjecturas.

Com o objetivo de realizar experimentos com a infraestrutura desenvolvida, nos se-

mestres de 2012.2 e 2013.1 da disciplina de Lógica Aplicada à Computação na UFRN, nós

utilizamos o TryLogic para a distribuição de tarefas desa�adoras sobre a demonstração

e refutação de conjecturas. No Capítulo 5, nós discutiremos os resultados obtidos das

experiências de aplicação.

Ao longo do desenvolvimento da presente dissertação, nós também apresentaremos

com detalhes as justi�cativas para estas escolhas metodológicas e para as ferramentas

utilizadas.

1.3 Trabalhos Resultantes do Projeto

O desenvolvimento do nosso projeto resultou na apresentação dos seguintes trabalhos:

1) TERREMATTE, Patrick; GALDINO, Thales; MARCOS, João. Design de objetos de

aprendizagem para o ensino de Lógica. Anais do IX ERMAC da Regional 03. 2009.

(TERREMATTE; GALDINO; MARCOS, 2009)

Objetivo: Apresentar a aplicação do padrão IMS Learning Design nos objetos de

aprendizagem do Logicamente.

2) TERREMATTE, Patrick; MARCOS, João; GALDINO, Thales. O Logicamente: A

implementação colaborativa de Objetos de Aprendizagem de Lógica. Anais do XX Sim-

pósio Brasileiro de Informática na Educação - SBIE, 2009. (TERREMATTE; MARCOS;

GALDINO, 2009)

Objetivo: Relatar a proposta do projeto Logicamente e seus objetos de aprendiza-

gem para o ensino de Lógica.

3) COSTA, Fabrício; MARCOS, João; TERREMATTE, Patrick. (Non)Sequitur: Tea-

ching and practicing Formal Semantics and Theorem Proving. Anais do 16th Brazilian

Logic Conference (EBL), 2011.(COSTA; MARCOS; TERREMATTE, 2011).

Objetivo: Apresentar o funcionamento de uma proposta de ensino de Lógica através

Page 22: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

20

de um jogo sobre demonstração ou refutação.

4) TERREMATTE, Patrick; COSTA, Fabrício; MARCOS, João. Logicamente: A Virtual

Learning Environment for Logic based on Learning Objects. Third International Confe-

rence Tools for Teaching Logic. Springer-Verlag, 2011, 6680, 223-230. (TERREMATTE;

COSTA; MARCOS, 2011).

Objetivo: Descrever o projeto Logicamente, seus objetos de aprendizagem e uma

proposta sobre roteiros de aprendizagem.

1.4 Plano Geral e Estrutura da Dissertação

O nosso texto está organizado através da seguinte estrutura:

• Capítulo 2. Uma proposta de ensino de Lógica: o uso de estratégias para demonstrar ou

refutar Apresentaremos uma discussão sobre o papel da Lógica em orientações curricu-

lares internacionais para cursos de Computação. Apresentaremos conceitos necessários

para produzir demonstrações em Dedução Natural no sistema Np e as noções sobre

Formalismo Semânticos para refutar através do sistema Semp.

• Capítulo 3. Ferramentas para o ensino de Lógica Vamos propor que os desa�os do

ensino de Lógica são análogos aos problemas abordados pela teoria da carga cognitiva,

e em razão disso, argumentamos que as ferramentas didáticas são recursos que auxiliam

a aprendizagem e domínio prático. Apresentaremos uma breve descrição sobre o estado

da arte das ferramentas didáticas para ensinar Lógica, e por �m, nos concentraremos na

apresentação de critérios sobre os assistentes de demonstração e sobre uma ferramenta

que selecionamos para a integração com nossa infraestrutura: o ProofWeb.

• Capítulo 4. O tutorial interativo TryLogic e a integração de ferramentas externas

com o Moodle Discutiremos como a convergência de recursos em e-learning tem sido

articulada com a produção de plataformas de cursos em massa de grande distribuição

(Massive Open Online Courses), e apresentaremos alguns esclarecimentos sobre de�ni-

ções de plataformas de ensino como os Ambientes Virtuais de Aprendizagem (AVA).

Em seguida, descreveremos brevemente a proposta de ferramentas do Logicamente

e como os seus desa�os encaminharam para a proposta de uma estratégia de ensino

envolvendo a demonstração ou refutação de conjecturas. Por �m, apresentaremos nos-

sas contribuições: a implementação da teoria semântica para refutação, o gerador de

conjecturas, a implementação do tutorial TryLogic e a integração das ferramentas

com o Moodle através do padrão IMS Basic LTI.

• Capítulo 5. Análise da experiência de aplicação de tarefas de Demonstrar ou Refutar

Page 23: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

21

Descreveremos a aplicação de exercícios para demonstrar ou refutar, uma avaliação

sobre os resultados e propomos alguns trabalhos futuros.

No texto adotamos as seguintes convenções. As palavras expressas em caractere espe-

cial identi�cam ferramentas computacionais, por exemplo o Moodle, ou palavras reserva-

das de uma linguagem de programação, por exemplo Variable A : Prop. As palavras em

idioma estrangeiro estão em itálico, com exceção das ferramentas e palavras reservadas.

Algumas palavras estão acompanhadas de seu termo em inglês, quando a versão inglesa

for bem difundida na literatura.

Page 24: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

22

2 O uso de estratégias para

demonstrar ou refutar: uma

proposta de integração para o

ensino de Lógica

Neste capítulo, discutiremos o papel da Lógica a partir das orientações curriculares for-

necidas pelas organizações Association for Computing Machinery (ACM) e a IEEE Com-

puter Society1. Em seguida, iremos apresentar os argumentos em Barland et al. (2000)

e Henle (2011) sobre propostas curriculares para resolver alguns problemas enfrentados

no ensino de Lógica. Vamos apresentar uma abordagem ao ensino de Lógica relacionada

a estratégias de Demonstração ou Refutação. Apresentaremos os conceitos fundamentais

de Lógica e Sistemas Formais que serão relevantes para a exposição de ferramentas de

ensino de Lógica. Nosso foco serão os conceitos envolvidos nos procedimentos de tare-

fas de demonstrar ou refutar (DxR) em Lógica Proposicional. Por este motivo, visando

à exposição de uma estratégia de demonstração, apresentaremos o Sistema de Dedução

Natural Np. Em seguida, apresentaremos os conceitos semânticos necessários para produ-

zir refutações em Lógica Proposicional. Os conceitos apresentados e discutidos no atual

capítulo formam parte de um núcleo básico desenvolvido nas ementas das disciplinas de

Lógica, assim, através desses conceitos, veremos no Capítulo 3 uma breve discussão sobre

as vantagens da utilização de ferramentas computacionais para o ensino, e também vere-

mos brevemente o estado da arte de ferramentas que objetivam ensinar ou aplicar alguns

conceitos apresentados neste capítulo. Os conceitos apresentados aqui também serão es-

senciais para o Capítulo 4, em que detalharemos como as implementações dos sistemas Np

e Semp serão utilizados pela ferramenta do ProofWeb e ensinadas através da nossa ferra-

menta TryLogic, para então, efetivamente, expor nossa estratégia de ensino envolvendo

tarefas de demonstração e refutação de conjecturas e relatar as experiências de aplicação

1As orientações curriculares para diversas áreas da computação estão disponíveis em http://www.

acm.org/education/curricula-recommendations.

Page 25: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

23

do TryLogic no Capítulo 5.

2.1 O papel da Lógica no currículo da Computação

A lógica possui um papel basilar para a Computação (HALPERN et al., 2001; BRADLEY;

MANNA, 2007):

LógicaComputação

= CálculoEngenharias

Em particular, a Lógica em conjunto com métodos de matemática discreta é fundamen-

tal para a elaboração de de�nições indutivas de conjuntos, relações e demonstrações em

diversas aplicações da área de Ciência da Computação. Assim, vamos argumentar que

os currículos dos cursos de computação precisam prover aos estudantes uma base lógica

bastante sólida para o desenvolvimento das habilidades necessárias ao planejamento e

desenvolvimento de artefatos computacionais robustos e seguros.

Na primeira metade do século XX, a alfabetização cientí�ca2 tradicional estava ba-

seada em um paradigma da descoberta cientí�ca de�nido como Modo 1 por Gibbons et

al. (1994) � que era caracterizado pela hegemonia do formato teórico das ciências ex-

perimentais, orientada pelo núcleo de taxonomia de suas disciplinas e pela organização

cientí�co estabelecida pela autonomia universitária. A partir da década de 1970 e sobre-

tudo no contexto tecnológico atual, a produção de conhecimento foi sendo substituída por

um novo paradigma como Modo 2, em que o conhecimento é socialmente estruturado,

direcionado a aplicações, transdisciplinar, colaborativo, em que as responsabilidades são

múltiplas e as autoridades são questionadas. Neste contexto do Modo 2 de produção de

conhecimento, o debate e o domínio de ferramentas analíticas são essenciais, e portanto

a Lógica se caracteriza também como disciplina básica para a alfabetização cientí�ca.

No documento Computer Science Curriculum 2008: An interim revision of CS 2001

das associações ACM e IEEE CS (2008), estão listadas as áreas de conhecimento de Ciência

da Computação3, contendo um conjunto de orientações curriculares, recomendações e

2�A capacidade de usar conhecimento cientí�co, de identi�car questões e extrair consequências a partirde evidências, para compreender e ajudar a tomar decisões a respeito do mundo natural e das mudançasnele introduzidas pela atividade humana.�(OECD, 2007)

3O documento de orientações divide 14 áreas de conhecimento de Ciência da Computação: DiscreteStructures (DS), Programming Fundamentals (PF), Algorithms and Complexity (AL), Architecture andOrganization (AR), Operating Systems (OS), Net-Centric Computing (NC), Programming Languages(PL), Human-Computer Interaction (HC), Graphics and Visual Computing (GV), Intelligent Systems(IS), Information Management (IM), Social and Professional Issues (SP), Software Engineering (SE) eComputational Science (CN).

Page 26: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

24

Objetivos de Ensino de temas e tópicos que fariam parte do núcleo rígido e obrigatório

de Ciência da Computação, bem como um conjunto de tópicos eletivos e complementares

aos pro�ssionais que trabalham na área da computação.

Segundo estas orientações da ACM (2008, p.38), a disciplina de Lógica está de fato

relacionada com os Objetivos de Ensino dos seguintes temas obrigatórios: na área de

Estruturas Discretas com o mínimo de 43 horas seriam tratados os temas de Lógica Bá-

sica (DS/BasicLogic) (p.38) e Técnicas de Demonstração (DS/ProofTechniques) (p.38); e

na área de Sistemas Inteligentes seriam tratados os temas de Sistemas Baseados em Co-

nhecimento (IS/KnowledgeBasedReasoning) (p. 80) e Raciocínio Avançado (IS/Advanced-

Reasoning) (p.81).

O tema de núcleo DS/BasicLogic envolve os seguintes tópicos para o mínimo de 10

horas: Lógica Proposicional, Conectivos Lógicos, Tabela de Verdade, Formas normais

conjuntiva e disjuntiva, Validade formal, Lógica de Predicados, Quanti�cação Universal

e existencial, Modus ponens e modus tollens e Limitações da Lógica de Predicados. En-

tretanto, com di�culdade, este conjunto de tópicos pode ser explorado em 60 horas. Não

obstante a despeito das di�culdades, estes tópicos envolvem principalmente os seguintes

objetivos:

• Descrever como ferramentas formais da lógica simbólica podem ser usadas para modelar

situações da vida real, incluindo aplicações computacionais tais como a correção de

programas, consultas a banco de dados e algoritmos.

• Aplicar lógica formal e/ou informal para testar o comportamento de softwares.

O tema de núcleo DS/ProofTechniques envolve os seguintes tópicos para o mínimo de

12 horas: conceito de implicação (contrapositiva, negação e contradição; a estrutura de

demonstrações matemáticas; demonstrações diretas, por contraposição, por contraexem-

plo, por contradição, indução matemática, indução forte e de�nições recursivas. Alguns

dos objetivos de ensino são:

• Apresentar a estrutura básica e fornecer exemplos para cada técnica de demonstração.

• Discutir sobre quais melhores estratégias de demonstrações para determinado problema.

• Desenvolver demonstrações com indução matemática e estruturas recursivas.

Além disso, no documento da ACM e IEEE CS (2008, p.80), a Lógica é retomada

apenas na área de Sistemas Inteligentes (IS), nos tópicos:

• IS/KnowledgeBasedReasoning como tema de núcleo (por no mínimo 4h), sobre o mé-

todo de resolução e demonstração de teoremas, bem como distinções entre inferências

Page 27: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

25

monotônicas e não-monotônicas.

• IS/AdvancedReasoning como tema eletivo, sobre representação estruturada, lógicas des-

critivas, lógicas não-clássicas, lógica dinâmica, redes bayesianas, teoria da decisão, on-

tologias, redes semânticas.

A Lógica aparece também de forma implícita na área sobre Social and Professional

issues (SP), especi�camente no núcleo SP/AnalyticalTools (por no mínimo 2h) com tó-

picos relacionados a avaliação, identi�cação e compreensão de argumentos éticos, valores

e pressuposições éticas, com os objetivos de analisar um argumento para identi�car pre-

missas e conclusões; detectar o uso de falácias em argumentos; identi�car stakeholders4 e

suas atribuições; e articular os aspectos éticos em decisões técnicas (ACM; IEEE CS, 2008,

p.94).

O documento ainda apresenta recomendações pedagógicas que envolvem o contexto

motivacional na perspectiva da aprendizagem e reforça a apresentação a aplicações e opor-

tunidades pro�ssionais (ACM; IEEE CS, 2008, p.30). Todavia, não há referências a aplica-

ções da Lógica em diversos outros tópicos, por exemplo no Tópico de PL/Programming-

LanguageSemantics, ou mesmo não está estabelecida a relação da Lógica com temas de

núcleo sobre argumentação em SP/AnalyticalTools. Além disso, cabe notar que a Lógica

é apresentada apenas com relação ao seu caráter demonstrativo, e não pela capacidade

analítica de construir também refutações.

A qualidade, valor e relevância do texto da ACM e IEEE CS (2008), não estão em

questão; no entanto, a sua estrutura pode revelar uma abordagem da Lógica que carece

de uma integração mais forte com outras áreas da computação, e mais ainda, possui uma

lacuna entre conceitos teóricos e aplicações concretas. Não basta indicar que Estruturas

Discretas são relevantes para técnicas computacionais, é preciso que os objetivos de Ensino

envolvam uma integração entre a Lógica e aplicações concretas da computação. Nossa

proposta é que a Lógica seria apresentada de forma a resolver problemas estritamente

integrados à aplicações. Neste caminho a apresentação de atividades que envolvem a

demonstração e refutação de conjecturas, evidência a capacidade analítica de produzir

heurísticas de demonstrações.

A di�culdade dos alunos em aprenderem e apreciarem a relevância das habilidades

lógicas sugere na realidade um problema curricular, sobretudo com o papel da Lógica na

estrutura dos cursos e na metodologia de apresentação tradicional. Segundo Barland et

4Os stakeholders são os envolvidos, intervenientes ou interessados no processo de desenvolvimento emanutenção de um projeto de sistema da informação que afetam ou são afetados pelas ações do projeto.

Page 28: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

26

al. (2000, p.3), os currículos são limitantes nos seguintes aspectos:

• O papel periférico da Lógica carrega a impressão de irrelevância para a carreira cientí�ca

e pro�ssional. Há pouca, ou nenhuma discussão a respeito das potenciais aplicações da

Lógica ou de como os conceitos lógicos estão envolvidos em raciocínios computacionais.

• Os conceitos básicos de Lógica são concentrados em poucas semanas de um curso de ma-

temática discreta, envolvendo tabela de verdade, lógica proposicional e técnicas básicas

de demonstração. Ingenuamente, as aplicações a problemas realísticos são considera-

das além do domínio de conhecimento dos alunos, portanto, não apresentam ênfase em

aplicações da Lógica em Ciência da Computação.

• A separação tradicional entre teoria e prática di�culta ainda mais, pois diversos aspectos

da Lógica são vistos isoladamente. Muitas vezes, as apresentações reforçam o contexto

das álgebras de Boole através de simples componentes de hardware, e negligenciam os

papeis de linguagens de especi�cação e procedimentos de decisão.

• Os currículos convencionais apresentam conteúdos em um estilo de aprendizado de-

dutivo, passivo e sequencial, quando na verdade muitas vezes a maioria dos alunos

aprendem melhor através da combinação de diferentes estilos e formas de aprendiza-

gem.

A falta de formação básica sólida dos estudantes que entram na universidade também

contribui para uma elevada taxa de reprovação e trancamento da disciplina de Lógica

Aplicada a Computação. Mesmo nos cursos de Filoso�a e Matemática o cenário não é

muito diferente: a Lógica representa um desa�o tanto para docentes como para discentes,

de forma que podemos relacionar os mesmos problemas apontados acima em exposições

que não apresentam aplicações a problemas realísticos, subestimando o domínio de co-

nhecimento dos alunos, e a currículos que não apresentam efetivas motivações da Lógica

aos respectivos cursos de Filoso�a e Matemática.

A solução proposta por Barland et al. (2000, p.4) é integrar o raciocínio lógico apli-

cado e ferramentas computacionais de lógica, resolvendo diversos problemas através dos

seguintes pontos:

• O uso de ferramentas apresentam motivações para o trabalho prático de conceitos.

• A integração de ferramentas auxiliam o contexto de aprendizagem a assimilar conceitos

abstratos através de exemplos concretos. Os alunos podem compreender o que teoremas

representam em um domínio especí�co e como as demonstrações veri�cam relações entre

pré-condições e pós-condições de um programa.

• A integração de materiais e ferramentas em um curso reforça a relevância de conceitos

Page 29: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

27

lógicos dentro de uma grade curricular de Ciência da Computação.

A proposta envolve apresentar o conteúdo em módulos de ensino integrados a ou-

tras disciplinas, tais como banco de dados, inteligência arti�cial, engenharia de software,

arquitetura de software, compiladores, e programação concorrente.

Os problemas do ensino de Lógica são discutidos em uma interessante abordagem

no artigo [The Many Rewards of Putting Absolutely Everything into Introductory Logic]

de James Henle (2011), em que é apresentado um relato da experiência da disciplina de

Lógica e expõe as motivações para uma abordagem abrangente da lógica, mesmo em um

curso introdutório. A proposta é apresentada em resposta a um conjunto de problemas

que a Lógica enfrenta.

A Lógica é tida como irrelevante, mesmo que muitos estejam dispostosa respeitá-la � ainda que apenas à distância � de maneira que nãoestabelecem relações entre os estranhos símbolos da lógica formal e as-pectos concretos do mundo. (...) Assim, estes problemas produzem umagrande indiferença por parte dos alunos, quando na verdade deveriamestar fascinados pela beleza e poder da lógica, compartilhada atravésdas motivações que nós docentes de Lógica possuímos. (HENLE, 2011,Tradução livre, p.110)

A proposta de Henle é oferecida através de uma equipe de docentes, composta por

dois professores � dividida entre um de Filoso�a e outro de Matemática � e contando

também com monitores e alunos de pós-graduação, com o intuito de apresentar o curso sob

dois pontos de vista. Assim, se duas perspectivas são propostas, os alunos têm o prazer

de ver questões e problemas sendo debatidos, portanto, mais alunos vêem sentido em

Lógica, de modo que para Henle (2011, p.112), as discussões são realmente libertadoras

para produzir uma aprendizagem signi�cativa.

O curso de James Henle reúne aspectos de Lógica Formal e Pensamento Crítico, de

forma a abranger pro�ssionalmente aplicações da lógica para Cientistas da Computação,

Filósofos, Matemáticos e Linguistas. Por exemplo, os problemas lógicos são formulados

para os alunos poderem relacionar sentenças lógicas com circuitos lógicos, linguagem na-

tural, notação polonesa, tabelas de verdade e diagramas de Venn, com o objetivo de

demonstrar que lógica permeia diferentes contextos. O objetivo é estabelecer uma abor-

dagem ampla, integrada e profunda da Lógica. O curso não pretende que os alunos sejam

especialistas em lógica, mas que os alunos se tornem lógicos e que reconheçam aspectos

da lógica. A justi�cativa é de que

Estudantes esquecem os materiais de aula. Até os melhores dos alunos,aqueles que se tornam professores assistentes, perdem a compreensão e

Page 30: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

28

o domínio de alguns detalhes. Mas os alunos crescem, em aspectos lógi-cos. (...) Empregos desaparecem. Indústrias fecham. Paradigmas mudam.Nossos estudantes só podem se preparar para estas situações ao se tor-narem mais inteligentes, e isto conseguem através do estudo da Lógica.(HENLE, 2011, Tradução livre, p.119)

As abordagens de Barland et al. (2000) e Henle (2011) propõem cursos integrados

com amplo material e aspectos práticos.

2.2 Ensino de Lógica para DxR conjecturas

Um dos problemas do ensino de Lógica está relacionado ao fato de que muitos pro�ssionais

da computação, embora concordem que matemática é fundamental para engenharias tra-

dicionais, a�rmam, no entanto, que não precisam ou não usam matemática. Segundo Hen-

derson (2003), isso se ocorre por eles não utilizarem explicitamente matemática, ainda que

realizem e implementem raciocínios lógicos. A lógica é essencial, em particular, para ana-

lisar se um predicado satisfaz as condições de uma iteração, por exemplo, seja {I(...)}

uma asserção lógica qualquer, podemos analisar um caso while-do estruturado da se-

guinte forma:

# { pré-condição }

# < Código de Inicialização >

# { I(...) é verdadeiro }

# while I(...) é verdadeiro } do

# | { I(...) e C(...) são verdadeiros }

# | < Código no corpo da interação >

# | { I(...) é verdadeiro }

# { I(...) e não C(...) são verdadeiros } ⇒ { pós-condição }

Neste exemplo, se o código terminar � fator que também está relacionado a aspectos

lógicos-matemáticos �, a asserção �{ I(...) e não C(...) são verdadeiros }� precisa

implicar na pós-condição desejada (I(...) & não C(...) ⇒ {pós-condição} ). Caso seja

refutada a implicação na pós-condição, então o código da iteração não implementa a

especi�cação pretendida pela pós-condição, por outro lado, se for demonstrado que a

asserção implica na pós-condição, então nossa iteração satisfaz a especi�cação pretendida.

A heurística empregada na análise deste tipo de situação envolve, basicamente, a tarefa

de veri�car se uma conjectura pode ser demonstrada, ou refutada.

O cerne da nossa metodologia pedagógica é ensinar o uso de raciocínio lógico para

decidir conjecturas para as quais não está previamente determinado se são demonstráveis,

ou refutáveis. O objetivo principal é usar a lógica como ferramenta para lidar com o

Page 31: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

29

raciocínio conjectural sobre asserções lógicas.

Os cursos de Lógica enfatizam a análise de diferentes estratégias de demonstrações (di-

retas, por contraposição, por contraexemplo, por contradição...). No entanto, o raciocínio

empregado no processo de refutação não pode ser menosprezado. A Lógica fornece pode-

rosas ferramentas analíticas para resolver problemas que envolvam asserções que podem

ser refutadas, ou demonstradas.

O uso de heurísticas para Demonstrar ou Refutar (DxR) reúne os conteúdos de Lógica,

tanto em aspectos relacionados à lógica formal, como também sobre raciocínio crítico,

através do uso de teoria das demonstrações e de formalismos semânticos. O entendimento

de aspectos formais mais profundos também é possível através da realização de tarefas de

DxR, em particular representa uma aplicação prática dos metateoremas sobre a Correção

e Completude.

Na literatura, uma abordagem de DxR semelhante a nossa está presente no livro

[Proof and Disproof in Formal Logic - An Introduction for Programmers ] de Richard

Bornat (2005) que estrutura o conteúdo de lógica em:

• Demonstração via Formalismo Sintático. Apresenta um sistema formal através de ex-

perimentos práticos guiado pela ferramenta assistente de demonstração J∀p∃5.• Refutação via Formalismo Semântico. Mostra como construir contra-exemplos mate-

máticos para veri�car que uma demonstração é impossível, também contando com o

auxilio do J∀p∃ para a construção de contra-exemplos.

• Especi�cação de programas e demonstrações. Exibe como aplicar a Lógica em problemas

reais da Ciência da Computação, na descrição e veri�cação de programas. Aqui também

o conteúdo é apresentado em conjunto com o J∀p∃ através de exemplos de aritmética.

Na próxima seção vamos apresentar os conceitos relevantes para a nossa abordagem

de DxR, em particular apresentaremos a de�niremos a linguagem da Lógica proposicional,

a de�nição do Sistema Formal Np para demonstrar em Lógica Proposicional e algumas

noções básicas de formalismo semântico empregado em refutações. Para denotar conjectu-

ras DxR, Γ |∼α, assumindo uma relação |∼ ∈ {`,2} que representa uma das duas únicas

alternativas de asserções, ou seja que podem ser demonstrável em Dedução Natural (`),ou refutável via Semântica (2).

5A ferramenta J∀p∃ será apresentada juntamente com outras ferramentas para o ensino de Lógica noCapítulo 3.

Page 32: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

30

2.3 Lógica Proposicional para Demonstrar: Dedução Na-

tural

A Lógica Proposicional (LProp) é a parte da lógica que trata de proposições declarativas,ou seja, a�rmações que podem ser verdadeiras ou falsas, e expressas através de conectivos

lógicos e das regras que os manipulam. Sua importância se deve ao fato de que muitos

conceitos complexos e so�sticados de lógica matemática aparecem primariamente aqui

num contexto mais simples. Todas as sentenças proposicionais podem ser formadas com-

posicionalmente a partir dos seguintes conectivos lógicos, respectivamente representados

por sua forma, nome, símbolo e aridade no índice:

a) `... e ...', a conjunção (∧2);b) `... ou ...', a disjunção (∨2);c) `se... então ...', a implicação (→2);

d) `... se, e somente se ...', a bi-implicação (↔2);

e) `não ...', a negação (¬1); ef) `contradição', o absurdo (⊥0).

As fórmulas atômicas da lógica proposicional não possuem estrutura interna e as

fórmulas mais complexas que os átomos da lógica proposicional são construídas com os

conectivos lógicos mencionados acima.

De�nição 2.1. O alfabeto da lógica proposicional Σ é um conjunto formado por:

a) um conjunto enumerável de letras proposicionais Prop = {A, B, C, D, E, F, A0, B0, C0,

D0, E0, F0, A1, B1, C1, D1, E1, F1...}.

b) os parênteses Parent = {(, )}.c) os conectivos lógicos primitivos Conec = {⊥0,¬1, →2, ↔2 , ∧2 e ∨2}.

Nós omitiremos os parênteses externos quando não houver ambiguidades na represen-

tação das fórmulas.

De�nição 2.2. Um esquema de fórmula é uma fórmula construída através do alfabeto

da lógica proposicional em que as letras proposicionais são representadas pelas letras gre-

gas (α, β, γ, δ, ε, φ, ψ...) e denotam meta-fórmulas que podem ser substituídas por instân-

cias da meta-fórmula. Em particular, α→ α é um esquema de fórmula que, por exemplo,

possui as seguintes instâncias (A ∧ ¬B)→ (A ∧ ¬B) e ((α ∨ β) ∧ γ)→ ((α ∨ β) ∧ γ).

A linguagem da lógica proposicional é de�nida recursivamente a partir de seu alfabeto,

como se segue:

Page 33: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

31

De�nição 2.3. Considere o alfabeto Σ e os esquemas de fórmulas. Uma fórmula bem

formada (fbf ) é uma sequência de símbolos indutivamente de�nida por :

a) α é uma fórmula atômica se, e somente se, α ∈ Prop, ou seja, se α é uma letra

proposicional sem conectivos, ou se α for a constante de absurdo ⊥;b) Se α e β são fórmulas então ¬α, (α →β), (α ↔β), (α ∧β) e (α ∨β) também são

fórmulas;

c) α é uma fórmula somente se for obtida nas condições acima.

De�nição 2.4. A função complexidade de fórmulas (Complx é de�nida do seguinte

modo:

a) Complx(α) = 1 para cada α ∈ Prop, ou seja, no caso de φ atômico, ou se α for a

constante de absurdo ⊥;b) Complx(¬α) = Complx(α) + 1;

c) Complx(α → β) = Complx(α ∧ β) = Complx(α ∨ β) = Complx(α ↔ β) =

Complx(α) + Complx(β) + 1.

De�nição 2.5. O conceito de subfórmula (Subfor) é de�nido também recursivamente

do seguinte modo:

a) α é subfórmula de α;

b) se ¬β é subfórmula de α, então β também é subfórmula de α; e

c) se (β → γ), (β ↔ γ), (β ∧ γ), ou (β ∨ γ) é subfórmula de α, então β e γ também são

subfórmulas de α;

Através da de�nição do alfabeto e das formulas bem formadas da lógica proposicional,

podemos determinar uma forma de veri�cação do que seria uma relação de consequên-

cia entre fórmulas. Assumindo uma abordagem semântica, poderíamos analisar os valores

de verdade das fórmulas, entretanto, vamos desenvolver esta abordagem semântica mais

adiante na Seção 2.4. Agora nos concentrarmos apenas nas propriedades sobre o forma-

lismo dedutivo do Sistema Formal Np. Deste aspecto, são tratadas apenas inferências, ou

deduções válidas, � independente da verdade ou falsidade das proposições.

De�nição 2.6. O Sistema Formal de Dedução Natural Np é de�nido:

a) Pela especi�cação da Linguagem proposicional FL.b) Por um conjunto �nito RNp de regras de inferência, nos seguintes formatos:

D2 ≡ΓD1

α1 . . . αk

β(regra 1)

D4 ≡Γ \ {γ m

. . .δn

}D3

α1 . . . αk

β(regra 2):m...n

Page 34: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

32

onde a linha horizontal representa a aplicação da regra como um passo de inferência;

D2 representa a derivação resultante da (regra 1) e a fórmula β é obtida como con-

sequência direta das fórmulas α1, . . . αk com o conjunto Γ de hipóteses abertas,

ou premissas ; e D4 representa a derivação resultante da (regra 2) e a fórmula β é

obtida como consequência direta das fórmulas α1 . . . αk com o conjunto Γ\{γ . . . δ} dehipóteses abertas obtido pelo descarte da hipótese fechada γ.

Para desenvolver essa perspectiva sobre a manipulação de conectivos, além de uma

linguagem, de�nimos um sistema de dedução através das regras de dedução. Neste sen-

tido, uma das principais propriedades de um formalismo dedutivo é produzir derivações

para veri�car consequências lógicas. A dedução natural demonstra consequências lógicas

através das regras de dedução, que servem basicamente para derivar uma determinada

conclusão a partir de um dado conjunto de premissas, por manipulações válidas dos co-

nectivos lógicos da linguagem.

As regras de dedução determinam não apenas o modo como se obtêm conclusões,

a partir de premissas, mais que isso, através das regras de introdução e eliminação se

de�nem também quais são os signi�cados e os usos possíveis dos conectivos lógicos. Estas

regras são de�nidas de forma que cada conectivo preserve a validade dedutiva entre as

fórmulas.

O lógico matemático Gerhard Gentzen se consagrou como o primeiro a apresentar

uma caracterização do termo �Dedução Natural� (PELLETIER, 1999, p. 113) para descre-

ver sistemas lógicos formais através de árvores de derivação. As regras de dedução são

apresentadas de acordo com a formulação clássica de Gentzen conforme o estilo em árvore,

expressando o caminho das premissas à conclusão. As demonstrações em dedução natural

são apresentadas em um formato de árvore com fórmulas como nós das árvores. A raiz da

árvore é a fórmula demonstrada, e as hipóteses são as �folhas� da árvore.

No presente trabalho vamos adotar o estilo de Dedução Natural em árvores à la

Gentzen, por explicitar de forma bi-dimensional os ramos com as regras de inferência

realizadas nas derivações. Na Figura 1, podemos observar e comparar a notação Gentzen

com o estilo linear à la Fitch. Nota-se como a forma em árvore pode reduzir a forma de

representação, todavia, em geral haverá mais nós em uma derivação à la Gentzen do que

linhas em uma derivação à la Fitch.

Nós expressamos as regras de dedução da seguinte forma:

Page 35: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

33

Figura 1: Estilos de Dedução Natural

αi

β → α(→I):j

α→ (β → α)(→I):i)

1 α

2 β

3 α R, 1

4 β → α (→I), 2�3

5 α→ (β → α) (→I), 1�4

a) Dedução Natural à la Gentzen b) Dedução Natural à la Fitch

α β

α ∧ β(∧I) α ∧ β

α(∧E1)

α ∧ ββ

(∧E2)

αα ∨ β

(∨I1)β

α ∨ β(∨I2) α ∨ β

αi

....γ

βj

....γ

γ(∨E):i,j

αi

....β

α→ β(→I):i

α→ β α

β(→E)

αi

....⊥¬α (¬I):i

¬α α⊥

(¬E) ⊥α⊥i

¬α i....⊥α⊥C :i

αi

....β

βj

....α

α↔ β(↔I):i,j α↔ β β

α(↔E1)

α↔ β α

β(↔E2)

As regras de introdução da implicação (→ I), introdução da bi-implicação (↔ I),

eliminação da disjunção (∨ E) e absurdo clássico (⊥C) realizam o processo de descarte

de hipótese representada através de um rótulo (i ou j). Para evitar con�itos de rótulos e

demonstrações equivocadas, é preciso assegurar que o rótulo seja sempre novo para cada

Page 36: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

34

uma das aplicações e represente a fórmula descartada no ramo acima da aplicação da

regra.

Nos casos de regras de eliminação, chamamos de premissa maior a premissa que contém

o conectivo lógico a ser eliminado, e se existir(em) outra(s) premissa(s) a(s) chamamos

de premissa menor.

De�nição 2.7. O comprimento de uma derivação D é o número total de ocorrências

de fórmulas em D, denotado por l(D). De�nido recursivamente por:

1. l(D) = 1, se D é uma fórmula.

2. l(D) = l(D1) + l(Dn) + 1, se D é

D1...Dnα

(regra)

Se Γ é um conjunto de fórmulas, então se diz que α pode se deduzida, ou derivada

de Γ se existe pelo menos uma uma árvore de derivação construída utilizando regras de

dedução de um sistema S, onde a fórmula α é a raiz da derivação, e qualquer hipótese

que não for descartada pertence a Γ. Denotaremos a existência de uma derivação em S

por Γ `S α.

2.3.1 Exemplos de derivação em Np

Exemplo 2.8. Para exempli�carmos uma derivação no sistema de Dedução Natural Np,

apresentamos a justi�cativa da validade da conjectura α ∨ β, α→ γ, β → δ ` γ ∨ δ.

α ∨ β

α→ γ αi

γ(→E)

δ ∨ γ(∨I1)

β → δ βj

δ(→E)

δ ∨ γ(∨I2)

δ ∨ γ(∨E):i,j

Exemplo 2.9. Como novo exemplo, usando sobretudo regras da ¬ e ↔, segue abaixo o

teorema ` ¬¬¬α↔ ¬α.

¬¬¬α i

¬α kα

j

⊥(¬E)

¬¬α (¬I):k

⊥(¬E)

¬α (¬I):j

¬¬α m ¬α n

⊥(¬E)

¬¬¬α (¬I):m

¬¬¬α↔ ¬α (↔I):i,n

Exemplo 2.10. Em seguida, ilustramos uma derivação do terceiro excluído ` α ∨ ¬α.

Page 37: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

35

¬(α ∨ ¬α)i

¬(α ∨ ¬α)i αα ∨ ¬α (∨I1)

⊥(¬E)

¬α (¬I):j

α ∨ ¬α (∨I2)

⊥(¬E)

α ∨ ¬α (⊥c):i

2.3.2 Considerações sobre Np

Nesta seção apresentamos brevemente alguns conceitos relevantes para produzir derivações

em Lógica Proposicional. Em resumo, vimos que um sistema de Dedução Natural manipula

uma estrutura de dados chamada de árvore de derivação de forma a representar uma

demonstração formal.

Para uma melhor compreensão dos conceitos de Lógica apresentados de forma resu-

mida e como tais conceitos podem ser aplicados na computação e em outras áreas do

conhecimento como Filoso�a, Matemática, ou Linguística, cf. (BARWISE; ETCHEMENDY,

2002; HUTH; RYAN, 2004). Em particular, na proposta de uma orientação para estudo

individualizado, uma excelente coletânea de livros de Lógica foi reunida por Peter Smith

(2012), agrupando obras que tratam do estado da arte em diversos tópicos de Introdução

à Lógica Formal; Lógica de Primeira ordem; Lógica Modal; Teoria de Modelos; Teoria de

Conjuntos; bem como aspectos relacionados à Aritmética, à Computação e aos Teoremas

da Incompletude de Gödel.

2.4 Lógica Proposicional para Refutar: Formalismo Se-

mântico proposicional

Nesta seção, apresentaremos brevemente os conceitos formais necessários para o processo

de refutação e análise semântica de conjecturas proposicionais. O Formalismo Semântico

refere-se à noção de valoração e ao conceito de satisfação de fórmulas de�nido através de

valorações.

Uma valoração é uma função sobre o conjunto de letras proposicionais para o con-

junto de valores de verdade. No nosso caso, o valor 0 representa uma proposição Falsa e o

valor 1 representa uma proposição Verdadeira. Dessa forma, v é uma função representada

por v : Prop→ {0, 1}.

De�nição 2.11. Dada uma valoração v sobre Prop, a satisfação de φ ∈ FL por v é

Page 38: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

36

representada por v φ, e de�nida recursivamente do seguinte modo:

a) v A se v(A) = 1, para cada A ∈ Prop

b) v 1 ⊥ ou seja v(⊥) = 0

c) v ¬α se v 1 α

d) v α→ β se v 1 α ou v β

e) v α ∧ β se v α e v β

f) v α ∨ β se v α ou v β

g) v α↔ β se v α e v β, ou se v 1 α e v 1 β

Teorema 2.12. Não é possível existir uma valoração v tal que v α e v 1 α. Demons-

tração por indução na complexidade das fórmulas.

A asserção v α representa o fato de que um valoração v satisfaz a fórmula φ. Dada

a fórmula φ ∈ FL e uma valoração v sobre Prop, através de v 1 φ dizemos que v falsi�ca

φ, ou que φ não é satisfeita por v. Dado Γ ⊆ FL, nós representaremos v Γ se v α

para todo α ∈ Γ.

A partir da noção de valoração e satisfação podemos de�nir os conceitos de Contin-

gência, Antilogia e Tautologia:

De�nição 2.13. φ é uma contingência, se há uma valoração v1 sobre Prop que satisfaz

φ e também há uma valoração v2 que falsi�ca φ.

De�nição 2.14. φ é uma antilogia se todas valorações v sobre Prop falsi�cam φ.

De�nição 2.15. φ é uma tautologia se todas valorações v sobre Prop satisfazem φ. A

notação � φ representa o fato de que φ é uma tautologia.

Através da noção de satisfação, podemos de�nir consequência semântica. Para garantir

que uma fórmula seja consequência semântica de um conjunto de premissas é preciso

assegurar que tal fórmula seja verdadeira sempre que o conjunto de fórmulas das premissas

também forem verdadeiras.

De�nição 2.16. Seja Γ ⊆ FL e α ∈ FL. Dizemos que α é consequência semântica de

Γ se para toda valoração v sobre Prop, v α sempre que v Γ. Denotamos por Γ � α,

quando α for consequência semântica de Γ.

Dessa forma, escrevemos Γ 2 α para denotar que α não é consequência semântica

de Γ, isto é se existe uma valoração v que satisfaz Γ mas que não satisfaz α. Neste caso

Page 39: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

37

portanto temos uma refutação. Para Γ = ∅, ou seja quando 2 α, se diz que α é uma

fórmula refutável. Nós denotaremos de asserção as declarações sobre a validade ou

satisfação de fórmulas em Lógica.

Com a de�nição de satisfação podemos apresentar um conjunto de regras de refutação

obtidas pelo signi�cado dos conectivos com a função valoração.

De�nição 2.17. O Sistema Formal de Refutação Semp é de�nido:

a) Pela especi�cação da Linguagem proposicional FL.b) Por um conjunto �nito RSem de regras de inferência, no seguinte formato:

R ≡ΞRi

Ψ1 . . .Ψn

Ψ(regra r)

onde a linha horizontal, ao lermos de baixo para cima, representa uma justi�cação

a partir da de�nição de satisfação, ou uma inferência se lermos de cima para baixo;

Ψ1 . . .Ψn e Ψ são asserções do tipo v α ou v 1 α; Ξ é um conjunto de asserções do

tipo v A ou v 1 A para A ∈ Prop; e R representa a árvore de refutação resultante da

aplicação de (regra r) e a asserção Ψ é obtida por um dos itens (a�g) da de�nição de

satisfação nas asserções Ψ1 . . .Ψn com o conjunto Ξ nas folhas da árvore de refutação.

Note que as regras das árvores de refutação devem respeitar os requisitos:

a) A valoração trata apenas sobre átomos (A ∈ Prop) nas folhas da árvore de refutação.

b) Para nenhum átomo A ∈ Prop pode haver simultaneamente folhas da árvore de refu-

tação na forma v A e v 1 A. Isto é absurdo pelo Teorema 2.12.

v 1 αv ¬α

(¬ T ) v αv 1 ¬α

(¬ F )

v α v β

v α ∧ β(∧ T ) v 1 α

v 1 α ∧ β(∧ F1)

v 1 β

v 1 α ∧ β(∧ F2)

v αv α ∨ β

(∨ T1)v β

v α ∨ β(∨ T2)

v 1 α v 1 β

v 1 α ∨ β(∨ F )

v 1 αv α→ β

(→ T1)v β

v α→ β(→ T2)

v α v 1 β

v 1 α→ β(→ F )

Page 40: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

38

v α v β

v α↔ β(↔ T1)

v 1 α v 1 β

v α↔ β(↔ T1)

v α v 1 β

v 1 α↔ β(↔ F1)

v 1 α v β

v 1 α↔ β(↔ F2)

Note que tais regras acima são distintas das regras de dedução natural, por duas

razões: em Semp a função de valoração semântica é levada em consideração, enquanto

que em Np as regras dos conectivos são apresentadas sem precisar da suposição sobre a

noção de satisfação para garantir a validade dos passos de inferência; e ao avaliarmos o

comportamento das regras de baixo para cima nossas regras justi�cam a valoração de

fórmulas complexas a partir de fórmulas com menor complexidade.

Para refutarmos a conjectura Γ 2 α é preciso construir uma árvore no sistema Semp

em que a raiz seja v 1 (γ1 ∧ ...∧ γn)→ α para cada γi ∈ Γ com 1 ≤ i ≤ n, e que as folhas

possuam apenas asserções da valoração v sobre átomos das fórmulas Γ ∪ {α}. Neste casoportanto temos uma árvore de refutação.

Nós podemos estabelecer conexões entre o que o sistema Np realiza ao construir de-

rivações e a relação de consequência semântica envolvida em refutações de Semp. Estas

conexões são estabelecidas através dos Teoremas de Correção e Completude.

Teorema 2.18. O sistema Np é correto quando temos que

Se Γ `Np α então Γ � α.

Teorema 2.19. O sistema Np é completo quando temos que

Se Γ � α então Γ `Np α.

Não apresentaremos as demonstrações destes teoremas no presente trabalho, mas uti-

lizaremos seus resultados para a aplicação da heurística semântica. Através do Teorema

de Completude sabemos que se não existir uma refutação semântica para uma certa con-

jectura, então tal conjectura deve ser derivável. Também através do Teorema de Correção

em sua forma contrapositiva, sabemos que se refutarmos uma certa conjectura, então não

existe uma derivação para tal conjectura (Γ 2 α⇒ Γ 0 α).

Com a base teórica fornecida nós podemos executar um procedimento de heurística

para analisar conjecturas com o objetivo de descobrir se pode demonstrada ou refutada.

Page 41: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

39

2.4.1 Exemplo de heurística Semântica

Exemplo 2.20. Vamos usar heurística para analisar a conjectura A → B,B → C,D →C |∼A→ D. Analisaremos em qual caso se encaixa a conjectura:

• Demonstrável: A→ B,B→ C,D→ C ` A→ D

• Refutável: A→ B,B→ C,D→ C 2 A→ D

A nossa estratégia geral de aplicação da heurística é:

a) Supor que a conjectura seja refutável, ou seja, que existe uma valoração que satisfaz

as premissas e falsi�ca a conclusão.

b) Veri�car se a valoração v satisfaz todas as premissas e falsi�ca a conclusão, através da

interpretação dos conectivos a partir dos átomos satisfeitos ou falsi�cados;

c) Devemos explorar por exaustão as consequências da suposição inicial de que a conjec-

tura é refutável.

d) Analisar a conclusão e as premissas com o objetivo de descobrir se a valoração v satisfaz

ou falsi�ca cada um dos átomos proposicionais envolvidos;

Note que o procedimento de heurística não é uma demonstração � nem refutação �

trata-se de uma investigação sobre a valoração. O primeiro passo da heurística é supor

que a conjectura seja refutável e analisar o que ocorre, ou seja, supomos que existe uma

valoração v tal que:

(1) v A→ B

(2) v B→ C

(3) v D→ C

(4) v 1 A→ D

Com (4) e (→ F ) obtemos (5) v A e (6) v 1 D. Com (1) e (→ T2) obtemos (7)

v B. Da mesma forma, por (2) e (→ T2) obtemos (8) v C.

Assim, obtendo as asserções sobre átomos (5), (6), (7) e (8), nós justi�camos que a

valoração v satisfaz as fórmulas complexas (1),(2) e (3), no entanto, refuta a conclusão (4).

Portanto, nossa valoração v sobre Prop refuta a conjectura através das asserções v A,

v B, v C e v 1 D.

Para representar nossa análise via formalismo semântico, exibimos abaixo uma árvore

de refutação da nossa conjectura expressando o resultado da nossa heurística:

Page 42: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

40

v Bv A→ B

(→ T2) v Cv B→ C

(→ T2)

v (A→ B) ∧ (B→ C)(∧ T ) v C

v D→ C(→ T2)

v (A→ B) ∧ (B→ C) ∧ (D→ C)(∧ T ) v A v 1 D

v 1 A→ D(→ F )

v 1 ((A→ B) ∧ (B→ C) ∧ (D→ C))→ (A→ D)(→ F )

A→ B,B→ C,D→ C 2 A→ D(Def. de �, Sign. de ∧ e →)

Exemplo 2.21. Vamos analisar a seguinte conjectura |∼ (¬A→ B) ∧ (¬A ∧ ¬B).

Neste exemplo, faremos a heurística de forma diferente, agora supondo que a fórmula

seja satisfeita, isto é, que existe uma valoração v tal que v (¬A→ B)∧ (¬A∧¬B). Disso

se segue por (∧ T ) que

(1) v ¬A→ B

(2) v ¬A ∧ ¬B

Com efeito, de (2) por (∧ T ) obtemos (3) v ¬A e (4) v ¬B. Por (¬ F ) em (4),

obtemos (5) v 1 B. Portanto, com o signi�cado da implicação (→T 2) e (1), concluímos

(6) v B. No entanto, há um absurdo de (5) com (6). Assim, é impossível existir tal

valoração, 2 (¬A → B) ∧ (¬A ∧ ¬B). Dessa forma, a partir da análise via formalismo

semântico, podemos refutar a conjectura expressando o resultado da nossa heurística.

Vamos justi�car a existência de uma valoração v que refute a conjectura:

(1) v 1 (¬A→ B) ∧ (¬A ∧ ¬B)

Por (1) e (∧ F1), obtemos (2) (¬A → B). Por (2) e (→ F ), obtemos (3) v ¬Ae (4) v 1 B. E por (3) e (¬ F ) obtemos (5) v 1 A. Portanto, nossa valoração v sobre

Prop refuta a conjectura através das asserções v 1 A e v 1 B. A árvore de refutação é

representada da seguinte forma:

v 1 Av ¬A

(¬ F )v 1 B

v 1 ¬A→ B(→ F )

v 1 (¬A→ B) ∧ (¬A ∧ ¬B)(∧ F1)

2 (¬A→ B) ∧ (¬A ∧ ¬B)(Def. de �)

Os exemplos ilustram o procedimento de heurística de refutação e em seguida apre-

sentam uma árvore de refutação com regras de�nidas a partir do conceito de satisfação.

É importante ressaltar que esse procedimento é válido apenas para refutar fórmulas con-

tingentes ou contradições.

Se para uma determinada conjectura (Γ |∼α) ao analisarmos por exaustão não conse-

Page 43: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

41

guirmos construir uma árvore de refutação respeitando estes requisitos acima, isto signi�ca

que não existe uma valoração em que v Γ e v 1 α, portanto, pela relação de consequên-

cia semântica sabemos que Γ � α. Desse modo a partir do Teorema de Completude

(Γ � α ⇒ Γ ` α), a conjectura é demonstrável, ou seja, é possível construir uma árvore

de derivação no sistema Np.

2.5 Considerações Finais

As estratégias apresentadas neste capítulo para demonstrar ou refutar (DxR) conjecturas

proposicionais podem ser substituídas por outros formalismos dedutivos, como o uso de

Cálculo de Sequentes, Método de Resolução, Método de Tableaux ou simplesmente pela

construção de Tabelas de Verdade no que diz respeito ao caso proposicional. Todavia,

dispensamos o uso de método da Tabelas de Verdade devido o seu custo exponencial

(2n, sendo n o número de átomos presentes na conjectura) que o torna custoso compu-

tacionalmente. Além disso, trata-se de um procedimento didaticamente pouco instrutivo.

O nosso método de heurística também pode ser mecanizável e, de fato, iremos apresen-

tar na Seção 4.3 a nossa contribuição pela implementação da heurística no assistente de

demonstração de teoremas Coq.

Para esclarecer o entendimento da nossa heurística semântica, comparamos as árvores

de refutação com o método de Tableaux nas �guras 2 e 3. Os Tableaux cumprem de

forma bastante e�ciente o papel de realizar demonstrações ou refutações, no entanto,

tornam o procedimento de veri�cação de fórmulas completamente automático. Isto é uma

propriedade desejável computacionalmente, mas do ponto de vista didático, os Tableaux

confundem formalismo dedutivo e semântica, e portanto não ilustram de forma adequada

a importante relação de consequência lógica.

Nas �guras 2 e 3 observamos que a heurística semântica realizada e a construção da

árvore de refutação é equivalente ao procedimento de buscar apenas um ramo aberto em

um tableau da negação da nossa conjectura. Se realizarmos uma busca por exaustão e não

existir uma árvore de refutação para uma conjectura, o que teremos feito é a veri�cação

de que todos os ramos do tableau da conjectura estão fechados. Com isso, a conjectura

tem que ser demonstrável e existe uma árvore de derivação em Np.

Como é conhecido na literatura de complexidade computacional, os Tableaux podem

ser mais longos e custosos que Tabelas de Verdade (D'AGOSTINO, 1992, p.62). Um tableau

�naliza apenas quando todos os ramos foram explorados, e a complexidade do tableau

Page 44: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

42

Figura 2: Árvore de refutação versus método de Tableaux - I

v Bv A→ B

(→ T2)v C

v B→ C(→ T2)

v (A→ B) ∧ (B→ C)(∧ T ) v C

v D→ C(→ T2)

v (A→ B) ∧ (B→ C) ∧ (D→ C)(∧ T ) v A v 1 D

v 1 A→ D(→ F )

v 1 ((A→ B) ∧ (B→ C) ∧ (D→ C))→ (A→ D)(→ F )

A→ B,B→ C,D→ C 2 A→ D(Def. de �, Sign. de ∧ e →)

a) Árvore de refutação do Exemplo 2.21 (39)

¬(((A→ B) ∧ (B→ C) ∧ (D→ C))→ (A→ D))

((A→ B) ∧ (B→ C) ∧ (D→ C))

¬(A→ D)

A

¬DA→ B

B→ C

D→ C

A

B

¬A

C

¬D C

b) Tableaux do Exemplo 2.21 (39)

Figura 3: Árvore de refutação versus método de Tableaux - II

v 1 Av ¬A

(¬ F )v 1 B

v 1 ¬A→ B(→ F )

v 1 (¬A→ B) ∧ (¬A ∧ ¬B)(∧ F1)

2 (¬A→ B) ∧ (¬A ∧ ¬B)(Def. de �)

¬((¬A→ B) ∧ (¬A ∧ ¬B))

¬(¬A→ B)

¬A¬B

¬(¬A ∧ ¬B)

¬¬A

A

¬¬B

B

a) Árvore de refutação do Exemplo 2.22 (40) b) Tableaux do Exemplo 2.22 (40)

Page 45: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

43

depende do complexidade da fórmula a ser avaliada, portanto, se uma fórmula possuir

complexidade maior do que o número de átomos proposicionais distintos, então a análise

em Tableaux será mais longa que o número de linhas da sua Tabela de Verdade. Desse

modo, o nosso procedimento de heurística apresenta um custo menor, pois como já foi

dito, basta apresentarmos apenas a sequencia de fórmulas equivalentes a um ramo aberto

de Tableaux.

O nosso objetivo é re�nar a intuição Lógica dos alunos. Portanto, os alunos são ins-

truídos de que nos casos em que a heurística semântica não possibilitar uma refutação,

então eles devem buscar realizar a derivação, e por outro lado, quando eles estiverem com

di�culdades em derivar, eles devem buscar refutar a conjectura em questão.

Assim, utilizando ferramentas analíticas básicas da Lógica, ilustramos como encontrar

uma valoração que mostra a impossibilidade de construção de uma derivação em Np.

Assim podemos aplicar noções sobre formalismo semântico para refutar conjecturas. Nos

próximos capítulos vamos introduzir e implementar no assistente de demonstração Coq a

teoria Semp de árvores de refutação e descreveremos o seu funcionamento no TryLogic.

No próximo capítulo, a partir dos conceitos lógicos básicos apresentados neste capí-

tulo e antes de apresentarmos nossa infraestrutura para demonstrar ou refutar, iremos

avaliar as abordagens de diferentes ferramentas para o ensino de Lógica apresentando

suas características, objetivos e funcionalidades.

Page 46: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

44

3 Ferramentas para o ensino de

Lógica

Neste capítulo, vamos apresentar uma descrição e análise de um conjunto de ferramentas

computacionais que auxiliam o ensino não-presencial de Lógica.

3.1 Ferramentas para o Ensino de Lógica: desa�os

A disciplina de Lógica frequentemente representa um desa�o tanto para docentes como

para os discentes, o que em muitos casos resulta em reprovações e abandono dos alunos.

Dentre as di�culdades enfrentadas pelos alunos podemos citar:

a) Di�culdade na compreensão de conteúdos teóricos. Para o aluno adquirir as

competências necessárias da disciplina de Lógica, é preciso o domínio prévio de noções

de matemática discreta essenciais para compreensão de propriedades recursivas de

linguagens formais, bem como para a aplicação às noções de demonstração formal e a

construção de modelos semânticos para refutação.

b) Di�culdade de uma abordagem prática para habilidades lógicas. A di�cul-

dade dos alunos adquirirem domínio conceitual e terminológico acarreta na di�culdade

prática em estabelecer estratégias claras para resolver conjecturas e problemas lógicos.

Os alunos que estão aprendendo Lógica enfrentam estes dois problemas que estão estrita-

mente relacionados à sobrecarga da capacidade cognitiva, de forma análoga aos problemas

discutidos por Sweller (1994) sobre a Teoria da Carga Cognitiva (Cognitive Load Theory

� CLT) cujo objetivo é fundamentar a estrutura cognitiva humana sobre a diferença en-

tre capacidade da memória operacional e a memória de longo prazo. Segundo a CLT,

para a compreensão de novas informações a memória operacional possui uma capacidade

limitada a armazenar até cerca de 7 elementos distintos (SWELLER; AYRES; KALYUGA,

2011, p.17). Além disso, a memória operacional se restringe a operar com apenas 2 a 4

elementos através do registro visiospacial e fonológico que, por exemplo, estão envolvidos

Page 47: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

45

no processo de ver um diagrama e ouvir a explicação relacionada. A consolidação da in-

formação na memória de longo prazo depende do tempo dedicado ao processo construção

da memória semântica, por exemplo, até que sejam aprendidas de forma clara as relações

entre os conceitos. Assim, para uma aprendizagem e�ciente é preciso gerenciar as limi-

tações da memória operacional em processar as cargas cognitivas, pois quando há mais

recursos do que se pode gerenciar ocorre um cenário de sobrecarga cognitiva, levando a

desorientação e ao desestímulo do processo de aprendizagem. Dessa forma, na elaboração

de uma atividade ou material instrucional, é preciso levar em consideração três tipos de

carga cognitiva:

• Intrínseca: Trata-se da carga determinada pela natureza da informação e nível de

complexidade do conteúdo da atividade. Esta carga é invariante e necessária.

• Relevante: Trata-se da carga que bene�ciam o objetivo da aprendizagem, promovem a

criação de esquemas cognitivos sobre os novos conhecimentos para organizar e relacionar

com outros conhecimentos.

• Extrínseca: Trata-se da carga que não produz a construção de esquemas cognitivos

relevantes para a informação principal, e por consequência, desperdiça recursos que

poderiam auxiliar o processamento da carga Intrínseca.

Para que ocorra uma aprendizagem e�ciente é preciso reduzir a carga extrínseca,

incrementar a carga Relevante e gerenciar da carga Intrínseca.

Para exempli�car, suponha que o aluno se depare com a seguinte asserção sobre con-

sequência lógica em um sistema dedutivo proposicional:

Γ, (¬α→ ¬β) ∨ γ,¬(γ ∨ ¬β),∆ `Np α

O aluno que ainda não está familiarizado com o conteúdo de Lógica, deve se processar

três tipos carga do informações:

• Informações intrínsecas, por exemplo, o aluno deve entender o signi�cado da rela-

ção de consequência realizada pelo símbolo ` sobre fórmulas, e deve entender que

há sistema formal dedutivo associado à relação `, por exemplo, que pode se referir

a Np.

• Informações relevantes, por exemplo, o aluno deve ao �nal do curso entender tam-

bém as relações entre um formalismo dedutivo (`) e uma noção de consequência

semântica (�) pela qual se segue outras asserções como �v Γ e v 1 α� para Γ 2 α,bem como as condições em que Γ � α.

Page 48: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

46

• Informações extrínsecas, por exemplo, o aluno deve buscar compreender o que é

de fato relevante. Assim é papel do professor evitar a escolha de um material didá-

tico inadequado, a utilização de exemplos confusos, a utilização de uma ferramenta

complexa, ou por exemplo, a adoção de um formalismo dedutivo que não-explicita

de forma clara a relação de consequência lógica.

O conceito da relação de consequência lógica não é particularmente complexo. No

entanto, a aprendizagem de signi�cativa desta e outras noções não é trivial: demandando

tempo e associações a outros conceitos.

Com o objetivo de reduzir a di�culdade de aprendizagem e esclarecer os alunos so-

bre as relações entre informações essenciais e incidentais, as ferramentas computacionais

são recursos que auxiliam a redução dos cenários de sobrecarga de conteúdo (SWELLER;

AYRES; KALYUGA, 2011) e auxiliam tanto a instanciação dos conteúdos teóricos, como

também podem fornecer uma visualização prática das habilidades lógicas. Com o obje-

tivo de desenvolver nossa infraestrutura para Demonstrar ou Refutar, vamos analisar e

descrever brevemente uma seleção de ferramentas didáticas aplicadas à Lógica. Na tabela

1, nós selecionamos alguns dos mais interessantes projetos e ferramentas para o ensino de

lógica.

No Apêndice D listamos um conjunto de ferramentas para o Ensino de Lógica para

complementar a lista mantida pelo grupo da Association for Symbolic Logic (DITMARSCH,

2010) e também a lista de Wiedijk (2007) com 300 ferramentas computacionais de apli-

cações e ensino de Lógica. As diversas ferramentas apresentadas são inspiradoras e am-

plamente utilizadas, dentre elas, o J∀P∃, o ProofWeb, o AproS Project (com o Proof

Tutor, Proof Lab, Truth Lab, e o curso Logic & Proofs), e os softwares Tarski's

World, Fitch e Boole que integram o livro de Barwise e Etchemendy (2002).

3.2 AproS Project

O AproS Project é formado por cinco módulos integrados: o Proof Tutor, o Proof

Lab, o Truth Lab e o curso online Logic & Proofs. Contando com a utilização de tutores

cognitivos, o objetivo dos módulos é apresentar lógica proposicional e lógica de 1a Ordem

através do enfoque sobre estratégias de demonstração (SIEG, 2007).

O AproS Project é associado ao curso web Logic & Proofs para alunos de cursos

de Ciência da Computação, Engenharia, Linguística, Filoso�a, Biologia, Física e até alu-

nos de Artes Cênicas. Os cursos sobre Estratégias de Raciocínio e Lógica Computacional

Page 49: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

47

Tabela 1: Algumas ferramentas para o ensino de Lógica

Nome O que ensinam? Como ensinam?

AproS

Project

Lógica de 1a Ordem, DeduçãoNatural, Lógica Modal

Com diagramas de demonstração à la Fitch, im-plementado em Java Web Start (SIEG, 2007) .http://automath.org/

Hemera

Web

Cálculo de Sequentes e Table-aux para Lógica Propositio-nal

É uma aplicação web para manipulação dedemonstrações, implementado em Ruby OnRails. (SANTOS, 2010). http://proof.tecmf.

inf.puc-rio.br/proof

J∀P∃ Lógica de 1a Ordem, deduçãonatural

Manipula demonstrações à la Fitch, implemen-tado em Java Desktop (ACZEL, 2000). http://jape.comlab.ox.ac.uk:8080/jape/

LoTREC Lógica de 1a Ordem, Table-aux, Lógica Modal

Com o método de Tableau, implementado emJava Applets (CERRO et al., 2001). http://www.irit.fr/Lotrec/

Panda Lógica de 1a Ordem Manipula demonstrações à la Gentzen, implemen-tado em Java (GASQUET; SCHWARZENTRUBER;

STRECKER, 2011). www.irit.fr/panda/Pandora Lógica de 1a Ordem, Dedução

NaturalManipula demonstrações à la Fitch, implemen-tado em Java Applets (BRODA et al., 2007) http://www.doc.ic.ac.uk/pandora/

ProofWeb Dedução Natural para qual-quer teoria formal implemen-tada em um assistente de de-monstração.

É uma interface Web para assistentes de demons-tração (Coq, Isabelle, Lego), implementado emOCaml (KALISZYK et al., 2008) (HENDRIKS et al.,2010). http://prover.cs.ru.nl/

Tarski's

World,

Fitch and

Boole

Lógica de 1a Ordem, De-dução Natural; ConsequênciaSemântica ; Noções Semânti-cas

Com uma semântica interpretada para Lógicade Predicados através de três programas, imple-mentados em Java Desktop integrando o livro(BARWISE; ETCHEMENDY, 2002). http://lpl.

stanford.edu

Page 50: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

48

Figura 4: Demonstração no Proof Lab

envolvem também elementos de teoria dos conjuntos, fundamentos de teoria da compu-

tabilidade e aspectos de lógica pura, tais como o teorema da incompletude e o teorema

de Cantor-Bernstein. Em particular, as vantagens do Proof Lab são a interface interativa

que exibe as demonstrações em estilo de árvores e no estilo à la Fitch e a implementação

dos tutores cognitivos que analisam cada passo de estratégia de um aluno em uma de-

monstração e fornece um conjunto de sugestões concretas sobre como proceder (PERKINS,

2007).

3.3 Hemera Web e TableauxProver

O grupo de pesquisa ligado ao Laboratório de Tecnologia em Métodos Formais da PUC-

Rio (TecMF/PUC-Rio) realiza pesquisas relacionadas ao desenvolvimento de técnicas

formais, ferramentas e algoritmos para assistentes computacionais de demonstração de

teoremas, e em particular é responsável pelo desenvolvimento dos projetos:

• Hemera Web1: trata-se de um assistente visual de demonstração por múltiplas estratégias

baseado em um ambiente Web, desenvolvido com Ruby on Rails.

1Disponível a partir de http://proof.tecmf.inf.puc-rio.br/admin.

Page 51: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

49

• TableauxProver2, trata-se de um assistente semiautomático de demonstração em Ta-

bleaux para lógica de primeira ordem, desenvolvido com scripts na linguagem Lua.

Figura 5: Demonstração no HemeraWeb

Fonte: Elaborado por (SANTOS, 2010)

O Hemera Web possui um módulo desenvolvido em PLY (Python LexYacc), que é uma

implementação das ferramentas de parsing para mapear expressões regulares (Lex) e um

analisador sintático em Python (YAAC). A interface do Hemera Web é enriquecida com a

geração de árvores de derivação através do pacote PyGraphviz. Santos (2010) desenvolve

uma infraestrutura de comunicação Web Service para o Hemera Web. O TableauxProver

é um assistente de demonstração desenvolvido na linguagem Lua e disponibilizado para

Linux, Windows e MacOS. Além de possuir uma interface interativa para visualização do

tableau que vai sendo construído pelo usuário, também permite a geração de códigos La-

TeX e Dot (http://graphviz.org/) para visualização grá�ca, e pode ser disponibilizado

na Web via applets.

3.4 Jape

O J∀P∃ é uma ferramenta grá�ca para auxiliar a construção de demonstrações formais

em Dedução Natural no estilo à la Fitch. Dentre as suas vantagens está a possibilidade de

de�nir regras de inferência de uma lógica, decidir entre diferentes tipos de visualizações das

derivações e possibilitar a construção das demonstrações a partir das premissas (forward),

ou direcionadas à conclusão (backward).

2Disponível a partir de http://www.tecmf.inf.puc-rio.br/TableauxProver.

Page 52: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

50

Figura 6: Demonstração no J∀P∃

O J∀P∃ não é um assistente de demonstração de teoremas, trata-se de um editor gené-

rico de demonstrações com o objetivo de auxiliar a heurística de construção de demonstra-

ções através da descrição das regras de inferência de uma Lógica e também da descrição do

manipulação da interface. Tal processo de mapeamento é descrito com detalhes no artigo

de Sufrin e Bornat (1996). O J∀P∃ foi desenvolvido com regras de usabilidade para uma

interface silenciosa e minimal, exibindo apenas as informações imprescindível e relevantes

(BORNAT; SUFRIN, 1996), tais requisitos são: Utilize notações chamativas; Esclareça os

passos da derivação; Não sobrecarregue a interface; e Utilize padrões de interface comuns

e conhecidos pelos usuários3.

3.5 Panda

O Panda é uma ferramenta grá�ca desenvolvida em Java para manipular demonstra-

ções em Dedução Natural no estilo de árvore (GASQUET; SCHWARZENTRUBER; STREC-

KER, 2011). Atualmente, a ferramenta é empregada para ensinar lógica formal no curso

de Lógica de Primeira Ordem na universidade Paul Sabatier, em Toulouse/França. Suas

vantagens são:

a) a visualização de árvores de derivação usando uma abordagem visual e indutiva,

b) possibilidade de usar software para veri�car programas, tal como na veri�cação de

3No artigo original, as regras que orientam a implementação da interface do J∀P∃ são: Flashy displayhelps, steps in a good proof are easy to �nd, don't poke them in the eye e follow the user's tradition.

Page 53: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

51

software em especi�cação formal.

c) a liberdade para copiar, recortar trechos de uma demonstração e aplicar uma regra

de inferência em qualquer direção, das premissas para a conclusão (forward) ou em

sentido inverso (backward).

d) uma interface sonora de leitura para de�cientes visuais, em aperfeiçoamento.

e) a extração de demonstração em LATEX com o pacote proof.sty, em desenvolvimento.

Figura 7: Módulos do Logicamente

(a) Demonstração no Panda (b) Dicas de Regras no Panda

Na Figura 8(a), exibimos a ferramenta Panda sendo empregada para realizar a de-

monstração de um teorema. Uma vantagem existente na ferramenta é o sistema de dicas

de regras para serem empregadas no contexto de uma demonstração, recurso exibido na

Figura 8(b), que guia o aluno na realização de suas demonstrações e auxilia o aprendizado

do procedimento de realizar derivações em Dedução Natural. Uma dos recursos é a opção

de colapsar aplicações de regras, o que possibilita uma interação dinâmica do usuário com

as derivações, sem tornar o processo de demonstração automático.

3.6 Coq

O Coq é um assistente de demonstração para realizar especi�cações formais, produzir

veri�cação de programas e construir demonstrações de implementações de teorias lógicas.

O Coq possui uma linguagem funcional de especi�cação (Gallina) baseada em λ-calculus

para indução tipi�cada. Nesta seção vamos apresentar o assistente de demonstração de

Page 54: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

52

teoremas Coq visando a introduzir a implementação de Dedução Natural apresentada no

ProofWeb.

Uma introdução rápida e amigável ao Coq foi elaborada por Yves Bertot (2010). Na

proposta de uma orientação para estudo individualizado, um excelente conjunto de video-

aulas foi elaborado por Yves Bertot com título �Preuves de programmes en Coq�4 (BERTOT,

2012). As video-aulas de Bertot incluem conceitos de polimor�smo e Estrutura de Da-

dos no Coq, Programação Recursiva, Predicados Indutivos, Tipagem para Especi�cação

Formal, Recursão Geral e um guia de estudo do Coq para análise de algoritmos.

Uma interessante proposta de material didático associado ao Coq é o livro eletrônico5

do curso de Benjamin Pierce (2012), cujo texto foi desenvolvido como um script do Coq

convertido diretamente para HTML através da ferramenta de documentação coqdoc. O

livro eletrônico foi escrito em conjunto com códigos e execícios, portanto, foi concebido

para proporcionar uma leitura interativa com exemplos de implementação, enfatizando a

sua leitura dentro de uma interface do Coq.

A abordagem para construir demonstrações usualmente de forma direcionada para o

objetivo, ou seja, de forma inversa (backward ou goal-directed proof 6), segundo (BERTOT,

2010), segue essencialmente o seguinte cenário:

1. o usuário insere uma conjectura que deseja demonstrar, usando o comando Theorem

ou Lemma, ao de�nir um nome para referências futuras;

2. o Coq exibe a fórmula a ser demonstrada, fornecendo o contexto de fatos locais

que podem ser utilizados para a demonstração, quando existir, o contexto é exibido

acima de uma linha horizontal =====, de forma que a conclusão é exibida abaixo;

3. o usuário insere um comando para decompor o objetivo (goal) em outras sentenças

mais simples; tais comandos são táticas;

4. o Coq exibe a lista de fórmulas que ainda necessitam ser demonstradas.

5. o procedimento retorna ao passo 3, até a demonstração ser concluída, de forma que

não existam mais objetivos. Ao �nal da demonstração, é necessário salvar o processo

inserindo o comando Qed.

As regras de dedução natural apresentadas anteriormente na Seção 2.3 realizam o

procedimento descrito acima analisar fórmulas com regras de eliminação e de introdução.

Para o Coq, as regras de inferência são táticas (ou métodos) de�nidas de forma que o

4As video-aulas estão disponíveis em http://fuscia.inrialpes.fr/cours/coq/.5O conjunto de códigos-fonte para o Coq e arquivos HTML está disponível em http://www.cis.

upenn.edu/~bcpierce/sf.6As derivações inversas backward são elaboradas partindo da conclusão para as premissas e hipóteses.

Page 55: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

53

usuário possa realizar demonstrações. As táticas do Coq são de�nidas em módulos de

bibliotecas como sistemas formais.

3.6.1 Assistentes de Demonstração de Teoremas

Como foi dito, o Coq é um assistente de demonstração, portanto, não foi elaborado

como ferramenta exclusivamente didática, mas auxilia o processo de construção de de-

monstrações, além de análises sobre representação de teorias formais e a veri�cação de

algoritmos a partir de uma especi�cação formal.

No estado-da-arte de assistentes de demonstração, além do Coq há tantos outros como

o Isabelle7, Matita8 e HOL9. Uma comparação entre 17 diferentes assistentes de demons-

tração através da demonstração da irracionalidade de√

2 pode ser encontrada em Wiedijk

(2003).

Segundo Geuvers (2009), os assistentes de demonstração são ferramentas fundamen-

tais para o trabalho de matemáticos através do tratamento computacional de de�nições,

demonstrações e asserções. De acordo com o mesmo artigo, as demonstrações matemá-

ticas possuem dois papéis principais: (A) Veri�car que uma asserção é correta; e (B)

Explicar as razões pelas quais a asserção é correta. Além disso, Geuvers (2009) de�ne que

as demonstrações possuem três etapas:

1. Heurística da Demonstração: Nesta etapa �tudo vale�: experimentação, palpites,

conjecturas. Esta etapa é crucial para a aprendizagem matemática.

2. Registro da Demonstração: Trata-se da escrita da demonstração contendo a

explicação � papel (B) acima � sobre a correção e veri�cação passo a passo da

asserção � papel (A) acima.

3. Apresentação da Demonstração: Nesta etapa, é preciso comunicar o resultado

para que as demonstrações sejam lidas por outros � papel (B) acima.

Os assistentes de demonstração, representados pela Figura 8, possuem o papel (A)

de auxiliar a veri�cação e auxiliam na etapa de registro de demonstrações. Para realiza-

rem este papel de veri�cação, os assistentes de demonstração devem possuir as seguintes

características:

• Descrição da lógica: São descritas os passos de inferência de demonstrações adequados

e de�nidos objetos e funções.

7Disponível em http://isabelle.in.tum.de/.8Disponível em http://matita.cs.unibo.it/.9Disponível em http://hol.sourceforge.net/.

Page 56: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

54

• Pequeno núcleo: O sistema deve possuir um núcleo pequeno para possibilitar a sua

veri�cação manual con�ável.

• Possibilidade de veri�cação: Como o assistente de veri�cação é um software, ele

pode ter sua correção veri�cada a partir da especi�cação da descrição da lógica e das

propriedades do núcleo do assistente.

• Critério De Bruijn: Em sistemas `De Bruijn', as demonstrações são codi�cações de

derivações em dedução natural que podem ser veri�cadas através de algoritmos de

veri�cação.

Figura 8: Estrutura de um assistente de demonstração

Fonte: Elaborado por (GEUVERS, 2009).

As características acima são compartilhadas por assistentes de demonstração como o

Coq e o Isabelle. Além dos assistentes de demonstração auxiliarem em tarefas ineren-

tes ao processo de heurística, veri�cação e apresentação das demonstrações, outra grande

vantagem deles é possibilitarem sua aplicação tanto em um nível introdutório no ensino,

como também em aplicações complexas de veri�cações avançadas. Em razão destas vanta-

gens, justi�camos a nossa opção pelo aperfeiçoamento de uma ferramenta que possibilita

a comunicação de diferentes assistentes de demonstração: o ProofWeb.

3.7 ProofWeb

O ProofWeb10 é uma interface web para assistentes de demonstração (Coq, Isabelle,

Lego), foi implementado com códigos em OCaml (no lado do servidor para o controle de

sessões, para veri�cação, comunicação com assistentes de demonstração e gerenciamento

dos exercícios) e Javascript (no lado do cliente web, para a visualização e construção das

demonstrações). O trabalho do ProofWeb envolveu a implementação de uma biblioteca

do Coq 11 para possibilitar a interface entre a saída do Coq e a produção das árvores de

10Disponível em http://prover.cs.ru.nl/.11A biblioteca que permite a visualização das demonstrações é o DumpTree, seu Có-

digo está disponível em http://git.strub.nu/git/coqmt/diff/contrib/xml/dumptree.ml4?id2=

840e7245c846373bd97dd06e9381191ea2dd5401 e é descrito com detalhes por Kaliszyk (2009) em suatese de doutorado Correctness and availability.

Page 57: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

55

derivação, através da manipulação de XML com Ajax.

Figura 9: Demonstração no ProofWeb

O ProofWeb possui também a opção de distribuição de exercícios para alunos de um

curso e a veri�cação da correção destes exercícios gerenciados por um administrador ou

professor (KALISZYK et al., 2008; HENDRIKS et al., 2010). A interface do ProofWeb envolve

um conjunto de menus e a construção gradual da demonstração é realizada através da

inserção de táticas adequadas.

O sistema possui algumas desvantagens como a difícil instalação, difícil implementação

devido ao alto acoplamento de seus componentes e requer um certo custo de adaptação do

usuário com a interface. Para minimizar estas desvantagens, parte da nossa contribuição

envolveu a documentação do processo de instalação e manutenção do ProofWeb12.

Algumas críticas sobre construção das demonstrações no ProofWeb estão relaciona-

das a usabilidade e o custo da aprendizagem e memorização dos comandos. No entanto,

argumentamos que este custo é o mesmo para dominar as de�nições de regras utilizando

papel e caneta. Os alunos de Computação não têm di�culdade em dominar o conjunto de

comandos para construírem as demonstrações no Coq, pois ao aprender alguns comandos

declarativos exercitam uma capacidade operacional que faz parte do métier.

12A nossa documentação de instalação complementa as instruções disponíveis no site o�cial: http://prover.cs.ru.nl/install.php. Para apresentar a interface do sistema ProofWeb elaboramos umvideo tutorial, disponível em http://lolita.dimap.ufrn.br/proofweb/tutorial-video.htm.

Page 58: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

56

Para nossos interesses, usaremos apenas um conjunto minimal das funcionalidades do

Coq, nos concentraremos apenas em usar a implementação do sistema Np para o ProofWeb,

desenvolvida por Kaliszyk et al. (2008). A biblioteca que nos interessa pode ser carregada,

com o seguinte comando Require Import ProofWeb.

Assim, podemos usar a implementação do Coq para Np, em particular, e assim usar

as respectivas táticas das regras de introdução e eliminação dos conectivos da lógica

proposicional. Por exemplo, abaixo podemos visualizar o código das táticas para as regras

(↔ I), (↔ E1) e (↔ E2), que foram implementadas pelo Prof. João Marcos (2009) no

ProofWeb.

Figura 10: Táticas no Coq

Ltac eqv_i :=

match goal with

| |- _ <-> _ => split

end ||

fail "(the goal is not an equivalence)".

Ltac eqv_e1 :=

match goal with

| |- (?A -> ?B) => refine (

and_ind (fun

(x : A -> B) (_ : B -> A) => x)

(_ : A <-> B)

) end ||

fail "(the goal is not an implication)".

Ltac eqv_e2 :=

match goal with

| |- (?B -> ?A) => refine (

and_ind (fun

(_ : A -> B) (y : B -> A) => y)

(_ : A <-> B)

) end ||

fail "(the goal is not an implication)".

Ltac iff_i H1 H2 :=

match goal with

| |- _ <-> _ =>

eqv_i ; [ (imp_i H1) | (imp_i H2) ]

end ||

fail "(the goal is not a bi-implication)".

Ltac iff_e1 L :=

cut L ; [ eqv_e1 | idtac ].

Ltac iff_e2 R :=

cut R ; [ eqv_e2 | idtac ].

a) De�nição original das regras da ↔ b) De�nição modi�cada das regras da ↔

Por questões de simpli�cação, exibimos apenas as táticas backward, pois são su�cientes

para construir demonstrações em Lógica Proposicional. Apresentamos as regras com a

notação análoga ao sistema Np, com o objetivo de facilitar a caracterização das táticas e

respectivos parâmetros. Por exemplo, para algumas regras é preciso indicar subfórmulas

como parâmetros, este é o caso da eliminação da conjunção a direta (representável por

Γ ` α ∧ β =⇒ Γ ` α) que recebe como parâmetro a fórmula eliminada à direita (β), por

outro lado, algumas regras recebem como parâmetro um rótulo para representar a fórmula

descartada, este é o caso da introdução da implicação (representável por Γ, α ` β =⇒ Γ `α→ β) que recebe como parâmetro o rótulo h para a subfórmula α descartada.

Page 59: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

57

α β

α ∧ βcon_i. α ∧ β

αcon_e1 (β).

α ∧ ββ

con_e2 (α).

αα ∨ β

dis_i1.β

α ∨ βdis_i2. α ∨ β

αh1

....γ

βh2

....γ

γdis_e (α\/β) h1 h2.

αh

....β

α→ βimp_i h.

α→ β α

βimp_e (α).

αh

....⊥¬α neg_i h.

¬α α⊥

neg_e (α). ⊥γ

fls_e.

¬α h

....⊥α

PBC h.

αh1

....β

βh2

....α

α↔ βiff_i h1 h2. α↔ β β

αiff_e1 (β).

α↔ β α

βiff_e2 (α).

Além destas regras, só precisaremos do comando exact h, ou ass h, que expressa que

a asserção que desejamos demonstrar é uma fórmula imediatamente presente no contexto

da derivação e é representada pelo rótulo da hipótese h.

Aqui podemos observar que algumas regras recebem como parâmetros os rótulos para

descarte de hipóteses, o que para o Coq signi�ca que a tática adiciona uma hipótese ao

contexto da demonstração, como é o caso das regras para dis_e, imp_i, neg_i, iff_i e

PBC. Estas regras de introdução recebem um rótulo para representar premissas que podem

ser descartadas durante a demonstração.

Por outro lado, algumas regras recebem como parâmetros subfórmulas a serem elimi-

nadas, e por esta razão representam todas táticas das regras de eliminação, ou seja, as

regras con_e1, con_e2, dis_e, imp_e, neg_e, iff_e1 e iff_e2. Estas regras de eliminação

recebem a premissa menor conforme a de�nição na Seção 2.3.

Na Figura 11, nós apresentamos exatamente o último exemplo presente na Seção 2.3.1

anterior, só que agora demonstrado no Coq através do ProofWeb.

Page 60: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

58

Exemplo 3.1. Demonstrar ` ¬¬¬α↔ ¬α no Coq.

Figura 11: Demonstração proposicional no Coq

Require Import ProofWeb.

Variables A : Prop.

Theorem exDN_2 : ~~~A <-> ~ A.

Proof.

iff_i h1 h2.

neg_i h3.

neg_e (~~A).

exact h1.

neg_i h4.

neg_e (A).

exact h4.

exact h3.

neg_i h5.

neg_e (~A).

neg_i h6.

neg_e (~A).

exact h5.

exact h2.

exact h2.

Qed.

a) Sequência de táticas b) Árvore resultante construída no ProofWeb

Uma das vantagens didáticas do ProofWeb está relacionado ao fato de obedecer ao

Princípio de Representação Múltipla13 (The Modality E�ect) da Teoria da Carga

Cognitiva (SWELLER; AYRES; KALYUGA, 2011, p.129). A representação múltipla é apli-

cada na Figura 11, em que podemos observar que sem a sequência de táticas inserida no

lado esquerdo (a) não seria possível veri�car o objeto apresentado no lado direito (b),

pois a sequência de táticas representa uma justi�cativa para a derivação produzida. As

derivações não são estáticas (b), mas correspondem na realidade ao processo dinâmico de

sua construção no lado (a). Assim, a visualização de (b) possui valor didático útil, as-

sim como também é útil a comunicabilidade da estrutura da derivação em (a). Na Seção

4.3 apresentaremos a nossa contribuição de um sistema de refutação com o objetivo de

explorar este caráter dinâmico da visualização e justi�cação no ProofWeb.

3.8 Considerações Finais

Nas últimas seções �zemos uma breve descrição do estado da arte de ferramentas de

ensino de Lógica. Por �m, descrevemos a ferramenta o ProofWeb e optamos por colaborar

no seu desenvolvimento em razão de sua característica de funcionar como interface entre13Os alunos aprendem melhor ao combinar conceitos com imagens do que com explicações que envolvem

apenas conceitos.

Page 61: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

59

diferentes assistentes de demonstração, assim se constitui como um ambiente de ensino

prático para realizar demonstrações e possibilitar também a realização de refutações.

No próximo Capítulo 4 descreveremos exatamente como a nossa contribuição para o

ProofWeb de uma sistema formal de refutação, em conjunto com um gerador de tarefas

e a implementação de um tutorial integrado com plataformas de aprendizagem formando

nosso conjunto de ferramentas do TryLogic. Por �m, no Capítulo 5 nosso objetivo �nal

será o relato da experiência de aplicação da nossa infraestrutura integrada ao Moodle.

Page 62: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

60

4 O tutorial interativo TryLogic e

integração de ferramentas externas

entre diferentes plataformas

Neste capítulo apresentaremos a nossa proposta inicial de um ambiente virtual de apren-

dizagem para o ensino de Lógica, chamado Logicamente, composto por um conjunto de

módulos que visam ilustrar conceitos fundamentais da Lógica. Vamos apresentar o Gera-

dor de Conjecturas para Lógica Proposicional e o tutorial interativo TryLogic. Também

mostraremos como podemos através do ProofWeb realizar refutações no assistente de de-

monstração Coq. Subsequentemente, exibiremos a implementação no Coq do nosso sistema

Semp para a refutação de conjecturas proposicionais. Finalmente, vamos apresentar a in-

tegração do Moodle com o tutorial interativo TryLogic através do padrão IMS Learning

Tools Interoperability (LTI).

4.1 Convergência de recursos em e-learning

Nas últimas décadas, a evolução da educação à distância através dos avanços das Novas

Tecnologias da Informação e da Comunicação (NTICs) ampliou os recursos aplicados na

educação tradicional. As NTICs aplicadas na Educação ampliaram as formas de interações

dos alunos e professores, produzindo diversas vantagens relacionadas à automatização do

ensino, �exibilidade de espaço e tempo de aprendizagem, mecanismos de comunicação e

interação entre professores e alunos, reutilização e gerenciamento de recursos didáticos,

além de ferramentas para da conta de diferentes estilos de aprendizagem.

Um Massive Open Online Course (MOOC) é um curso oferecido pela web que se ca-

racteriza pela irrestrita participação de alunos. Os MOOCs são organizados com recursos

como videos, textos e exercícios com correção automática, e além disso possuem o dife-

rencial de formar uma comunidade de alunos gerenciados por tutores e professores através

de Fóruns e debates virtuais (Hangouts). Esta nova forma de organização e distribuição

Page 63: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

61

da educação é atrativa por sua gratuidade, disponibilidade a qualquer tempo e lugar, e

também pela proposta de disponibilizar cursos de qualidade elaborados por professores de

centros universitários de referência. Atualmente, as plataformas de cursos MOOCs com

mais usuários são Cousera1, edX2, Udacity3 e a Khan Academy4.

O desenvolvimento dos MOOCs é resultado dos avanços da associação entre Infor-

mática e Educação. Dessa forma dispomos de diversas ferramentas computacionais que

auxiliam no acompanhamento do processo de ensino, além do gerenciamento dos recursos

didáticos. No que diz respeito às ferramentas de acompanhamento e gerenciamento do

ensino, temos o que chamamos de Ambiente Virtual de Aprendizagem (AVA). Todavia,

inicialmente, é preciso esclarecer e diferenciar algumas nomenclaturas básicas:

• Ambiente Virtual de Aprendizagem (AVA), em inglês é chamado de Virtual Learning

Environment (VLE), é caracterizado como um software que combina de forma siste-

mática diferentes ferramentas (relatórios de monitoramento dos alunos, chats, fóruns e

recursos didáticos) para fornecer conteúdo online direcionado à experiência de apren-

dizagem. Há diversos AVAs disponíveis atualmente, dentre os mais utilizados podemos

citar o Moodle5, ATutor6, Blackboard7, TelEduc8 e Amadeus9.

• Sistema de Gestão da Aprendizagem (SGA), em inglês Learning Management System

(LMS), é um termo amplo para aplicações que utilizam serviços online aplicados a

Educação para alunos e professores. Segundo Weller (2007), o termo é utilizado como

sinônimo para VLEs, pois a sutil distinção da utilização do termo é meramente geo-

grá�ca: o termo LMS é mais comum nos USA, enquanto que o termo VLE é adotado

com mais aceitação na Europa. Um outro termo sinônimo é o Course Management

System; Entretanto, cabe um esclarecimento, pois há uma confusão deste com o termo

distinto Content Management System que são serviços de gerenciamento de publicação

de conteúdo web, tais como o Wordpress, Joomla, ou Drupal.

• Sistema Tutorial Inteligente (STI), em inglês Intelligent Tutoring System (ITS), de-

1Disponível em http://www.coursera.org/.2Disponível em http://www.edx.org/.3Disponível em http://www.udacity.com/.4A Khan Academy possui uma proposta de massi�cação do ensino com características de cursos

MOOCs, mas ao contrário dos outros projetos citados, possui um modelo pedagógico limitado e tradi-cional, pois se baseia em uma abordagem meramente expositiva, sem contextualização e sem utilizaçãode recursos como o incentivo de discussões colaborativas na experiência de aprendizagem. Disponível emhttp://www.khanacademy.org.

5Disponível em http://moodle.org/.6Disponível em http://atutor.ca/atutor/.7Disponível em http://blackboard.com/.8Disponível em http://www.teleduc.org.br/.9Disponível em http://amadeus.cin.ufpe.br/amadeusweb.

Page 64: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

62

signa um sistema que aplica Inteligência Arti�cial a processos educacionais. Segundo

Graesser, Conley e Olney (2011), STIs são ambientes de aprendizagem que incorporam

modelos computacionais a ciências cognitivas, ensino de ciências, linguística compu-

tacional, inteligência arti�cial, matemática e outras áreas para desenvolver sistemas

inteligentes. Uma descrição do estado da arte com os STI's mais utilizados é realizada

em Paviotti, Rossi e Zarka (2012).

• Ambiente Pessoal de Aprendizagem (APE), em inglês Personal Learning Environment

(PLE), é uma infraestrutura em que um usuário, de acordo com suas necessidades, pode

reunir uma coleção de ferramentas para compor seu próprio ambiente de aprendizagem

Weller (2007, p. 114). Um APE implementa o princípio de que as tecnologias devem

ser con�guráveis de modo centrado no discente. Há todavia algumas ressalvas sobre

personalizar o aprendizado Weller (2007, p. 117) que não podem ser ignoradas, pois

a experiência da aprendizagem de um curso deve ser compartilhada possibilitando o

entendimento e diálogo dos participantes. Neste sentido, a aprendizagem necessita de

um foco e conteúdo central, e além disso os discentes deveriam ter contato com diferentes

abordagens e não se limitarem a uma abordagem preferida.

A partir destes esclarecimentos no uso dos termos, utilizaremos o termo plataforma

quando for necessário designar de forma geral as infraestruturas e ambientes de ensino de

qualquer uma das nomenclaturas acima.

As plataformas de ensino podem contar com alguns dos seguintes tipos de componen-

tes: mecanismos de avaliação (Evaluation Engines), repositórios de objetos de aprendi-

zagem (Learning Object), e ambientes de desenvolvimento integrado (Integrated Develop-

ment Environment). O primeiro tipo de componente, um mecanismo de avaliação, se refere

ao mecanismo de avaliação que permite a automatização da correção de atividades dos alu-

nos, possibilitando uma avaliação e�ciente e personalizada dos discentes. As plataformas

de ensino em geral possuem mecanismos como módulos de elaboração de questionários, la-

boratório de avaliação colaborativa (peer assessment), fóruns, portifólios, envio de tarefas,

construção de páginas colaborativas (wiki), entre outras. O segundo tipo de componente,

os repositórios de objetos de aprendizagem permitem a busca, adaptação e reutilização

de objeto de aprendizagem. Um objeto de aprendizagem (OA) é uma unidade que fornece

um conteúdo epistemológico para estimular a re�exão do aluno no ensino uma disciplina.

Um OA é qualquer entidade digital com um propósito educacional, que pode ser usada,

reusada ou referenciada durante um processo de aprendizagem (WILEY, 2002). A ideia dos

OAs é reduzir o custo na elaboração do suporte ao ensino e compartilhar material produ-

zido. Além da reusabilidade dos recursos de OAs e a catalogação com a especi�cação de

Page 65: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

63

OAs, é possível obter outras vantagens em diversas dimensões como: acessibilidade através

de um repositório, interoperabilidade de plataformas e durabilidade do recurso sem reco-

di�cação (TAROUCO; FABRE; TAMUSIUNAS, 2003). Diversas plataformas como o Moodle,

Blackboard, Atutor e o Sakai permitem o compartilhamento de objetos de aprendiza-

gem que estejam especi�cados e padronizados. Alguns organismos de padronização como

o Institute of Electrical and Electronics Engineers (IEEE), o Advanced Distributed Lear-

ning (ADL) e o IMS Global Learning Consortium produziram padrões de especi�cações

para e-learning na web. Os padrões IEEE Learning Object Metadata (LOM), Sharable

Content Object Reference Model (SCORM) e IMS Learning Design (LD), entre outros,

lidam com a descrição de recursos e fornecem modelos para construção de outros OAs. A

partir das especi�cações é possível implementar regras de decisão para agentes cognitivos

realizarem buscas em base de dados de acordo com a taxonomia fornecida pelo metadado10

da especi�cação, disponibilizando ao usuário informações sobre os OAs de seu interesse.

A atividade de padronização é facilitada com a utilização de ferramentas como Reload

Editor 11, Prolix graphical learning modeller12, ReCourse Learning Design13 e

o CopperCore14. O terceiro tipo de componente citado como ferramenta de desenvolvi-

mento, pode ser compreendido em particular como as ferramentas computacionais citadas

no Capítulo 3 que auxiliam o ensino ou a prática de Lógica. Tais ferramentas podem ser

caracterizadas como objetos de aprendizagem, dependendo de suas funções, objetivos e

nível de interação.

O papel das plataformas de ensino envolve a comunicação e integração com os com-

ponentes acima, de forma centralizada e con�gurável. Assim, através destes conceitos

esclarecidos podemos compreender o conjunto de nossas contribuições como o esforço de

centralizar e integrar componentes através de uma plataforma de objetos educacionais

em um ambiente de desenvolvimento e mecanismos de avaliação vinculados. Em resumo,

podemos compreender nosso projeto como uma proposta de produção de componentes

para convergência e integração de ferramentas de ensino de Lógica.

10Ummetadado é um artefato em XML com dados sobre dados, tal como um documento de consulta,fornecendo informações sobre o objeto de aprendizagem.

11Disponível em http://www.reload.ac.uk/tools.html.12Disponível em http://prolix-glm.sourceforge.net/.13O ReCourse produz unidades de aprendizagem sequênciais e atribui tarefas para alunos, monitores e

professores. Disponível em http://www.tencompetence.org/ldauthor/.14O CopperCore é um servidor de execução em Java para disponibilizar OAs e unidades de en-

sino através do protocolo Simple Object Access Protocol (SOAP). Disponível em http://coppercore.

sourceforge.net.

Page 66: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

64

4.2 Logicamente: a construção modular de ferramentas

para o ensino de Lógica

O protótipo do Logicamente foi implementado inicialmente no segundo semestre

de 2006, sob a idealização e orientação do professor João Marcos, como um projeto �nal

da disciplina de Lógica Aplicada à Computação. O objetivo era ensinar na prática através

da implementação de alguns dos principais conceitos de Lógica. Nos semestres seguintes,

o projeto continuou sendo desenvolvido a partir do trabalho colaborativo e voluntário de

estudantes de computação, dando oportunidade à apresentação de trabalhos que explora-

vam tanto aspectos computacionais quanto aspectos da informática aplicada à educação

(VILELA; ROSAN; MARCOS, 2008; BARROS; ARAÚJO; MARCOS, 2008; ARAÚJO; BARROS;

MARCOS, 2008). A página do Logicamente é exibida na Figura 12.

Figura 12: Logicamente disponível online atualmente

Com a motivação de dar continuidade ao projeto colaborativo do Logicamente,

entre os períodos de 2009 e 2010, os códigos dos alunos foram reunidos com a intenção de

relacionar cada módulo à objetos de aprendizagem.

O Logicamente foi desenvolvido pelos alunos de graduação em nove módulos, abran-

gendo a implementação de aspectos de Lógica Proposicional e Lógica de Primeira Ordem:

o Settings , o Generator, o Formula Reader, o Truth-Table Constructor, o Tree Interac-

tion, o Substitution Master, o Prenex Converter, o Skolemizer e o Resolution Game. Estes

módulos são descritos em detalhes no Apêndice B.

Page 67: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

65

4.2.1 Desa�os para o Logicamente

O projeto do Logicamente enfrentou diversas di�culdades durante o trabalho de

conversão e integração dos módulos do Logicamente com Objetos de Aprendizagem.

A principal di�culdade no processo de desenvolvimento do Logicamente era a carência

de uma estratégia didática para o ensino de Lógica, isto nos motivou a pensar acerca de

aspectos relacionados à adoção de estratégias de Design Instrucional apropriadas para

criar uma metodologia de ensino que oferecesse interatividade, e ainda auxiliasse o aluno

a executar tarefas que combinam características do ensino presencial tradicional com

possibilidades da educação à distância.

O matemático Paul Halmos esclarece que a heurística para construção de demonstra-

ções matemáticas não é trivial e possui um aspecto experimental:

Matemática não é uma ciência dedutiva. Quando se tenta demonstrarum teorema, não se listam simplesmente as hipóteses e então se começaa raciocinar a respeito. O que se faz é tentativa e erro, experimentos,conjecturas ou suposições. Você deseja encontrar a realidade dos fatos,e o que você faz é similar ao que o técnico de laboratório realiza, sendotodavia diferente em grau de precisão e informação. (HALMOS, 1985,Tradução livre, p.321)15

O nosso objetivo é justamente fornecer uma infraestrutura que possibilite a experimen-

tação no processo de resolução de conjecturas inesperadas que podem ser demonstráveis

ou refutáveis. A nossa preocupação sobre este aspecto do ensino de Lógica é compartilhada

com Paul Halmos:

Nós ensinamos matemática para engenheiros, físicos, biólogos, psicólo-gos, economistas � e matemáticos � do futuro. Se ensinarmos apenas aresolver problemas dos livros, a educação �cará ultrapassada antes delesse graduarem. (...) Não é su�ciente ensiná-los o que é conhecido � elesprecisam saber como descobrir o que ainda não foi descoberto. (HALMOS,1985, Tradução livre, p.322)16

Os desa�os presentes no Logicamente, motivaram a elaboração de ferramentas para

resolver tarefas de DxR. Em particular, nossas contribuições são:

• a implementação da Teoria Semântica (Semp) para refutar através do ProofWeb;

15�Mathematics is not a deductive science. When you try to prove a theorem, you don't list the hy-potheses, and then start to reason. What you do is trial and error, experimentation, guesswork. You wantto �nd out what the facts are, and what you do is in that respect similar to what a laboratory techniciandoes, but it is di�erent in its degree of precision and information.� (HALMOS, 1985, p.321)

16�We teach mathematics to the engineers, physicists, biologist, psychologists, economists � and mathe-maticians � of the future. (...) It is not enough to teach them everything that's known�they must knowalso how to �nd out what has not yet been found.� (HALMOS, 1985, p.322)

Page 68: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

66

• a construção de um Gerador de Conjecturas, com distribuição automática de exercícios;

• a criação de um tutorial interativo para guiar o aluno gradualmente: o TryLogic; e

• a integração na plataforma Moodle com o Gerador de Conjecturas, o TryLogic através

do padrão IMS Basic LTI.

4.3 Nossa contribuição ao ProofWeb: Teoria Semântica

O cálculo semântico de refutação é apresentado através do sistema dedutivo Semp no

mesmo estilo de árvore do sistema de dedução natural Np, no entanto, suas regras de

inferência são de�nidas através das noções semânticas de valoração e satisfação.

O sistema Semp apresenta um conjunto de regras de derivação inversas (backward) �

partindo de uma conclusão para suas premissas ou hipóteses � que determinam a ma-

nipulação da função de valoração para cada um dos conectivos, a partir da suposição de

existência de uma tal valoração. De forma diferente do sistema Np, as regras de inferência

envolvem a manipulação das asserções sobre a interpretação de fórmulas satisfeitas ou

falsi�cadas por uma valoração v. Para cada conectivo em Semp, há regras que determi-

nam a condição su�ciente de entrada para uma valoração v satisfazer (ou falsi�car) uma

determinada fórmula.

O sistema Semp permite mostrar que uma dada sentença não é consequência semântica

de um certo conjunto de sentenças dadas. Para um exemplo mais especi�co, neste sistema

uma refutação de α, β, γ � φ é produzida pela exibição, acompanhada da respectiva

justi�cativa de que existe pelo menos uma valoração v que falsi�ca a sentença (α∧β∧γ)→φ, ou seja, v 1 (α ∧ β ∧ γ)→ φ.

Exemplo 4.1. Vamos veri�car que A 2 B ∨ C. Para tal, basta de�nir uma valoração v

tal que v A ao mesmo tempo em que v 1 B e v 1 C. A refutação deve ser apresentada

através das sucessivas aplicações das regras do sistema Semp, a partir da função valoração

de�nida sobre os átomos.

Representamos esta refutação da seguinte forma:

v A

v 1 B v 1 C

v 1 B ∨ CdisjF

v 1 A→ (B ∨ C)impF

A 2 B ∨ C(Def. de �, Sign. de →)

Para a construção de refutações semânticas corretas em Semp, devem ser respeitados

Page 69: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

67

os seguintes requisitos:

a) Deve haver apenas átomos (A ∈ Prop) nas folhas da árvore de refutação, satisfeitos ou

falsi�cados.

b) Para nenhum átomo A ∈ Prop, podem haver simultaneamente folhas da árvore de

refutação na forma v A e v 1 A.

No Apêndice A apresentamos a implementação da teoria Semp através do Coq. As

regras do sistema Semp podem ser apresentadas da seguinte forma:

v 1 αv ¬α

negT v αv 1 ¬α

negF

v α v β

v α ∧ βconjT v 1 α

v 1 α ∧ βconjF1

v 1 β

v 1 α ∧ βconjF2

v αv α ∨ β

disjT1v β

v α ∨ βdisjT2

v 1 α v 1 β

v 1 α ∨ βdisjF

v 1 αv α→ β

impT1v β

v α→ βimpT2

v α v 1 β

v 1 α→ βimpF

v α v β

v α↔ βiffTT

v 1 α v 1 β

v α↔ βiffFF

v α v 1 β

v 1 α↔ βiffTF

v 1 α v β

v 1 α↔ βiffFT

Para realizar uma refutação, devemos aplicar uma sequência adequada de regras

backward para se obter formulas mais simples, a partir de fórmulas complexas.

Exemplo 4.2. Com o sistema Semp através de uma valoração v tal que v A, v B,

v C e v 1 D, refutamos a conjectura (A → B), (B → C), (D → C) |∼A → D. Neste

caso, no sistema Semp, para refutar a conjectura (1), precisamos construir uma árvore

em que uma valoração v falsi�ca a conjunção das premissas da conjectura implicando na

conclusão. Ou seja, apresentamos uma árvore em que a raiz é v 1 ((A → B) ∧ (B →C) ∧ (D→ C))→ (A→ D).

Page 70: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

68

v B

v A→ BimpT2

v C

v B→ CimpT2 v C

v D→ CimpT1

v (B→ C) ∧ (D→ C)conjT

v (A→ B) ∧ (B→ C) ∧ (D→ C)conjT v A v 1 D

v 1 A→ DimpF

v 1 ((A→ B) ∧ (B→ C) ∧ (D→ C))→ (A→ D)impF

A→ B,B→ C,D→ C 2 A→ D(Def. de �, Sign. de ∧ e →)

Note que já realizamos duas refutações semelhantes usando apenas a heurística da

Semântica Proposicional nos Exemplos 2.21 e 2.22, que corresponde à sequência de táticas

de refutação em Semp nas Figuras 13 e 14.

Figura 13: Script para produção de refutação no ProofWeb 1

Reset Initial.

Require Import Semantics.

Parameter A B C D : Prop.

Hypothesis f1 : (v ||-/- A).

Hypothesis f2 : (v ||-/- B).

Theorem sem_ex2 :

(v ||-/- ((~A->B) /\ (~A/\~B))).

Proof.

conjF1.

impF.

negT.

exact f1.

exact f2.

Qed.

a) Script com sequência de táti-cas

b) Árvore resultante construída no ProofWeb

Com ProofWeb, nós construímos refutações de forma dinâmica a partir dos comandos

Focus n em que n representa o número de um ramo da árvore, nós podemos trocar de ramo

da árvore e avaliar outros ramos da árvore. Da mesma forma podemos usar o comando

Unfocus para retornar ao último ramo avaliado. Portanto, podemos através da teoria Semp

podemos aplicar nossa heurística de refutação.

Note que o Princípio de Representação Múltipla é aplicado no ProofWeb nas

Figuras 13 e 14, em que podemos observar que através da sequência de táticas inserida no

lado esquerdo (a), nós podemos exibir a árvore de refutação apresentada no lado direito

(b), pois a sequência de táticas representa uma justi�cativa para a refutação produzida.

Page 71: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

69

Figura 14: Script para produção de refutação no ProofWeb 2

Require Import Semantics.

Parameter A B C D : Prop.

Hypothesis f1 : (v ||-- A).

Hypothesis f2 : (v ||-- B).

Hypothesis f3 : (v ||-- C).

Hypothesis f4 : (v ||-/- D).

Theorem sem_ex1 :

(v ||-/- (((A -> B) /\ (B -> C)

/\ (D -> C)) ->

(A -> D))).

Proof.

impF.

conjT.

impT2.

exact f9.

conjT.

impT2.

exact f10.

impT2.

exact f10.

impF.

exact f8.

exact f11.

Qed.

a) Script com sequência de táti-cas

b) Árvore resultante construída no ProofWeb

4.4 Gerador de conjecturas em Lógica Proposicional

O Gerador de Conjecturas em Lógica Proposicional 17 foi desenvolvido através da

colaboração de alunos de graduação bolsistas de iniciação cientí�ca18. A implementação

foi realizada sob nossa orientação a partir de um gerador de fórmulas em comunicação

com o SAT solver Limboole19 para avaliar as fórmulas proposicionais.

O Gerador de Conjecturas realiza a criação de conjecturas, no formato de exercício

individualizado para o Coq, diretamente na área dos alunos no ProofWeb. Os alunos

recebem cada conjectura ( |∼ ) em um template para demonstrar (`) teoria Np e outro

para refutar (2) na teoria Semp.

O Gerador de Conjecturas produz conjecturas de Lógica Proposicional de acordo

com a complexidade desejada pelo tutor. O objetivo é produzir exercícios distintos para

diferentes alunos e que possam ser automaticamente corrigidos pelo Coq. O Gerador de

Conjecturas foi implementado com requisitos que estabelecem uma conexão de relevância

17O gerador está disponível em : http://lolita.dimap.ufrn.br/logicamente-ge/ e o código estádisponibilizado em http://github.com/terrematte/logic-propgenerator.

18A reimplementação do gerador de fórmulas a partir do código do Logicamente foi contribuiçãode Hudson Geovane; e a implementação do gerador de conjecturas em comunicação com o Limboole foicontribuição de Elias Amaral.

19Disponível em http://fmv.jku.at/limboole/.

Page 72: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

70

entre as premissas e a conclusão, a saber:

• a conjunção das premissas deve ser contingente, e a conclusão também deve ser contin-

gente;

• cada fórmula das premissas deve partilhar ao menos um átomo com a fórmula da

conclusão.

Além destes requisitos básicos, o Gerador de conjecturas descarta as conjecturas ge-

radas que não atendam às seguintes restrições:

• Átomos, conectivos, intervalo de complexidade e número de premissas: A

partir da escolha de uma sequência de letras atômicas é possível indicar a diversidade

das conjecturas geradas, pois quanto mais átomos diferentes uma conjectura possuir,

maior será o custo de sua resolução através de Tabelas de Verdade, por exemplo. O

intervalo de complexidade das fórmulas, que é medido através do número de conectivos

de cada fórmula, e o número de premissas são as nossas principais métricas disponíveis

para classi�car em diferentes níveis a di�culdade na resolução de conjecturas.

• Igual proporção: Com esta restrição, metade de todas conjecturas geradas de todos

alunos são demonstráveis, e a outra metade é refutável, mas cada aluno individualmente

recebe um número aleatório de conjecturas demonstráveis e refutáveis. O objetivo é

evitar que o aluno possa prever se uma conjectura recebida é demonstrável ou refutável

apenas a partir do número das conjecturas resolvidas anteriormente;

• Premissas relevantes: Cada premissa deve compartilhar pelo menos um átomo com

a conclusão. A �nalidade desta restrição é garantir uma relação de relevância entre as

premissas e a conclusão, tanto para as conjecturas demonstráveis como também para

as conjecturas refutáveis;

• Premissas necessárias: A conclusão só pode ser demonstrada utilizando todas as

premissas, ou seja, não há premissas supér�uas, não é possível construir a demonstração

sem uma das premissas. O objetivo é garantir, através de um critério mínimo, que as

demonstrações sejam interessantes e não-triviais;

• A conjunção das premissas e a conclusão são contingentes: Com essa restrição

não há fórmulas tautológicas, nem contraditórias. Isto exclui a possibilidade de serem

geradas conjecturas com conclusões triviais devido à conjunção das premissas serem

contraditórias. Esta restrição garante que as refutações não sejam óbvias devido a in-

consistência das premissas, e além disso, também evita a obtenção de tautologias na

conclusão; e

• Apenas Refutáveis: Com esta restrição, as conjecturas geradas serão apenas refutá-

Page 73: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

71

veis.

• Apenas Demonstráveis: Com esta restrição selecionada, as conjecturas geradas serão

apenas demonstráveis.

Através das con�gurações disponíveis, o Gerador de Conjecturas é uma ferramenta

útil para docentes que desejam elaborar exercícios para avaliar argumentos proposicionais

via Tabelas de Verdade, Tableaux, Dedução Natural, Método de Resolução e até elaborar

questões de múltipla escolha para avaliar argumentos. Os argumentos gerados podem ser

resolvidos a partir das diferentes ferramentas listas no Capítulo 3, e em particular nós

utilizamos o IMS Basic LTI para integrar o Gerador de Conjecturas através do Moodle e

para serem resolvidas no ProofWeb.

A implementação da ferramenta de Geração de Conjecturas juntamente com a imple-

mentação de uma teoria no Coq para refutar conjecturas, já resultou em três aplicações

e distribuição de tarefas desa�adoras nos semestres de 2012.2 e 2013.1 na disciplina de

Lógica Aplicada à Computação na UFRN. O relato da experiência de aplicação do Gera-

dor de Conjecturas e do TryLogic é descrito no Capítulo 5, envolvendo a descrição dos

objetivos didáticos alcançados e a avaliação das ferramentas.

Figura 15: Gerador de conjecturas DxR integrado ao Moodle

Page 74: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

72

4.4.1 Aspectos a serem desenvolvidos

O Gerador de Conjecturas produz conjecturas a partir de níveis de di�culdade que

são produzidas apenas pelas con�gurações listadas na seção anterior e relacionadas ao

número de átomos distintos, quais conectivos envolvidos, o intervalo de complexidade das

fórmulas e o número de premissas. As con�gurações di�cultam a realização de refutações

semânticas, pois, a partir da escolha dos conectivos envolvidos, quanto maior a comple-

xidade, o número de átomos e o número de premissas, maior tenderá a ser o número de

restrições sobre os átomos para satisfazer a conjectura.

No entanto, as con�gurações do Gerador de Conjecturas não garantem efetivamente

a medição da di�culdade das demonstrações em Dedução Natural. Como proposta para a

construção da métrica de di�culdade, o gerador deverá selecionar um conjunto de conjec-

turas demonstráveis, em seguida através de um assistente de demonstração de teoremas

como o Coq, ou o Isabelle, deverá construir a derivação das conjecturas em sua forma

normalizada20. Dessa forma, o nível de di�culdade será dado através do par ordenado

composto pelo comprimento de uma derivação normalizada (cf. def. p. 34) e o nú-

mero de regras do absurdo clássico (⊥c) utilizadas. Quanto maior o comprimento

da derivação normalizada, maior será a di�culdade da derivação. A métrica para deter-

minar o grau de di�culdade de resolução de demonstrações é aspecto a ser desenvolvido

como trabalho futuro.

Uma outra proposta de trabalho futuro é a implementação da geração de conjecturas

em Lógica de Primeira Ordem, para isso será preciso integrar o gerador com um módulo do

Logicamente já implementado: o gerador de contra-modelos �nitos de Primeira Ordem

para as conjecturas refutáveis.

Como trabalho futuro, as propostas de melhorias para o Gerador de Conjecturas

envolvem a implementação da:

• métrica de di�culdade para derivações.

• geração de conjecturas para Lógica de 1a Ordem.

20Uma derivação é dita normalizada quando não há ocorrências redundantes de regras em DeduçãoNatural. Uma redundância representa uma sequência desnecessária de aplicação de regras de inferência,por exemplo, quando que uma introdução da conjunção (∧ I) é seguida da eliminação da conjunção(∧ E).

Page 75: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

73

4.5 Nossa contribuição: o tutorial interativo TryLogic

OTryLogic é um tutorial interativo desenvolvido a partir do TryOcaml e do ProofWeb

que representa uma interface web de acesso ao assistente de demonstração de teoremas

Coq. O TryLogic está disponível para acesso de três formas:

• diretamente em http://lolita.dimap.ufrn.br/trylogic/;

• através de uma conta no ProofWeb em http://lolita.dimap.ufrn.br/proofweb/;

• acesso ao código livre em http://github.com/terrematte/trylogic.

Antes de descrever o nosso tutorial TryLogic, é preciso descrever as características e

vantagens da estrutura do TryOCaml que motivaram a implementação da nossa ferramenta

através da infraestrutura do TryOCaml.

4.5.1 TryOCaml: um tutorial para ensino de OCaml

O TryOCaml21 é um tutorial interativo para o ensino da Linguagem de Programação

OCaml, desenvolvido em uma versão compilada do OCaml para Javascript com nome de

js_of_ocaml22.

O TryOCaml é uma ferramenta semelhante a outros projetos de tutoriais interativos

para o ensino de uma determinada linguagem de programação. Seguindo o mesmo padrão,

existem alguns tutoriais interativos básicos para o ensino de uma única linguagem através

de lições com passos, tais como: o Try Haskell23; o Try Ruby24 ; e o Try Python25.

Há também tutoriais interativos que representam ambientes de ensino para diferentes

linguagens com conteúdos bastante abrangentes:

• os tutoriais da W3Schools26 para HTML/CSS, JavaScript, Ajax, PHP, SQL, XML,

entre outras linguagens; e

• o ambiente do Codecademy27 para o ensino de JavaScript, Python, Ruby e PHP. O

Codecademy além de ser desa�ante com um sistema de pontuação por atividades e

lições, também possui uma infraestrutura para contribuir com a elaboração de cursos

e lições com passos.

21Disponível para acesso através do endereço http://try.ocamlpro.com/, com o código distribuídoem https://github.com/OCamlPro/tryocaml.

22Disponível em http://ocsigen.org/js_of_ocaml/.23Disponível em http://tryhaskell.org/24Disponível em http://tryhaskell.org/25Disponível em http://try-python.appspot.com/26Disponível em http://www.w3schools.com/sitemap/default.asp27Disponível em http://www.codecademy.com/.

Page 76: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

74

Em comparação a outras propostas, as vantagens do TryOCaml que motivaram a nossa

opção por sua infraestrutura são:

• Divide conteúdos complexos de forma analítica entre Lições e passos breves;

• Permite três tipos de interações: digitando os comandos em OCaml diretamente em

um prompt simulado (toplevel), clicando nos comandos separadamente e também ar-

rastando arquivos contendo códigos em OCaml;

• Executa suas bibliotecas js_of_ocaml no próprio navegador através do interpretador

JavaScript, o que evita problemas causados pela latência da rede;

• Permite a construção multilíngue das Lições e Passos;

• Garante interatividade quando o usuário insere o comando correto especi�cado previa-

mente, e dessa forma o usuário avança para o Passo seguinte da Lição; e

• Possui Licença Pública Geral (GPL) para desenvolvimento colaborativo e código dis-

ponível no Github.

Figura 16: TryOCaml: Tutorial interativo para o Ensino de OCaml

4.5.2 Objetivos do TryLogic

Os objetivos atingidos através do TryLogic são:

• Auxiliar a compreensão de estratégias que envolvam tarefas de Demonstrar ou Refutar

conjecturas em Lógica Proposicional.

Page 77: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

75

• Apresentar de forma amigável a resolução de conjecturas no Coq;

• Apresentar um conjunto de lições para exempli�car a tarefa de Demonstrar com o

Sistema de Dedução Natural para Lógica Proposicional através do Coq;

• Apresentar um conjunto de lições para aplicar estratégias heurísticas de análise de

conjecturas em Lógica Proposicional, através da Teoria Semântica implementada no

Coq;

• Organizar em passo-a-passos a exposição dos conteúdos de Dedução Natural e Semân-

tica Proposicional de forma sequêncial e interativa;

• Fornecer ao aluno tarefas de autoavaliação antes de seguir para passos seguintes;

• Fornecer ao professor um acompanhamento das lições realizadas pelo aluno, além do

registro das interações realizadas através do ProofWeb; e

• Fornecer uma infraestrutura multilíngue para elaborar lições.

Atualmente, o TryLogic possui as seguintes dez lições abaixo, contendo uma média

de quatro passos por lição.

• Tarefas no TryLogic: É descrito o funcionamento do TryLogic, os templates do Coq

e como são apresentadas as tarefas de DxR;

• Sistema dedutivo Np no Coq: São apresentadas breves motivações sobre o funciona-

mento do Coq para Dedução Natural no sistema Np do ProofWeb;

• Regras de Np: São cinco lições apresentados regras de introdução e eliminação dos

conectivos em Dedução Natural através do ProofWeb. Em cada lição são apresentados

exemplos e exercícios de autoavaliação nesta sequência de apresentação: Regras da

Implicação, Conjunção, Negação, Disjunção e Bi-implicação;

• Resumo e Estratégias de Demonstração: Nesta lição são relembradas as regras de de-

dução e também são apresentadas as instruções para a construção de demonstrações

através do uso de Lemas;

• Sistema de Refutação por Via Semântica proposicional (Semp): São ensinadas as regras

para realizar refutações em Lógica Proposicional e como mostrar que uma valoração

pode funcionar como refutação de uma conjectura; e

• Dúvidas sobre Demonstrar (Np) e Refutar (Semp): São apresentadas algumas questões

gerais sobre as meta-propriedades Lógicas relacionadas à tarefa de DxR.

O objetivo principal do TryLogic é diminuir a sobrecarga cognitiva através de um

tutorial passo-a-passo de forma sistemática, apresentado diferentes tópicos da lógica rela-

cionados ao processo de DxR conjecturas lógicas. A ideia básica do projeto é fornecer um

tutorial interativo para ensinar o aluno a solucionar problemas lógicos. Para tal, o TryLo-

Page 78: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

76

Figura 17: Lições do TryLogic integradas ao Moodle

gic deverá compartilhar dos seguintes requisitos não-funcionais das melhores ferramentas

para o ensino de Lógica:

• Requisito web: ser acessível em qualquer lugar e a qualquer momento via web;

• Requisito usabilidade: fornecer padrões de usabilidade para estimular diferentes estilos

de aprendizagem;

• Requisito de integração: oferecer uma integração com um AVA para gerenciar atividades

e monitoramento dos alunos; e

• Requisito de desenvolvimento colaborativo: oferecer garantia de desenvolvimento contí-

nuo. Assim seguindo o princípio de que projetos complexos precisam oferecer estratégias

colaborativas para garantir a sua continuidade e melhoria.

4.6 A integração de ferramentas externas entre diferen-

tes plataformas

Uma comparação entre as principais infraestruturas para a integração de ferramentas

externas pode ser encontrado em Alario-Hoyos e Wilson (2010). As alternativas mais

representativas para infraestruturas de integração entre plataformas de ensino são:

Page 79: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

77

• IMS Learning Tools Interoperability (IMS Full LTI)28: Trata-se de uma especi�cação

desenvolvida em 2006 pela IMS Global Learning Consortium com o objetivo de permi-

tir a integração de ferramentas externas entre diferentes plataformas e ferramentas de

aprendizagem. A integração permite que um aluno cadastrado em sua plataforma, com

nome de Tool Consumer (TC) ou ferramenta consumidora, possua uma conta criado

automaticamente em outra diferente Tool Provider (TP) também chamada de ferra-

menta provedora. Todavia, poucas ferramentas implementaram este padrão devido a

sua complexidade em serviços e segurança;

• Basic LTI (IMS Basic LTI) 29: Trata-se de um subconjunto do IMS Full LTI. Possui

sua implementação restrita aos serviços básicos para uma ferramenta consumidora. A

simpli�cação do Basic LTI é resultado de uma limitação na Segurança, pois o protocolo

OAuth30 requer apenas um endereço e uma senha compartilhada. Uma outra restrição

é que o Basic LTI não oferece feedback de retorno para a ferramenta provedora, por

outro lado, possui a vantagem de contar com a especi�cação IMS Learning Information

Service para implementação de uma comunicação via web service para a ferramenta

provedora. O padrão IMS Basic LTI é adotado por um maior número de plataformas

e ferramentas do que outras alternativas de padronização31;

• Apache Wookie32: Trata-se de um servidor de aplicação web que permite a instanciação

de diversos Widgets, que são ferramentas com funcionalidades especí�cas, por exemplo,

chats, fóruns, ferramentas para desenho, recursos de JQuery para mobile, entre outros.

O Apache Wookie não é direcionado para aplicações de Ensino, mas fornece um padrão

de comunicação REST33 através do qual são implementados plugins de integração com

o Moodle, o Wordpress e o Drupal.

• Group Learning Uniform Environment (GLUE!)34: Trata-se de uma arquitetura base-

ada em um serviço REST, composto por três partes: um núcleo e dois conjuntos de

adaptadores para plataformas e outras ferramentas. Em particular, permite a integra-

28O IMS Full LTI está disponível em http://www.imsglobal.org/lti/index.html.29O IMS Basic LTI está disponível em http://www.imsglobal.org/developers/BLTI/. O Guia de

implementação do IMS Basic LTI está disponível em http://www.imsglobal.org/lti/blti/bltiv1p0/

ltiBLTIimgv1p0.html.30O protocolo OAuth é descrito em http://oauth.net/core/1.0.31O IMS Basic LTI suporta a integração entre as plataformas: Blackboard, Desire2Learn, Jenzabar,

Learning Objects, LearningOn, Moodle, Sakai, Safari Montage, BrainHoney, �Learning.com e ATutor,além das ferramentas GoogleDocs, Wordpress, MediaWiki, SofltChalk Cloud, MediaCore. Para umalista completa, c.f. http://developers.imsglobal.org/catalog.html.

32O Apache Wookie está disponível em http://incubator.apache.org/wookie.33O Representational State Transfer (REST) é um estilo de arquitetura de software para implementação

da comunicação entre componentes com requisições e respostas numa rede com clientes e servidores atravésde mensagens no protocolo Hypertext Transfer Protocol (HTTP) usando seus métodos (GET, POST, PUTe DELETE).

34O GLUE! está disponível em http://www.gsic.uva.es/glue/.

Page 80: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

78

ção com o Moodle. O GLUE! é ainda uma arquitetura em desenvolvimento e com pouca

adesão por organizações de ferramentas de aprendizagem.

Além desta comparação entre diferentes infraestruturas de integração, há na literatura

muitos trabalhos discutindo e aplicando os padrões da IMS, por exemplo, o artigo de

Forment et al. (2012) apresenta uma proposta de integração para evidenciar o potencial

de colaboração das ferramentas do GoogleDocs empregadas como atividades de ensino no

ambiente virtual de aprendizagem Moodle. Nos artigos Leal e Queirós (2011) e QUEIRÓS

e LEAL (2012) são apresentadas duas propostas de integração do Moodle e do Sakai

com uma ferramenta de resolução de exercícios de programação através da utilização do

padrão IMS Basic LTI.

O padrão de interoperabilidade de maior aceitação entre as plataformas de ensino

é a especi�cação do IMS LTI. Dentre as opções disponíveis no estado da arte de ferra-

mentas de integração, o IMS Full LTI fornece um padrão uniforme para a integração

de plataformas com ferramentas remotas de ensino. Como foi ditok IMS Basic LTI é um

subconjunto do padrão IMS Full LTI de comunicação unidirecional, com serviços simpli�-

cados e com ampla aceitação, dessa forma se caracteriza por ser a opção de infraestrutura

mais vantajosa e ampla, e por esta razão optamos pelo padrão IMS Basic LTI.

Na Figura 18 observamos como a arquitetura do IMS Full LTI permite a comunicação

entre ferramentas consumidoras e provedoras através de protocolos de serviços SOAP35 e

REST. A distinção da arquitetura do IMS Basic LTI é que não há comunicação de retorno

da ferramenta provedora com a ferramenta consumidora, mas é possível implementar

a comunicação de forma ad hoc para garantir que as tarefas avaliativas realizadas na

ferramenta provedora sejam registradas pela ferramenta consumidora, ou ainda por uma

plataforma de aprendizagem.

4.7 Nossa Contribuição: A integração do TryLogic e

do Gerador de Conjecturas através do IMS Basic

LTI

O IMS Basic LTI é um padrão de especi�cação genérico para implementar a comu-

nicação entre ferramentas de ensino através do compartilhamento de um endereço e um

código de acesso. No nosso caso, a ferramenta provedora é o TryLogic e a ferramenta

35O Simple Object Access Protocol (SOAP) é um protocolo que utiliza a comunicação através de men-sagens em Extensible Markup Language (XML) via HTTP.

Page 81: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

79

Figura 18: Arquitetura do IMS LTI.

consumidora pode ser qualquer plataforma de aprendizagem como o ATutor, Sakai e

Moodle. O nosso objetivo através desta integração é fornecer uma infraestrutura gené-

rica para a comunicação centralizada das nossas ferramentas (Gerador de Conjecturas,

ProofWeb e TryLogic) com qualquer uma plataforma de aprendizagem de nossa escolha

que contenha uma implementação do IMS Basic LTI.

Para atingir nosso objetivo, optamos pela integração das nossas ferramentas com o

Moodle através de suas vantagens e também será preciso esclarecer o funcionamento da

arquitetura do Moodle para detalhar nossa integração.

4.7.1 A integração modular do TryLogic no Moodle

Em particular, optamos pelo Moodle (Modular Object-Oriented Dynamic Learning

Environment) por ele possuir uma grande comunidade trabalhando colaborativamente e

dispor de um conjunto de ferramentas auxiliares. Além disso, o Moodle possui as seguintes

vantagens (COLE; FOSTER, 2007) que estimularam a nossa adoção:

a) é adequado tanto para cursos online quanto para complementar um curso presencial;

b) agiliza o desenvolvimento de uma interface amigável e possibilita a adição de um

conjunto de componentes integrados, tais como fóruns de discussão, wikis, atividades,

atribuições de tarefas integradas a unidades digitais de conteúdos, chamados de objetos

de aprendizagem;

c) seus cursos que podem ser compartilhados em uma mesma instalação e podem ser

agrupados por categoria;

d) possui código aberto, livre e gratuito sob a licença GNU Public, isto signi�ca que é

Page 82: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

80

permitido copiar, usar e modi�car, desde que não se modi�que ou remova as licenças e

copyrights originais, e se aplique a mesma licença para qualquer trabalho derivado36.

Sobre a usabilidade do Moodle, uma interessante análise técnica pode ser encontrada

em (MELTON, 2006). Além disso há diversos livros disponíveis que contribuem para o

desenvolvimento e experiências de e-learning através da plataforma Moodle, como por

exemplo: (STOCKER, 2011; TAYLOR, 2010; HOLLOWELL, 2011; RICE; NASH, 2010). Para

o estudo e desenvolvimento da integração de ferramentas no Moodle, analisamos as infor-

mações técnicas e especi�cações encontradas no endereço: http://docs.moodle.org/20/

en/Main_Page e nos livros (MOORE; CHURCHWARD, 2010; HOLE, 2011; MILETIC, 2011;

WILD, 2009).

O Moodle funciona em qualquer servidor que execute aplicações LAMP � acrônimo

para Linux, Apache, MySQL e PHP. Assim, por ser um serviço LAMP, o Moodle adquire

mais algumas vantagens, como fácil codi�cação, simples implantação, �exibilidade para

desenvolver localmente e baixo custo de hospedagem.

Além da separação arquitetural de implantação, o Moodle também se divide em três

áreas: código, persistência e dados. A área de código do Moodle é organizada em dire-

tórios para cada componente, que por sua vez suporta diferentes módulos de plugins. Por

exemplo, o módulo de atividades de quiz suporta tipos modulares de questões. Os módu-

los são instalados apenas copiando para um diretório apropriado no servidor. O Moodle

detecta o novo módulo, localiza o código SQL e executa a instalação exibindo os resul-

tados. Na Figura 19 exibimos a estrutura principal de módulos do Moodle, organizados

em diretórios. A área de persistência do Moodle é organizada em quase 200 tabelas. Cada

componente do sistema possui uma ou mais tabelas, cada uma iniciando com o nome do

componente. Por tal razão, ao desenvolver códigos de um módulo, é preciso tratar com

cautela o banco de dados, tal como uma única entidade, copiando e movendo instâncias

de um banco de dados inteiro do Moodle. A área de dados do Moodle corresponde à loca-

lização dos arquivos carregados pelo usuário, assim como os dados da sessão dos usuários

autenticados no sistema, e outras informações como os pacotes de linguagens opcionais

de um usuário ou um curso. Estes dados são salvos em diretórios identi�cados pelo id do

usuário.

Com as justi�cativas apresentadas nesta seção para a utilização do Moodle e a partir

dos esclarecimentos da organização do Moodle, a integração através do IMS Basic LTI é

realizada diretamente pela biblioteca no seguinte diretório responsável na área de código

36Para maiores detalhes conferir: http://docs.moodle.org/20/en/License.

Page 83: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

81

Figura 19: Estrutura de Diretórios do Moodle

Fonte: (MOORE; CHURCHWARD, 2010).

em /mod/lti/locallib.php.

Para efetuar a integração da ferramenta consumidora, no caso o Moodle, foi necessário

implementar funções que não existiam na biblioteca IMS Basic LTI do Moodle. Em parti-

cular, na biblioteca /mod/lti/locallib.php para a função de construção das requisições

(lti_build_request) foi necessário implementar os métodos para envio dos dados dos

participantes do curso do Moodle.

Através destas modi�cações, implementamos no lado da ferramenta provedora do

ProofWeb a realização automática do cadastro dos participantes inscritos do curso do

Moodle. Além disso, também implementamos a ferramenta provedora para a Geração de

Conjecturas para os alunos do curso, bem como o acesso dos alunos ao Tutorial interativo

do TryLogic e o acompanhamento dos alunos pelos professores e tutores da disciplina

no Moodle.

Na Figura 20 apresentamos as con�gurações necessárias para adicionar o TryLogic

como ferramenta externa no Moodle. Para cada instância da TryLogic em um curso

é preciso que o administrador realizem estas con�gurações no Moodle. Após terem sido

adicionadas estas con�gurações o acesso é realizado pelos alunos e tutores no Moodle, pois

as contas são criadas automaticamente no ProofWeb e no Moodle a partir do primeiro

acesso dos usuários.

As con�gurações necessárias para adicionar uma ferramenta provedora externa no

Moodle são:

• External tool type: Com esta opção é possível con�gurar previamente as con�gurações

gerais do TryLogic. Esta opção é útil se tivermos diferentes instâncias do TryLo-

Page 84: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

82

Figura 20: Con�guração do TryLogic para acesso no Moodle (IMS LTI )

gic em diferentes cursos do Moodle simultaneamente, evitando ter que inserir os dados

seguintes sempre que desejarmos criar uma instância de ferramenta externa do Try-

Logic;

• Launch URL/Secure Launch URL: Neste campo é preciso inserir o endereço de inicia-

lização do TryLogic que corresponde ao endereço http://lolita.dimap.ufrn.br/

trylogic-lti/trylogic.php;

• Launch Container : Com esta opção podemos selecionar como a ferramenta será exibida

quando iniciada, por exemplo, se será inicializada em uma nova janela do navegador,

ou como uma atividade com os menus de navegação do Moodle;

• Consumer Key : Neste campo é fornecida a identi�cação de autenticação do Moodle no

TryLogic, tal como um login;

Page 85: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

83

• Shared Secret : Neste campo é fornecida a senha de autenticação do Moodle no TryLo-

gic;

• Custom parameters : Neste campo é possível fornecer outros parâmetros à ferramenta

provedora no formato �nome=valor�;

• Icon URL/Secure Icon URL. Neste campo é fornecido o endereço do ícone que repre-

sentará ao TryLogic;

• Share laucher's name/email with the tool. Com estas opções marcadas o Moodle com-

partilha informações sobre os usuários cadastrados no curso. É importante marcar esta

opção para que sejam criadas as contas dos alunos no primeiro acesso ao TryLogic; e

• Accept grades from the tool. Com esta opção marcada o Moodle permite receber os

resultados de avaliações da ferramenta provedora. No caso de implementações da IMS

Basic LTI, isto requer a implementação ad hoc da comunicação de retorno da TP.

Figura 21: Visão de implantação do TryLogic com o Moodle (IMS LTI )

O resultado da integração do TryLogic é representado pelo diagrama de implantação

na Figura 21. Dessa forma, qualquer colaborador que deseje utilizar o TryLogic em

qualquer plataforma como o Moodle poderá adicioná-la como ferramenta externa usando

a nossa Launch URL, uma Consumer Key e uma Shared Secret cadastradas. Assim não

é necessário instalar o TryLogic, nem são necessárias permissões especiais do servidor,

apenas uma conta como instrutor (administrador, professor ou tutor) em um curso do

Moodle.

4.8 Considerações �nais e trabalhos futuros

Neste capítulo discutimos questões conceituais sobre plataformas de aprendizagem e

motivações para a convergência de ferramentas de aprendizagem. O objetivo foi justi�car a

nossa proposta de integração de ferramentas de ensino de Lógica, oferecendo mecanismos

de avaliação e ferramentas interativas de ensino. Assim, como trabalho futuro propomos:

Page 86: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

84

• Veri�car o funcionamento da integração do TryLogic via IMS Basic LTI nas plata-

formas gratuitas ATutor e Sakai;

• Reimplementar módulos do Logicamente relacionados às lições do TryLogic;

• Implementar métricas de di�culdade para derivações para o Gerador de Conjecturas; e

• Implementar a geração de conjecturas para a Lógica de Primeira Ordem.

Page 87: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

85

5 Análise das experiências com o

TryLogic

Neste capítulo descreveremos as experiências de aplicação da tarefa de Derivar ou Refutar

(DxR) conjecturas em Lógica Proposicional. A tarefa de DxR foi atribuída a alunos da

graduação que realizaram a disciplina de Lógica Aplicada à Computação (LAaC) durante

os semestres de 2012.2 e 2013.1. Nas experiências, a disciplina de LAaC foi gerenciada

através da plataforma Moodle, e avaliamos a aplicação do tutorial TryLogic, do Gerador

de Conjecturas e do ProofWeb. No Apêndice C (p.111) apresentamos os questionários de

pesquisa juntamente com os resultados dos alunos matriculados na disciplina de LAaC.

As nossas experiências com o TryLogic não se constituem um experimento sistemá-

tico ou um estudo observacional, pois nos semestres correntes às experiências não houve

possibilidade de realização de grupos de controle, ou mesmo uma amostra signi�cativa

de alunos para testar as hipóteses sobre a comparação de outros métodos didáticos com

nossa infraestrutura e metodologia. Nas duas experiências do TryLogic, dos 19 alunos

que responderam a pesquisa 15 alunos trancaram, abandonaram ou foram reprovados na

disciplina (p.111 e p.125). Nos semestres em que ocorreram as experiências, o número

reduzido de alunos matriculados se deveu à mudança da oferta da disciplina na estru-

tura curricular do curso de Ciência da Computação da UFRN. A LAaC foi ofertada para

alunos regulares em 2012.1 e será ofertada novamente para alunos regulares no semestre

de 2013.2. Além disso, o fato de uma quantidade signi�cativa de alunos que já tiveram

passagem pela disciplina estarem matriculados em LAaC se deve ao histórico de número

signi�cativo de reprovações e desistências em semestres anteriores. Entre os semestres de

2006 a 2011 na UFRN, as médias da turmas de LAaC foram de 40,0% de aprovações,

24,5% de reprovações e 35,5% de trancamentos.

Por estas razões, o que nós realizamos é uma análise sobre duas experiências de apli-

cação das ferramentas do Gerador de Conjecturas, ProofWeb e TryLogic.

Page 88: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

86

5.1 Experiência 1: TryLogic e Gerador de Conjecturas

A Experiência 1 foi realizada durante o semestre de 2012.2 com 22 alunos matriculados

na disciplina de LAaC1, dos quais 11 alunos realizaram as atividades DxR e participaram

do nosso questionário. A Experiência 1 envolveu as seguintes etapas:

1) A realização de duas aulas presenciais sobre Dedução Natural para a Lógica Clássica

Proposicional;

2) A distribuição de exercícios de Dedução Natural através do ProofWeb com comandos

ensinados através das lições do TryLogic;

3) A realização de duas aulas presenciais sobre Semântica da Lógica Clássica, interpreta-

ção proposicional e consequência semântica; e

4) A distribuição da tarefa de DxR com conjecturas produzidas no Gerador de Conjec-

turas, disponibilizadas no ProofWeb e ensinadas através das lições do TryLogic.

A tarefa de DxR foi distribuída a partir do Gerador de Exercícios com as restrições

descritas na Seção 4.4 (p.70), ou seja, contendo a mesma proporção de conjecturas de-

monstráveis e refutáveis, com cada premissa compartilhando pelo menos um átomo com

a conclusão, sem premissas supér�uas, com fórmulas contingentes e a conjunção das pre-

missas também contingente. As conjecturas foram geradas com os seguintes níveis das

conjecturas e suas respectivas con�gurações:

• No nível 1 foram geradas 2 conjecturas para cada aluno, com 3 átomos distintos nas

fórmulas das conjecturas, com 2 premissas para cada conjectura, e fórmulas com número

complexidade entre 2 a 4;

• No nível 2 foram geradas 2 conjecturas para cada aluno, com 4 átomos distintos nas

fórmulas das conjecturas, com 3 premissas para cada conjectura, e fórmulas com número

complexidade entre 3 a 4;

• No nível 3 foram geradas 2 conjecturas para cada aluno, com 5 átomos distintos nas

fórmulas das conjecturas, com 3 premissas para cada conjectura, e fórmulas com número

complexidade entre 3 a 5; e

• No nível 4 foram geradas 2 conjecturas para cada aluno, com 6 átomos distintos nas

fórmulas das conjecturas, com 4 premissas para cada conjectura, e fórmulas com número

complexidade entre 4 a 6.

1A Experiência 1 na disciplina em 2012.2 foi gerenciada no Moodle e se encontra disponível aqui:http://lolita.dimap.ufrn.br/mdl/course/view.php?id=3.

Page 89: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

87

Dessa forma, os alunos receberam 8 tarefas que poderiam ser resolvidas em apenas

uma das teorias do ProofWeb (Np ou Semp), sendo possível, por exemplo, receber 6 con-

jecturas demonstráveis e 2 refutáveis, ou ainda receber todas as 8 conjecturas refutáveis.

A distribuição e entrega da atividade foi realizada através do ProofWeb. Os alunos res-

pondem a tarefa de apenas uma das seguintes formas: ou através do script que representa

a construção da árvore de derivação da conjectura na teoria que implementa a Np, ou do

script que representa a construção da árvore de refutação na teoria Semp.

A utilização das ferramentas permitiu a aplicação e ensino das tarefas de DxR de

forma não-presencial. No entanto, o gerenciamento de diferentes ferramentas representou

um custo adicional de manutenção para os alunos e professores. Para superar esta di-

�culdade encontrada, a solução foi a integração das ferramentas utilizadas (Gerador de

Conjecturas, ProofWeb e TryLogic) com o Moodle. Para atestar o funcionamento da

integração realizamos no semestre seguinte uma nova experiência de aplicação da tarefa

de DxR.

5.2 Experiência 2: integração do Moodle com Gerador

de Conjecturas, ProofWeb e TryLogic

A Experiência 2 foi realizada durante o semestre de 2013.1 com 17 alunos ma-

triculados na disciplina de LAaC2 dos quais 8 alunos realizaram as atividades DxR e

participaram do nosso questionário. O diferencial desta experiência foi o aperfeiçoamento

das Lições a partir da experiência anterior e a integração da plataforma Moodle com

as ferramentas do Gerador de Conjecturas, ProofWeb e TryLogic. Além disso, com o

objetivo de avaliar alunos sobre os conteúdos teóricos das aulas presenciais, realizamos

desta vez uma avaliação contínua dos alunos através de questionários disponibilizados no

Moodle para em seguida fornecermos as lições práticas do TryLogic.

A Experiência 2 envolveu as seguintes etapas:

1) A realização de duas aulas presenciais sobre demonstração em Dedução Natural para

a Lógica Proposicional (Np);

2) A distribuição de um questionário sobre o sistema Np via Moodle, disponível na p.117

do Apêndice C;

3) A distribuição de Desa�os sobre Dedução Natural produzidos no Gerador de Conjec-

2A Experiência 2 na disciplina em 2013.1 foi gerenciada no Moodle e se encontra disponível aqui:http://lolita.dimap.ufrn.br/mdl/course/view.php?id=5.

Page 90: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

88

turas, disponibilizados no ProofWeb e ensinados através das lições do TryLogic;

4) A realização de duas aulas presenciais sobre Semântica da Lógica Proposicional (Sem-

LCP), interpretação proposicional e consequência semântica;

5) A distribuição de questionário sobre os conceitos de Semântica via Moodle, disponível

na p.121 do Apêndice C;

6) A distribuição de Desa�os sobre Refutação produzidos no Gerador de Conjecturas,

disponibilizados no ProofWeb e ensinados através das lições do TryLogic; e

7) A distribuição da tarefa de DxR com conjecturas produzidos no Gerador de Conjec-

turas, disponibilizadas no ProofWeb e nós instruímos os alunos através das lições do

TryLogic.

5.3 Questionários sobre as experiências

Para avaliar os resultados da experiências do TryLogic nos semestres de 2012.2 e 2013.1,

nós distribuímos questionários aos alunos através do Moodle (p.111). Os questionários de

avaliação da utilização do TryLogic e realização da tarefa DxR foram divididos nos

seguintes grupos de questões e respectivos objetivos:

• Sobre o per�l dos alunos: para caracterizar o curso de graduação em Ciência da Com-

putação ou Engenharia da Computação, e veri�car se eram alunos repetentes;

• Sobre os recursos de aprendizagem: para tratar sobre o acesso a ferramentas do ProofWeb

e TryLogic, bem como veri�car razões por não acessar;

• Sobre a Tarefa de DxR: para elicitar as di�culdades enfrentadas na tarefa de DxR e

quais recursos foram utilizados na sua compreensão; e

• Sobre o signi�cado da tarefa de DxR: para veri�car a compreensão do signi�cado da

tarefa de DxR pela relação com refutação semântica e demonstração através de árvores

de derivação. Neste conjunto de questões se avaliou não apenas os conceitos aplicados

na prática de DxR, mas a compreensão da tarefa de DxR através da metateoria expressa

pelos teoremas de Completude e Correção.

5.3.1 Sobre o per�l dos alunos

Os alunos da disciplina de LAaC eram em sua maioria alunos de Ciência da Computação e,

como foi dito, eram alunos desnivelados que já tinham tido pelo menos uma passagem pela

disciplina que resultou em um trancamento ou em reprovação.Nosso desa�o foi desenvolver

uma infraestrutura para acompanhar a realização de tarefas dos alunos de forma não-

Page 91: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

89

presencial.

5.3.2 Sobre os recursos de aprendizagem

Considerando ambas as experiências com o TryLogic, 18 dos 19 alunos matriculados

acessaram o ProofWeb (p.111 e p.125), e 14 de 19 alunos declararam terem resolvido

tarefas no ProofWeb em semestres anteriores (p.112 e p.125). O fato de alegarem conhecer

a ferramenta do ProofWeb não signi�ca que eles dominem o processo de realização de

demonstrações na teoria Np, ou o processo de refutação através da teoria Semp.

Nosso desa�o foi ensinar os comandos do ProofWeb e explicar as instruções sobre a

resolução de tarefas de demonstrar ou refutar exclusivamente através do TryLogic. Nas

aulas presenciais ensinamos apenas os fundamentos teóricos.

Nas duas experiências com o TryLogic, a maioria dos alunos declarou ter acessado as

lições sobre demonstrar e refutar quando tinham dúvidas sobre a tarefa (p.112 e p.125).

Além disso, declaram que o TryLogic ajudou na compreensão do funcionamento do

ProofWeb (p.112 e p.126).

Quando questionado sobre as di�culdades encontradas a ferramentaTryLogic (p.112),

os relatos na Experiência 1 foram �Nenhuma� e �Não tive di�culdades com o TryLogic.

Foi bem fácil de utilizar�.

Na Experiência 2, apenas um aluno alegou não ter acessado o ProofWeb indicando

como razão a falta de tempo e di�culdade em utilizar a interface do ProofWeb (p.125).

Ainda sobre as di�culdades encontradas com a ferramenta TryLogic (p.126), os

relatos na Experiência 2 foram �Nenhuma� e �As di�culdades no TryLogic são somente

no primeiro momento com a ferramenta, por se tratar de uma ferramenta nova, mas pelo

fato de ser interativa e de ajuda para o ProofWeb�.

Assim, nos relatos apresentados os alunos se manifestaram positivamente sobre a

utilização do TryLogic para a compreensão do funcionamento do ProofWeb.

5.3.3 Sobre a Tarefa de Derivar ou Refutar (DxR)

Em ambas as experiências, quando os alunos foram questionados sobre quais recursos

teriam utilizado para a compreensão da tarefa de DxR, dentre as alternativas principais

os alunos alegaram terem realizado exercícios com papel e caneta, assim como também

realizaram exercícios no ProofWeb (p.113 e p.126). Isto pode apontar duas hipóteses não-

Page 92: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

90

excludentes: (1) há uma insu�ciência no TryLogic para a prática e compreensão da

tarefa de DxR; e (2) para compreensão de uma tarefa complexa, qualquer estratégia ime-

diata é válida, por exemplo, relacionar os conteúdos teóricos ministrados em sala de aula,

resolvendo exercícios com papel e caneta, com o recurso prático da realização de exercí-

cios no ProofWeb. Por outro lado, quando questionamos os alunos sobre qual a primeira

estratégia utilizada para resolver as conjecturas de DxR (p.113 e p.127), os alunos respon-

deram de forma unânime de tentavam demonstrar ou refutar no ProofWeb, e não usando

papel e caneta. Assim a hipótese (1) sobre a insu�ciência do TryLogic é contrariada, e

a utilização do recurso do papel e caneta surge como uma segunda alternativa.

Na Experiência 1, apenas um aluno declarou não ter acessado as Lições sobre Dedu-

ção Natural do TryLogic. O mesmo aluno apresentou o relato abaixo reforçando que há

uma clara distinção entre as atividades realizadas no papel em sala de aula e as atividades

do ProofWeb:

Minha di�culdade foi resolver exercícios de Dedução natural, talvez porque [sic] eu achava que seria a mesma coisa que resolver um exercício nopapel, por isso mesmo não li o tutorial, por isso tive muitas di�culdadesem resolver os exercícios. (Relato 2, p.112)

Este relato também reforça nossa hipótese do papel relevante do TryLogic para a

realização da tarefa de DxR.

Ainda sobre os recursos utilizados, os alunos indicaram também que persistiram na

tarefa �por tentativa e erro� (p.113 e p.126). Pelo menos inicialmente, isto pode ser um

indício de que eles não possuíam uma estratégia clara de resolução das conjecturas. Toda-

via, faz parte do processo de aprendizagem a experimentação via tentativa e erro. Como

disse Halmos (1985, p.321), �quando se tenta demonstrar um teorema, (...) o que se faz é

tentativa e erro, experimentos, conjecturas ou suposições�.

Os relatos sobre as di�culdades em produzir derivações foram relacionados ao descarte

de hipóteses nas derivações (p.113); à regra de eliminação da disjunção (p.127); e à falta

de estratégias de demonstração adequadas (p.127). As di�culdades em demonstrar que

foram apresentadas podem ser superadas com o aperfeiçoamento das lições do TryLogic

sobre a utilização de regras que envolvem descarte de hipóteses (⊥c e ∨ E) e lições sobreestratégias de demonstração.

Por outro lado, os relatos sobre as di�culdades em produzir refutações são vagos:

• �exibir algum contra modelo.� (p.113);

• �Não muitas, mais fácil devido a 'obter um valor' para cada átomo.� (p.127); e

Page 93: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

91

• �Perceber os momentos em que a utilização de uma hipótese negada, ou de uma a�r-

mação.� (p.127).

Apesar da difícil interpretação dos relatos apresentados pelos alunos, o fato é que

em ambos experimentos, os alunos obtiveram mais sucesso em resolver as conjecturas de

refutação do que as de demonstração. Na Experiência 1, com uma análise detalhada

em nossas anotações sobre a tarefa de DxR, observamos que de todas 60 conjecturas que

os alunos conseguiram resolver, 43 eram refutáveis e 17 eram demonstráveis. Da mesma

forma, na Experiência 2, observamos na Tabela 3 que todos os alunos que realizaram

os desa�os de refutação tiveram rendimento de 100% na tarefa.

Por �m, a maior di�culdade apontada pelos alunos ao resolver as conjecturas de DxR

foi a complexidade das conjecturas (p.113 e p.127), esta inclusive sendo considerada uma

di�culdade maior que a falta de compreensão sobre Dedução Natural ou Semântica. A

di�culdade em função da complexidade das conjecturas é intencional e desejável para a

aprendizagem de resolução de tarefas de DxR.

5.3.4 Sobre o signi�cado da tarefa de Derivar ou Refutar (DxR)

O objetivo da realização das questões sobre o signi�cado da tarefa de DxR é realizar

um diagnóstico sobre os limites do conteúdo teórico apreendido pelos alunos. Em ambas

experiências, em média, os alunos obtiveram o maior número de acertos nas questões sobre

os conceitos de valoração e satisfação, mas em geral tiveram di�culdades em apontar de

forma clara as relações entre os metateoremas de correção e completude com as teorias

Np e Semp. Na Experiência 1, apenas 4 alunos dos 11 �zeram referência aos Teoremas

de Correção e Completude. Na Experiência 2, apenas 2 alunos dos 8 �zeram referência

aos Teoremas de Correção e Completude.

Um dos problemas mais comuns apresentados pelos alunos é a confusão sobre o signi-

�cado de função de valoração. Por exemplo, é comum o entendimento de que a existência

de uma valoração v tal que v α não implica em ` α � ou seja, que se v satisfaz uma

fórmula α, isto não signi�ca que α seja sempre satisfeito (� α), ou ainda que seja possível

se construir uma árvore de derivação de α e que assim α seja um teorema (` α) .

5.3.5 Resultados das Experiências

A Experiência 1 foi importante para constatarmos e corrigirmos os seguintes pontos:

Page 94: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

92

• A falta de centralização das ferramentas do Gerador de Conjecturas, do ProofWeb e do

TryLogic representou um custo adicional de gerenciamento para os alunos e tutores

na Experiência 1. A limitação apresentada foi superada através da integração das

ferramentas via IMS Basic LTI, e como resultado realizamos a Experiência 2. Dessa

forma bastava os alunos e tutores acessarem suas contas no Moodle para terem acesso

ao TryLogic e aos desa�os de DxR.

• Durante a Experiência 1, se constatou um problema no Gerador de Conjecturas com

a restrição sobre a conjunção das premissas ser contingentes. O problema foi corrigido

na Experiência 2.

• Veri�camos se seria mais interessante ensinar de forma incremental através do Try-

Logic: primeiro fornecer apenas desa�os demonstráveis, em seguida fornecer apenas

desa�os refutáveis, e por �m, distribuir os desa�os da tarefa de DxR. A Experiência 2

foi aplicada com este formato.

• O Gerador de Conjecturas não implementava a restrição de produzir exclusivamente

um conjunto de conjecturas demonstráveis ou exclusivamente conjecturas refutáveis.

Para a Experiência 2 nós implementamos este novo requisito.

• A falta de clareza em algumas lições e erros apresentados na TryLogic durante a

Experiência 1 foram corrigidas para a Experiência 2.

Assim, através das experiências realizadas podemos discutir pontos relevantes sobre

os objetivos atingidos com o TryLogic. Nós constatamos através das Tabelas 2 e 3,

que não há uma correlação entre os rendimentos obtidos pelos alunos na realização dos

questionários (Psq-TryL) e o sucesso na resolução das conjecturas de DxR (DxR-TryL).

A ausência de uma correlação entre estes rendimentos se deve ao papel complementar

das atividades realizadas em sala com as tarefas de demonstração prática assistidas no

ProofWeb e ensinadas de modo não-presencial através do TryLogic. Não é nosso objetivo

com o TryLogic a substituição total das aulas expositivas sobre Dedução Natural e

semântica por atividades não-presenciais, mas sim ensinar estratégias para a realização

de heurística para demonstrar ou refutar de forma complementar.

Contudo, sobre a Experiência 1 é importante notar que o único aluno (A06) que

foi reprovado por nota na disciplina de LAaC obteve o menor resultado (13%) nas tarefa

DxR, conforme Tabela 2. De modo geral, como conclusão trivial (e quase tautológica),

podemos notar que, mesmo sem haver uma correlação, em geral os alunos são aprovados

na disciplina se tiverem frequência regular nas aulas presenciais e realizarem as atividades.

Page 95: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

93

Tabela 2: Resultado dos alunos na Experiência 1 no Semestre 2012.2.Nome Rend. Final Psq-TryL DxR-TryL U1 Nota Final

A01 REP. FALTA 30% 50% 32% 11%A02 APROVADO 4% 25% 26% 50%A03 REP. FALTA - - 17% 5%A04 REP. FALTA - - - -A05 TRANCADO - - 10% 3%A06 REPROVADO 15% 13% 38% 34%A07 APROVADO - 50% 40% 53%A08 REP. FALTA - 50% 13% 3%A09 REP. FALTA 45% 50% 44% 12%A10 APROVADO 19% 100% 66% 71%A11 REP. FALTA 45% 38% 17% 16%A12 REP. FALTA - - 4% 1%A13 APROVADO 96% 63% 67% 89%A14 REP. FALTA - - - -A15 REP. FALTA - - 13% 3%A16 APROVADO 54% 50% 55% 76%A17 APROVADO - 63% 49% 70%A18 ∗ APROVADO 30% 38% 22% 52%A19 APROVADO 45% 63% 55% 62%A20 TRANCADO - - 12% 3%A21 TRANCADO - - 5% 1%A22 APROVADO 19% 100% 48% 57%Média 41,0% de Aprv. 36,5% 54,0% 41,0% 28,2%Participantes 22 11 14 20 20

* Alunos que não se matricularam na disciplina anteriormente.DxR-TryL � Desa�os do TryLogic de DxRPsq-TryL � Pesquisa sobre o uso do TryLogicU1 � Nota na Unidade 1

Tabela 3: Resultado dos alunos na Experiência 2 no Semestre 2013.1.†

NOME Rend. Parcial Q1-DNp Q2-Sem DN-TryL SEM-TryL DxR-TryL Psq-TryL U1

A01 ∗ - 58% 40% 67% 100% 60% 75% 43%A02 REP. FALTAA03 REP. FALTA 17% 33% 10%A04 - 83% 100% 80% 1% 33%A05 - 40% 100% 83% 100% 100% 78% 60%A06 TRANCADO 13%A07 REP. FALTA 40% 60% 15% 10%A08 REP. FALTAA09 - 100% 40% 17% 3% 26%A10 ∗ - 40% 88% 9%A11 REP. FALTAA12 - 80% 80% 50% 100% 100% 31% 67%A13 REP. FALTAA14 REP. FALTAA15 TRANCADO 1%A16 - 87% 20% 100% 100% 100% 94% 77%A17 REP. FALTA 1%Média - 60% 57% 62% 100% 69% 49% 31%Participantes 7 6 7 5 7 8

† � Dados obtidos com semestre em andamento, por isso não está estabelecido quais alunos foram aprovados.* � Alunos que não se matricularam na disciplina anteriormente.Q1-DN � Questionário de Dedução Natural proposicionalQ2-Sem � Questionário de SemânticaDN-TryL � Desa�os do TryLogic de Dedução Natural proposicionalSEM-TryL � Desa�os do TryLogic de Semântica ProposicionalDxR-TryL � Desa�os do TryLogic de DxRPsq-TryL � Pesquisa sobre o uso do TryLogicU1 � Nota na Unidade 1

Page 96: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

94

5.4 Considerações Finais

As conclusões gerais positivas sobre as experiências de aplicação foram :

• É fato que o principal recurso para instrução das tarefas de DxR que eles receberam foi

o TryLogic. Através da utilização do TryLogic os alunos que realizaram as tarefas

de DxR apresentaram o rendimento médio de 54,0% na Experiência 1 e de 69% na

Experiência 2.

• O TryLogic possibilita o entendimento do procedimento dedutivo no assistente de

demonstração Coq para alunos que tiveram um breve contato teórico com o conteúdo

de Dedução Natural para Lógica Proposicional.

• Com as teorias Np e Semp implementadas no assistente de demonstração Coq, o aluno

realiza a heurística para DxR através de passos justi�cados e veri�cados. Assim, com

o TryLogic o processo de experimentação via tentativa e erro é ensinado em um

ambiente controlado.

• A exposição sequencial dos conteúdos associada à prática através do ProofWeb contribui

para uma aprendizagem signi�cativa dos procedimento de DxR.

Como as experiências anteriores foi possível a identi�cação e superação, ainda há

alguns pontos que devem ser aperfeiçoados no TryLogic:

• Aperfeiçoar as lições para a compreensão do signi�cado dos metateoremas de Correção

e Completude.

• Aperfeiçoar a interface para reduzir impactos negativos iniciais.

Page 97: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

95

Considerações Finais

O nosso objetivo principal foi apresentar ferramentas de ensino de Lógica para lidar

com o raciocínio conjectural acerca de asserções em Lógica Proposicional. O presente

trabalho apresentou de forma básica os conceitos relacionados a ferramentas de Sistemas

Dedutivos e noções sobre Formalismo Semântico úteis para a realização de tarefas de

Demonstrar ou Refutar (DxR). Nós apresentamos uma discussão sobre o papel da Lógica

na estruturação curricular de cursos de Computação, com o objetivo de apresentar nossa

proposta sobre ensino através de tarefas de DxR. Em seguida, apresentamos o Sistema de

Dedução Natural Np e os conceitos semânticos necessários para produzir refutações em

Lógica Proposicional.

O nosso trabalho também realizou uma exposição de algumas ferramentas para o en-

sino de Lógica. Nós tingimos o cerne do projeto relatando como o desenvolvimento da

ferramenta Logicamente encaminhou para uma abordagem que oferecesse interativi-

dade e ainda pudesse guiar o aluno em desa�os e tarefas que combinam características do

ensino presencial tradicional com possibilidades do ensino à distância. A partir destas mo-

tivações, nós apresentamos o Gerador de Conjecturas e o tutorial interativo TryLogic,

tendo em vista os seguintes objetivos:

• Apresentar um conjunto de lições para aplicar estratégias heurísticas de análise de

problemas em Lógica Proposicional, através da Teoria Semântica que implementamos

no Coq;

• Organizar em passo-a-passo a exposição dos conteúdos de Dedução Natural e Semântica

Proposicional de forma sequencial e interativa;

• Fornecer ao aluno tarefas interativas de autoavaliação; e

• Integrar o Gerador de Conjecturas e TryLogic com o Moodle via IMS Basic LTI.

Por �m, descrevemos algumas motivações sobre nossa escolha de trabalhar com o

Moodle e apresentamos nossos relatos das experiências de ensino sobre tarefas para de-

monstrar ou refutar através do TryLogic.

Page 98: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

96

Perspectivas Futuras

As nossas contribuições sobre o ensino de Lógica fazem parte de uma inciativa que

precisa ser aprimorada. Algumas das oportunidades de melhorias são:

• Veri�car o funcionamento da integração doTryLogic nas plataformas gratuitas ATutor

e Sakai com o objetivo de generalizar a utilização do TryLogic e garantir a intero-

perabilidade entre diferentes plataformas, precisamos integrar o TryLogic a outras

opções de plataformas de aprendizagem;

• Reimplementar módulos do Logicamente relacionados às lições do TryLogic com

o objetivo de retomar a ideia original do projeto, propomos reimplementar os módulos

do Logicamente vinculados às lições do TryLogic;

• Implementar métricas de di�culdade para derivações para o Gerador de Conjecturas

com o objetivo de garantir a existência de uma métrica efetiva para a geração de

conjecturas;

• Implementar a geração de conjecturas para a Lógica de Primeira Ordem com o objetivo

de produzir novas tarefas e novas lições de Lógica de Primeira Ordem para serem

ensinadas através do TryLogic.

• Construir lições que envolvam a compreensão do signi�cado dos meta-teoremas de Cor-

reção e Completude com o objetivo de esclarecer o entendimento das relações entre as

teorias Np e Semp.

• Aperfeiçoar a interface do TryLogic com o objetivo de eliminar os possíveis impactos

iniciais enfrentados no primeiro contato com a ferramenta.

Page 99: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

97

Referências

ACM; IEEE CS. Computer science curriculum 2008: An interim revision of CS2001. [s.n.], 2008. Members from ACM and IEEE Computer Society: Cassel, L. andClements, A. and Davies, G. and Guzdial, M. and McCauley, R. and McGettrick,A. and Sloan, B. and Snyder, L. and Tymann, P. and Weide, B. Disponível em:<http://www.acm.org/education/curricula/ComputerScience2008.pdf>.

ACZEL, J. C. The Evaluation of a Computer Program for Learning Logic: The Role ofStudents' Formal Reasoning Strategies in Visualising Proofs. UK, 2000. Disponível em:<http://www.aczel.co.uk/Jape/Papers/CALRG00.pdf>.

ALARIO-HOYOS, C.; WILSON, S. Comparison of the main alternatives to the integra-tion of external tools in di�erent platforms. In: CITESEER. Proceedings of the Interna-tional Conference of Education, Research and Innovation, ICERI. 2010. p. 3466�3476.Disponível em: <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.226.3645>.

ARAÚJO, A. E. F. D.; BARROS, T. M.; MARCOS, J. Logicamente: A implementaçãocolaborativa de uma suíte de ferramentas on-line de apoio ao ensino de Lógica. In:EPOCA�2008. [S.l.: s.n.], 2008.

BARLAND, I. et al. Integrating Logic into the Computer Science Curriculum. Helsinki,2000. Innovation and Technology in Computer Science Education. Disponível em:<http://www.cs.utexas.edu/ csed/FM/docs/iticse-�slervardi.pdf>.

BARROS, T. M.; ARAÚJO, A. E. F. D.; MARCOS, J. A implementação colaborativa deuma suíte de ferramentas on-line de apoio ao ensino de Lógica. VIII ERMAC�R3, 2008.

BARWISE, J.; ETCHEMENDY, J. Language, Proof and Logic. [S.l.]: Center for theStudy of Language and Information, 2002.

BERTOT, Y. Coq in a hurry. 2010. Disponível em: <http://cel.archives-ouvertes.fr/inria-00001173>.

BERTOT, Y. Preuves de programmes en coq. April 2012. Disponível em:<http://fuscia.inrialpes.fr/cours/coq/>.

BORNAT, R. Proof and Disproof in formal logic: an introduction for programmers. [S.l.]:Oxford University Press, 2005.

BORNAT, R.; SUFRIN, B. Jape's quiet interface. User Interfaces for The-orem Provers (UITP'96), Technical Report, p. 25�34, 1996. Disponível em:<http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.54.294>.

BRADLEY, A. R.; MANNA, Z. The calculus of computation: decision procedures withapplications to veri�cation. [S.l.]: Springer Heidelberg, 2007.

Page 100: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

98

BRODA, K. et al. Pandora: A Reasoning Toolbox using Natural Deduction Style. LogicJournal of IGPL, Oxford Univ Press, v. 15, n. 4, p. 293�304, 2007. ISSN 1367-0751.

CERRO, L. del et al. Lotrec: The generic tableau prover for modal and description logics.In: GORÉ, R.; LEITSCH, A.; NIPKOW, T. (Ed.). Automated Reasoning. SpringerBerlin / Heidelberg, 2001, (Lecture Notes in Computer Science, v. 2083). p. 453�458.Disponível em: <http://dx.doi.org/10.1007/3-540-45744-5_38>.

COLE, J.; FOSTER, H. Using Moodle: Teaching with the Popular Open Source CourseManagement System (Using). [S.l.]: O'Reilly Media, Inc., 2007.

COSTA, F.; MARCOS, J. ao; TERREMATTE, P. (non)sequitur: Tea-ching and practicing formal semantics and theorem proving. In: 16th Bra-zilian Logic Conference (EBL). Book of Abstracts. 2011. Disponível em:<http://www.cle.unicamp.br/ebl2011/downloads/book_abstracts_EBL_2011.pdf>.

D'AGOSTINO, M. Investigations into the complexity of some propositional calculi. Tese(Doutorado) � University of Oxford, 1992.

DITMARSCH, H. van. Logic courseware. 2010. A Comprehensive list ofTools for doing Logic. Association for Symbolic Logic. Disponível em:<http://www.ucalgary.ca/aslcle/logic-courseware/>.

FORMENT, M. A. et al. Docs4learning: Getting google docs to work within the lmswith ims blti. Journal of Universal Computer Science, v. 18, n. 11, p. 1483�1500, 2012.

GASQUET, O.; SCHWARZENTRUBER, F.; STRECKER, M. Panda: a ProofAssistant in Natural Deduction for All. A Gentzen style proof assistant forundergraduate students (regular paper). In: TICTTL 2011. Berlin: Springer-Verlag,2011. (Lecture Notes in Arti�cial Intelligence, v. 6680), p. 85�92. Disponível em:<http://www.springerlink.com/content/036825021556t540/>.

GEUVERS, H. Proof assistants: History, ideas and future. Sadhana, Springer, v. 34, n. 1,p. 3�25, 2009. Disponível em: <http://www.ias.ac.in/sadhana/Pdf2009Feb/3.pdf>.

GIBBONS, M. et al. The new production of knowledge: The dynamics of science andresearch in contemporary societies. [S.l.]: Sage Publications Limited, 1994.

GRAESSER, A. C.; CONLEY, M. W.; OLNEY, A. Apa hand-book of educational psychology. (in preparation). In: . Washing-ton, DC: [s.n.], 2011. cap. Intelligent tutoring systems. Disponível em:<https://umdrive.memphis.edu/aolney/public/publications/Graesser-conley-olney2_draft_its_2011.pdf>.

HALMOS, P. R. I want to be a mathematician: An automathography. [S.l.]: SpringerNew York, 1985.

HALPERN, J. Y. et al. On the unusual e�ectiveness of logic in computer science. TheBulletin of Symbolic Logic, JSTOR, v. 7, n. 2, p. 213�236, 2001.

HENDERSON, P. Mathematical reasoning in software engineering education.Communications of the ACM, ACM, v. 46, n. 9, p. 45�50, 2003. Disponível em:<http://dl.acm.org/citation.cfm?id=903919>.

Page 101: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

99

HENDRIKS, M. et al. Teaching logic using a state-of-the-art proof-assistant. ActaDidactica Napocensia, Babes-Bolyai University, Cluj-Napoca, v. 3, n. 2, p. 35�48, 2010.Disponível em: <http://dppd.ubbcluj.ro/adn/article\_3\_2\_4.pdf>.

HENLE, J. The many rewards of putting absolutely everything into introductorylogic. In: Third International Congress Tools for Teaching Logic (TICTTL). Berlin:Springer-Verlag, 2011. (Lecture Notes in Arti�cial Intelligence, v. 6680), p. 109�122.

HOLE, A. Moodle JavaScript Cookbook: Over 50 recipes for making your Moodle systemmore dynamic and responsive with JavaScript. Birmingham, UK: Packt Publishing, 2011.

HOLLOWELL, J. Moodle as a Curriculum and Information Management System: UseMoodle to manage and organize your administrative duties. Birmingham, UK: PacktPublishing, 2011.

HUTH, M.; RYAN, M. Logic in Computer Science: Modelling and Reasoning aboutSystems. UK: Cambridge University Press, 2004.

KALISZYK, C. Correctness and availability: building computer algebra on top of proofassistants and making proof assistants available over the Web. Tese (Doutorado) �Radboud Universiteit Nijmegen, 2009.

KALISZYK, C. et al. Deduction using the ProofWeb system. [S.l.], 2008. Disponível em:<http://proofweb.cs.ru.nl/man.pdf>.

LEAL, J. P.; QUEIRÓS, R. Using the learning tools interoperability frameworkfor lms integration in service oriented architectures. Technology Enhanced Learning,TECH-EDUCATION, v. 11, 2011.

MARCOS, J. Código atualizado do ProoWeb. Atualização das regras de eliminação eintrodução. Março 2009. Disponível em: <http://lolita.dimap.ufrn.br/proofweb>.

MELTON, J. A. Y. The LMS moodle: A Usability Evaluation. [S.l.], 2006. Disponívelem: <http://jklmelton.net/2006/melton2006.pdf>.

MILETIC, D. Moodle Security: Learn how to install and con�gure Moodle in the mostsecure way possible. Birmingham, UK: Packt Publishing, 2011.

MOORE, J.; CHURCHWARD, M. Moodle 1.9 extension development: Customize andextend Moodle by using its robust plugin systems. Birmingham, UK: Packt Publishing,2010.

OECD. Science competencies for tomorrow's world. Executive Summary of ProgrammeforInternational Student Assessment. Organisation for Economic Co-operation andDevelopment, 2007.

PAVIOTTI, G.; ROSSI, P. G.; ZARKA, D. (Ed.). Intelligent Tu-toring Systems: an Overview. The I-TUTOR Consortium. PensaMultiMedia Editore, 2012. Disponível em: <http://www.intelligent-tutor.eu/�les/2012/06/2012_Intelligent_Tutoring_Systems_overview.pdf>.

Page 102: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

100

PELLETIER, F. J. A history of natural deduction and elementary logic text-books. History and Philosophy of Logic, v. 20, p. 1�31, 1999. Disponível em:<http://www.tandf.co.uk/journals/default.html>.

PERKINS, D. Strategic Proof Tutoring in Logic. Dissertação (Mestrado) � MS Thesis,Carnegie Mellon, 2007.

PIERCE, B. Course on Software Foundations � the mathematical theory ofprogramming and programming languages. Jan 2012. On line. Disponível em:<http://www.cis.upenn.edu/ bcpierce/sf>.

QUEIRÓS, R.; LEAL, J. P. Orchestration of e-learning services for au-tomatic evaluation of programming exercises. Journal of Universal Com-puter Science, v. 18, n. 11, p. 1454�1482, jun 2012. Disponível em:<http://www.jucs.org/jucs_18_11/orchestration_of_elearning_services>.

RICE, W.; NASH, S. S. Moodle 1.9 Teaching Techniques: Creative ways to build powerfuland e�ective online courses. Birmingham, UK: Packt Publishing, 2010.

SANTOS, J. de B. Infrastructure for Web-based Interactive Theorem Provers.89p. p. Dissertação (Mestrado) � Departamento de Informática, PontifíciaUniversidade Católica do Rio de Janeiro, Rio de Janeiro, mar. 2010. Superviser: Prof.Edward Hermann Haeusler. Disponível em: <http://www.maxwell.lambda.ele.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=16318@2>.

SIEG, W. The AproS Project: Strategic thinking & computational logic. Logic Journal ofIGPL, Oxford Univ Press, v. 15, n. 4, p. 359�368, 2007. ISSN 1367-0751. Disponível em:<http://www.phil.cmu.edu/projects/apros/overview/documents/apros_project.pdf>.

SMITH, P. Teach Yourself Logic: A Study Guide. 6 Nov 2012. On line. Disponível em:<http://www.logicmatters.net/students/tyl/>.

STOCKER, V. L. Science Teaching with Moodle 2.0: Create interactive activities inMoodle to enhance your student's understanding and enjoyment of science. Birmingham,UK: Packt Publishing, 2011.

SUFRIN, B.; BORNAT, R. User Interfaces for Generic Proof Assistants � Part I: Inter-preting Gestures. In User interfaces for Theorem Provers, York, UK, 1996. Disponível em:<http://www.cs.ox.ac.uk/people/bernard.sufrin/jape.org.uk/DOCUMENTS/OLD/UITP96-1.pdf>.

SWELLER, J. Cognitive load theory, learning di�culty, and instructional design.Learning and Instruction, v. 4, n. 4, p. 295 � 312, 1994. ISSN 0959-4752. Disponível em:<http://www.sciencedirect.com/science/article/pii/0959475294900035>.

SWELLER, J.; AYRES, P.; KALYUGA, S. Cognitive Load Theory. Sprin-ger, 2011. (Explorations in the Learning Sciences, Instructional Sys-tems and Performance Technologies). ISBN 9781441981257. Disponível em:<http://books.google.com.br/books?id=sSAwbd8qOAAC>.

Page 103: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

101

TAROUCO, L. M. R.; FABRE, M. C. J. M.; TAMUSIUNAS, F. R.Reusabilidade de objetos educacionais. Novas Tecnologias na Educação,CINTED-UFRGS, v. 1, n. 1, p. 1�11, Fevereiro 2003. Disponível em:<http://www.cinted.ufrgs.br/renote/fev2003/artigos/marie_reusabilidade.pdf>.

TAYLOR, P. Moodle 1.9 for Design and Technology: Support and enhance FoodTechnology, Product Design. Birmingham, UK: Packt Publishing, 2010.

TERREMATTE, P.; COSTA, F.; MARCOS, J. ao. Logicamente: A Virtual Learning En-vironment for logic based on Learning Objects. In: Third International Conference Toolsfor Teaching Logic. Berlin: Springer-Verlag, 2011, (Lecture Notes in Arti�cial Intelligence,v. 6680). p. 223�230. Disponível em: <http://dl.acm.org/citation.cfm?id=2021600>.

TERREMATTE, P.; GALDINO, T.; MARCOS, J. Design de objetos de aprendizagempara o ensino de lógica - o desenvolvimento do ambiente de ensino logicamente. In: IXERMAC DA REGIONAL 03. 2009. Disponível em: <http://www.mat.ufpb.br/ermac/>.

TERREMATTE, P.; MARCOS, J. ao; GALDINO, T. O LOGICAMENTE: Aimplementa¢ão colaborativa de Objetos de Aprendizagem de Lógica. IV WAPSEDI -XX Simpósio Brasileiro de Informática na Educa¢ão, 2009.

VILELA, G.; ROSAN, M.; MARCOS, J. Implementação de um gerador e veri�cador demodelos �nitos para a Lógica Clássica de Primeira Ordem. VIII ERMAC�R3, Novembro2008. Disponível em: <http://www.dimap.ufrn.br/ sbmac/ermac2008/Anais>.

WELLER, M. Virtual learning environments: Using, choosing and developing your VLE.[S.l.]: Routledge, 2007.

WIEDIJK, F. Comparing mathematical provers. In: ASPERTI, A.; BUCHBERGER,B.; DAVENPORT, J. (Ed.). Mathematical Knowledge Management. Springer BerlinHeidelberg, 2003, (Lecture Notes in Computer Science, v. 2594). p. 188�202. ISBN978-3-540-00568-1. Disponível em: <http://dx.doi.org/10.1007/3-540-36469-2_15>.

WIEDIJK, F. Digital Math by Categories with Samples. 2007. A compiled list of 300Tools sorted by implementation, interaction, supported logic and size e�ort. Disponívelem: <http://www.cs.ru.nl/ freek/digimath/bycategory.html>.

WILD, I. Moodle 1.9 Math: Integrate interactive math presentations, incorporate Flashgames, build feature-rich quizzes.. Birmingham, UK: Packt Publishing, 2009.

WILEY, D. A. The Instructional Use of Learning Objects. In: .AIT/AECT, 2002. cap. Connecting learning objects to instructional designtheory: A de�nition, a metaphor, and a taxonomy, p. 3�23. Disponível em:<http://reusability.org/read/chapters/wiley.doc>.

Page 104: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

102

APÊNDICE A -- Teoria Semântica do Coq

Algoritmo 1: Teoria Semântica de Refutação Proposicional no Coq - Parte 1Inductive label (l : Type)(A : Prop) : Prop := pair : l -> A -> (label l A).

Parameter T F : Type.

Notation "'v' '||--' A" := (label T A) (at level 10, no associativity,

format "'v' '||--' A").

Notation "'v' '||-/-' A" := (label F A) (at level 10, no associativity,

format "'v' '||-/-' A").

(* Axioms *)

Axiom ax_negT : forall P:Prop, (label F (P)) -> (label T (~P)).

Axiom ax_negF : forall P:Prop, (label T (P)) -> (label F (~P)).

Axiom ax_conjT : forall P Q:Prop, ((label T (P)) /\ (label T (Q)))

-> (label T (P /\ Q)).

Axiom ax_conjF1 : forall P Q:Prop, (label F (P)) -> (label F (P /\ Q)).

Axiom ax_conjF2 : forall P Q:Prop, (label F (Q)) -> (label F (P /\ Q)).

Axiom ax_disjT1 : forall P Q:Prop, (label T (P)) -> (label T (P \/ Q)).

Axiom ax_disjT2 : forall P Q:Prop, (label T (Q)) -> (label T (P \/ Q)).

Axiom ax_disjF : forall P Q:Prop, ((label F (P)) /\ (label F (Q)))

-> (label F (P \/ Q)).

Axiom ax_impT1 : forall P Q:Prop, (label F (P)) -> (label T (P -> Q)).

Axiom ax_impT2 : forall P Q:Prop, (label T (Q)) -> (label T (P -> Q)).

Axiom ax_impF : forall P Q:Prop, ((label T (P)) /\ (label F (Q)))

-> (label F (P -> Q)).

Axiom ax_iffFF : forall P Q:Prop, ((label F (P)) /\ (label F (Q)))

-> (label T (P <-> Q)).

Axiom ax_iffTT : forall P Q:Prop, ((label T (P)) /\ (label T (Q)))

-> (label T (P <-> Q)).

Axiom ax_iffFT : forall P Q:Prop, ((label F (P)) /\ (label T (Q)))

-> (label F (P <-> Q)).

Axiom ax_iffTF : forall P Q:Prop, ((label T (P)) /\ (label F (Q)))

-> (label F (P <-> Q)).

Page 105: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

103

Algoritmo 2: Teoria Semântica de Refutação Proposicional no Coq - Parte 2(* Structural Tactics *)

Ltac ass X := exact X.

(** NEGATION TACTICS *)

Ltac negT:= match goal with

[ |- (label T (~_)) ] => apply ax_negT

end

||

fail "(the goal is not a Satisfied Negation)".

Ltac negF:= match goal with

[ |- (label F (~_)) ] => apply ax_negF

end

||

fail "(the goal is not a Unsatisfied Negation)".

(** CONJUCTION TACTICS *)

Ltac conjT:= match goal with

| [ |- (label T (_ /\ _)) ] => apply ax_conjT ; split

end

||

fail "(the goal is not a Satisfied Conjunction)".

Ltac conjF1:= match goal with

| [ |- (label F (_ /\ _)) ] => apply ax_conjF1

end

||

fail "(the goal is not a Unsatisfied Conjunction)".

Ltac conjF2:= match goal with

| [ |- (label F (_ /\ _)) ] => apply ax_conjF2

end

||

fail "(the goal is not a Unsatisfied Conjunction)".

Page 106: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

104

Algoritmo 3: Teoria Semântica de Refutação Proposicional no Coq - Parte 3(** DISJUNCTION TACTICS *)

Ltac disjT1:= match goal with

| [ |- (label T (_ \/ _)) ] => apply ax_disjT1

end

||

fail "(the goal is not a Satisfied Disjunction)".

Ltac disjT2:= match goal with

| [ |- (label T (_ \/ _)) ] => apply ax_disjT2

end

||

fail "(the goal is not a Satisfied Disjunction)".

Ltac disjF:= match goal with

| [ |- (label F (?P \/ ?Q)) ] => apply ax_disjF ; split

end

||

fail "(the goal is not a Unsatisfied Disjunction)".

(** IMPLICATION TACTICS *)

Ltac impT1:= match goal with

| [ |- (label T (_ -> _)) ] => apply ax_impT1

end

||

fail "(the goal is not a Satisfied Implication)".

Ltac impT2:= match goal with

| [ |- (label T (_ -> _)) ] => apply ax_impT2

end

||

fail "(the goal is not a Satisfied Implication)".

Ltac impF:= match goal with

| [ |- (label F (?P -> ?Q)) ] => apply ax_impF ; split

end

||

fail "(the goal is not a Unsatisfied Implication)".

Page 107: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

105

Algoritmo 4: Teoria Semântica de Refutação Proposicional no Coq - Parte 4(** BIIMPLICATION TACTICS *)

Ltac iffTT:= match goal with

| [ |- (label T (?P <-> ?Q)) ] => apply ax_iffTT ; split

end

||

fail "(the goal is not a Satisfied Bi-implication)".

Ltac iffFF:= match goal with

| [ |- (label T (?P <-> ?Q)) ] => apply ax_iffFF ; split

end

||

fail "(the goal is not a Satisfied Bi-implication)".

Ltac iffFT:= match goal with

| [ |- (label F (?P <-> ?Q)) ] => apply ax_iffFT ; split

end

||

fail "(the goal is not a Unsatisfied Bi-implication)".

Ltac iffTF:= match goal with

| [ |- (label F (?P <-> ?Q)) ] => apply ax_iffTF ; split

end

||

fail "(the goal is not a Unsatisfied Bi-implication)".

Page 108: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

106

APÊNDICE B -- Descrição dos Módulos do

Logicamente

O Logicamente foi implementado com a contribuição de alunos voluntários e de ini-

ciação cientí�ca, e atualmente, seu código está disponibilizado no endereço para inte-

ressados que desejarem contribuir com a continuidade do projeto: http://github.com/

terrematte/logicamente.

A partir do trabalho colaborativo realizado, nós documentamos e descrevemos os

respectivos módulos:

• Settings : nesse módulo, podemos escolher qual o estilo de notação desejamos utilizar.

No momento, podemos optar pelo estilo de notação In�x, Polish e Functional. A notação

In�x é a mais comum � α ∧ β �, ao passo que a notação Polish representa a Notação

Polonesa em que são omitidos os parênteses e os conectivos precedem a fórmula que eles

regem � Kαβ � e, por �m, a notação Functional expressa os conectivos como funções �

f(α, β). Além disso, existe a opção de adicionar novos conectivos de�nindo o seu símbolo,

sua aridade e ordem de associação. Na �gura 25(a), podemos ver o módulo Settings ;

• WFF1 Generator : esse módulo é responsável por gerar arbitrariamente fórmulas pro-

posicionais bem formadas, de acordo com as certas propriedades inseridas pelo usuário

(número de ocorrências de conectivos, número de variáveis sentenciais etc). Com esse mó-

dulo, é possível gerar conjuntos de fórmulas de acordo com a complexidade desejada e

elaborar automaticamente alguns exercícios com as fórmulas geradas. Também o aluno

pode gerar fórmulas, colocá-las na área de transferência e veri�car as suas propriedades em

outros módulos. A estrutura de dados da implementação das fórmulas no Logicamente

e no Gerador de Conjecturas é visualizada na Figura 22 e o conjunto de métodos são

visualizados na Figura 23. Na �gura 25(c), podemos observar a geração de três fórmulas

com dois conectivos e três átomos;

1Uma Well Formed Formula, ou fórmula bem formada (FBF), designa uma sequência de símbolosgerados por uma determinada linguagem formal.

Page 109: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

107

Figura 22: Estrutura de fórmulas do Logicamente

Figura 23: Estrutura do WFF Generator do Logicamente

Page 110: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

108

• Formula Reader : módulo que realiza a inserção de fórmulas digitadas pelo usuário para

a área de transferência, assim fórmulas podem ser manipuladas por outros módulos;

• Truth-Table Constructor : possibilita a construção da tabela de verdade e o teste de

satisfatibilidade de coleções de fórmulas, permite o acompanhamento de todos os estados

possíveis das variáveis sentenciais e, consequentemente, da fórmula como um todo. Deverá

dar suporte, em um segundo estágio, para a de�nição de novos operadores pelo usuário,

bem como para avaliação de semânticas formais para certas lógicas não-clássicas que

possam ser caracterizadas por interpretações em termos de tabelas de verdade. Na �gura

25(b), observamos uma tabela de verdade para a fórmula ((p ∧ ¬p)→ q);

Figura 24: Módulos do Logicamente- 1

(a) Settings (b) Truth-Table

(c) WFF Generator (d) Tree Interaction

• Tree Interaction: na maior parte dos módulos do �Logicamente, a estrutura de dados

que corresponde às fórmulas é uma árvore, ou outras estruturas recursivas semelhantes.

Esse módulo torna essas árvores visualizáveis, e permite ao usuário interagir de diversas

formas com os nós e as folhas de tais árvores. Muitos outros usos são dados a esse módulo

de interação, visualizar e interagir com tableaux, com derivações do tipo Resolução, com

Dedução Natural etc. Na �gura 25(d), observamos a geração da árvore representando a

Page 111: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

109

fórmula (A ∨ ¬A);

• Substitution Master : implementa uma função que recebe uma fórmula em primeira or-

dem, uma variável a ser substituída e um termo, veri�cando, antes de mais nada, se o

termo é livre para a variável na fórmula recebida2. Em caso a�rmativo, a substituição é

efetuada. Em caso contrário, o usuário é consultado sobre seu desejo de renomear conve-

nientemente as variáveis ligadas da fórmula de modo a permitir que a substituição seja

realizada. Na �gura 26(c), temos a substituição da variável x pelo termo f(a) na fórmula

∀yR(x, y), resultando em ∀yR(f(a), y);

Figura 25: Módulos do Logicamente- 2

(a) Prenex Converter (b) Skolemiser

(c) Substitution Master (d) Resolution Game

• WFF Converter : esse módulo realiza algumas conversões de fórmulas para o uso do

método de Resolução em lógica de primeira ordem, através da manipulação dos quanti-

�cadores e reduções adequadas em conectivos. Acompanha, passo a passo, a conversão

de uma fórmula para a Forma Normal Conjuntiva (FNC)3 e permite transformar inte-

rativamente fórmulas para a Forma Normal Prenex (FNP)4. O módulo também recebe

2Um termo t é dito livre para uma variável x numa fórmula bem-formada α se nenhuma ocorrêncialivre de x em α cai sob o escopo de alguma quanti�cação ∀y ou ∃y em que y é uma variável em t.

3Uma fórmula está na Forma Normal Conjuntiva se é uma conjunção de subfórmulas tais quecada uma das subfórmulas é uma disjunção de literais sendo cada literal é uma proposição atômica ou anegação de uma proposição atômica, isto é, tem a forma p ou ¬p.

4Uma fórmula está na forma normal prenex se possui a seguinte forma: Q1x1...Qnxnα, onde α éuma fórmula livre de quanti�cadores, x1, ..., xn são variáveis diferentes e para cada 1 ≤ i ≤ n, Qi é ∀ ou∃.

Page 112: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

110

fórmulas de primeira ordem na FNP e permite a aplicação do método de skolemiza-

ção5. Na �gura 26(a), a fórmula (∀x∃yR(x, y) ∧ ∃yQ(y)) é convertida na seguinte FNP:

(∀x0∃x1∃x2(R(x0, x1) ∧ Q(x2))). A �gura 26(b) mostra a fórmula ∃x∀y∃zR(x, y, z), na

qual os quanti�cadores existenciais são removidos e é convertida para a fórmula ∀yR(a0, y,

f0(y));

• Resolution Game: implementa o método de resolução básica, assistindo o aluno na

eliminação de literais complementares6. Na �gura 26(d), podemos ver uma aplicação do

método de resolução para {α ∨ β,¬α,¬β} 7−→ �, demonstrando que {α ∨ β,¬α,¬β} éum conjunto contraditório de fórmulas;

5Em homenagem ao matemático e �lósofo Thoralf Skolem (1887-1963), dá-se o nome de skolemização

ao método de eliminação de quanti�cadores existenciais em fórmulas fechadas na FNP, em que as variáveissão substituídas por funções de escolha e são introduzidos novos símbolos de constantes e funções.

6O método de resolução é utilizado para decidir se determinada sentença é ou não um teorema de umafórmula na FNC. Se α e β são cláusulas-básicas, e pk ∈ α e ¬pk ∈ β, então o resultado da regra da ELCde α e β com respeito a pk e ¬pk, é (α−{pk})∪ (β−{¬pk}), sendo γ− δ indicando o conjunto diferençade γ e δ, isto é, γ − δ ≡ {x|x ∈ γ e x /∈ δ}.

Page 113: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

111

APÊNDICE C -- Questionários: TryLogic e

Tarefa DxR

Responda o presente questionário, caso você concorde voluntariamente em participar desteestudo de avaliação sobre aprendizagem e uso de ferramentas didáticas para o ensino de Ló-gica. Colabore para compreendermos suas estratégias de estudos e di�culdades enfrentadasao resolver desa�os.Trata-se de um conjunto de questões relacionadas ao uso das ferramentas e compreensãoda tarefa de Derivar versus Refutar (DxR) conjecturas em Lógica Proposicional.Suas informações pessoais serão preservadas. Apenas analisaremos os dados fornecidosvisando a melhoria da qualidade de Ensino de Lógica Aplicada a Computação.

C.1 Experiência 1 : Pesquisa TryLogic em 2012.2

Respostas submetidas: 11

C.1.1 Sobre o per�l dos alunos

(curso) Qual seu curso de graduação?

9Ciência da Computação

2Engenharia da Computação

0 1 2 3 4 5 6 7 8 9 10

(LAaC) Você já se matriculou em LAaC anteriormente?

10Sim

1Não

0 1 2 3 4 5 6 7 8 9 10 11

C.1.2 Sobre recursos de aprendizagem

(PW1) Você acessou o ProofWeb?

11Sim

0Não

0 1 2 3 4 5 6 7 8 9 10 11

Page 114: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

112

(PW2) Você já tinha resolvido exercícios no ProofWeb em semestres anteriores? (ape-nas se PW1→Sim)

7Sim

4Não

0 1 2 3 4 5 6 7 8 9 10 11

(TL1) Você acessou as tarefas das conjecturas de DxR? (apenas se PW1→Sim)

10Sim

1Não

0 1 2 3 4 5 6 7 8 9 10 11

(TLdn) Você realizou os passos das Lições de Dedução Natural do TryLogic? (apenasse TL1→Sim)

A)Sim, acessei e eu li todos os passos das lições sobreDedução Natural.

B)Sim, acessei alguns passos quando tinha dúvidassobre a tarefa de Demonstrar.

C)Não, pois não acessei nenhuma Lição sobre Dedu-ção Natural.

1A)

8B)

1C)

0 1 2 3 4 5 6 7 8 9 10 11

(TLsem) Você realizou os passos das Lições de Semântica do TryLogic? (apenas seTL1→Sim)

A)Sim, acessei e eu li todos os passos das lições sobreSemântica.

B)Sim, acessei alguns passos quando tinha dúvidassobre a tarefa de Refutar.

C)Não, pois não acessei nenhuma Lição sobre sobreSemântica.

3A)

7B)

0C)

0 1 2 3 4 5 6 7 8 9 10 11

(TLpw) O TryLogic ajudou na compreensão do funcionamento do ProofWeb? (apenasse TL1→Sim)

A)Sim, ajudou muitoB)Sim, ajudou um poucoC)Não, TryLogic foi interessante, mas dispensávelD)Não, TryLogic foi completamente desnecessário

7A)

3B)

0C)

0D)

0 1 2 3 4 5 6 7 8 9 10 11

(TLd) Quais as di�culdades encontradas no TryLogic?

-Relato 1: �Nenhuma.�-Relato 2: �Minha di�culdade foi resolver exercícios de Dedução natural , talvez por que euachava que seria a mesma coisa que resolver um exercício no papel, por isso mesmo não li otutorial, por isso tive muitas di�culdades em resolver os exercícios.�-Relato 3: �Não tive di�culdades com o TryLogic. Foi bem fácil de utilizar.�

Page 115: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

113

C.1.3 Sobre a Tarefa de Derivar ou Refutar (DxR)

(DxR1) Quais recursos você utilizou para compreender a tarefa de DxR?

A)Fez exercícios de refutação com papel e caneta.B)Fez exercícios de derivação com papel e caneta.C)Persistiu na tarefa por tentativa e erro.D)Realizou exercícios do ProofWeb.E)Perguntou a colegas de curso.F)Perguntou a Monitores de forma presencial.G)Releu o livro texto da disciplina.H)Assistiu ao video tutorial do ProofWeb.I)Perguntou a Monitores através do Moodle.J)Leu manual em .pdf do ProofWeb.

6A)

2B)

7C)

6D)

6E)

3F)

0G)

0H)

1I)

1J)

0 1 2 3 4 5 6 7 8 9 10 11

(DNd) Quais as di�culdades encontradas ao produzir derivações em Dedução Natu-ral?

- Relato 1: �ganhar hipóteses, não tão triviais. (conseguir vislumbra-las em néis [sic] superioresda árvore)�

(SEMd) Quais as di�culdades encontradas ao Refutar usando Semântica?

- Relato 1: �exibir algum contra modelo.�

(DRn1) Aproximadamente, quantos minutos por questão você precisou para resolveras conjecturas de DxR?

- Nível 1: Média de 20.88- Nível 2: Média de 27.25 minutos.- Nível 3: Média de 51.13 minutos.- Nível 4: Média de 93.13 minutos.

(DRstrg) Qual a primeira estratégia que você utilizou para tentar resolver as con-jecturas de DxR?

A)Derivar no ProofWeb.B)Derivar usando papel e caneta.C)Refutar no ProofWeb.D)Refutar usando papel e caneta.E)Heurística usando papel e caneta.

3A)

0B)

7C)

0D)

0E)

0 1 2 3 4 5 6 7 8 9 10 11

(DRd) Quais as suas maiores di�culdades ao resolver as conjecturas de DxR?

A)Complexidade das conjecturas.B)Falta de compreensão de Semântica.C)Falta de compreensão de Dedução Natural.D)Falta de uma descrição completa sobre a Heurís-

tica.E)Falta de tempo para realizar as tarefas.

7A)

0B)

3C)

0D)

2E)

0 1 2 3 4 5 6 7 8 9 10 11

Page 116: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

114

C.1.4 Questões sobre o signi�cado de Derivar ou Refutar

(DRs1) O que se pode a�rmar sobre uma valoração v tal que v 1 φ → (ψ → φ)

© A) a valoração v é possível, por exemplo, seja φ uma tauto-logia e seja ψ uma antilogia.© B) a valoração v é possível, por exemplo, quando v 1 φ ouv (ψ → φ), pelo signi�cado da implicação.© C) a valoração v é possível, por exemplo, quando v φ.© D) a valoração v é impossível, e não existe uma árvore dederivação de φ→ (ψ → φ) em DN.⊗E) a valoração v é impossível, e existe uma árvore de deri-

vação de φ → (ψ → φ) em DN.

1A)

1B)

3C)

3D)

3E)

0 1 2 3 4 5 6 7 8 9 10 11

DRs2) O que se pode a�rmar sobre uma valoração v tal que v ¬(ψ ∨ φ) ↔ φ:

© A) a valoração v é possível, por exemplo, seja φ uma tauto-logia e seja ψ uma antilogia.⊗B) a valoração v é possível, por exemplo quando v ψ e

v 1 φ.© C) a valoração v é possível, por exemplo quando v φ.© D) a valoração v é impossível e não existe uma árvore dederivação de ¬(ψ ∨ φ)↔ φ em DN.© E) a valoração v é impossível e existe uma árvore de deri-vação de ¬(ψ ∨ φ)↔ φ em DN.

0A)

7B)

2C)

1D)

1E)

0 1 2 3 4 5 6 7 8 9 10 11

(DRs3) Sobre a fórmula (¬p → (p → q)) é correto a�rmar que :

© A) É refutável, pois existe uma árvore de derivação para¬(¬p→ (p→ q)).© B) É refutável, pois existe uma valoração v tal que v 1 (¬p→

(p→ q)).⊗C) É demonstrável, pois existe uma árvore de derivação para

(¬p → (p → q)).

© D) É demonstrável, pois existe uma valoração v tal quev (¬p→ (p→ q)).

2A)

0B)

6C)

3D)

0 1 2 3 4 5 6 7 8 9 10 11

(DRs4) Sobre a fórmula (((p → q) ∧ q) → p) é correto a�rmar que :

© É refutável, pois existe uma árvore de derivação para ¬(((p→q) ∧ q)→ p).⊗É refutável, pois existe uma valoração v tal que v 1 (((p →q) ∧ q) → p).

© É demonstrável, pois existe uma árvore de derivação para(((p→ q) ∧ q)→ p).

© É demonstrável, pois existe uma valoração v tal que v

(((p→ q) ∧ q)→ p).

0A)

4B)

4C)

3D)

0 1 2 3 4 5 6 7 8 9 10 11

Page 117: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

115

(DRs5) Marque TODAS alternativas que completam CORRETAMENTE a frase:�Se existe uma valoração v1, tal que v1 1 α, então ...�

4A) α é refutável.

4B) α não é satisfeito pela valoração v1.

2 C) α é insatisfazível.4D) 2 α4E) 0 α2 F) Γ 0 α, para qualquer conjunto de fórmulas Γ.2 G) Γ 2 α, para qualquer conjunto de fórmulas Γ.2 H) para toda valoração v2, é o caso que v2 1 α.4I) pode ser que exista uma valoração v3, tal que v3 α.

2 J) pode ser que exista uma derivação de α, mas eu aindanão pude construí-la.

2 K) irei encontrar uma derivação de ¬α, usado a regra doabsurdo clássico, ou introdução da negação.

3A)

7B)

4C)

2D)

2E)

3F)

0G)

3H)

2I)

2J)

0K)

0 1 2 3 4 5 6 7 8 9 10 11

(DRs6) Se você não encontrar uma refutação semântica para uma certa conjectura,tal conjectura deve ser derivável. Por quê?

Resposta esperada: Pelo Teorema da Completude (Γ � α ⇒ Γ ` α).

- Resposta 01: �Sim, se tentarmos encontrar uma refutação se ela não for encontrada. Deve-seprocurar uma derivação,pois provavelmente existe.�

- Resposta 02: �porque se não encontrei refutação em todos as valorações possíveis signi�ca quea canjectura [sic] é uma taltologia [sic].�

- Resposta 03: �Completude.�- Resposta 04: �devido à completude.�- Resposta 05: �Para explicar de onde surgiu a conjectura, a partir do que ela foi formada.�- Resposta 06: �Para expor de onde surgir a tal conjectura.�- Resposta 07: �Porque na refutação você encontra uma contradição, onde uma sentença éverdadeira e a mesma falsa.�

- Resposta 08: �Pelo que foi visto em sala de aula, quando não se refuta uma conjectura éporque existe uma arvore DN que prove tal conjectura.�

- Resposta 09: �Não sei.�- Resposta 10: �Sim pois tudo que é valido em semântica também é valido em dedução naturalgraças a correção e a completude.�

- Resposta 11: �Se ela não for refutada, deve ser derivável.�

(DRs7) Se você quiser mostrar que não existe uma derivação que testemunhe umacerta conjectura, tal conjectura deve ser refutável. Por quê?

Resposta esperada: Através do Teorema de Correção em sua forma contrapositiva,

sabemos que se refutarmos uma certa conjectura, então não existe uma derivação

para tal conjectura (Γ 2 α ⇒ Γ 0 α)..

- Resposta 01: �Sim, se é refutável, não existe nenhuma árvore de derivação.�- Resposta 02: �porque se você quer mostrar que conjectura é falsa você deve apresentar umacerta valoração que veri�que que a conjectura realmente é falsa que é exatamenete [sic] o pro-cesso de refutação.�

- Resposta 03: �Correção�- Resposta 04: �Devido à correção.�

Page 118: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

116

- Resposta 05: �Para mostrar que para qualquer valoração possível de se utilizar, não é possívelchegar na conjectura.�

- Resposta 06: �Para mostrar que tal conjectura é falsa.�- Resposta 07: �É mais fácil demostrar por semântica do que dedução natural.�- Resposta 08: �Pelo que foi visto em sala de aula, quando não se prova uma conjectura porDN, é porque existe uma refutação para essa conjectura.�

- Resposta 09: �Por causa da propriedade de correção.�- Resposta 10: �Sim pois tudo que é valido em semântica também é valido em dedução naturalgraças a correção e a completude.�

- Resposta 11: �se ela não for derivável, deve ser refutável

Page 119: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

117

C.2 Experiência 2: Questionário sobre Dedução Natu-

ral

C.2.1 Uso das Regras

1. Veri�que se a conjectura (δ∨φ)∧ (δ∨γ), φ `Np δ∨ (φ∨γ) está corretamente representada pelaárvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os númerosentre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

(δ ∨ φ) ∧ (δ ∨ γ)[k]{2}

(δ ∨ γ)∧Ee

δ[i]{3}

δ ∨ (φ ∨ γ)∨Id

φ[h]{5}

γ [j]{7}

(φ ∧ γ)∧I

δ ∨ (φ ∧ γ)∨Ie

δ ∨ (φ ∨ γ)∨E,i,j

RESPOSTAS: Completa: 5.

2. Veri�que se a conjectura α∨β, α, β `Np (β → α)∧(α→ β) está corretamente representada pelaárvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os númerosentre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

α ∨ β[j]{2}

α [h]{3}

β → α→I,k β

[i]{5}

α→ β→I,l

(β → α) ∧ (α→ β)∧I

α [h]{7}

β → α→I,m β

[i]{11}

α→ β→I,n

(β → α) ∧ (α→ β)∧I

(β → α) ∧ (α→ β)∨E,h,i

RESPOSTAS: Completa: 35. Parciais: 5;7.

3. Veri�que se a conjectura (α∨β)∧ (α∨ γ) `Np α∨ (β ∧ γ) está corretamente representada pelaárvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os númerosentre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

(α ∨ β) ∧ (α ∨ γ)[k]{2}

α ∨ β∧Ed

α [i]{3}

α ∨ (β ∧ γ)∨Id

(α ∨ β) ∧ (α ∨ γ)[k]{5}

α ∨ γ∧Ee

α [i]{7}

α ∨ (β ∧ γ)∨Id

β[m]{11}

γ [n]{13}

β ∧ γ∧I

α ∨ (β ∧ γ)∨Ie

α ∨ (β ∧ γ)∨E,m,n

α ∨ (β ∧ γ)∨Ei,j

RESPOSTAS: Completa: 77. Parciais: 7;11.

5. Veri�que se a conjectura `Np (¬β → ¬α) → (α → β) está corretamente representada pelaárvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os númerosentre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

Page 120: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

118

¬β → ¬α[i]{2}

¬β[j]{3}

¬α →Eα [k]{5}

⊥¬E

β⊥c,k

α→ β→I,j

(¬β → ¬α)→ (α→ β)→I,i

RESPOSTAS: Completa: 15. Parciais : 3;5

6. Veri�que se a conjectura (α→ β)→ ¬α,¬α `Np ¬α→ β está corretamente representada pelaárvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os númerosentre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

(α→ β)→ ¬α[i]{2} ¬α→ β[j]{3}

¬α ¬I{7}¬α[k]{5}

(¬α→ β)→ ¬α →I,j{11}

¬α→ β→E{13}

RESPOSTAS: Completa: 273. Parciais: 3;7;13;21;39;91.

7. Veri�que se a conjectura `Np ((¬φ → φ) → φ) → (¬φ → φ) está corretamente representadapela árvore de derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos osnúmeros entre chaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

(¬φ→ φ)→ φ[h]{13}

¬¬φ[g]{2}

¬φ[i]{3}

⊥¬E{5}

φ⊥c,j{7}

¬φ→ φ→I,i{11}

φ→E{17}

¬¬φ→ φ→I,{19}

((¬φ→ φ)→ φ)→ (¬φ→ φ)→I,h{23}

RESPOSTAS: Completas: 11362, 874, 437. Parciais: 26; 38; 52; 247; 494. Incompletas: 2; 13; 19; 23.

8. Veri�que se a conjectura `Np (¬α → α) → α está corretamente representada pela árvorede derivação abaixo. Caso haja algo errado, calcule a multiplicação de todos os números entrechaves correspondentes às marcas equivocadas; caso não haja erros insira zero (0):

¬¬α→ α[h]{19}

¬α [i]{5} ¬α→ α [g]{2} ¬α [i]{3}

α →E{7}

⊥¬E{11}

¬¬α ¬I,i{23}

α →E{29}

(¬α→ α)→ α→I,g{31}

RESPOSTAS: Completa: 19.

Page 121: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

119

C.2.2 Completar derivações

Para as próximas questões, note que:

α[m]

representa uma árvore de derivação D em que a fórmula α está contida no conjunto das folhasabertas e β é a raiz;

Observe também que:

α[m]

representa uma árvore de derivação D em que a fórmula α foi descartada do conjunto das folhasabertas e β é a raiz.

1. Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

p[m]

D1⊥ψ

(regra 1) D2q

φ(regra 2)

a) φ = ¬p∧q , ψ = ¬p , (regra 1) = (¬I,m) , (regra 2) = (∧I) ⇐ [Correta]b)φ = ¬¬p ∧ q , ψ = ¬¬p , (regra 1) = (⊥c,m) , (regra 2) = (∧I)c)φ = ¬p→ q , ψ = ¬p , (regra 1) = (⊥i) , (regra 2) = (→ I)d)φ = p ; ψ = q → p , (regra 1) = (→ I,m) , (regra 2) = (→ E)

2. Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

p[m]

D1⊥ψ

(regra 1) D2q

φ(regra 2)

a) φ = ¬¬p ∧ q , ψ = ¬¬p , (regra 1) = (⊥i) , (regra 2) = (∧I) ⇐ [Correta]b)φ = ¬p→ q , ψ = ¬p , (regra 1) = (⊥i) , (regra 2) = (→ I)c)φ = p ; ψ = q → p , (regra 1) = (→ I) , (regra 2) = (→ E)d)φ = p ∧ q , ψ = p , (regra 1) = (¬I) , (regra 2) = (∧I)

3. Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

Page 122: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

120

¬p [m]

D1⊥ψ

(regra 1) D2q

φ(regra 2)

a) φ = p ∧ q , ψ = p , (regra 1) = (⊥c,m) , (regra 2) = (∧I) ⇐ [Correta]b)φ = ¬¬p ∧ q , ψ = ¬¬p , (regra 1) = (⊥c,m) , (regra 2) = (∧I)c)φ = p ; ψ = q → p , (regra 1) = (→ I,m) , (regra 2) = (→ E)d)φ = ¬p ∧ q , ψ = p , (regra 1) = (¬I,m) , (regra 2) = (∧I)

4. Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

q[m]

D1⊥ψ

(regra 1) D2q

φ(regra 2)

a) φ = ⊥ ; ψ = q → ⊥ , (regra 1) = (→ I,m) , (regra 2) = (→ E) ⇐[Correta]

b)φ = ¬¬p ∧ q , ψ = ¬¬q , (regra 1) = (⊥i) , (regra 2) = (∧I)c)φ = q ∧ q , ψ = q , (regra 1) = (⊥c,m) , (regra 2) = (∧I)d)φ = ¬p ∧ q , ψ = ¬q , (regra 1) = (¬I,m) , (regra 2) = (∧I)

5. Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

p[m]

D1rψ

(regra 1) D2q

φ(regra 2)

a) φ = ((q ∧ p) ∨ r) ∧ q; ψ = (q ∧ p) ∨ r , (regra 1) = (∨I), (regra 2) = (∧I) ⇐[Correta]

b)φ = p→ (r ∧ q) , ψ = p→ r , (regra 1) = (→ I,m), (regra 2) = (∧I)c)φ = r , ψ = p→ r , (regra 1) = (→ I,m) , (regra 2) = (→ E)d)φ = ¬r ∧ q , ψ = ¬r , (regra 1) = (¬I,m) , (regra 2) = (∧I)

6.Qual alternativa completa corretamente a derivação abaixo com sentenças proposicionais eregras do sistema de Dedução Natural (Np)?

p[m]

D1rψ

(regra 1) D2q

φ(regra 2)

a) φ = ((q ∨ p) → r) ∧ q, ψ = (q ∨ p) → r, (regra 1) = (→ I,m), (regra 2) = (∧I)⇐ [Correta]

b)φ = p→ (r ∧ q) , ψ = p→ r , (regra 1) = (→ I,m), (regra 2) = (∧I)

Page 123: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

121

c)φ = ((q ∧ p) ∨ r) ∨ q; ψ = (q ∧ p) ∨ r , (regra 1) = (∨I), (regra 2) = (∨I)d)φ = ¬r ∧ q , ψ = ¬r , (regra 1) = (¬I,m) , (regra 2) = (∧I)

C.3 Experiência 2: Questionário sobre Semântica

C.3.1 Sobre interpretação proposicional

1.Na tabela-verdade abaixo, como você preencheria a última linha?

p 1 1 0 0q 1 0 1 0¬q ... ... ... ...¬(p ∨ q) ... ... ... ...

a)0001 ⇐ [Correta]b)1100c)0111d)1010e)1000

2.Na tabela-verdade abaixo, como você preencheria a última linha?

p 1 1 0 0q 1 0 1 0p ∨ q ... ... ... ...(p ∨ q)→ q ... ... ... ...

a)1011 ⇐ [Correta]b)1100c)1010d)1000e)1001

3.Na tabela-verdade abaixo, como você preencheria a última linha?

p 1 1 0 0q 1 0 1 0¬p ... ... ... ...p ∧ q ... ... ... ...¬p→ (p ∧ q) ... ... ... ...

a)1100 ⇐ [Correta]b)1110c)0000d)1011e)0100

C.3.2 Sobre a noção de valoração

1.Marque a alternativa incorreta.

a)Se para toda valoração v tal que v α, também é o caso que v Γ, entãoΓ � α. ⇐ [incorreta]

b)Para toda valoração v em que v 1 α, e também é o caso que v Γ, portanto Γ 2 α.

Page 124: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

122

c)Existe uma valoração v tal que v 1 α, e também é o caso que v Γ, portanto Γ 2 α.d)Se Γ,∆ 2 α, então Γ 2 α.e)Se Γ,∆ 2 α, então Γ 2 β ou ∆, β 2 α.

2.Marque a alternativa incorreta.

a)Se existe uma valoração v1 tal que v1 1 α, então Γ 2 α, para qualquerconjunto de fórmulas Γ. ⇐ [incorreta]

b)Se existe uma valoração v1 tal que v1 1 α, então α não é satisfeito pela valoração v1.c)Se existe uma valoração v1 tal que v1 1 α, então α é refutável.d)Se existe uma valoração v1 tal que v1 1 α, então 2 α.e)Existem duas valorações v1 e v2 tais que v1 1 (p→ p) ∧ q, e que v2 (p→ p) ∧ q.

3.Marque a alternativa correta.

a)Se não existe uma valoração v1 tal que v1 Γ, então Γ � α, para qualquer α.⇐ [Correta]

b)Se existe uma valoração v1 tal que v1 1 Γ, então Γ � α, para qualquer α.c)Se existe uma valoração v1 tal que v1 1 α, então para qualquer valoração v2, é o casoque v2 1 α.

d)Se existe uma valoração v1 tal que v1 1 α, então α é insatisfazível.e)Existem duas valorações v1 e v2 tal que v1 1 p→ p, e que v2 p→ p.

4.Marque a alternativa correta.

a)Não existe uma valoração v tal que v 1 φ → (ψ → φ), para nenhuma escolhade fórmulas. ⇐ [Correta]

b)Existe uma valoração v tal que v 1 φ → (ψ → φ), quando v 1 φ ou v ψ → φ, pelosigni�cado da implicação.

c)Existe uma valoração v tal que v 1 φ→ (ψ → φ), quando v φ.d)Existe uma valoração v tal que v 1 φ→ (ψ → φ), para nenhuma escolha de fórmulas.e)Existe uma valoração v tal que v 1 φ→ (ψ → φ), portanto a fórmula é uma contradição.

5.Marque a alternativa correta.

a)Existe uma valoração v tal que v ¬(ψ ∨ φ) ↔ φ quando v ψ e v 1 φ. ⇐[Correta]

b)Existe uma valoração v tal que v ¬(ψ ∨ φ)↔ φ quando v φ.c)Existe uma valoração v tal que v ¬(ψ ∨ φ) ↔ φ, se φ for uma tautologia e se ψ foruma antilogia.

d)Existe uma valoração v tal que v 1 ¬(ψ ∨ φ)↔ φ quando v ψ e v 1 φ.e)Não existe uma valoração v tal que v ¬(ψ ∨ φ)↔ φ.

C.3.3 Sobre tautologias, contingências e contradições

1.Qual fórmula abaixo é uma tautologia?

a)(p ∧ ¬p) → (¬q → (p ∧ ¬p)) ⇐ [Correta]b)q ∧ (p↔ p) ∧ qc)((p→ q) ∧ q)→ pd)(p→ p)→ pe)¬(p ∨ p)

2.Qual fórmula abaixo é uma contingência?

a)((p → q) ∧ p) → ¬q ⇐ [Correta]

Page 125: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

123

b)q ∨ (p↔ p)c)((p→ q) ∧ p)→ qd)p ∨ ¬pe)(p ∧ ¬p)→ (¬q → (p ∧ ¬p))

3.Qual fórmula abaixo é uma antilogia?

a)¬(q ∨ (p → p) ∨ q) ⇐ [Correta]b)q ∧ (p↔ p)c)¬(p ∨ p)d)((p→ q) ∧ p)→ (¬q)e)(p ∧ ¬p)→ (¬q → (p ∧ ¬p))

C.3.4 Sobre a relação de consequência - Nível 1

1.Qual das seguintes conjecturas é refutável?

a)α ∧ β, (α → β) ↔ α � ¬(α ∨ ¬β) ⇐ [Correta]b)(¬β) ∨ α, α↔ (α↔ β) � α↔ βc)(α→ β) ∧ β, α↔ β � α ∧ (β → α)d)β ∨ α,¬β � ¬β → αe)(β ∧ α)↔ α,¬β � β ↔ α

2.Qual dos seguintes conjecturas é refutável?

a)¬(¬α), β ∨ α � (α ∧ β) ↔ α ⇐ [Correta]b)(β ↔ β)→ α,¬(¬β) � (β → α) ∧ βc)(β ∨ α) ∧ β,¬β � ¬(β → α)d)(¬β) ∨ α, α↔ (α↔ β) � α↔ βe)α ∨ α, α↔ β � α ∧ (β ↔ α)

3.Qual das seguintes conjecturas é demonstrável?

a)(β ∨ α) ∧ β,¬β � ¬(α → ¬β) ⇐ [Correta]b)α→ (β ∨ β), (β ↔ α)→ β � β → αc)α ∧ α, α ∨ (β → α) � α→ ¬βd)α→ (β ↔ α), β ∨ α � α ∧ (β ↔ β)e)(β ∧ α)↔ β, β ∨ ¬α � ¬(α ∨ β)

4.Qual das seguintes conjecturas é demonstrável?

a)¬(β → α), α ∨ ¬β � (α ∨ ¬β) ↔ β ⇐ [Correta]b)β ∨ (α ∨ β), α↔ (β ↔ β) � α↔ (α↔ β)c)α→ (β ∨ β), (β ↔ α)→ β � β → αd)(α↔ α)↔ β, (α ∧ β) ∧ α � ¬αe)α ∧ (β → α), α↔ (α↔ β) � ¬α↔ β

C.3.5 Sobre a relação de consequência - Nível 2

1.Qual das seguintes conjecturas é demonstrável?

a)¬(α → (β ∧ (γ ↔ β))), (δ ∨ (β ∨ δ)) ∧ (α ∧ γ) � ¬((β ∧ δ) ∨ (α → β)) ⇐[Correta]

b)α↔ (γ → (α↔ α)), γ ∨ (γ ∧ (γ ∨ α)) � ¬¬α→ (β ↔ γ)c)¬α↔ (α↔ α), β ∧ (β ∨ (γ ∨ γ)) � γ ∨ ((γ → β)↔ α)

Page 126: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

124

d)γ ∧ (α ∨ (γ ↔ β)),¬(¬(β → γ) ∨ α) � ¬(((β ∨ α)→ γ) ∨ γ)e)(γ → (γ ∨ γ))→ (γ ∨ β), γ ∨ ¬(α↔ β) � ¬((α↔ γ)↔ β)

2.Qual das seguintes conjecturas é demonstrável?

a)β ∧ ((α ↔ α) → (β ∧ α)),¬((γ ↔ α) ∨ α) � ¬(¬(α → γ) → γ) ⇐ [Correta]b)¬(γ ↔ α)↔ γ,¬(¬γ ∨ ¬β) � ¬(α ∨ ((γ → β)→ γ))c)((α ∧ β)→ (γ ∧ α)) ∨ γ,¬((α ∧ γ)↔ β) � (γ ∨ γ)↔ (α↔ γ)d)(γ ∧ γ) ∨ (γ ∧ β), (β ∨ γ) ∨ (β ∧ β) � β ∧ (β → ¬γ)e)(β ∨ γ)→ ¬β,¬(β ∧ α)→ (γ → β) � (γ ∨ γ) ∨ (β ∨ β)

3.Qual das seguintes conjecturas é refutável?

a)δ → ((γ ↔ β) ∨ (β ∧ δ)), (γ ∧ β) → ¬δ � α ↔ (¬γ → (γ → δ)) ⇐ [Correta]b)(α↔ α) ∧ (α ∧ γ) ∨ β, ((γ → β) ∨ β)↔ ¬β � (γ ∧ β) ∧ (γ ∧ γ)c)(β ↔ γ) ∧ (α ∨ γ), α↔ (¬β → β) � (β ∧ α)↔ (β ↔ γ)d)¬β ∧ (γ ↔ β), (γ ∧ γ) ∧ (α ∧ γ) � ¬((α ∧ γ)↔ γ)e)¬((α ∨ α) ∨ (α ∧ γ)),¬(α ∧ β)→ α � (β → γ) ∧ (α ∨ γ)

4.Qual das seguintes conjecturas é refutável?

a) ((β ∨ β) → β) → ¬γ, (α ∨ β) → (β ∧ α) � (β → (β → β)) → α ⇐ [Correta]b)(β ∧ (β → β)) ∨ β, (α→ (β ∧ β))↔ (β → γ) � (β → (α→ α))↔ (γ ↔ β)c)(α ∨ (α ∨ γ)) ∧ β,¬((¬α) ∨ (α↔ β)) � ¬γ ↔ (γ → α)d)¬((β ↔ α)→ ¬α),¬(γ → (α↔ β)) � ¬¬¬(α ∨ α)e)¬((β ∧ ¬β) ∨ γ), (¬(α↔ α))↔ (γ → β) � ¬α→ (α ∨ β)

Page 127: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

125

C.4 Experiência 2 : Pesquisa TryLogic em 2013.1

Respostas submetidas: 8

C.4.1 Sobre o per�l dos alunos

(curso) Qual seu curso de graduação?

7Ciência da Computação

1Engenharia da Computação

0 1 2 3 4 5 6 7 8

(LAaC) Você já se matriculou em LAaC anteriormente?

6Sim

2Não

0 1 2 3 4 5 6 7 8

C.4.2 Sobre recursos de aprendizagem

(PW1) Você acessou o ProofWeb?

7Sim

1Não

0 1 2 3 4 5 6 7 8

(PW2) Você já tinha resolvido exercícios no ProofWeb em semestres anteriores? (ape-nas se PW1→Sim)

7Sim

0Não

0 1 2 3 4 5 6 7

(TL1) Você acessou as tarefas das conjecturas de DxR? (apenas se PW1→Sim)

7Sim

0Não

0 1 2 3 4 5 6 7

(PW3) Não acessei o ProofWeb pelo(s) seguinte(s) motivo(s): (apenas se PW1→Não)A)Não tive tempo.B)Não me senti motivado para utilizar uma novaferramenta.

C)Não me adaptei à interface do ProofWeb.D)Não achei relevante a utilização da nova ferra-

menta para aprender o conteúdo da disciplina.

1A)

1B)

1C)

0D)

0 1 2 3 4 5 6 7

(TLdn) Você realizou os passos das Lições de Dedução Natural do TryLogic? (apenasse TL1→Sim)

Page 128: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

126

A)Sim, acessei e eu li todos os passos das lições sobreDedução Natural.

B)Sim, acessei alguns passos quando tinha dúvidassobre a tarefa de Demonstrar.

C)Não, pois não acessei nenhuma Lição sobre Dedu-ção Natural.

1A)

6B)

0C)

0 1 2 3 4 5 6 7

(TLsem) Você realizou os passos das Lições de Semântica do TryLogic? (apenas seTL1→Sim)

A)Sim, acessei e eu li todos os passos das lições sobreSemântica.

B)Sim, acessei alguns passos quando tinha dúvidassobre a tarefa de Refutar.

C)Não, pois não acessei nenhuma Lição sobre sobreSemântica.

0A)

6B)

1C)

0 1 2 3 4 5 6 7

(TLpw) O TryLogic ajudou na compreensão do funcionamento do ProofWeb? (apenasse TL1→Sim)

A)Sim, ajudou muitoB)Sim, ajudou um poucoC)Não, TryLogic foi interessante, mas dispensávelD)Não, TryLogic foi completamente desnecessário

4A)

3B)

0C)

0D)

0 1 2 3 4 5 6 7

(TLd) Quais as di�culdades encontradas no TryLogic?

- Relato 1: �Nenhuma.�- Relato 2: �As di�culdades no TryLogic são somente no primeiro momento com a ferra-menta, por se tratar de uma ferramenta nova, mas pelo fato de ser interativa e de ajuda parao ProofWeb.�

C.4.3 Sobre a Tarefa de Derivar ou Refutar (DxR)

(DxR1) Quais recursos você utilizou para compreender a tarefa de DxR?

A)Fez exercícios de refutação com papel e caneta.B)Fez exercícios de derivação com papel e caneta.C)Persistiu na tarefa por tentativa e erro.D)Realizou exercícios do ProofWeb.E)Perguntou a colegas de curso.F)Perguntou a Monitores de forma presencial.G)Releu o livro texto da disciplina.H)Assistiu ao video tutorial do ProofWeb.I)Perguntou a Monitores através do Moodle.J)Leu manual em .pdf do ProofWeb.

6A)

5B)

5C)

5D)

4E)

3F)

3G)

1H)

0I)

0J)

0 1 2 3 4 5 6 7 8

(DxR2) Quais outros recursos você utilizou para compreender a tarefa de DxR?

Page 129: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

127

- Relato 1: �Tabela-verdade.�- Relato 2: �Leitura do material passado em sala de aula�- Relato 3: �Leitura de textos na web.�

(DNd) Quais as di�culdades encontradas ao produzir derivações em Dedução Natu-ral?

- Relato 1: �Utilização da regra da Eliminação da disjunção.�- Relato 2: �Visualizar as várias formas possíveis que poderiam ser abordadas, normalmente meprendendo a poucas e passando a não acreditar em uma possível solução.�

- Relato 3: �As di�culdades encontras para as derivações eram somente com relação a casos emque a árvore de derivação se tornava extensa e certas vezes repetitiva.�

(SEMd) Quais as di�culdades encontradas ao Refutar usando Semântica?

- Relato 1: �Não muitas, mais fácil devido a 'obter um valor' para cada átomo.�- Relato 2: �Perceber os momentos em que a utilização de uma hipótese negada, ou de umaa�rmação.�

(DRn1) Aproximadamente, quantos minutos por questão você precisou para resolveras conjecturas de DxR? (apenas se TL1→Sim)

- Nível 1: Média de 26.29 minutos.- Nível 2: Média de 32.29 minutos.- Nível 3: Média de 40.14 minutos.- Nível 4: Média de 39.16 minutos.

(DRstrg) Qual a primeira estratégia que você utilizou para tentar resolver as con-jecturas de DxR?

A)Derivar no ProofWeb.B)Derivar usando papel e caneta.C)Refutar no ProofWeb.D)Refutar usando papel e caneta.E)Heurística usando papel e caneta.

3A)

0B)

3C)

0D)

0E)

0 1 2 3 4 5 6 7 8

(DRd) Quais as suas maiores di�culdades ao resolver as conjecturas de DxR?

A)Complexidade das conjecturas.B)Falta de compreensão de Semântica.C)Falta de compreensão de Dedução Natural.D)Falta de uma descrição completa sobre a Heurís-

tica.E)Falta de tempo para realizar as tarefas.

6A)

2B)

2C)

1D)

1E)

0 1 2 3 4 5 6 7 8

C.4.4 Questões sobre o signi�cado de Derivar ou Refutar (2013.1)

(DRs1) Qual das seguintes conjecturas é demonstrável?

Page 130: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

128

© A) α→ (β ↔ α), β ∨ α � α ∧ (β ↔ β)© B) (β ∧ α)↔ β, β ∨ ¬α � ¬(α ∨ β)© C) α→ (β ∨ β), (β ↔ α)→ β � β → α© D)α ∧ α, α ∨ (β → α) � α→ ¬β⊗

E) β ∧ (β ∨ α),¬β � ¬(α→ ¬β)

2A)

1B)

0C)

1D)

4E)

0 1 2 3 4 5 6 7 8

(DRs2) Qual das seguintes conjecturas é demonstrável?

© A) α ∧ (β → α), α↔ (α↔ β) � ¬α↔ β© B) β ∨ (α ∨ β), α↔ (β ↔ β) � α↔ (α↔ β)⊗

C) ¬(β → α), α ∨ ¬β � (α ∨ ¬β)↔ β© D) α→ (β ∨ β), (β ↔ α)→ β � β → α© E) (α↔ α)↔ β, (α ∧ β) ∧ α � ¬α

1A)

1B)

4C)

2D)

0E)

0 1 2 3 4 5 6 7 8

(DRs3) Qual das seguintes conjecturas é refutável?

⊗A) α ∧ β, (α→ β)↔ α � ¬(α ∨ ¬β)

© B) (α→ β) ∧ β, α↔ β � α ∧ (β → α)© C) β ∨ α,¬β � ¬β → α© D) ¬β ∨ α, α↔ (α↔ β) � α↔ β© E) (β ∧ α)↔ α,¬β � β ↔ α

4A)

2B)

1C)

1D)

0E)

0 1 2 3 4 5 6 7 8

(DRs4) Qual das seguintes conjecturas é refutável?

© A) (β ↔ β)→ α,¬¬β � (β → α) ∧ β© B) α ∨ α, α↔ β � α ∧ (β ↔ α)⊗

C) ¬¬α, β ∨ α � (α ∧ β)↔ α© D) ¬β ∨ α, α↔ (α↔ β) � α↔ β© E) (β ∨ α) ∧ β,¬β � ¬(β → α)

0A)

1B)

5C)

2D)

0E)

0 1 2 3 4 5 6 7 8

(DRs5) Qual das seguintes conjecturas é demonstrável?⊗A) ¬(α→ (β∧(γ ↔ β))), (δ∨(β∨δ))∧(α∧γ) � ¬((β∧δ)∨(α→ β))

© B) γ ∧ (α ∨ (γ ↔ β)),¬(¬(β → γ) ∨ α) � ¬(((β ∨ α)→ γ) ∨ γ)© C) (γ → (γ ∨ γ))→ (γ ∨ β), γ ∨ ¬(α↔ β) � ¬((α↔ γ)↔ β)

© D) α↔ (γ → (α↔ α)), γ ∨ (γ ∧ (γ ∨ α)) � ¬¬α→ (β ↔ γ)

© E) ¬α↔ (α↔ α), β ∧ (β ∨ (γ ∨ γ)) � γ ∨ ((γ → β)↔ α)

5A)

1B)

0C)

0D)

2E)

0 1 2 3 4 5 6 7 8

(DRs6) Qual das seguintes conjecturas é refutável?

© A) (β ↔ γ) ∧ (α ∨ γ), α↔ (¬β → β) � (β ∧ α)↔ (β ↔ γ)

© B) (α↔ α) ∧ (α ∧ γ) ∨ β, ((γ → β) ∨ β)↔ ¬β � (γ ∧ β) ∧ (γ ∧ γ)© C) ¬((α ∨ α) ∨ (α ∧ γ)),¬(α ∧ β)→ α � (β → γ) ∧ (α ∨ γ)⊗

D) δ → ((γ ↔ β) ∨ (β ∧ δ)), (γ ∧ β)→ ¬δ � α↔ (¬γ → (γ → δ))

© E) ¬β ∧ (γ ↔ β), (γ ∧ γ) ∧ (α ∧ γ) � ¬((α ∧ γ)↔ γ)

1A)

1B)

0C)

4D)

2E)

0 1 2 3 4 5 6 7 8

Page 131: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

129

(DRs7) Se você não encontrar uma refutação semântica para uma certa conjectura,tal conjectura deve ser derivável. Por quê?

Resposta esperada: Pelo Teorema da Completude (Γ � α ⇒ Γ ` α).

- Resposta 1: �Pela completude do sistema de Dedução Natural da Lógica Proposicional.�- Resposta 2: �Porque para uma conjectura ser derivável, necessariamente, semanticamentefalando, dado Γ � φ, toda valoração v que satisfaz Γ também satisfaz φ.�

- Resposta 3: �devido ao fato de se ao encontrar um absurdo, ela certamente será derivável .pois será uma tautologia.�

- Resposta 4: �Porque não existe valoração que satisfaz as premissas e refuta a conclusão,logo para toda valoração que satisfaz as premissas estas mesmas valorações irão satisfazer aconclusão e de acordo com a de�nição de consequência semântica se para toda valoração quesatisfaz as premissas também satis�zer a conclusão então há uma árvore de derivação D tal queD possui como raiz a conclusão e FD está contido no conjunto das folhas das premissas.�

- Resposta 5: �Não,pois apenas podemos estar tentando uma valoração que não é correta,ou atémesmo,ainda não termos conseguido chegar a um resultado satisfatório.�

- Resposta 6: �Tomando sua forma contrapositiva e seguindo o principio da correção, pode-sederivá-la.�

- Resposta 7: �não exatamente. ela pode não ser deriváevel [sic] . uma coisa não implica naoutra.�

- Resposta 8: �Pelo fato de não encontrar uma refutação semântica, a conjectura se mostraderivável pelo fato de apresentar uma árvore �nita de derivação.�

(DRs8) Se você quiser mostrar que não existe uma derivação que testemunhe umacerta conjectura, tal conjectura deve ser refutável. Por quê?

Resposta esperada: Através do Teorema de Correção em sua forma contrapositiva,

sabemos que se refutarmos uma certa conjectura, então não existe uma derivação

para tal conjectura (Γ 2 α ⇒ Γ 0 α)..

- Resposta 1: �Pela correção do sistema de Dedução Natural da Lógica Proposicional.�- Resposta 2: �Γ 2 φ . se existe uma valoração v que satisfaz Γ mas tal que v não satisfaz φ.�- Resposta 3: �porque existe uma valoração que satisfaz as premissas , mas não satisfaz aconsequência, ou seja não é uma tautologia, logo não é uma derivação.�

- Resposta 4: �Pois existe uma valoração que satisfaz as premissas mas não satisfaz a conclusãoe de acordo com a de�nição de consequência semântica isto é condição su�ciente para que umaconjectura possa ser refutável.�

- Resposta 5: �Sim.Ao mostrar que uma conjectura é refútável [sic],acabamos de mostrar quenão existe nenhuma derivação que seja testemunha da conjectura.�

- Resposta 6: �Tomando sua forma contrapositiva e seguindo o principio da completude, pode-sederivá-la.�

- Resposta 7: �Sim! É a única forma de nãoa chgar [sic] à uma derivação.�- Resposta 8: �Pelo fato de não existir uma derivação válida para a conjectura, isso implica quesomente uma refutação de tal conjectura se mostra válida, chegando a um absurdo, provandoque somente a refutação de tal conjectura existe e é válida.�

Page 132: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

130

APÊNDICE D -- Lista de softwares didáticos

de Lógica

Listamos aqui uma seleção de softwares para o Ensino de Lógica com suas respectivas descrições.

• Akka: Criador e Editor de Modelos de Kripke. Foi desenvolvido em Java.

http://staff.science.uva.nl/~lhendrik/AkkaStart.html

• Alfie: É um programa editor de demonstrações em lógica proposicional. Tem a vantagem deapresentar a demonstração tal como um programa em Haskell.

http://www.cs.chalmers.se/~sydow/alfie/index.html

• AproS: Um projeto que consiste em quatro sistemas integrados um mecanismo de busca dedemonstrações Proof Generator, Proof Tutor, Proof Lab e curso web Logic & Proofs. Édesenvolvido em Java Web Start.

http://www.phil.cmu.edu/projects/apros/

• ASA-CalcPro: É um ambiente de suporte ao aluno para o ensino-aprendizagem de cálculoproposicional.

http://www.asacalcpro.com.br/GiacomoN/index.htm

• Bertrand - Symbolic Logic Problem-Solving Software: Resolve conjuntos proposições deprimeira ordem no que diz respeito a consistência, validade e equivalência. Classi�ca verdadeslógicas e falsidades lógicas, e constrói tabelas de verdade.

http://www.uwosh.edu/faculty_staff/herzberg/Bertrand.html

• BOP: Ferramenta educativa desenvolvida em Java para demonstrações à la Fitch da Delft uni-versity.

http://dutiih.twi.tudelft.nl/~sicco/

• Computational Aristotelian Term Logic: Site dedicado aos aspectos formais da lógica aris-totélica tradicional. Desenvolvido em PHP.

http://logic.glashoff.net/aristotelianlogic/

• Coq: É um assistente de demonstrações formais, permite de�nir funções ou predicados, estabe-lecer teoremas matemáticos e especi�cações de softwares, desenvolver demonstrações formaisinterativamente e veri�car estas demonstrações a partir de uma teoria formal.

http://pauillac.inria.fr/coq/

Page 133: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

131

• Expression Evaluator Page: Analisador de expressões booleanas, com quanti�cadores e pre-dicados. É um programa em CGI escrito em Perl.

http://www.cc.utah.edu/~nahaj/logic/evaluate/

• Genie: É um ambiente de desenvolvimento para construção de modelos grá�cos de decisõesteóricas.

http://www2.sis.pitt.edu/~genie/

• Introdutory Logic Animations: Iniciativa idealizada e desenvolvida em 1999 por Jan Jas-pars, contém programas em JavaScript para aprendizado interativo de lógica matemática bá-sica. Implementa aspectos de

- Lógica proposicional e de primeira ordem: constrói modelos, contra-modelos, tabelas de ver-dade, avalia fórmulas e encontra instâncias para variáveis livres;

- Lógica Modal: Calcula mundos dado um modelo e constrói mundos possíveis;

- Lógica Dinâmica: Calcula a transação de uma expressão regular dada;

- Simulação Máquinas de Turing.

http://staff.science.uva.nl/~jaspars/animations/

• J∀p∃ - Just Another Proof Editor: É um sistema desktop para prática de demonstraçõesde dedução natural. Bastante interessante e �exível que possibilita de�nir novas formalizaçõeslógicas.

http://www.cs.ox.ac.uk/people/bernard.sufrin/jape.html

• Logic in Action : Trata-se da continuidade da iniciativa do projeto Introdutory Logic Ani-mations de Jan Jaspars para o ensino de Lógica em cursos introdutórios e intermediários. Oprojeto disponibiliza materiais de aula, slides em inglês e espanhol, e programas interativospara ensinar Lógica Proposicional, Raciocínio Silogístico, Lógica de Primeira Ordem, LógicaEpistêmica, Lógica Dinâmica, Jogos Lógicos, Testes de Validade, Demonstrações e Método deResolução.

http://www.logicinaction.org/

• LoTREC: Trata-se de uma ferramenta para a demonstração através do método de Tableau paraLógica de 1a Ordem e Lógica Modal, implementada em Java e executável via Java Web Start(CERRO et al., 2001).

http://www.irit.fr/Lotrec/

• Modal Logic Playground: Trata-se de um avaliador de fórmulas e de relações de acessibili-dade para a Lógica Modal Proposicional. Foi desenvolvido através da biblioteca JavaScriptD31, MathJax2, e o Twitter Bootstrap3. Código livre disponível em https://github.com/

rkirsling/modallogic.

http://rkirsling.github.io/modallogic/

1Uma biblioteca JavaScript para manipulação de documentos a partir de seus dados. Disponível emhttp://d3js.org/

2Uma biblioteca JavaScript para visualização de notações matemáticas. Disponível em http://www.

mathjax.org/.3Uma framework para desenvolvimento de interfaces web. Disponível em http://twitter.github.

io/bootstrap/.

Page 134: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

132

• Tarski's World, Fitch & Boole4: São três programas desktop que implementam diferentesaspectos da lógica, a saber, Modelos Semânticos, demonstrações formais à la Fitch e Tabelasde Verdade.

- Tarski's World : ensina as bases da linguagem de primeira ordem e sua semântica;

- Fitch: um ambiente de assistência e veri�cação de dedução natural.

- Boole: um programa que facilita a construção e veri�cação de tabelas de verdade relacionandocom suas principais noções de tautologia, consequência e equivalência.

http://ggww2.stanford.edu/GUS/lpl/

• Pandora (Proof Assistant for Natural Deduction using Organised Rectangular Areas): é umaferramenta de aprendizado e suporte para a construção de demonstrações em dedução natural.Está disponível através de Java Applet's.

http://www.doc.ic.ac.uk/pandora/

• Plato: É uma ferramenta �exível que permite a construção de demonstrações em linguagensformais de cálculo sentencial, cálculo de predicados e teoria dos conjuntos.

http://www.utexas.edu/courses/plato/

• Possible World Creation: Analisa fórmulas modais a partir de um modelo de Kripke cons-truído pelo usuário.

http://staff.science.uva.nl/~jaspars/lvi98/Week3/modal.html

• ProofWeb: É um sistema tanto para ensino de lógica e assistência de demonstrações na Web.É desenvolvido em PHP e serve como comunicação entre uma interface Web e o demonstradorde Teoremas Coq que funciona no servidor.

http://proofweb.cs.ru.nl/

• The Bertie & Twootie: É um veri�cador de demonstrações útil para busca de estratégias dedemonstrações. E um veri�cador da correção de tableaux semântico.

http://selfpace.uconn.edu/BertieTwootie/software.htm

• The Daemon Proof Checker: Um veri�cador de demonstrações e de contramodelos.

http://logic.tamu.edu/

• Theorem Proving System: É um sistema educacional demonstrador de teoremas desenvolvidoem Common Lisp.

http://gtps.math.cmu.edu/tps.html

• Truth Table Constructor: É um aplicação que constroí tabelas de verdade para lógica pro-posicional. Desenvolvido em Java Applet's.

http://www.brian-borowski.com/Software/Truth/

• Tableau3: Construtor de Tableaux desenvolvido em Java Applet's.

http://logic.philosophy.ox.ac.uk/tableau3/install.htm

• Summa Logicae XXI: Coletânea de diversos softwares relacionados com o ensino de lógica de-senvolvidos em Java: DiagVenn1.0: Diagramas para lógica de predicados monádicos. MAFIA:Constrói tableaux proposicionais. Modelos de Kripke: Analisa fórmulas modais em modelosde Kripke de�nidos pelo usuário e veri�ca as propriedades de acessabilidade.Diagramas de

4São disponibilizados junto com o livro Language, Proof and Logic (BARWISE; ETCHEMENDY, 2002).

Page 135: A integração do tutorial interativo TryLogic IMS Learning ... · Depamentoart de Informática e Matemática Aplicada ... 17 Lições do TryLogic integradas ao Moodle ... a construção

133

Peirce: Permite a realização de um sistema para representação de grá�cos. Possibilita o de-senvolvimento em um sistema de grá�cos de Peirce. Tradutor de lógicas: Ferramenta queproporciona um simulador grá�co de um tradutor de fórmulas em lógica modal para lógicasmultivaloradas.

http://logicae.usal.es/mambo/index.php?option=com_summalogicaexxi&menu_task=

Software&task=no_task&cmd=listar