SProduct.evaluate optimisation where product has discrete observations