Você está na página 1de 10

DVenn Um Software de Auxlio ao Aprendizado de Lgica

nos Cursos de Graduao em Computao

Abstract.

This paper presents the DVenn, a software that


convert logical expressions in Venn diagrams. The
application, implemented in JAVA technology, enables
a better understanding during the study for the
simplification of logical expressions and helps the
student in understanding and correcting its
activities. Unlike other tools to simplify, it
receives a logical expression of any size,
containing up to four different variables, and
presents the resulting diagram the student
graphically.

Resumo. Este artigo apresenta o DVenn, um software que mapeia expresses


lgicas em diagramas de Venn. A aplicao, implementada na tecnologia
JAVA, possibilita uma melhor compreenso durante o estudo de simplificao
de expresses lgicas e auxilia o educando na compreenso e correo de
suas atividades. Diferente de outras ferramentas de simplificao, esta recebe
uma expresso lgica de qualquer tamanho, contendo at quatro variveis
distintas, e apresenta o diagrama resultante ao educando de forma grfica.

1. Introduo
Em 1880, o lgico ingls John Venn publicou um artigo com o ttulo Sobre
representao diagramtica e mecnica de proposies e raciocnios. Trabalhando na
recm-criada rea de lgebra de Boole e associando-a com a nova viso da Teoria dos
Conjuntos desenvolvida por G. Cantor, Venn props a ideia de representar as relaes
entre conjuntos atravs de configuraes de figuras no plano. O objetivo dele,
claramente formulado naquele artigo [1], foi:
...antes de mais nada os
diagramas servem para auxiliar o
olho e a mente graas a natureza
intuitiva do seu testemunho...
Nos dias atuais, pode-se dizer que o objetivo postulado por Venn foi plenamente
alcanado, j que 129 anos mais tarde todos os livros elementares de matemtica usam
este caminho para introduzir alunos em Teoria de Conjuntos. J nos cursos superiores,
os diagramas de Venn representam um mtodo a mais no ensino das funes lgicas.
O aprendizado da simplificao de funes lgicas sempre representou uma dificuldade
na disciplina de lgica nos cursos da rea da computao. H trs mtodos
fundamentais para a simplificao: Algbrico (teoremas), Diagramas de Venn e Mapas
de Karnaugh. O primeiro, baseado nos teoremas de Boole, sempre considerado o mais
complexo pelos alunos; o segundo facilita o aprendizado, j que o aluno faz associaes

21
22 Artigos Completos

com a teoria dos conjuntos aprendida no ensino bsico. O terceiro considerado de fcil
representao, porm em muitos casos as relaes de adjacncia so de difcil percepo
pelos alunos.
Embora os diagramas de Venn sejam considerados fceis pelos alunos, medida
que a complexidade da expresso lgica aumenta, a representao atravs dos
diagramas de Venn torna-se complexa e mais suscetvel a erros, visto que a
representao escrita demanda tempo e concentrao. Pensando-se nisso, foi projetado e
desenvolvido um software que recebe a expresso a ser simplificada e, de forma
instantnea, retorna ao usurio o diagrama resultante do processo de simplificao.
Este artigo est organizado em cinco sees: a primeira contextualiza o
problema; a segunda apresenta trs conceitos de raciocnio, fundamentais no ensino da
lgica, e como estes conceitos so trabalhados com os diagramas de Venn. A terceira
seo demonstra situaes do dia a dia da disciplina de lgica, apresentando exemplos
de funes lgicas representadas atravs dos diagramas de Venn. A quarta seo
descreve com detalhes a soluo em software desenvolvida para aprimorar o ensino-
aprendizagem da simplificao de funes lgicas atravs dos diagramas; ao final as
concluses obtidas at o presente momento.

2. Raciocnios
O raciocnio uma atividade mental intencional, consiste no encadeamento de juizos
extraindo deles uma concluso. Servimo-nos do raciocnio para demonstrar, descobrir,
reconstruir e interpretar fatos, convencer, justificar uma tese/teoria, entre outros. No
domnio da lgica e da matemtica, o encadeamento proposicional linear, j que se
elabora obedecendo estritamente a regras formais [2]. Nesta seo, so apresentados trs
tipos de raciocnio, classificados como Raciocnio Direto, Indireto e Transitivo. No
objetivo deste artigo encerrar as possibilidades de classificao dos diversos tipos de
raciocnio e sim demonstrar a utilizao do diagrama de Venn na representao do
raciocnio.

2.1. Raciocnio Direto


No raciocnio direto a ideia subjacente que Se A B e x A, ento possvel
concluir que x B . A tabela 1 mostra um exemplo de raciocnio direto.
Tabela 1: Exemplo de Raciocnio Direto

Premissa: Todos elementos em A esto p q: Se um elemento est em A, ento


tambm em B . ele est em B.
Premissa: x um elemento em A. p: x um elemento em A.
Concluso: x um elemento em B. q: x est em B.
O diagrama que representa este raciocnio :
Computer on the Beach 2012 23

Figura 1: Diagrama de Venn utilizado para demonstrar o Raciocnio Direto

O argumento vlido porque Se A est em B e x est em A, ento possvel


afirmar com 100% de certeza que x est em B. Mas deve-se prestar ateno: Se A B e
x B, no possvel garantir com 100% de certeza que x A. O argumento seria
invlido. O diagrama da figura 2 mostra que A B e x B, porm x A.

Figura 2: Diagrama de Venn utilizado para demonstrar o Raciocnio Direto

2.2. Raciocnio Indireto


No raciocnio indireto a ideia subjacente que Se A B e x A, ento possvel
concluir que x A. A tabela 2 mostra um exemplo de raciocnio indireto.

Tabela 2: Exemplo de Raciocnio Indireto

Premissa: Todos elementos em A esto p q: Se um elemento no est em A,


tambm em B . ento ele est em B.
Premissa: x no um elemento em B. p: x no um elemento em B.
Concluso: x no um elemento em A. q: x no est em A.

O diagrama que representa este raciocnio :

Figura 3: Diagrama de Venn utilizado para demonstrar o Raciocnio Indireto

O argumento vlido porque Se A est em B e x no est em A, ento pode-se


24 Artigos Completos

ter 100% de certeza que x no est em A. Entretanto Se A B e x A, no possvel


afirmar com 100% de certeza que x B. O argumento seria invlido. O diagrama da
figura 4 mostra que A B e x B, mas x A.

Figura 4: Diagrama de Venn utilizado para demonstrar uma possvel induo


ao erro no Raciocnio Indireto

2.3. Raciocnio Transitivo


No raciocnio transitivo a ideia subjacente que Se A B e B C, ento possvel
concluir que A C. A tabela 3 mostra um exemplo de raciocnio transitivo.
Tabela 3: Exemplo de Raciocnio Transitivo

Premissa: Todos elementos em A esto p q: Se um elemento no est em B,


tambm em B . ento ele no est em A.
Premissa: x no um elemento em B. p: x no um elemento em B.
Concluso: x no um elemento em A. q: x no est em A.

O diagrama que representa este raciocnio :

Figura 5: Diagrama de Venn utilizado para demonstrar o Raciocnio Transitivo

O argumento vlido porque Se A est em B e B est em C, ento tem-se 100%


de certeza que A est em C. Entretanto, mais uma vez pode-se demonstrar que Se A
B e B C, no ser necessariamente verdade que A C, como representado na figura
6.

Figura 6: Diagrama de Venn utilizado para demonstrar uma exceo no


Raciocnio Transitivo
Computer on the Beach 2012 25

3. Aplicando o Diagrama de Venn no aprendizado de lgica


Na disciplina de lgica, os diagramas de Venn so comumente utilizados na
representao de funes lgicas. Os diagramas de Venn so teis para reforar a noo
intuitiva sobre conjuntos, principalmente para analisar relaes entre os conjuntos e
tambm seus membros. No diagrama de Venn o conjunto universo representado por
um retngulo, isto , pelos pontos interiores ao retngulo. Qualquer conjunto
desenhado como sendo uma curva fechada (crculo ou elipse), inteiramente contida no
retngulo. Os pontos interiores curva correspondem aos elementos do conjunto. Na
figura 7, pode-se visualizar um slide de uma aula na disciplina de lgica onde so
apresentadas as diversas funes lgicas com duas variveis possveis de serem
representadas em um diagrama de Venn.

Figura 7: Aplicando Diagramas de Venn na representao de funes lgicas

Outra aplicao dos diagramas est na representao da igualdade de funes


lgicas, este fato tambm enfatizado nas aulas da disciplina de lgica, conforme pode-
se constatar na figura 8:

Figura 8: Aplicando Diagramas de Venn na representao de igualdade entre


funes lgicas

Os dois exemplos demonstram aplicabilidade dos diagramas de Venn no ensino


de funes lgicas, simplificando por vezes a compreenso do educando, muitas vezes
no afeito a utilizar as tabelas-verdade. Entretanto, medida que as funes lgicas
tornam-se mais complexas, a representao por meio dos diagramas de Venn produz no
educando uma averso a este tipo de representao, fazendo-o abandonar a sua
utilizao e impedindo-o de aproveitar os benefcios propiciados pelo diagrama. Pode-
se exemplificar esta afirmao apresentando a seguinte funo lgica:
26 Artigos Completos

((A . B . C) + ( A. B . C ) ) . A
A representao atravs do diagrama de Venn resulta na figura 9.

Figura 9: Diagrama de Venn representando a funo lgica ((A . B . C) +


( A. B . C ) ) . A

Verificou-se, pela experincia em sala de aula, que os alunos tm dificuldades de


compreender e aceitar esta tcnica quando as expresses lgicas so mais complexas.
Desta forma, foi proposto o desenvolvimento de um software que propiciasse um
melhor aprendizado dos diagramas de Venn. A prxima seo descreve a ferramenta
desenvolvida.

4. O prottipo do Software DVenn


O DVenn originou-se da falta, precariedade e alto custo dos softwares de auxlio ao
estudo de lgebra booleana. conhecida a dificuldade que estudantes possuem para
representar uma expresso booleana em diagramas de Venn, a fim de simplific-la.
Muitas das aplicaes construdas com o fim de ajudar a representar dados apenas
oferecem uma interface para que o usurio monte o seu diagrama, sem clculos ou
resoluo de expresses.
As ferramentas de simplificao de expresses lgicas, normalmente no exibem
seus resultados em diagramas, o que as torna imprprias no aprendizado deste tipo de
representao, pois no fornecem ao estudante o diagrama, para fins de correo de um
exerccio. Alm disso, tambm conhecido que o desenho de um diagrama de Venn
qualquer demanda tempo e certa concentrao, exigindo energia e disposio do
professor que ministra este contedo, alm de, em caso de erro, praticamente todo o
trabalho do desenho dever ser refeito.
Apesar de existirem ferramentas que simplificam expresses, como o Binary
Function Simplification [3], e que auxiliam no desenho de um diagrama de Venn [4],
como o SmartDraw, no existe uma ferramenta com ambas as funcionalidades,
permitindo a otimizao do tempo de aprendizado. Assim, durante uma aula de lgica
booleana surgiu a ideia de desenvolver um software que simplificasse expresses
booleanas e representasse seus dados em forma de diagrama de Venn, rpido, portvel e
acessvel. A figura 10 mostra uma tela do Software DVenn.
Computer on the Beach 2012 27

Figura 10: Interface do Dvenn

4.1. A funcionalidade do DVenn


No incio do projeto, tinha-se em mente apenas a representao de diagramas atravs de
expresses booleanas j simplificadas e que contivessem trs variveis. Porm, por
demanda do pblico teste professores e alunos de lgica foi inserido aplicao um
mdulo de simplificao de expresses, que recebe polinmios booleanos e os exibe em
forma de diagrama. Para isto, a conveno para representao de operaes booleanas
foi inserida de forma dinmica na aplicao, j que existem vrias notaes para a
representao de operaes. Optou-se pela notao onde o sinal da operao OU o
sinal de adio ( + ), o sinal da operao E o sinal de multiplicao ( . ) e as negaes
de sinal so expressadas por uma aspa simples ( ' ).
No campo de texto, existe a expresso analisada pela aplicao, e acima, o
diagrama obtido aps sua simplificao (figura 10). A aplicao detecta o nmero de
variveis e produz um diagrama de acordo, caso a opo Variveis no grfico: esteja
com a opo Automtico selecionado, conforme pode-se visualizar na figura 11.

Figura 11: Deteco automtica de variveis

tambm possvel forar o nmero de variveis do diagrama, porm as


variveis excedentes tero seu valor substitudo por 1, conforme pode-se visualizar na
figura 12.
28 Artigos Completos

Figura 12 Especificando o nmero de variveis no diagrama

Somente so aceitas expresses vlidas, ou seja, expresses booleanas que


possam ser resolvidas. Caso a aplicao detecte erro na expresso, o campo de texto
torna-se vermelho e um aviso emitido na tela, conforme pode-se visualizar na figura
13.

Figura 13: Exemplo de erro

4.2. A arquitetura da aplicao


A fim de atingir o maior nmero de estudantes possvel, uma preocupao foi a escolha
da linguagem de programao da aplicao. Otimizando o desenvolvimento,
aumentando o alcance e a incluso atravs da web e sem a necessidade de compilao
de cdigo pouco dominada entre os estudantes da disciplina de lgica (que consta na
grade curricular no primeiro semestre do curso) foi ento escolhida a linguagem Java,
da Sun Microsystems, que assegura portabilidade atravs de sua mquina virtual, alm
de um sistema de Applet que permite a incluso direta da aplicao em pginas web,
sem necessidade de download e instalao de um cliente local.
Para implementao da interface grfica, foi utilizada a biblioteca Swing e para a
representao no diagrama, foi utilizado Java2D, obtendo melhor performance na
renderizao das imagens. A aplicao tambm possui implementao de Applet, o que
possibilita incluso direta em uma pgina web. Todas as bibliotecas utilizadas so
Computer on the Beach 2012 29

padres e distribudas junto mquina virtual Java, garantindo compatibilidade total


dos recursos utilizados, independente de sistema operacional e browser.
A fase seguinte do desenvolvimento foi o desenho dos diagramas representando
expresses lgicas com at quatro variveis. Foram criados desenhos dos diagramas
atravs do software de desenho Krita [5], preeenchidas as lacunas do diagrama com
cores adstringentes, e separadas por camadas. Cada camada ento uma nica imagem,
e a formao do diagrama na tela montada sobrepondo as imagens de acordo com a
expresso no mtodo de pintura do painel Java2D. Este painel ento mostrado pela
janela criada pela biblioteca Swing, como mostra a figura 14.

Resoluo da
Expresso Java2D Swing Usurio
Expresso

Figura 14: Arquitetura do DVenn

4.3. Componentes do DVenn


Baseando-se em um sistema de palavras binrias, com o nmero de bits igual ao nmero
de possibilidades representadas pelo diagrama, cada bit representa uma seo do
diagrama, como mostra a imagem apresentada na figura 15.

Figura 15: Representao da associao de bits a sees do diagrama

Como cada varivel do diagrama pode representar uma ou mais sees do


diagrama, cada varivel uma palavra binria por si s, contendo as sees de diagrama
pintadas quando aparecem sozinhas. Por exemplo, em um diagrama para a expresso de
duas variveis A+B, a varivel A mapeada com o valor 0110 e a varivel B com o
valor 0011.
Quando o usurio insere uma expresso lgica, o programa encarrega-se de
substituir as variveis por seus devidos valores binrios. Aps, esta nova expresso
binria repassada a um mtodo responsvel por sua resoluo. Este mtodo percorre
toda a expresso e a resolve a partir da hierarquia mais alta, nos parnteses mais
internos, para a mais baixa, parnteses mais externos.

5. Concluses
Neste trabalho, o software DVenn foi implementado com o objetivo de ser agente
30 Artigos Completos

catalisador no processo de ensino-aprendizagem da simplificao e representao de


funes lgicas. A utilizao do software DVenn no dia a dia da disciplina de Lgica
nos cursos de Computao representa uma alternativa vivel e acessvel.
Adicionalmente, neste artigo pde-se demonstrar o nvel de abstrao propiciado por
este tipo de software. Sem dvida, este nvel de informao favorecer a aprendizagem
e representar um passo a mais em direo transformao do processo educacional.
Apesar dos resultados alcanados ainda estarem sendo tabulados, tendo em vista
sua recente criao, o fato da sua prvia utilizao no impediu uma pr-avaliao da
sua eficcia e j permitiu que o professor realizasse intervenes no processo para
aprimoramento da disciplina. Certamente, se as concluses j tivessem sido geradas
com maior antecedncia, poderiam ter favorecido resultados imediatos, propiciando
melhorias ao processo e minimizando o tempo de aprendizado da simplificao de
funes lgicas contribuindo para o aprimoramento da disciplina.

Referncias
[1] Solecky, A. (2009). Diagramas de Venn. [online]: http://www.andsol.org/portugues/
mat/venn.html
[2] Teodsio, J. (2007). Tipos de Raciocnio Indutivo. [online]:
http://br.geocities.com/grupo10b/JQ.htm
[3] University of Northern Colorado (1998). Boolean Function Simplification. [online]:
http://hopper.unco.edu/KARNAUGH1.1/Function.html
[4] SmartDraw.com (2009). Easy Venn Diagram Software. [online]:
http://www.smartdraw.com/specials/venn.htm?id=2087
[5] The KOffice Projct: Krita (2009). KOffice image editing program. [online]:
http://www.koffice.org/krita

Você também pode gostar