Não, MUST em uma superclasse não pode ser substituído por MAY em uma subclasse. Um objeto de uma subclasse de person ainda deve ser um person válido. Se você não quiser que cn seja necessário, você terá que escolher uma superclasse diferente.