One problem with using Q as defined in (4) is that it is not very suitable for use in an online setting.
if documents come in one at a time and we have to store each one, only for it to be retrieved at some later point, simply storing them and computing the inner product as in (4) would lead to frequent matrix-vector multiplications.