Some properties of bitwise operations seem very classical, but I had no idea of them until the first time I met them. Here are some examples: (^
is for bitwose XOR)
a+b = a&b + a|b
if a^b^c = 0, then (a-k)^(b-k)^(c-k)!=0 forall 0<k<=min(a,b,c)
a^b >= a-b (got it from uva12716 GCD XOR)
a+b = (a^b) + 2(a&b) (1451E1 - Битовые запросы (упрощенная версия))
There are countless blogs discussing the most basic properties like "a=b^c and b=a^c implies c=a^b", or tricks like "enumerate subsets with bitwise operations" and "swap two values without a third variable". But I didn't find what I need.
Can you give me a list of these special properties of bitwise operations? Or tell me that there's no need to know about them, everyone just derive them through the basic ones in a contest.