  E-graphs are a data structure that compactly represents equivalent
expressions. They are constructed via the repeated application of rewrite
rules. Often in practical applications, conditional rewrite rules are crucial,
but their application requires the detection - at the time the e-graph is being
built - that a condition is valid in the domain of application. Detecting
condition validity amounts to proving a property of the program. Abstract
interpretation is a general method to learn such properties, traditionally used
in static analysis tools. We demonstrate that abstract interpretation and
e-graph analysis naturally reinforce each other through a tight integration
because (i) the e-graph clustering of equivalent expressions induces natural
precision refinement of abstractions and (ii) precise abstractions allow the
application of deeper rewrite rules (and hence potentially even greater
precision). We develop the theory behind this intuition and present an exemplar
interval arithmetic implementation, which we apply to the FPBench suite.
