是否可以簡化(a + b)xor(c + b)? b對最終結果的貢獻是什麼? 請注意,我將算術運算與布爾代數混合,xor是按位獨佔的或位於相應的位上,而+是8位上的標準加法,在飛越時會迴繞。 a,b,c是無符號字符;簡化(a + b)XOR(c + b)
回答
我們可以使用SMT解算器來測試我們的假設,即您的公式可以被簡化。您可以前往http://rise4fun.com:
x = BitVec('x', 8)
y = BitVec('y', 8)
z = BitVec('z', 8)
print simplify((x + z)^(y + z))
和結果,anticlimactically是:
x + z^y + z
這意味着你的公式不能進一步簡化。
我在這個問題中沒有看到任何假設! –
這個結果沒有意義'x + z^y + z'。原始和是圍繞'x'和'y'對稱的,而結果不是。 –
@SalvadorDali:如果您考慮Python運算符優先級(Z3使用的優先級):https://docs.python.org/3/reference/expressions.html#index-77 –
- 1. 簡化布爾表達式(a *'b *'c)+('a *'b * c)+('a * b *'c)+(a *'b * c)
- 2. 從{a-b,b-c,c-a}改變爲{(a,b),(b,c),(c,a)}?
- 3. 簡化ATAN(TAN(A + B))
- 4. PHP變換陣列'a','b','c'到'a/b/c','a/b','a'
- 5. 測試X = A,B或C
- 6. 輸入(a + b)** 2,輸出a * a + a * b + b * a + b * b
- 7. 是否可以微優化「x = max(a,b); y = min(a,b);??
- 8. 哪些措施來簡化這個(A + B)(A +!B)=一
- 9. Python a,b = b,a + b
- 10. 性能的 「X IN(A,B)」 與 「X = A或x = B」
- 11. 邏輯:是(A &&!(B || C))|| (B || C)與(A || B || C)相同?
- 12. Javascript語法:a!= b &&(c = b)
- 13. 爲什麼var c =「a」|| 「b」返回c =「a」和var c =「a」&&「b」返回c =「b」?
- 14. FLOW3 Doctrine2 :: SELECT b,count(b)FROM(SELECT a,b FROM x \ y \ z GROUP BY a)GROUP BY b
- 15. 混合兩個矢量:[a a]和[b b] to [a b a b]
- 16. JAVA:String [] name = {'a','b','x'}和String name [] = {'a','b','x'};
- 17. 如何結合指數? (x ** a)** b => x **(a * b)?
- 18. 如何寫A :: B :: C => D給定A :: B :: C和(A,B,C)=> D?
- 19. 我想從['a','b','c']將python列表變成['a','a','b',b','c','c']
- 20. 如果A和B是單子,如何將A [B [C]]轉換爲B [A [C]]?
- 21. 簡化正則表達式 「AB | A | B」
- 22. A→B,B→A類協會
- 23. (A && B)與(A和B)
- 24. GROUP BY(A,B)和(B,A)
- 25. 下推自動機(a^x b a^y c a^x + y)
- 26. 列表[[ 'A'],[ 'B']轉化爲[ '一個', 'B']
- 27. PHP破滅A,B,C和X他人
- 28. C/C++:A(* eval(A(* function)(B),B b))(){...}可能嗎? (可能預C++ 11)
- 29. Lapack解決A * X = B'
- 30. Regular grammar - a * b * c *
不太可能,因爲異或是純粹的按位,而加法會影響相鄰的位。 –