Details

Time bar (total: 13.4s)

analyze554.0ms (4.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
12.5%87.4%0.1%4
62.4%37.5%0.1%5
62.4%37.5%0.1%6
62.4%31.2%6.3%7
62.4%31.2%6.3%8
62.4%28.1%9.5%9
62.4%28.1%9.5%10
62.4%26.5%11%11
62.4%26.5%11%12
62.4%25.8%11.8%13
62.4%25.8%11.8%14
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample174.0ms (1.3%)

Algorithm
intervals
Results
77.0ms140×body1024valid
23.0ms64×body1024invalid
21.0ms62×body512valid
9.0ms40×body512invalid
7.0ms10×body2048valid
6.0ms75×body128invalid
5.0ms27×body256valid
3.0ms21×body256invalid
1.0ms17×body128valid
Compiler

Compiled 29 to 23 computations (20.7% saved)

simplify72.0ms (0.5%)

Algorithm
egg-herbie
Rules
635×unswap-sqr_binary64
444×times-frac_binary64
365×distribute-rgt-neg-in_binary64
359×neg-mul-1_binary64
346×neg-sub0_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01118
12318
24918
310118
419318
538818
677718
7137018
8311618
9395118
10479318

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
43.2b
Counts
1 → 1
Alt Table
StatusErrorProgram
43.2b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 26 to 20 computations (23.1% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(sin.f64 re)
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
5.9b
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite104.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
43.1b
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
cancel-sign-sub-inv_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
3 → 53
Calls

3 calls:

8.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
4.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
1.0ms
(sin.f64 re)
Compiler

Compiled 981 to 323 computations (67.1% saved)

series51.0ms (0.4%)

Error
0.1b
Counts
3 → 20
Calls

3 calls:

27.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
7.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
5.0ms
(sin.f64 re)
Compiler

Compiled 796 to 557 computations (30% saved)

simplify81.0ms (0.6%)

Algorithm
egg-herbie
Rules
907×times-frac_binary64
444×*-commutative_binary64
264×distribute-rgt-in_binary64
238×unsub-neg_binary64
212×distribute-lft-in_binary64
Counts
73 → 50
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01601424
14291232
213851200
332321200
449691200

prune24.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New47350
Fresh000
Picked101
Done000
Total48351
Error
0.1b
Counts
51 → 3
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
43.9b
(*.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (sin.f64 re) 3))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
44.9b
(*.f64 (*.f64 (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
Compiler

Compiled 685 to 347 computations (49.3% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 1/2520 (pow.f64 im 7))
0.1b
(*.f64 1/60 (pow.f64 im 5))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
0.1b
(*.f64 1/3 (pow.f64 im 3))

rewrite201.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
32×add-sqr-sqrt_binary64
29×associate-*r*_binary64
24×add-exp-log_binary64
15×*-un-lft-identity_binary64
15×add-cube-cbrt_binary64
Counts
4 → 113
Calls

4 calls:

11.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
5.0ms
(*.f64 1/3 (pow.f64 im 3))
4.0ms
(*.f64 1/2520 (pow.f64 im 7))
4.0ms
(*.f64 1/60 (pow.f64 im 5))
Compiler

Compiled 3613 to 2819 computations (22% saved)

series105.0ms (0.8%)

Error
0.1b
Counts
4 → 21
Calls

4 calls:

55.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
15.0ms
(*.f64 1/2520 (pow.f64 im 7))
8.0ms
(*.f64 1/60 (pow.f64 im 5))
7.0ms
(*.f64 1/3 (pow.f64 im 3))
Compiler

Compiled 1568 to 1215 computations (22.5% saved)

simplify96.0ms (0.7%)

Algorithm
egg-herbie
Rules
509×distribute-rgt-in_binary64
381×associate-*r*_binary64
364×associate-*l*_binary64
354×cancel-sign-sub-inv_binary64
248×*-commutative_binary64
Counts
134 → 106
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03313232
17962950
228182801
352542801

prune122.0ms (0.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New997106
Fresh022
Picked011
Done000
Total9910109
Error
0.1b
Counts
109 → 10
Alt Table
StatusErrorProgram
1.4b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
43.9b
(*.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (sin.f64 re) 3))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
21.9b
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60))) (*.f64 (pow.f64 im 14) -1/6350400))) (+.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
44.9b
(*.f64 (*.f64 (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
33.7b
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) 3))
0.4b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
32.6b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
43.9b
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (pow.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) 3) (pow.f64 (*.f64 (pow.f64 im 7) 1/2520) 3))) (+.f64 (*.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5)))) (+.f64 (*.f64 (*.f64 1/2520 (pow.f64 im 7)) (*.f64 1/2520 (pow.f64 im 7))) (*.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))))
26.1b
(*.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
Compiler

Compiled 3252 to 2556 computations (21.4% saved)

localize31.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
0.6b
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
0.6b
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))
0.6b
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))

rewrite322.0ms (2.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
25×cbrt-prod_binary64
23×add-sqr-sqrt_binary64
18×cbrt-div_binary64
15×*-un-lft-identity_binary64
15×add-cube-cbrt_binary64
Counts
4 → 87
Calls

4 calls:

18.0ms
(*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
7.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))
7.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
7.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))
Compiler

Compiled 8503 to 6948 computations (18.3% saved)

series279.0ms (2.1%)

Error
0.1b
Counts
4 → 34
Calls

4 calls:

64.0ms
(*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
44.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))
44.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))
43.0ms
(cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
Compiler

Compiled 6239 to 5291 computations (15.2% saved)

simplify228.0ms (1.7%)

Algorithm
egg-herbie
Rules
425×unswap-sqr_binary64
351×*-commutative_binary64
321×cancel-sign-sub-inv_binary64
148×associate-*r*_binary64
142×sub-neg_binary64
Counts
121 → 108
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02188173
14817797
213176504
333236211
449876211
548936211

prune266.0ms (2%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New1053108
Fresh268
Picked011
Done011
Total10711118
Error
0.0b
Counts
118 → 11
Alt Table
StatusErrorProgram
1.4b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
43.9b
(*.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (sin.f64 re) 3))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
21.9b
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60))) (*.f64 (pow.f64 im 14) -1/6350400))) (+.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
44.9b
(*.f64 (*.f64 (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
1.8b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))))
0.4b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
17.9b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (/.f64 (cbrt.f64 (-.f64 (*.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60))) (*.f64 1/6350400 (pow.f64 im 14)))) (cbrt.f64 (+.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
1.8b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
32.6b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
26.1b
(*.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
Compiler

Compiled 9088 to 7391 computations (18.7% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
14.5b
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
14.5b
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
14.5b
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))

rewrite312.0ms (2.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
20×associate-*r/_binary64
18×cbrt-div_binary64
11×pow1_binary64
10×add-sqr-sqrt_binary64
flip--_binary64
Counts
4 → 72
Calls

4 calls:

19.0ms
(*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
10.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
10.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
9.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
Compiler

Compiled 7696 to 6101 computations (20.7% saved)

series2.1s (15.3%)

Error
0.0b
Counts
4 → 44
Calls

4 calls:

736.0ms
(*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
534.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
374.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
295.0ms
(cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))
Compiler

Compiled 16794 to 13725 computations (18.3% saved)

simplify198.0ms (1.5%)

Algorithm
egg-herbie
Rules
408×distribute-rgt-in_binary64
315×associate-*r*_binary64
315×unswap-sqr_binary64
233×associate-*l*_binary64
177×*-commutative_binary64
Counts
116 → 103
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03049789
17799439
227178378
349778378

prune361.0ms (2.7%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New1003103
Fresh088
Picked011
Done022
Total10014114
Error
0.0b
Counts
114 → 14
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
2.1b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))) 6) 1) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
49.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (*.f64 2 (sin.f64 re)) 1/3) (pow.f64 im 1/3))))
1.8b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
1.4b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
43.9b
(*.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (sin.f64 re) 3))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
21.9b
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60))) (*.f64 (pow.f64 im 14) -1/6350400))) (+.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7))))
44.9b
(*.f64 (*.f64 (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
1.8b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))) (cbrt.f64 (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7)))))))
17.9b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (/.f64 (cbrt.f64 (-.f64 (*.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60))) (*.f64 1/6350400 (pow.f64 im 14)))) (cbrt.f64 (+.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 1/2520 (pow.f64 im 7))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
1.3b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520))))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (+.f64 (*.f64 1/60 (pow.f64 im 5)) (+.f64 (*.f64 1/3 (pow.f64 im 3)) (+.f64 (*.f64 1/2520 (pow.f64 im 7)) (*.f64 im 2)))) (sin.f64 re)))))
32.6b
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (-.f64 (-.f64 (-.f64 (*.f64 -2 im) (*.f64 1/3 (pow.f64 im 3))) (*.f64 1/60 (pow.f64 im 5))) (*.f64 1/2520 (pow.f64 im 7)))))
26.1b
(*.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (-.f64 (-.f64 (*.f64 im -2) (*.f64 1/3 (pow.f64 im 3))) (*.f64 (pow.f64 im 5) 1/60)) (*.f64 (pow.f64 im 7) 1/2520)))))
Compiler

Compiled 10061 to 7988 computations (20.6% saved)

regimes2.2s (16.1%)

Accuracy

Total 0.5b remaining (75.1%)

Threshold costs 0.5b (75.1%)

Compiler

Compiled 62414 to 50312 computations (19.4% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02439
14839
26839
38039
48939
59239
68939

end1.0ms (0%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

sample5.6s (41.5%)

Algorithm
intervals
Results
2.3s4199×body1024valid
747.0ms1940×body1024invalid
519.0ms1994×body512valid
226.0ms959×body512invalid
219.0ms2581×body128invalid
193.0ms211×body2048valid
158.0ms980×body256valid
75.0ms507×body256invalid
52.0ms616×body128valid
Compiler

Compiled 1026 to 834 computations (18.7% saved)

Profiling

Loading profile data...