Second attempt. Let me know what you think.
1. You have a finite set of binary strings.
2. Each binary string consists of an infinite number of random bits. For example: ...1011.
3. An oracle can reduce a set of binary strings under xor in O( 1 ) time. For example: {...1101, ...0100, ...0111} → ...1101 ⊕ ...0100 ⊕ ...0111 → ...1110.
4. You are asked to find a subset that the oracle can reduce to x.
5. This problem is NP-complete because it’s hard to find a solution but easy to verify a solution.
6. If x = a ⊕ b ⊕ c ⊕ ..., you can determine one of the unknown variables (x, a, b, c, etc) if and only if you know all others, presuming the bits are actually random. This is a well known property of xor and often used in cyphers.
7. Because of that, even if you know x, it is impossible to select a, b, c, etc from a set of objects without also knowing their values beforehand. The only way to find them is through trial and error.
8. Using the oracle, trial and error has a worse case time of O( 2^n ), where n is the number of elements in the finite set. This is exponential and not polynomial.
9. Therefore, P ≠ NP.
0x51B4908DdCD986A41e2f8522BB5B68E563A358De