Details

Time bar (total: 45.1s)

sample88.0ms

Algorithm
intervals
Results
73.0ms452×body80valid

simplify300.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
300.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))

prune8.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 4.6b

localize26.0ms

Local error

Found 4 expressions with local error:

4.6b
(* (- (* x.re x.re) (* x.im x.im)) x.im)
0.1b
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
0.1b
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
0.0b
(+ (* x.re x.im) (* x.im x.re))

rewrite111.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt associate-*l/
pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt add-log-exp
associate-*l*
associate-*r*
flip3-+ flip-+
expm1-log1p-u frac-add insert-posit16 log1p-expm1-u
flip3-- flip--
+-commutative sum-log fma-def pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
difference-of-squares
Counts
4 → 81
Calls
4 calls:
Slowest
43.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
32.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
19.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
14.0ms
(+ (* x.re x.im) (* x.im x.re))

series233.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
100.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
75.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
36.0ms
(+ (* x.re x.im) (* x.im x.re))
22.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify9.0s

Counts
46 → 93
Calls
46 calls:
Slowest
1.6s
(* (+ (* (* x.re x.re) (* x.re x.re)) (+ (* (* x.im x.im) (* x.im x.im)) (* (* x.re x.re) (* x.im x.im)))) (- (* x.re x.im) (* x.im x.re)))
783.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
602.0ms
(+ (* (* (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))) x.im) (+ (* (* x.re x.im) (* x.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re))))) (* (+ (* x.re x.re) (* x.im x.im)) (* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.re)))
454.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
423.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)

prune828.0ms

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 0.0b

localize30.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (+ x.re x.im) (* (- x.re x.im) x.im))
0.1b
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
0.1b
(+ (* (+ x.re x.im) (* (- x.re x.im) x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
0.0b
(* (- x.re x.im) x.im)

rewrite166.0ms

Algorithm
rewrite-expression-head
Rules
44×associate-*l/
19×flip3-+ flip-+
16×frac-add
15×add-sqr-sqrt
13×pow1 *-un-lft-identity add-cbrt-cube add-exp-log
12×frac-times associate-*l*
10×flip3-- flip--
add-cube-cbrt
associate-*r*
associate-*r/ add-log-exp
pow-prod-down prod-exp cbrt-unprod
expm1-log1p-u insert-posit16 log1p-expm1-u
*-commutative
unswap-sqr
+-commutative sum-log fma-def distribute-lft-out distribute-lft-out-- difference-of-squares
Counts
4 → 109
Calls
4 calls:
Slowest
68.0ms
(+ (* (+ x.re x.im) (* (- x.re x.im) x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
43.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.im))
31.0ms
(* (- x.re x.im) x.im)
21.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

series307.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
123.0ms
(+ (* (+ x.re x.im) (* (- x.re x.im) x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
111.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.im))
46.0ms
(* (- x.re x.im) x.im)
27.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify19.5s

Counts
89 → 121
Calls
89 calls:
Slowest
1.2s
(* (* (- x.re x.im) (+ x.re x.im)) (- (* x.re x.im) (* x.im x.re)))
816.0ms
(* (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im))) (- (* x.re x.im) (* x.im x.re)))
608.0ms
(+ (* (* (- (* x.re x.re) (* x.im x.im)) (* (- x.re x.im) x.im)) (+ (* (* x.re x.im) (* x.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re))))) (* (- x.re x.im) (* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.re)))
591.0ms
(* (+ (pow x.re 3) (pow x.im 3)) (* (- (* x.re x.re) (* x.im x.im)) x.im))
574.0ms
(* (* (+ (* x.re x.re) (- (* x.im x.im) (* x.re x.im))) (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im)))) (+ (* (* x.re x.im) (* x.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re)))))

prune1.2s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 0.0b

localize43.0ms

Local error

Found 4 expressions with local error:

0.6b
(cbrt x.re)
0.6b
(cbrt x.re)
0.6b
(cbrt x.re)
0.5b
(* (cbrt x.re) (cbrt x.re))

rewrite10.0ms

Algorithm
rewrite-expression-head
Rules
25×cbrt-prod
23×add-sqr-sqrt
15×*-un-lft-identity add-cube-cbrt
11×pow1
pow1/3
swap-sqr associate-*r* associate-*l* add-exp-log
expm1-log1p-u add-cbrt-cube insert-posit16 log1p-expm1-u add-log-exp unswap-sqr
pow-prod-down pow-sqr pow-prod-up
pow2 pow-plus prod-exp *-commutative cbrt-unprod
Counts
4 → 85
Calls
4 calls:
Slowest
7.0ms
(* (cbrt x.re) (cbrt x.re))
1.0ms
(cbrt x.re)
1.0ms
(cbrt x.re)
1.0ms
(cbrt x.re)

series1.5s

Counts
4 → 12
Calls
4 calls:
Slowest
592.0ms
(cbrt x.re)
348.0ms
(* (cbrt x.re) (cbrt x.re))
305.0ms
(cbrt x.re)
246.0ms
(cbrt x.re)

simplify883.0ms

Counts
63 → 97
Calls
63 calls:
Slowest
146.0ms
(* (cbrt -1) (pow (* x.re -1) 1/3))
124.0ms
(* (pow (cbrt -1) 2) (pow (pow x.re 2) 1/3))
121.0ms
(* (cbrt -1) (pow (* x.re -1) 1/3))
117.0ms
(* (cbrt -1) (pow (* x.re -1) 1/3))
75.0ms
(* (* (cbrt (cbrt x.re)) (cbrt (cbrt x.re))) (* (cbrt (cbrt x.re)) (cbrt (cbrt x.re))))

prune1.1s

Pruning

13 alts after pruning (11 fresh and 2 done)

Merged error: 0.0b

localize39.0ms

Local error

Found 4 expressions with local error:

0.6b
(cbrt (+ x.re x.im))
0.6b
(cbrt (+ x.re x.im))
0.6b
(cbrt (+ x.re x.im))
0.5b
(* (cbrt (+ x.re x.im)) (cbrt (+ x.re x.im)))

rewrite42.0ms

Algorithm
rewrite-expression-head
Rules
36×cbrt-prod
35×*-un-lft-identity
23×add-sqr-sqrt
18×cbrt-div
15×add-cube-cbrt
11×pow1
flip3-+ pow1/3 swap-sqr flip-+ distribute-lft-out
associate-*r* associate-*l*
add-exp-log
expm1-log1p-u frac-times add-cbrt-cube insert-posit16 log1p-expm1-u add-log-exp unswap-sqr
pow-prod-down associate-*l/ associate-*r/ pow-sqr pow-prod-up
pow2 pow-plus prod-exp *-commutative cbrt-unprod
Counts
4 → 107
Calls
4 calls:
Slowest
32.0ms
(* (cbrt (+ x.re x.im)) (cbrt (+ x.re x.im)))
3.0ms
(cbrt (+ x.re x.im))
3.0ms
(cbrt (+ x.re x.im))
2.0ms
(cbrt (+ x.re x.im))

series790.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
222.0ms
(* (cbrt (+ x.re x.im)) (cbrt (+ x.re x.im)))
202.0ms
(cbrt (+ x.re x.im))
194.0ms
(cbrt (+ x.re x.im))
173.0ms
(cbrt (+ x.re x.im))

simplify4.6s

Counts
94 → 119
Calls
94 calls:
Slowest
411.0ms
(- (+ (pow x.im 2/3) (* 2/3 (* (pow (/ 1 x.im) 1/3) x.re))) (* 1/9 (* (pow (/ 1 (pow x.im 4)) 1/3) (pow x.re 2))))
351.0ms
(* (cbrt (+ (pow x.re 3) (pow x.im 3))) (cbrt (+ (pow x.re 3) (pow x.im 3))))
344.0ms
(* (cbrt (+ (pow x.re 3) (pow x.im 3))) (cbrt (+ x.re x.im)))
205.0ms
(- (+ (* 1/3 (* (pow (/ 1 (pow x.im 2)) 1/3) x.re)) (pow x.im 1/3)) (* 1/9 (* (pow (/ 1 (pow x.im 5)) 1/3) (pow x.re 2))))
200.0ms
(* (cbrt (+ (pow x.re 3) (pow x.im 3))) (cbrt (- (* x.re x.re) (* x.im x.im))))

prune1.4s

Pruning

12 alts after pruning (9 fresh and 3 done)

Merged error: 0.0b

regimes143.0ms

Accuracy

0% (0.2b remaining)

Error of 0.2b against oracle of 0.1b and baseline of 0.2b

bsearch2.0ms

end0.0ms

sample2.9s

Algorithm
intervals
Results
2.5s14305×body80valid