However, what we also get is that the return value squared is equal to x, and we get this because Daikon has an appropriate pattern for that, namely a pattern where the multiplication of any two variables equals a third variable, and this is instantiated with a return value, again with a return value and with x and this pattern then holds for all runs-- at least for all runs with integer numbers. 