You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
How could we prevent the need to manually make considerations for rewrites that are "sensitive" to client-based relationships?
We have some rewrites like #1116 that, when applied, would effectively perform the same computations more than once and potentially take away from the benefits of the rewrites themselves. Currently, we use some hard and fast number-of-clients checks, but, naturally, taking into account all the relevant considerations isn't that simple; plus, the need to perform those checks manually is a bit cumbersome, especially when/if they can be automated to some degree.
Of course some sort of utility/cost can be applied based on the relative shapes/sizes of the terms involved, but can we effectively apply this as another layer/pass/check that applies more generally? I'm not a big fan of the backtracking currently used by the in-placing rewrites, so let's consider something else in this context.
N.B. My current assumption is that this will be much more reasonable when we start doing something closer to Equality Saturation (e.g. after #1165 and related e-graph changes).
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
How could we prevent the need to manually make considerations for rewrites that are "sensitive" to client-based relationships?
We have some rewrites like #1116 that, when applied, would effectively perform the same computations more than once and potentially take away from the benefits of the rewrites themselves. Currently, we use some hard and fast number-of-clients checks, but, naturally, taking into account all the relevant considerations isn't that simple; plus, the need to perform those checks manually is a bit cumbersome, especially when/if they can be automated to some degree.
Of course some sort of utility/cost can be applied based on the relative shapes/sizes of the terms involved, but can we effectively apply this as another layer/pass/check that applies more generally? I'm not a big fan of the backtracking currently used by the in-placing rewrites, so let's consider something else in this context.
N.B. My current assumption is that this will be much more reasonable when we start doing something closer to Equality Saturation (e.g. after #1165 and related e-graph changes).
Beta Was this translation helpful? Give feedback.
All reactions