Brackets are used specify the order of evaluation, just as in maths. 5 * 2 + 3 is 13 because multiplication takes precedence over addition, but if you wanted the addition first you'd write 5 * (2 + 3) which is 25.

It's the same with Boolean algebra. NOT A AND NOT B is the same as (NOT A) AND (NOT B), because NOT takes precedence, so NOT (A AND NOT B) just means that you want the inverse of A AND (NOT B).

To show that the two expressions are not equivalent basically this means that you must draw out the truth table for both. I find it easier to build it up with multiple columns rather than to try and work it all out for each line, so if the first column is A, the second B, the third NOT A, the fourth NOT B and the fifth the AND of the third and fourth, i.e. (NOT A) AND (NOT B), we get the following:

Code:

A B !A !B (!A . !B)
0 0 1 1 1
0 1 1 0 0
1 0 0 1 0
1 1 0 0 0

So do the same for NOT (A AND NOT B). Make the first two columns A and B, the third NOT B (just invert the second), the fourth A AND NOT B (so AND the 1st and 3rd) and the fifth the inverse of the fourth.