Average Error: 0.5 → 0.5
Time: 1.4m
Precision: 64
Internal Precision: 128
\[x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot \left(\frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 3\right) + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
\[\left(\left(x1 + \left(x1 \cdot \left(x1 \cdot x1\right) + \left(\left(\left(\left(x1 \cdot 2\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + x2 \cdot 2\right) - x1}{1 + x1 \cdot x1}\right) \cdot (\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(x2 \cdot 2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right) \cdot \left(x1 \cdot x1 - 1\right) + -3)_* + \left(x1 \cdot x1\right) \cdot (\left((x1 \cdot \left(3 \cdot x1\right) + \left(x2 \cdot 2 - x1\right))_*\right) \cdot \left(\frac{4}{(x1 \cdot x1 + 1)_*}\right) + -6)_*\right) \cdot \left(1 + x1 \cdot x1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + x2 \cdot 2\right) - x1}{1 + x1 \cdot x1}\right)\right)\right) + \frac{\left(\left(3 \cdot x1\right) \cdot x1 - x2 \cdot 2\right) - x1}{1 + x1 \cdot x1} \cdot 3\right) + x1\]

Error

Bits error versus x1

Bits error versus x2

Derivation

  1. Initial program 0.5

    \[x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot \left(\frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 3\right) + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  2. Using strategy rm
  3. Applied flip-+0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot \left(\frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{\color{blue}{\frac{\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) - 1 \cdot 1}{x1 \cdot x1 - 1}}} - 3\right) + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  4. Applied associate-/r/0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot \left(\color{blue}{\frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) - 1 \cdot 1} \cdot \left(x1 \cdot x1 - 1\right)} - 3\right) + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  5. Applied fma-neg0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot \color{blue}{(\left(\frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) - 1 \cdot 1}\right) \cdot \left(x1 \cdot x1 - 1\right) + \left(-3\right))_*} + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  6. Simplified0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot (\color{blue}{\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(2 \cdot x2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right)} \cdot \left(x1 \cdot x1 - 1\right) + \left(-3\right))_* + \left(x1 \cdot x1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  7. Using strategy rm
  8. Applied *-un-lft-identity0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot (\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(2 \cdot x2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right) \cdot \left(x1 \cdot x1 - 1\right) + \left(-3\right))_* + \left(x1 \cdot x1\right) \cdot \color{blue}{\left(1 \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)\right)}\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  9. Applied associate-*r*0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot (\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(2 \cdot x2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right) \cdot \left(x1 \cdot x1 - 1\right) + \left(-3\right))_* + \color{blue}{\left(\left(x1 \cdot x1\right) \cdot 1\right) \cdot \left(4 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1} - 6\right)}\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  10. Simplified0.5

    \[\leadsto x1 + \left(\left(\left(\left(\left(\left(\left(2 \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) \cdot (\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(2 \cdot x2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right) \cdot \left(x1 \cdot x1 - 1\right) + \left(-3\right))_* + \left(\left(x1 \cdot x1\right) \cdot 1\right) \cdot \color{blue}{(\left((x1 \cdot \left(x1 \cdot 3\right) + \left(2 \cdot x2 - x1\right))_*\right) \cdot \left(\frac{4}{(x1 \cdot x1 + 1)_*}\right) + -6)_*}\right) \cdot \left(x1 \cdot x1 + 1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right) + \left(x1 \cdot x1\right) \cdot x1\right) + x1\right) + 3 \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 - 2 \cdot x2\right) - x1}{x1 \cdot x1 + 1}\right)\]
  11. Final simplification0.5

    \[\leadsto \left(\left(x1 + \left(x1 \cdot \left(x1 \cdot x1\right) + \left(\left(\left(\left(x1 \cdot 2\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + x2 \cdot 2\right) - x1}{1 + x1 \cdot x1}\right) \cdot (\left(\frac{(3 \cdot \left(x1 \cdot x1\right) + \left(x2 \cdot 2\right))_* - x1}{(\left(x1 \cdot x1\right) \cdot \left(x1 \cdot x1\right) + -1)_*}\right) \cdot \left(x1 \cdot x1 - 1\right) + -3)_* + \left(x1 \cdot x1\right) \cdot (\left((x1 \cdot \left(3 \cdot x1\right) + \left(x2 \cdot 2 - x1\right))_*\right) \cdot \left(\frac{4}{(x1 \cdot x1 + 1)_*}\right) + -6)_*\right) \cdot \left(1 + x1 \cdot x1\right) + \left(\left(3 \cdot x1\right) \cdot x1\right) \cdot \frac{\left(\left(3 \cdot x1\right) \cdot x1 + x2 \cdot 2\right) - x1}{1 + x1 \cdot x1}\right)\right)\right) + \frac{\left(\left(3 \cdot x1\right) \cdot x1 - x2 \cdot 2\right) - x1}{1 + x1 \cdot x1} \cdot 3\right) + x1\]

Reproduce

herbie shell --seed 2019005 +o rules:numerics
(FPCore (x1 x2)
  :name "Rosa's FloatVsDoubleBenchmark"
  (+ x1 (+ (+ (+ (+ (* (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) (+ (* x1 x1) 1)) (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* (* x1 x1) x1)) x1) (* 3 (/ (- (- (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))))))

Details

Time bar (total: 1.4m)Debug log

sample657.0ms

Algorithm
intervals

simplify352.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

351.0ms
(+ x1 (+ (+ (+ (+ (* (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) (+ (* x1 x1) 1)) (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* (* x1 x1) x1)) x1) (* 3 (/ (- (- (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))))

prune52.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.5b

localize192.0ms

Local error

Found 4 expressions with local error:

9.8b
(fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))
5.6b
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
2.6b
(- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3))
1.3b
(/ 3 (/ (fma x1 x1 1) (* x1 x1)))

rewrite44.0ms

Algorithm
rewrite-expression-head
Counts
4 → 126
Calls

4 calls. Slowest were:

29.0ms
(- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3))
8.0ms
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
3.0ms
(fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))

series317.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

186.0ms
(fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))
57.0ms
(- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3))
37.0ms
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
36.0ms
(/ 3 (/ (fma x1 x1 1) (* x1 x1)))

simplify18.1s

Counts
132 → 138
Calls

132 calls. Slowest were:

600.0ms
(- (* (fma x1 (* 3 x1) (* x2 2)) (- (/ x1 (fma x1 x1 1)) 3)) (* (fma x1 x1 1) (- (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (* 3 3))))
505.0ms
(fma (- (+ (/ x1 (fma x1 x1 1)) 3)) 1 (* (+ (/ x1 (fma x1 x1 1)) 3) 1))
493.0ms
(fma (- (+ (/ x1 (fma x1 x1 1)) 3)) 1 (* (+ (/ x1 (fma x1 x1 1)) 3) 1))

prune4.8s

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 0.4b

localize104.0ms

Local error

Found 4 expressions with local error:

9.8b
(fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (/ (* (- (fma x1 (* x1 3) (* x2 2)) (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))) (+ -3 (/ x1 (fma x1 x1 1)))) (fma (fma x1 x1 1) -3 (/ x1 1))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))
5.6b
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
2.4b
(- (fma x1 (* x1 3) (* x2 2)) (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1))))
1.3b
(/ 3 (/ (fma x1 x1 1) (* x1 x1)))

rewrite10.0ms

Algorithm
rewrite-expression-head
Counts
4 → 84
Calls

4 calls. Slowest were:

4.0ms
(- (fma x1 (* x1 3) (* x2 2)) (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1))))
4.0ms
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
1.0ms
(/ 3 (/ (fma x1 x1 1) (* x1 x1)))

series327.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

208.0ms
(fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (/ (* (- (fma x1 (* x1 3) (* x2 2)) (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))) (+ -3 (/ x1 (fma x1 x1 1)))) (fma (fma x1 x1 1) -3 (/ x1 1))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))
62.0ms
(- (fma x1 (* x1 3) (* x2 2)) (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1))))
36.0ms
(* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1)))
21.0ms
(/ 3 (/ (fma x1 x1 1) (* x1 x1)))

simplify9.7s

Counts
58 → 96
Calls

58 calls. Slowest were:

431.0ms
(fma (sqrt (fma x1 (* x1 3) (* x2 2))) (sqrt (fma x1 (* x1 3) (* x2 2))) (- (* (sqrt (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))) (sqrt (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))))))
411.0ms
(fma (sqrt (fma x1 (* x1 3) (* x2 2))) (sqrt (fma x1 (* x1 3) (* x2 2))) (- (* (cbrt (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))) (* (cbrt (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1)))) (cbrt (fma (/ x1 (fma x1 x1 1)) (fma x1 x1 1) (* 3 (fma x1 x1 1))))))))
393.0ms
(* (- (* x2 2) x1) (/ 3 (/ (fma x1 x1 1) (* x1 x1))))

prune4.1s

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 0.4b

localize150.0ms

Local error

Found 4 expressions with local error:

5.6b
(* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))
5.6b
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))
3.5b
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
2.4b
(- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)

rewrite369.0ms

Algorithm
rewrite-expression-head
Counts
4 → 116
Calls

4 calls. Slowest were:

181.0ms
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
134.0ms
(- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)
31.0ms
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))

series413.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

230.0ms
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
72.0ms
(- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)
67.0ms
(* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))
43.0ms
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))

simplify15.9s

Counts
91 → 128
Calls

91 calls. Slowest were:

949.0ms
(+ (* (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 3 3))) (+ (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (+ (* 6 6) (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))) (* (+ (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) (* (* x1 x1) (- (pow (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 3) (pow 6 3)))))
724.0ms
(+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (- (pow (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) (pow 3 3))) (+ (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) (* (* (+ (* x1 x1) 1) (+ (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (+ (* 3 3) (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)))) (* (* x1 x1) (- (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* 6 6)))))
705.0ms
(+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (- (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 3 3))) (+ (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) (* (* (+ (* x1 x1) 1) (+ (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* 6 6)))))

prune3.3s

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 0.4b

localize59.0ms

Local error

Found 4 expressions with local error:

8.6b
(fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))
5.6b
(* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))
5.6b
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))
3.5b
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))

rewrite156.0ms

Algorithm
rewrite-expression-head
Counts
4 → 87
Calls

4 calls. Slowest were:

69.0ms
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
45.0ms
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))
39.0ms
(* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))

series456.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

291.0ms
(+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
64.0ms
(* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))
51.0ms
(fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))
49.0ms
(* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))

simplify8.8s

Counts
58 → 99
Calls

58 calls. Slowest were:

561.0ms
(+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))) (+ (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (+ (* 6 6) (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))) (* (+ (* x1 x1) 1) (* (* x1 x1) (- (pow (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 3) (pow 6 3)))))
421.0ms
(+ (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (+ (* 6 6) (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))
388.0ms
(+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (fma (/ (- (fma 3 (* x1 x1) (* 2 x2)) x1) (fma (* x1 x1) (* x1 x1) -1)) (- (* x1 x1) 1) (- 3))) (+ (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) (* (+ (* x1 x1) 1) (* (* x1 x1) (- (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* 6 6)))))

prune3.4s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.4b

regimes489.0ms

Accuracy

0% (0.1b remaining)

Error of 0.5b against oracle of 0.4b and baseline of 0.5b

bsearch16.0ms

end0.0ms

sample9.7s

Algorithm
intervals