Details

Time bar (total: 1.6m)

sample74.0ms

Algorithm
intervals
Results
58.0ms476×body80valid

simplify392.0ms

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

prune9.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 5.7b

localize42.0ms

Local error

Found 4 expressions with local error:

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

rewrite127.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-sub insert-posit16 log1p-expm1-u
flip3-+ flip-+
sub-neg fma-neg diff-log prod-diff pow-prod-down prod-exp *-commutative cbrt-unprod difference-of-squares unswap-sqr
Counts
4 → 86
Calls
4 calls:
Slowest
49.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
44.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
25.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
8.0ms
(- (* x.re x.re) (* x.im x.im))

series213.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
73.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
60.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
49.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
32.0ms
(- (* x.re x.re) (* x.im x.im))

simplify9.3s

Counts
52 → 98
Calls
52 calls:
Slowest
1.5s
(* (+ (* (* 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)))
579.0ms
(- (* (* (- (* (* x.re x.re) (* x.re x.re)) (* (* x.im x.im) (* x.im x.im))) x.re) (+ (* (* 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.im)))
520.0ms
(fma (- x.im) (+ (* x.re x.im) (* x.im x.re)) (* x.im (+ (* x.re x.im) (* x.im x.re))))
371.0ms
(* (- (pow (* x.re x.re) 3) (pow (* x.im x.im) 3)) x.re)
370.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))

prune952.0ms

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 0.1b

localize23.0ms

Local error

Found 4 expressions with local error:

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

rewrite205.0ms

Algorithm
rewrite-expression-head
Rules
44×associate-*l/
18×flip3-+ flip-+
16×frac-sub
15×add-sqr-sqrt
13×pow1 *-un-lft-identity add-cbrt-cube add-exp-log
12×frac-times associate-*l*
11×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
sub-neg fma-neg diff-log prod-diff distribute-lft-out distribute-lft-out-- difference-of-squares
Counts
4 → 111
Calls
4 calls:
Slowest
75.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.re))
58.0ms
(- (* (+ x.re x.im) (* (- x.re x.im) x.re)) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
38.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
32.0ms
(* (- x.re x.im) x.re)

series269.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
91.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.re))
86.0ms
(- (* (+ x.re x.im) (* (- x.re x.im) x.re)) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
62.0ms
(* (- x.re x.im) x.re)
30.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)

simplify21.8s

Counts
91 → 123
Calls
91 calls:
Slowest
1.1s
(* (* (- x.re x.im) (+ x.re x.im)) (- (* x.re x.im) (* x.im x.re)))
869.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* x.im (+ (* x.re x.im) (* x.im x.re)))))
826.0ms
(- (* (* (+ (pow x.re 3) (pow x.im 3)) (* (- (pow x.re 3) (pow x.im 3)) x.re)) (- (* x.re x.im) (* x.im x.re))) (* (* (+ (* 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.im)))
824.0ms
(- (* (* (- (* x.re x.re) (* x.im x.im)) (* (- (pow x.re 3) (pow x.im 3)) x.re)) (- (* x.re x.im) (* x.im x.re))) (* (* (- 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.im)))
810.0ms
(* (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im))) (- (* x.re x.im) (* x.im x.re)))

prune1.3s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 0.0b

localize38.0ms

Local error

Found 4 expressions with local error:

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

rewrite57.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
10×*-un-lft-identity
pow1 add-cbrt-cube associate-*l* add-exp-log add-cube-cbrt
associate-*r* add-log-exp
expm1-log1p-u associate-*l/ insert-posit16 log1p-expm1-u
flip3-+ pow-prod-down prod-exp *-commutative cbrt-unprod flip-+ unswap-sqr
+-commutative sum-log fma-def flip3-- fma-udef flip-- distribute-lft-out-- difference-of-squares
Counts
4 → 74
Calls
4 calls:
Slowest
27.0ms
(* (- x.re x.im) x.re)
21.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
8.0ms
(+ (* x.re x.im) (* x.im x.re))
0.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))

series227.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
111.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))
49.0ms
(* (- x.re x.im) x.re)
44.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
23.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify3.7s

Counts
36 → 86
Calls
36 calls:
Slowest
417.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
414.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
369.0ms
(* (- (pow x.re 3) (pow x.im 3)) x.re)
357.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
340.0ms
(* (* (* (- x.re x.im) (- x.re x.im)) (- x.re x.im)) (* (* x.re x.re) x.re))

prune895.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 0.0b

localize80.0ms

Local error

Found 4 expressions with local error:

18.8b
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
18.8b
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
18.8b
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
0.3b
(* (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))

rewrite258.0ms

Algorithm
rewrite-expression-head
Rules
176×associate-*l/
168×cbrt-div
148×frac-times
63×flip3-+ flip3-- flip-+ flip--
50×associate-*r/
11×pow1
10×add-sqr-sqrt
pow1/3
*-un-lft-identity add-cube-cbrt
cbrt-prod
add-exp-log
expm1-log1p-u add-cbrt-cube swap-sqr associate-*r* associate-*l* insert-posit16 log1p-expm1-u add-log-exp
pow-prod-down pow-sqr pow-prod-up
pow2 pow-plus prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 174
Calls
4 calls:
Slowest
115.0ms
(* (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))
46.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
44.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
43.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))

series696.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
186.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
181.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
179.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
151.0ms
(* (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))

simplify48.8s

Counts
213 → 186
Calls
213 calls:
Slowest
991.0ms
(cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- (* x.re x.re) (* x.im x.im)) x.re)))
971.0ms
(* (cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- (* x.re x.re) (* x.im x.im)) x.re))) (cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- (* x.re x.re) (* x.im x.im)) x.re))))
916.0ms
(* (cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- (* x.re x.re) (* x.im x.im)) x.re))) (cbrt (* (+ x.re x.im) (* (- (* x.re x.re) (* x.im x.im)) x.re))))
892.0ms
(* (cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))
731.0ms
(* (cbrt (* (+ x.re x.im) (* (- (* x.re x.re) (* x.im x.im)) x.re))) (cbrt (* (- (* x.re x.re) (* x.im x.im)) (* (- (* x.re x.re) (* x.im x.im)) x.re))))

prune2.8s

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 0.0b

regimes171.0ms

Accuracy

0% (0.2b remaining)

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

bsearch9.0ms

end0.0ms

sample2.9s

Algorithm
intervals
Results
2.6s14475×body80valid