Conversion checking with e-graphs

neg_is_unique : [x: t, y: t, eq: x + y == zero] -> y == neg[x];
neg_is_unique = [x, y, _] ↦ {
  nx = neg[x];
  R.plus.assoc[nx, x, y];
  R.plus.unit[nx];
  R.plus.unit[y];
  R.plus.comm[nx, zero];
  R.plus.comm[y, zero];
  R.plus.isinv[x];
  R.plus.comm[x, nx];
  %dump "neg_is_unique.svg";
  @refl
};