variables a b c d e f : Nat
rewrite_set simple
add_rewrite Nat::add_assoc Nat::add_comm Nat::add_left_comm Nat::distributer Nat::distributel : simple
(*
local opts   = options({"simplifier", "single_pass"}, true)
local t      = parse_lean("f + (c + f + d) + (e * (a + c) + (d + a))")
print(t)
for i = 1, 10 do
  local t2, pr = simplify(t, "simple", opts)
  print("i: " .. i .. " ====>")
  print(t2)
  if t == t2 then
    break
  end
  t = t2
end
*)

