The Danger of Strong Pre-conditions:
The strongest possible precondition is:
Sinecure 1: {False} A {Q}
{P} = {False} can never be satisfied
=> A has no responsibility whatsoever.
Q is a don’t-care post-condition.
(Meyer: If you ever see such an ad, don’t bother reading post-condition Q; take the job right away :-)
An A which satisfies weaker pre-conditions will handle a wider range of initial conditions (and thus impose fewer constraints on its client).