Details

Time bar (total: 7.9m)

sample70.0ms

Algorithm
intervals
Results
56.0ms471×body80valid

simplify440.0ms

Calls
1 calls:
Slowest
440.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))

prune19.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 4.0b

localize45.0ms

Local error

Found 4 expressions with local error:

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

rewrite1.2s

Algorithm
rewrite-expression-head
Rules
1827×associate-*l*
1816×add-sqr-sqrt
1209×*-un-lft-identity
1149×prod-diff
629×difference-of-squares
612×*-commutative
393×swap-sqr
381×associate-*r*
358×add-cube-cbrt
352×unswap-sqr
283×distribute-lft-out
188×distribute-lft-out--
174×distribute-rgt-out
57×fma-neg
12×associate-*l/
pow1 add-cbrt-cube add-exp-log add-log-exp
flip3-- flip--
expm1-log1p-u frac-sub insert-posit16 log1p-expm1-u
flip3-+ flip-+
sub-neg diff-log pow-prod-down prod-exp cbrt-unprod
Calls
4 calls:
Slowest
919.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
107.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
65.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
42.0ms
(- (* x.re x.re) (* x.im x.im))

series218.0ms

Calls
4 calls:
Slowest
73.0ms
(* (- (* x.re x.re) (* x.im x.im)) x.re)
66.0ms
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im))
41.0ms
(- (* x.re x.re) (* x.im x.im))
38.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)

simplify7.7m

Calls
2517 calls:
Slowest
992.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.im x.re)))
964.0ms
(fma (+ x.re x.im) (* (- x.re x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))
824.0ms
(fma (- (+ (* x.re x.im) (* x.im x.re))) x.im (* (+ (* x.re x.im) (* x.im x.re)) x.im))
803.0ms
(fma (- (* x.re x.re) (* x.im x.im)) x.re (- (* (* (+ (* x.re 1) x.re) x.im) x.im)))
775.0ms
(fma (- (* (+ x.im (* x.im 1)) x.im)) x.re (* (* (+ x.im (* x.im 1)) x.im) x.re))

prune7.7s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize14.0ms

Local error

Found 4 expressions with local error:

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

rewrite72.0ms

Algorithm
rewrite-expression-head
Rules
32×add-sqr-sqrt
30×sqrt-prod
26×*-un-lft-identity
23×associate-*l*
22×pow1
16×add-cube-cbrt
12×sqrt-pow1
11×associate-*r* *-commutative
10×rem-sqrt-square
swap-sqr
add-cbrt-cube add-exp-log distribute-lft-out
unswap-sqr
expm1-log1p-u distribute-rgt-out insert-posit16 log1p-expm1-u add-log-exp
pow-prod-down
pow2 pow-plus pow1/2 associate-*l/ pow-sqr pow-prod-up
flip3-+ prod-exp cbrt-unprod flip-+ fma-udef
Calls
4 calls:
Slowest
59.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
6.0ms
(sqrt (* x.re x.re))
6.0ms
(sqrt (* x.re x.re))
0.0ms
(fma (+ (sqrt (* x.re x.re)) x.im) (* (- (sqrt (* x.re x.re)) x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))

series128.0ms

Calls
4 calls:
Slowest
81.0ms
(fma (+ (sqrt (* x.re x.re)) x.im) (* (- (sqrt (* x.re x.re)) x.im) x.re) (- (* (+ (* x.re x.im) (* x.im x.re)) x.im)))
31.0ms
(* (+ (* x.re x.im) (* x.im x.re)) x.im)
8.0ms
(sqrt (* x.re x.re))
8.0ms
(sqrt (* x.re x.re))

simplify1.5s

Calls
63 calls:
Slowest
230.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
229.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
225.0ms
(- (pow x.re 3) (* 3 (* (pow x.im 2) x.re)))
164.0ms
(* (+ (pow (* x.re x.im) 3) (pow (* x.im x.re) 3)) x.im)
150.0ms
(* (- (* (* x.re x.im) (* x.re x.im)) (* (* x.im x.re) (* x.im x.re))) x.im)

prune932.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize13.0ms

Local error

Found 4 expressions with local error:

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

rewrite1.1s

Algorithm
rewrite-expression-head
Rules
2576×associate-*r*
2145×*-un-lft-identity
1935×add-sqr-sqrt
1428×prod-diff
1364×distribute-lft-out
1297×associate-*l*
743×add-cube-cbrt
602×unswap-sqr
466×distribute-rgt-out
465×*-commutative
302×distribute-lft1-in
214×swap-sqr
182×distribute-rgt1-in
37×fma-def
28×fma-neg
20×pow1
12×difference-of-squares
11×add-cbrt-cube add-exp-log add-log-exp
10×+-commutative associate-+l+
distribute-rgt-in distribute-lft-in associate--r+
pow-prod-up
expm1-log1p-u pow-prod-down prod-exp cbrt-unprod insert-posit16 log1p-expm1-u distribute-lft-out--
sum-log
flip3-+ cube-unmult associate-*r/ flip-+
pow2 sub-neg pow-plus flip3-- diff-log pow-sqr flip--
Calls
4 calls:
Slowest
729.0ms
(- (* x.re (* x.re x.re)) (* x.im (+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im))))
225.0ms
(* x.im (+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im)))
102.0ms
(+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im))
17.0ms
(* x.re (* x.re x.re))

series465.0ms

Calls
4 calls:
Slowest
377.0ms
(- (* x.re (* x.re x.re)) (* x.im (+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im))))
33.0ms
(+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im))
32.0ms
(* x.re (* x.re x.re))
22.0ms
(* x.im (+ (+ (* x.re x.im) (* x.re x.im)) (* x.re x.im)))