Tabela de verdade

Uma tabela de verdade é uma quebra de uma função lógica, listando todos os valores possíveis que a função pode atingir. Tal tabela tipicamente contém várias linhas e colunas, com a linha superior representando as variáveis lógicas e combinações, em crescente complexidade levando até a função final.

Em uma função lógica, existem três operações básicas: NOT (também chamada de inversão ou negação e simbolizada -), OR (também chamada de disjunção ou adição e simbolizada +), e AND (também chamada de conjunção ou multiplicação e simbolizada *). Os valores das funções são normalmente atribuídos como lógica 0 = falso e lógica 1 = verdadeiro. Assim, as seguintes regras são aplicáveis:

Se A = 0, então -A = 1
Se A = 1, então -A = 0
A+B = 1 exceto quando A = 0 e B = 0
A+B = 0 se A = 0 e B = 0
A*B = 0 exceto quando A = 1 e B = 1
A*B = 1 se A = 1 e B = 1

As tabelas seguintes mostram o processo de avaliação dos valores da função lógica -(A+B) * -(A*B), as determined by breaking it down into constituent functions. The two logic variables, A and B, are listed at the top of the first two columns. All possible combinations of values for A and B are listed in these columns by counting up in binary numerals: 00, 01, 10, 11. The right-most (in this case the seventh) column contains the function to be evaluated (the final function).

A B A+B A*B -(A+B) -(A*B) -(A+B) * -(A*B)
? ? ? ? ?
1 ? ? ? ? ?
1 ? ? ? ? ?
1 1 ? ? ? ? ?

Once this framework has been set up, the values in the third and fourth columns are determined by the simple rules for addition and multiplication:

A B A+B A*B -(A+B) -(A*B) -(A+B) * -(A*B)
? ? ?
1 1 ? ? ?
1 1 ? ? ?
1 1 1 1 ? ? ?

Then the values in the fifth and sixth columns are determined by negating the values in the third and fourth columns:

A B A+B A*B -(A+B) -(A*B) -(A+B) * -(A*B)
1 1 ?
1 1 1 ?
1 1 1 ?
1 1 1 1 ?

Finally, the values of the function to be evaluated are determined by multiplying the values of the fifth and sixth columns:

A B A+B A*B -(A+B) -(A*B) -(A+B) * -(A*B)
1 1 1
1 1 1
1 1 1
1 1 1 1

This is a simple logic function. Algumas funções têm muitas variáveis de entrada, e consistem em muitas funções constituintes. Isto pode resultar em uma tabela com centenas de linhas e colunas. Os computadores são usados para gerar tabelas verdadeiras para funções lógicas altamente complexas.

Uma alternativa à tabela verdade é o uso de teoremas booleanos. Este método, chamado álgebra Booleana, é usado por engenheiros para encontrar o circuito mais simples possível que irá executar uma função lógica desejada. Isto otimiza a eficiência do sistema ao minimizar o número de operações que devem ser realizadas para realizar uma determinada tarefa.