Changes

Jump to navigation Jump to search
2,239 bytes added ,  09:38, 3 June 2016
no edit summary
Enquanto é possível usar Maple para provar uma identidade pela força bruta, isto é, checando cada valor possível das variáveis, o pacote '''logic''' oferece uma solução mais elegante.
Como um exemplo disto, vamos usar o Maple para provar a identidade
[[File:imagemimagem2.png|200px]]
e formular nossas expressões usando operadores inertes.
<pre>with(logic): # don't forget to define 'bequal'.
== '''Cálculos e Explorações''' ==
 
<math>2^{2^{3}}</math>
Nesta seção, vamos olhar para Problemas 2 e 6 da seção de computações e explorações do texto, e ver como podemos usar Maple para resolver alguns deles.
== '''Exercícios e Projetos''' ==
 
 
01) Use o Maple para verificar a Lei DeMorgan e as leis de comutatividade e associatividade:
 
.: Leis de DeMorgan :.
 
Equivalent(`&not`(`&or`(A, B)), `&and`(`&not`(A), `&not`(B)));
true
Equivalent(`&not`(`&and`(A, B)), `&or`(`&not`(A), `&not`(B)));
true
 
.: Comutatividade :.
 
Equivalent(`&and`(A, B), `&and`(B, A));
true
Equivalent(`&or`(A, B), `&or`(B, A));
true
 
.: Associatividade :.
 
exp1 := `&and`(A, `&and`(B, C));
exp2 := `&and`(`&and`(A, B), C);
Equivalent(exp1, exp2);
true
 
exp3 := `&or`(A, `&or`(B, C));
exp4 := `&or`(`&or`(A, B), C);
Equivalent(exp3, exp4);
true
 
 
02) Use Maple para construir as tabelas verdades para cada um dos seguintes pares de expressões booleanas.
 
 
a) a -> b and b -> a
with(Logic):
TruthTable(((a &implies b)&and(b &implies a)), [a,b], output = Matrix);
 
table([
(true, true) = true,
(false, true) = false,
(false, false) = true,
(true, false) = false ])
 
b) a -> ¬b and b -> ¬a
with(Logic):
TruthTable(`&and`(`&implies`(a, `&not`(b)), `&implies`(b, `&not`(a))), [a, b], output = Matrix);
 
table([
(true, true) = false,
(false, true) = true,
(false, false) = true,
(true, false) = true ])
 
c) a + (b(¬c)) and (a + b +d)(a + c + d)
with(Logic):
TruthTable(`&and`(`&or`(a, `&and`(b, `&not`(c))), (`&or`(`&or`(a, b), c))*(a+c+d)), [a, b, c, d], output = Matrix);
 
table([
(false, false, true, true) = false,
(true, false, false, true) = false,
(false, false, false, false) = false,
(true, false, true, true) = false,
(false, false, false, true) = false,
(true, true, false, true) = false,
(false, false, true, false) = false,
(true, true, false, false) = false,
(true, false, false, false) = false,
(false, true, true, false) = false,
(true, true, true, true) = false,
(false, true, true, true) = false,
(true, true, true, false) = false,
(false, true, false, false) = false,
(true, false, true, false) = false,
(false, true, false, true) = false ])
 
== Referências ==
[http://www.mhhe.com/math/advmath/rosen/r5/student/ch10/maple.html Maple: Chapter 10. Boolean Algebra, Kenneth H. Rosen]
109

edits

Navigation menu