XOR

11

ile parantez içinde hareket etme z*a + z*b + z*c + ... + z*y gibi ürünlerin toplamı olsaydı,faktörü, bu köşeli parantez içindedışında hareket edebilirdi.XOR

Çoğaltma yerine bitwise XOR kullanılıyorsa, aynı hile yapmanın nasıl mümkün olabileceğini bilmek isterim. z^a + z^b + ... z^y -> z^(a + b + ... + y)

Belki de a, b, c ..., mantıksal olarak olumsuzlanmış veya başka bir şey gibi, eklemeden önce ön işleme tabi tutulmalıdır? z değişebilir, bu nedenle ön işlem, gerekiyorsa, belirli z değerine bağlı olmamalıdır. Wikipedia itibaren

+3

AFAIK XOR, modulo 2^32'ye göre dağıtıcı değildir, dolayısıyla bunu yapamazsınız. – harold

+0

Bir y'yi XOR ile z ile ön işlemden geçirme, z'yi tamamen devre dışı bırakmaktan daha yavaş olmayacaktır. Bir CPU için önemsiz bir işlem. –

+1

Güzel bir matematik prova alıştırması gibi geliyor: "F_z (x)" işlevinin olmadığını ispatlayın, öyle ki "x_i için" z (z^x_i) = z^Σ f_z (x_i) ". – MSalters

cevap

6

:

Distributivity: hayır ikili işlevi ile, hatta kendisiyle

Yani, hayır, ne yazık ki XOR böyle bir şey yapamaz.