let arithmetic_coerce e1 t = 
  let e1 = arithmetic_coerce e1 t in
  try
    fold_constants e1
  with
    NotConstant -> e1