Details

Time bar (total: 50.4s)

sample70.0ms

Algorithm
intervals
Results
56.0ms441×body80valid

simplify265.0ms

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

prune9.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 6.4b

localize30.0ms

Local error

Found 4 expressions with local error:

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

rewrite144.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
50.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
41.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
37.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
15.0ms
(+ (* x.re x.im) (* x.im x.re))

series236.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
98.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
81.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
34.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
22.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify8.0s

Counts
46 → 93
Calls
46 calls:
Slowest
1.4s
(* (+ (* (* 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)))
567.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)))
410.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
403.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
386.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)

prune838.0ms

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 0.1b

localize54.0ms

Local error

Found 4 expressions with local error:

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

rewrite114.0ms

Algorithm
rewrite-expression-head
Rules
36×prod-diff
35×add-sqr-sqrt
33×*-un-lft-identity
31×add-cube-cbrt
24×associate-*l/ associate-*r/
22×distribute-rgt-in associate-+l+ distribute-lft-in
20×flip3-+ flip-+
16×frac-add
12×frac-times
11×pow1 add-cbrt-cube add-exp-log
flip3-- flip--
associate-*r* add-log-exp
expm1-log1p-u sub-neg associate-*l* pow-prod-down prod-exp cbrt-unprod insert-posit16 log1p-expm1-u
+-commutative sum-log fma-def *-commutative
distribute-lft-out-- difference-of-squares unswap-sqr
Counts
4 → 144
Calls
4 calls:
Slowest
37.0ms
(+ (* (* x.im (+ x.re x.im)) (- x.re x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
35.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
32.0ms
(* (* x.im (+ x.re x.im)) (- x.re x.im))
7.0ms
(+ (* x.re x.im) (* x.im x.re))

series197.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
79.0ms
(* (* x.im (+ x.re x.im)) (- x.re x.im))
74.0ms
(+ (* (* x.im (+ x.re x.im)) (- x.re x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
22.0ms
(+ (* x.re x.im) (* x.im x.re))
22.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify29.0s

Counts
125 → 156
Calls
125 calls:
Slowest
1.4s
(* (* (- x.re x.im) (+ x.re x.im)) (- (* x.re x.im) (* x.im x.re)))
838.0ms
(* (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im))) (- (* x.re x.im) (* x.im x.re)))
648.0ms
(* (fma (- (sqrt x.im)) (sqrt x.im) (* (sqrt x.im) (sqrt x.im))) (* x.im (+ x.re x.im)))
563.0ms
(+ (* (* (* x.im (+ x.re 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))))) (* (+ x.re x.im) (* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.re)))
539.0ms
(+ (* (* (* 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))))) (* (- x.re x.im) (* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.re)))

prune1.6s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 0.0b

localize26.0ms

Local error

Found 3 expressions with local error:

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

rewrite27.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt add-log-exp
expm1-log1p-u associate-*r* associate-*l* insert-posit16 log1p-expm1-u
flip3-+ associate-*l/ flip-+
+-commutative sum-log fma-def pow-prod-down prod-exp *-commutative cbrt-unprod fma-udef unswap-sqr
Counts
3 → 49
Calls
3 calls:
Slowest
19.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
7.0ms
(+ (* x.re x.im) (* x.im x.re))
0.0ms
(fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))

series180.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
114.0ms
(fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
37.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
28.0ms
(+ (* x.re x.im) (* x.im x.re))

simplify2.6s

Counts
21 → 58
Calls
21 calls:
Slowest
416.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
411.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
409.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
317.0ms
(* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.re)
213.0ms
(* (- (* (* x.re x.im) (* x.re x.im)) (* (* x.im x.re) (* x.im x.re))) x.re)

prune583.0ms

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 0.0b

localize104.0ms

Local error

Found 4 expressions with local error:

58.5b
(fma (- (cbrt x.im)) (* (cbrt x.im) (cbrt x.im)) (* (cbrt x.im) (* (cbrt x.im) (cbrt x.im))))
0.6b
(cbrt x.im)
0.6b
(cbrt x.im)
0.6b
(cbrt x.im)

rewrite5.0ms

Algorithm
rewrite-expression-head
Rules
cbrt-prod
add-sqr-sqrt *-un-lft-identity add-cube-cbrt
expm1-log1p-u pow1 add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u add-log-exp
pow1/3
fma-udef
Counts
4 → 53
Calls
4 calls:
Slowest
1.0ms
(cbrt x.im)
1.0ms
(cbrt x.im)
1.0ms
(cbrt x.im)
1.0ms
(fma (- (cbrt x.im)) (* (cbrt x.im) (cbrt x.im)) (* (cbrt x.im) (* (cbrt x.im) (cbrt x.im))))

series2.1s

Counts
4 → 12
Calls
4 calls:
Slowest
1.2s
(fma (- (cbrt x.im)) (* (cbrt x.im) (cbrt x.im)) (* (cbrt x.im) (* (cbrt x.im) (cbrt x.im))))
334.0ms
(cbrt x.im)
304.0ms
(cbrt x.im)
243.0ms
(cbrt x.im)

simplify515.0ms

Counts
21 → 65
Calls
21 calls:
Slowest
131.0ms
(* (pow (* x.im -1) 1/3) (cbrt -1))
131.0ms
(* (pow (* x.im -1) 1/3) (cbrt -1))
110.0ms
(* (pow (* x.im -1) 1/3) (cbrt -1))
31.0ms
(pow (/ 1 x.im) -1/3)
27.0ms
(pow (/ 1 x.im) -1/3)

prune909.0ms

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 0.0b

regimes207.0ms

Accuracy

0% (0.2b remaining)

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

bsearch4.0ms

end0.0ms

sample2.5s

Algorithm
intervals
Results
2.3s14286×body80valid