### Steps To Reproduce ```sage sage: A.<x,y> = QQ[] sage: K = A.fraction_field() sage: d = { x/y: 0 } sage: d[K(2*x, 2*y)] Traceback (most recent call last): ... KeyError: 2*x/(2*y) ``` ### Expected Behavior `(2*x)/(2*y)` is equal to `x/y`, so `d[K(2*x, 2*y)]` should return `0`. ### Actual Behavior The reason why it fails is that `x/y` and `(2*x)/(2*y)` differ in their hash though they are considered as equal by equality test.