((c and d) and (a xor b)) or ((a and b) and (c xor d)) truth table