http://www.mathacademy.com/pr/prime/...orem/index.asp is a clear example of Cantor's theorem as a proof by contradiction, which leads to contradiction if one tries to define mapping between an explicit P(S) member and S member, because of the construction rules of the explicit P(S) member (the member of S must be AND can't be a member of the explicit P(S) member, according to the construction rules of the explicit P(S) member, under Cantor's theorem).

Also since |P(S)| is not less than |S| (because it is trivial to show that all S members (for example {a,b,c,d,...}) are at least mapped with {{a},{b},{c},{d},...} P(S) members), then by using this fact and the contradiction shown above, one must conclude that P(S) is a larger set than S.

----------------------------------------------

But this is not the only way to look at this case, for example, we are using Cantor's construction method to systematically and explicitly define P(S) members, for example:

By using the trivial mapping between {a,b,c,d,...} S members and {{a},{b},{c},{d},...} P(S) members, we explicitly define P(S) member {}.

Also by using the mapping between {a,b,c,d,...} S members and {{},{a},{b},{c},...} P(S) members, we explicitly define P(S) member {a,b,c,d,...}.

Actually by using Cantor's construction method independently of Cantor's theorem, we are able to explicitly define the all P(S) members between {} and {a,b,c,d,...}.

As a result, there is a bijection between S and P(S) members, as follows:

a ↔ {}
b ↔ {a,b,c,d,...}
c ↔ some explicit P(S) member, which is different than the previous mapped P(S) members

...