Details

Time bar (total: 1.6m)

sample61.0ms

Algorithm
intervals
Results
50.0ms449×body80valid

simplify430.0ms

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

prune18.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 7.4b

localize50.0ms

Local error

Found 4 expressions with local error:

7.4b
(* (- (* x.re x.re) (* x.im x.im)) x.re)
0.1b
(* (+ (* 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.im) (* x.im x.re))

rewrite130.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*
expm1-log1p-u flip3-+ flip3-- frac-sub flip-+ insert-posit16 log1p-expm1-u flip--
pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
+-commutative sum-log sub-neg fma-def fma-neg diff-log prod-diff difference-of-squares
Counts
4 → 83
Calls
4 calls:
Slowest
49.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
34.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
29.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
16.0ms
(+ (* x.re x.im) (* x.im x.re))

series234.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
82.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
80.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
42.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
30.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify9.0s

Counts
48 → 95
Calls
48 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)))
644.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)))
490.0ms
(fma (- x.im) (+ (* x.re x.im) (* x.im x.re)) (* x.im (+ (* x.re x.im) (* x.im x.re))))
414.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
384.0ms
(* (+ (* (* 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.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re)))))

prune897.0ms

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 0.1b

localize37.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (+ x.re x.im) (* (- x.re x.im) x.re))
0.1b
(* (+ (* 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.im x.re))

rewrite591.0ms

Algorithm
rewrite-expression-head
Rules
42×associate-*l/
19×flip3-+ flip-+
16×frac-sub
12×frac-times
11×pow1 add-cbrt-cube add-exp-log
10×flip3-- flip--
add-sqr-sqrt *-un-lft-identity
add-log-exp
associate-*l* add-cube-cbrt
associate-*r/
expm1-log1p-u associate-*r* pow-prod-down prod-exp cbrt-unprod insert-posit16 log1p-expm1-u
*-commutative
+-commutative sum-log sub-neg fma-def fma-neg diff-log prod-diff distribute-lft-out unswap-sqr
Counts
4 → 101
Calls
4 calls:
Slowest
504.0ms
(- (* (+ x.re x.im) (* (- x.re x.im) x.re)) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
42.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.re))
28.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
14.0ms
(+ (* x.re x.im) (* x.im x.re))

series263.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
94.0ms
(- (* (+ x.re x.im) (* (- x.re x.im) x.re)) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
79.0ms
(* (+ x.re x.im) (* (- x.re x.im) x.re))
50.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
39.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify21.2s

Counts
80 → 113
Calls
80 calls:
Slowest
1.3s
(* (* (- x.re x.im) (+ x.re x.im)) (- (* x.re x.im) (* x.im x.re)))
877.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)))
812.0ms
(* (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im))) (- (* x.re x.im) (* x.im x.re)))
749.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)))
687.0ms
(* (- (* x.re x.re) (* x.im x.im)) (* (- x.re x.im) x.re))

prune1.1s

Pruning

15 alts after pruning (14 fresh and 1 done)

Merged error: 0.0b

localize54.0ms

Local error

Found 4 expressions with local error:

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

rewrite85.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
37.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
31.0ms
(* (- x.re x.im) x.re)
15.0ms
(+ (* x.re x.im) (* x.im x.re))
1.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))

series222.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
106.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))
50.0ms
(* (- x.re x.im) x.re)
44.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
21.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify3.3s

Counts
36 → 86
Calls
36 calls:
Slowest
394.0ms
(* (- (pow x.re 3) (pow x.im 3)) x.re)
348.0ms
(* (* (* (- x.re x.im) (- x.re x.im)) (- x.re x.im)) (* (* x.re x.re) x.re))
332.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
329.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
306.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))

prune1.2s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 0.0b

localize56.0ms

Local error

Found 4 expressions with local error:

13.6b
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
13.6b
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
13.6b
(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))))

rewrite206.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
105.0ms
(* (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))
35.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
29.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
28.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))

series733.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
201.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
189.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
182.0ms
(cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re)))
161.0ms
(* (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))

simplify49.6s

Counts
213 → 186
Calls
213 calls:
Slowest
894.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))))
874.0ms
(* (cbrt (* (+ x.re x.im) (* (- (* x.re x.re) (* x.im x.im)) x.re))) (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))
792.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))))
760.0ms
(sqrt (cbrt (* (+ x.re x.im) (* (- x.re x.im) x.re))))
683.0ms
(* (cbrt (* (+ (pow x.re 3) (pow x.im 3)) (* (- (* x.re x.re) (* x.im x.im)) x.re))) (cbrt (* (+ (pow x.re 3) (pow x.im 3)) (* (- (* x.re x.re) (* x.im x.im)) x.re))))

prune2.9s

Pruning

13 alts after pruning (11 fresh and 2 done)

Merged error: 0.0b

regimes171.0ms

Accuracy

0% (0.2b remaining)

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

bsearch4.0ms

end0.0ms

sample2.9s

Algorithm
intervals
Results
2.2s14431×body80valid