Details

Time bar (total: 1.5m)

sample88.0ms

Algorithm
intervals
Results
72.0ms447×body80valid

simplify256.0ms

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

prune18.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 7.4b

localize31.0ms

Local error

Found 2 expressions with local error:

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

rewrite182.0ms

Algorithm
rewrite-expression-head
Rules
17×*-un-lft-identity
16×add-sqr-sqrt
15×associate-*r*
add-cube-cbrt
distribute-lft-out
pow1 add-cbrt-cube associate-*l* add-exp-log
distribute-rgt1-in
distribute-rgt-out
expm1-log1p-u distribute-lft1-in pow-prod-down associate-*l/ prod-exp associate-*r/ *-commutative cbrt-unprod insert-posit16 log1p-expm1-u add-log-exp unswap-sqr
distribute-rgt-in distribute-lft-in flip3-+ flip3-- flip-+ flip--
Counts
2 → 57
Calls
2 calls:
Slowest
134.0ms
(* (- (* x.re (+ x.re (+ x.re x.re))) (* x.im x.im)) x.im)
46.0ms
(* x.re (+ x.re (+ x.re x.re)))

series146.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
110.0ms
(* (- (* x.re (+ x.re (+ x.re x.re))) (* x.im x.im)) x.im)
36.0ms
(* x.re (+ x.re (+ x.re x.re)))

simplify8.5s

Counts
65 → 63
Calls
65 calls:
Slowest
818.0ms
(* (* (* (- (* x.re (+ x.re (+ x.re x.re))) (* x.im x.im)) (- (* x.re (+ x.re (+ x.re x.re))) (* x.im x.im))) (- (* x.re (+ x.re (+ x.re x.re))) (* x.im x.im))) (* (* x.im x.im) x.im))
519.0ms
(* (- (* (* x.re (+ x.re (+ x.re x.re))) (* x.re (+ x.re (+ x.re x.re)))) (* (* x.im x.im) (* x.im x.im))) x.im)
400.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))
384.0ms
(* x.re (- (* x.re x.re) (* (+ x.re x.re) (+ x.re x.re))))
381.0ms
(- (* 3 (* x.im (pow x.re 2))) (pow x.im 3))

prune557.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 7.3b

localize51.0ms

Local error

Found 4 expressions with local error:

7.4b
(* (- (* 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))

rewrite104.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
41.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
29.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
25.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
7.0ms
(+ (* x.re x.im) (* x.im x.re))

series237.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
93.0ms
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
76.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)
38.0ms
(+ (* x.re x.im) (* x.im x.re))
30.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify19.7s

Counts
97 → 93
Calls
97 calls:
Slowest
1.9s
(* (+ (* (* 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)))
540.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)))
524.0ms
(* (* (+ (* x.re x.im) (* x.im x.re)) (+ (* x.re x.im) (* x.im x.re))) (+ (* x.re x.im) (* x.im x.re)))
511.0ms
(+ (* (* x.re x.im) (* x.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re))))
457.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.im)

prune905.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 0.1b

localize50.0ms

Local error

Found 4 expressions with local error:

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

rewrite149.0ms

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

series221.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
72.0ms
(+ (* (* x.im (+ x.re x.im)) (- x.re x.im)) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
69.0ms
(* (* x.im (+ x.re x.im)) (- x.re x.im))
49.0ms
(* x.im (+ x.re x.im))
30.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify43.9s

Counts
210 → 167
Calls
210 calls:
Slowest
1.3s
(* (* (- x.re x.im) (+ x.re x.im)) (- (* x.re x.im) (* x.im x.re)))
819.0ms
(+ (* (* (* x.im (- (* x.re x.re) (* x.im x.im))) (- (* x.re x.re) (* x.im x.im))) (- (* x.re x.im) (* x.im x.re))) (* (* (- x.re x.im) (+ x.re x.im)) (* (- (* (* x.re x.im) (* x.re x.im)) (* (* x.im x.re) (* x.im x.re))) x.re)))
745.0ms
(* (cbrt (* (* x.im (+ x.re x.im)) (- x.re x.im))) (cbrt (* (* x.im (+ x.re x.im)) (- x.re x.im))))
732.0ms
(* (+ (* x.re x.re) (+ (* x.im x.im) (* x.re x.im))) (- (* x.re x.im) (* x.im x.re)))
607.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.6s

Pruning

14 alts after pruning (13 fresh and 1 done)

Merged error: 0.0b

localize25.0ms

Local error

Found 4 expressions with local error:

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

rewrite62.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
10×*-un-lft-identity
pow1 add-cbrt-cube add-exp-log add-cube-cbrt
associate-*r*
associate-*l* add-log-exp
expm1-log1p-u insert-posit16 log1p-expm1-u
flip3-+ flip-+
pow-prod-down associate-*l/ prod-exp associate-*r/ *-commutative cbrt-unprod unswap-sqr
distribute-rgt-in +-commutative sum-log fma-def distribute-lft-in fma-udef distribute-lft-out
Counts
4 → 75
Calls
4 calls:
Slowest
24.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)
21.0ms
(* x.im (+ x.re x.im))
16.0ms
(+ (* x.re x.im) (* x.im x.re))
1.0ms
(fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))

series249.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
137.0ms
(fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))
48.0ms
(* x.im (+ x.re x.im))
38.0ms
(+ (* x.re x.im) (* x.im x.re))
26.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.re)

simplify11.6s

Counts
89 → 87
Calls
89 calls:
Slowest
685.0ms
(* (* (fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re)) (fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re))) (fma (* x.im (+ x.re x.im)) (- x.re x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re)))
629.0ms
(* (- (* (* x.re x.im) (* x.re x.im)) (* (* x.im x.re) (* x.im x.re))) x.re)
536.0ms
(* (* (+ (* x.re x.im) (* x.im x.re)) (+ (* x.re x.im) (* x.im x.re))) (+ (* x.re x.im) (* x.im x.re)))
488.0ms
(+ (* (* x.re x.im) (* x.re x.im)) (- (* (* x.im x.re) (* x.im x.re)) (* (* x.re x.im) (* x.im x.re))))
452.0ms
(* x.im (- (* x.re x.re) (* x.im x.im)))

prune879.0ms

Pruning

14 alts after pruning (12 fresh and 2 done)

Merged error: 0.0b

regimes190.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.8s

Algorithm
intervals
Results
2.0s14490×body80valid