My answer is similar to the one of Dave Tweed, meaning that I put it on a more formal level. I obviously answered later, but I decided to nevertheless post it since someone may find this approach interesting.
fPn∈Ny1,…,ynyi∈{0,1}i=1,…,n.
We have that P(y1,…,yn)∈{0,1} and consider the following two sets of Boolean values for the n-dimensional Boolean vector (y1,…,yn)
YY¯={(y1,…,yn)∈{0,1}n|P(y1,…,yn)=1}={(y1,…,yn)∈{0,1}n|P(y1,…,yn)=0}
These set are a partition of the full set of values the input Boolean vector can assume, i.e. Y∪Y¯={0,1}n and Y∩Y¯=∅ (the empty set), thus
P(y1,…,yn)P′(y1,…,yn)={01if (y1,…,yn)∈Y¯if (y1,…,yn)∈Y⇕={10if (y1,…,yn)∈Y¯if (y1,…,yn)∈Y
therefore we always have
P+P′=1∀(y1,…,yn)∈{0,1}n