When we have to evaluate complex expressions in which appear operators of different types, we have to take into account the various precedences:
Example:
a+2 == 3*b || !trovato && c < a/3 is equivalent to
((a+2) == (3*b)) || ((!trovato) && (c < (a/3)))