Prévia do material em texto
INTRODUÇÃO À LÓGICA UNIDADE VI Funções Booleanas Rafaela Rodrigues Oliveira Amaro Funções Booleanas 3 Introdução O conjunto de operadores e o de axiomas, admitidos como verdadeiros sem a necessidade de uma prova específica, são o que caracteriza e define a álgebra de Boole. Essa nova estrutura algébrica foi apresentada à comunidade acadêmica no ano de 1854 e, desde então, fundamenta diversas áreas do conhecimento além da lógica matemática, como a ciência de dados e a eletrônica. Partindo dessa concepção, introduzida na unidade anterior, compreenderemos um pouco mais sobre a álgebra booleana conhecendo suas respectivas funções, suas estruturas de representação, assim como a sua forma normal, a forma normal conjuntiva, a forma normal disjuntiva, a forma binária e a forma decimal. Objetivos da Aprendizagem Ao final do conteúdo, esperamos que você seja capaz de: • Caracterizar funções booleanas e compreender suas possíveis representações utilizando o diagrama de Venn, a tabela-verdade e a representação geométrica. • Compreender e identificar a forma normal booleana, a forma normal conjuntiva, a forma normal disjuntiva, a forma binária e a forma decimal. 4 Funções Booleanas Conceito fundamental na lógica booleana, as funções booleanas são amplamente utilizadas na programação de computadores, em circuitos eletrônicos, assim como em outras áreas do conhecimento, como a engenharia e a ciência da computação. Funções booleanas e seu uso na ciência da computação Fonte: Freepik (2023). #pratodosverem: fotografia de uma mulher de óculos digitando em um compu- tador funções booleanas em alusão ao trabalho de programação de sistemas, área da ciência da computação. Uma função booleana é caracterizada como uma relação matemática que estabelece ligações entre uma variável de entrada binária, ou seja, que só admite dois valores, 0 ou 1, a uma outra variável, também no formato binário, de acordo com regras específicas. Como exemplo, temos a função booleana: f(a) é 1 se a = 0 e f(a) = 0 se a = 1. Logo, f(x) é a função inversora, ou seja, NOT. Representação das Funções Booleanas As funções booleanas podem ser representadas de três maneiras diferentes, como destaca o diagrama a seguir. 5 Representações de uma função booleana Funções booleanas Tabela- verdade Diagrama de Venn Representação geométrica Fonte: elaborado pela autora (2023). #pratodosverem: diagrama em que as funções booleanas estão escritas em um retângulo superior e suas ramificações. Abaixo dessa forma geométrica inicial, estão as maneiras como essas funções podem ser representadas: pelo diagra- ma de Venn, pela tabela-verdade e por representação geométrica. Para cada uma das representações de uma função booleana – diagrama de Venn, tabela-verdade ou representação geométrica –, existem regras específicas, seja para sua construção ou leitura; tópico que será abordado a partir de agora. Diagramas de Venn ou Círculos de Euler Os diagramas de Venn, também conhecidos como círculos de Euler, foram criados no fim do século XIX pelo matemático britânico John Venn. Essa representação gráfica é muito utilizada na teoria de conjuntos e na lógica matemática, pois permite a visualização de operações entre conjuntos, como a união, a interseção e a complementariedade. Esse dispositivo gráfico é composto de alguns círculos que podem estar separados ou sobrepostos em algumas porções. Por meio dessas ilustrações, é possível visualizar e compreender as concepções da lógica matemática, como as associadas aos operadores lógicos E (AND) e OU (OR). 6 Diagrama de Venn Fonte: Freepik (2023). #pratodosverem: círculos e suas possíveis organizações, em referência ao diagrama de Venn. Dispositivo gráfico para indicar operações de uniões e interseções entre conjuntos. Como exemplo dessa dinâmica de representação de uma função booleana, Daghlian (1988) ilustra a relação indicada por 𝑦 = 𝑎′𝑏′𝑐′ + 𝑎′𝑏𝑐′ + 𝑎′𝑏𝑐 + 𝑎′𝑏′𝑐′. Diagrama de Venn representando a função booleana 𝑦 = 𝑎′𝑏′𝑐′ + 𝑎′𝑏𝑐′ + 𝑎′𝑏𝑐 + 𝑎′𝑏′𝑐′ Fonte: Daghlian (1988). #pratodosverem: imagem de um conjunto de diagramas de Venn em referência aos quatro termos da função booleana indicada no exemplo a partir de uniões e interseções entre conjuntos. A função booleana descrita na representação anterior pode ser verificada algebricamente considerando algumas propriedades operatórias, como se destaca a seguir. 𝑦 = 𝑎′𝑏′𝑐′+ 𝑎′𝑏𝑐′+ 𝑎′𝑏𝑐+ 𝑎′𝑏′𝑐′ 𝑦 = 𝑎′𝑏(𝑐+ 𝑐′)+ 𝑎′𝑏′(𝑐+ 𝑐′) 𝑦 = 𝑎′𝑏+ 𝑎𝑏′ 𝑦 = 𝑎′(𝑏+ 𝑏′) 𝑦 = 𝑎′ 7 A representação de funções booleanas utilizando o diagrama de Venn se limita a três variáveis. Isso se deve ao fato de ser difícil a apresentação de quatro conjuntos e suas possíveis interseções e uniões. Portanto, quando a função booleana estiver relacionando quatro variáveis ou mais, é indicada a escolha por outra dinâmica de representação, restando a tabela-verdade ou a representação geométrica. Atenção Tabelas-Verdade e Representação Geométrica Outra maneira de representar uma função booleana é utilizando um dispositivo formado por linhas e colunas, ou seja, a tabela-verdade, já conhecida e utilizada para outras funcionalidades. Nessa organização, cada linha da tabela retrata uma combinação diferente de valores de entrada. Como exemplo dessa forma de apresentação, a tabela-verdade a seguir destaca uma função booleana de três variáveis 𝑓(𝑎,𝑏,𝑐), em que cada uma está localizada em uma coluna. Tabela-verdade referente à função A B C 𝑓(𝑎,𝑏,𝑐) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 8 1 1 0 1 1 1 1 1 Fonte: elaborada pela autora (2023). #pratodosverem: tabela com quatro colunas e nove linhas contendo três variáveis e suas relações com uma função booleana preestabelecida. Essa função booleana, descrita anteriormente na tabela-verdade, recebe o nome de função de lógica majoritária, pois resulta em 0, caso a maioria das entradas seja igual a 0, e equivale a 1 quando predomina as entradas equivalentes a 1. Uma função booleana também pode ser representada graficamente, em que cada operador está relacionado a um símbolo específico, fato que possibilita uma imediata identificação visual. Esses símbolos são chamados portas lógicas e caracterizam circuitos eletrônicos capazes de realizar as operações lógicas. Muito comum na eletrônica, o nível lógico 0 está associado à ausência de tensão, ou seja, 0 volt; em contrapartida, o nível lógico 1 indica a presença de tensão, que geralmente é de 5 volts. Curiosidade A terceira e última maneira de simbolizar uma função booleana é por um arepresentação geométrica. Nessa concepção, são utilizadas diversas formas bidimensionais (quadrado, triângulo, retângulo, pentágono, entre outras) e estruturas tridimensionais (cubo, paralelepípedo, dentre outras) para destacar a relação. De acordo com a quantidade de variáveis, uma representação gráfica é elaborada, como se destaca na tabela a seguir. 9 Quantidade de variáveis e sua respectiva representação gráfica 1 variável 2 variáveis 3 variáveis 4 variáveis Fonte: adaptada de Daghlian (1988). #pratodosverem: tabela com a representação gráfica de funções booleanas com uma, duas, três e quatro variáveis. Quando se utiliza a representação gráfica para funções booleanas, as possíveis combinações das n variáveis como pontos de n-espaço assim como o conjunto de todos os 2n pontos são, na realidade, os vértices de um n-cubo. Este é também chamado hipercubo booleano por possuir propriedades especiais. Curiosidade É importante ressaltar que, para cada tipo de representação de uma função booleana, há especificidades e limitações próprias a cada formato. Assim, cabe-se identificar, perante a estrutura da relação de Boole, os formatos visuais mais adequados. Formas Normais De acordo com Daghlian (1988), uma função booleana está na forma normal a n variáveis quando utiliza apenas as operações básicas da álgebra booleana, ou seja, a adiçãológica (OU/OR), a multiplicação lógica (E/END) e a complementação (NÃO/ NOR). Como exemplo de função normal booleana, temos as seguintes relações: 1. 𝑦 = 𝑎 ∙ 𝑏′ é normal em a e b. 2. 𝑦 = 𝑎 + 𝑏𝑐′ é normal em a, b e c. 3. 𝑦 = 𝑎𝑏′ + 𝑐′𝑑 + 𝑒 é normal em a, b, c, d e e. 10 Funções normais booleanas são comumente utilizadas para modelar problemas de lógica, eletrônica digital e circuitos elétricos, podendo admitir os seguintes formatos: forma normal disjuntiva, forma normal conjuntiva, forma binária e forma decimal. Forma Normal Disjuntiva e Forma Normal Conjuntiva Uma função booleana normal está na forma normal disjuntiva (disjunção = adição = conectivo OU/OR) quando em seus termos existem todas as variáveis relacionadas ou seus respectivos complementos (Daghlian, 1988). Dessa maneira, a função booleana 𝑦 = 𝑎𝑏′ + 𝑎′𝑏 + 𝑎 + 𝑏 se encontra na forma normal disjuntiva, pois, nas três variáveis relacionadas (a, b e c), observa-se a presença de seus complementares, indicados respectivamente por a’, b’ e c’. Em contrapartida, observa-se que a função definida por 𝑦 = 𝑎𝑏′ + 𝑎′𝑏 + 𝑎 + 𝑏 não está na forma disjuntiva, pois tanto no terceiro quanto no quarto termo não existem as variáveis a e b, que estão envolvidas nessa relação. Transformação de uma função disjuntiva para uma função normal disjuntiva A função booleana 𝑦 = 𝑎𝑏𝑐′ + 𝑎𝑏′𝑐𝑑 + 𝑎′𝑏′𝑑 não está na forma normal disjuntiva, pois em seu primeiro termo falta a variável d, e no terceiro falta a variável c. O primeiro passo! Inicialmente, devemos considerar a propriedade entre uma variável e seu complemento, logo, considerando-se as incógnitas faltantes, tem-se que: 𝑐+ 𝑐′ = 𝑑 + 𝑑 ′ = 1. O segundo passo! Com base na propriedade anterior, podemos reescrever a função como: 𝑦 = (𝑎𝑏𝑐′) (𝑑 + 𝑑 ′) + 𝑎𝑏′𝑐𝑑 + 𝑎′𝑏′𝑑 (𝑐+ 𝑐′), que, simplificada, é igual a 𝑦 = 𝑎𝑏𝑐′𝑑 + 𝑎𝑏𝑐′𝑑 ′ + 𝑎𝑏′𝑐𝑑 + 𝑎′𝑏′𝑐𝑑 + 𝑎′𝑏′𝑐′𝑑 .. A forma normal conjuntiva (conjunção = multiplicação = E/END) é revelada quando em todos os seus fatores existem todas as variáveis relacionadas e seus respectivos complementos (Daghlian, 1988). 11 Dessa maneira, a função booleana se encontra na forma normal disjuntiva, uma vez que, para as três variáveis (a, b e c), observa-se a presença de seus complementares, dados respectivamente por a’, b’ e c’. Em contrapartida, a função booleana definida por não está na forma conjuntiva, pois não existe o complemento de b na relação e ainda falta a variável c, que deveria estar no primeiro termo. Transformação de uma função normal disjuntiva para uma função normal conjuntiva utilizando uma tabela-verdade A função booleana 𝑦 = 𝑎𝑏 + 𝑎′𝑏 está na forma normal disjuntiva; nosso objetivo será transformá-la na forma normal conjuntiva. O primeiro passo! Inicialmente, devemos construir a tabela-verdade referente à função 𝑦 = 𝑎𝑏 + 𝑎′𝑏, dada por: O segundo e terceiro passos! Considerando 𝑦 = 𝑎𝑏 + 𝑎′𝑏, temos que 𝑦 ′ = 𝑎𝑏′ + 𝑎′𝑏. De posse dessa expressão e usando a lei de Morgan, encontramos que (𝑦 ′)′ = (𝑎𝑏′+ 𝑎′𝑏)′= (𝑎𝑏′)′+ (𝑎′𝑏)′ = (𝑎+ 𝑏) ∙ (𝑎′+ 𝑏), ou seja, na forma normal conjuntiva. Funções Booleanas na Forma Binária Funções booleanas, quando na forma binária, como o próprio nome sugere, são aquelas descritas por combinações entre os valores lógicos zero ou um. Daghlian A b ab a' a'b y 0 0 0 1 0 0 0 1 0 1 1 1 1 0 0 0 0 0 1 1 1 0 0 1 12 (1988) explica que toda variável não complementada corresponde ao valor 1, e a variável complementada é indicado pelo algarismo 0. Considerando tais definições e a função booleana definida por 𝑦 ′ = 𝑐𝑑 + 𝑐′𝑑 ′, podemos reescrevê-la em uma forma binária como indicado a seguir. Em que o primeiro termo da relação é composto de variáveis não complementadas, ou seja, c e d. Logo, ele deve ser, nessa ordem, indicado pelo número 1, enquanto o segundo termo se constitui de variáveis complementadas (𝑐′𝑑 ′), devendo ser indicado pelo algarismo 0. Admitindo a forma binária para uma função booleana chamamos índice de um termo a quantidade total de algarismos iguais a 1 encontrada nessa representação numérica. Dessa forma, ao considerarmos os termos 1000, 1110, 1111 e 1010, verificam-se, nessa ordem, os índices equivalentes a 1, 3, 4 e 2. Atenção Funções na Forma Decimal A representação na forma decimal de uma função booleana também recebe o nome de forma normal disjuntiva canônica ou ainda de mintermo. Essa é uma maneira de indicar uma função booleana utilizando números decimais em substituição às expressões algébricas. Nessa dinâmica, cada número decimal se equipara a um termo da função booleana, constituída pela combinação de variáveis ou suas negações. Como exemplo, Daghlian (1988) exibe um exemplo no qual é solicitada a representação na forma decimal da função descrita na seguinte tabela-verdade. 13 Função booleana na forma decimal Número a b f (a,b) 0 0 0 0 1 0 1 0 2 1 0 1 3 1 1 1 Fonte: adaptada de Daghlian (1988). #pratodosverem: tabela com quatro colunas e cinco linhas indicando a relação entre os números decimais, as variáveis a e b e a função booleana. Dessa forma, quando expressa em um formato binário, essa mesma função booleana pode ser reescrita da seguinte maneira. Relação número decimal x número binário de uma função booleana Número decimal Número binário 0 00 1 01 2 10 3 11 Fonte: adaptada de Daghlian (1988). #pratodosverem: tabela com duas colunas e quatro linhas indicando a relação entre o número decimal e o número binário da função booleana. Portanto, os valores decimais correspondentes à função booleana f(a, b) = 1 são 2 e 3. Essa conclusão pode ser escrita como: Para comprovar essa constatação, basta retornar às duas tabelas anteriores e verificar as duas entradas que resultaram em f(a.b) = 1, informação localizada na quarta coluna (da esquerda para a direita na tabela). 14 Para saber mais sobre o tema abordado nesta unidade, em especial quanto às maneiras de representar uma função booleana, acesse os links a seguir. 1. Representação de funções booleanas: diagrama de Venn. 2. Representação de funções booleanas: tabelas-verdade. 3. Representação de funções booleanas: representação geométrica. Saiba mais https://www.youtube.com/watch?v=RchXC1iK4h4 https://www.youtube.com/watch?v=RchXC1iK4h4 https://www.youtube.com/watch?v=RchXC1iK4h4 https://www.youtube.com/watch?v=RchXC1iK4h4 15 Conclusão Nesta última unidade do curso de Introdução à Lógica, a álgebra de Boole foi amplamente abordada a partir de sua respectiva função, a função booleana. Por meio dessa concepção, os diferentes tipos de representação de uma função booleana foram apresentados pelo diagrama de Venn, pela tabela-verdade e pela representação geométrica. Além disso, a forma normal de uma função booleana foi discutida, acompanhada de suas classificações em forma normal conjuntiva e forma normal conjuntiva. 16 Referências DAGHLIAN, J. Lógica e álgebra de Boole. São Paulo: Atlas, 1988. 11 Representação das Funções Booleanas 1 diagramas de venn Euler. [S. l.: s. n.], 22 set. 2016. 1 vídeo (7min19s). Publicado pelo canal Matusalém Vieira Martins. Disponível em: https://www.youtube.com/watch?v=RchXC1iK4h4. Acesso em: 19 out. 2023. 11 Representação das Funções Booleanas 2 tabelas verdade. [S. l.: s. n.], 22 set. 2016. 1 vídeo (4min46s). Publicado pelo canal Matusalém Vieira Martins. Disponível em: https://www.youtube.com/watch?v=B6hX06lW_Wk. Acesso em: 19 out. 2023. 11 Representação das Funções Booleanas 3 Representação geométrica. [S. l.: s. n.], 22 set. 2016. 1 vídeo (4min13s). Publicado pelo canal Matusalém Vieira Martins. Disponível em: https://www.youtube.com/watch?v=-XyXHlHEOyY. Acesso em 19 out. 2023. https://www.youtube.com/watch?v=RchXC1iK4h4 https://www.youtube.com/watch?v=B6hX06lW_Wk https://www.youtube.com/watch?v=-XyXHlHEOyY