Details

Time bar (total: 10.6s)

analyze5.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%49.7%50.3%0
0%49.7%50.3%1
0%49.7%50.3%2
24.8%24.8%50.3%3
37.3%12.4%50.3%4
43.5%6.2%50.3%5
46.6%3.1%50.3%6
48.1%1.6%50.3%7
48.9%0.8%50.3%8
49.3%0.4%50.3%9
49.5%0.2%50.3%10
49.6%0.1%50.3%11
49.6%0%50.3%12
49.7%0%50.3%13
49.7%0%50.3%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample9.0s (84.8%)

Results
7.0s4207×body2048valid
1.2s1970×body1024valid
346.0ms1050×body512valid
192.0ms219×body4096valid
174.0ms545×body256valid
37.0ms265×body128valid
Compiler

Compiled 41 to 31 computations (24.4% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
15×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11112
21712
32512
43512
55312
69012
712412
816912
920512
1023112
1123312
Stop Event
saturated
Counts
1 → 2

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
59.7b
Counts
3 → 1
Alt Table
StatusErrorProgram
59.7b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))
Compiler

Compiled 35 to 26 computations (25.7% saved)

localize5.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (tan.f64 x))
5.0b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

series27.0ms (0.3%)

Counts
2 → 24
Calls

2 calls:

17.0ms
(/.f64 1 (tan.f64 x))
10.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

rewrite55.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
823×expm1-log1p-u_binary64
592×prod-diff_binary64
126×egg-rr
82×add-sqr-sqrt_binary64
78×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0718
116118
2234318
Stop Event
node limit
Counts
2 → 126
Calls

2 calls:

52.0ms
(/.f64 1 (tan.f64 x))
52.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

simplify35.0ms (0.3%)

Algorithm
egg-herbie
Rules
650×fma-neg_binary64
496×cancel-sign-sub-inv_binary64
490×associate-*l*_binary64
352×fma-def_binary64
351×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033281
193281
2228279
3671275
41792275
54640275
Stop Event
node limit
Counts
150 → 144

prune72.0ms (0.7%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1422144
Fresh000
Picked101
Done000
Total1432145
Error
0.3b
Counts
145 → 2
Alt Table
StatusErrorProgram
0.3b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 1/3 x))))
0.5b
(*.f64 x (fma.f64 x (*.f64 x 1/45) 1/3))
Compiler

Compiled 2979 to 1857 computations (37.7% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/4725 (pow.f64 x 7))
0.1b
(*.f64 1/45 (pow.f64 x 3))
0.1b
(*.f64 2/945 (pow.f64 x 5))
0.3b
(*.f64 1/3 x)

series11.0ms (0.1%)

Counts
4 → 0
Calls

4 calls:

3.0ms
(*.f64 1/4725 (pow.f64 x 7))
3.0ms
(*.f64 2/945 (pow.f64 x 5))
3.0ms
(*.f64 1/45 (pow.f64 x 3))
1.0ms
(*.f64 1/3 x)

rewrite51.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
622×log-prod_binary64
266×expm1-udef_binary64
266×log1p-udef_binary64
224×log-pow_binary64
157×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01625
134025
2357725
Stop Event
node limit
Counts
4 → 64
Calls

4 calls:

50.0ms
(*.f64 1/4725 (pow.f64 x 7))
50.0ms
(*.f64 1/45 (pow.f64 x 3))
50.0ms
(*.f64 2/945 (pow.f64 x 5))
50.0ms
(*.f64 1/3 x)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
64 → 64

prune87.0ms (0.8%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New59564
Fresh101
Picked011
Done000
Total60666
Error
0.2b
Counts
66 → 6
Alt Table
StatusErrorProgram
0.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3))) (*.f64 1/3 x))))
38.2b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (cbrt.f64 (pow.f64 (*.f64 1/3 x) 3)))))
46.8b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (sqrt.f64 (*.f64 (*.f64 x x) 1/9)))))
35.1b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (sqrt.f64 (*.f64 1/3 x)) 2))))
1.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3))))
0.3b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 1/3 x))))
Compiler

Compiled 1889 to 1569 computations (16.9% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/4725 (pow.f64 x 7))
0.1b
(*.f64 2/945 (pow.f64 x 5))
0.3b
(*.f64 1/3 x)
2.4b
(log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3)))

series270.0ms (2.6%)

Counts
1 → 12
Calls

1 calls:

270.0ms
(log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3)))

rewrite31.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
630×log1p-expm1-u_binary64
630×expm1-log1p-u_binary64
309×log-prod_binary64
129×expm1-udef_binary64
129×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
087
11667
217967
Stop Event
node limit
Counts
1 → 41
Calls

1 calls:

30.0ms
(log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3)))

simplify67.0ms (0.6%)

Algorithm
egg-herbie
Rules
728×sqr-pow_binary64
438×associate-*l*_binary64
362×unswap-sqr_binary64
313×pow-sqr_binary64
256×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0684
11584
23284
35784
411684
531584
6114384
7182884
8191584
9204884
10220684
11243684
12275884
13317984
14367984
15427484
16499684
Stop Event
node limit
Counts
53 → 41

prune107.0ms (1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New89089
Fresh044
Picked011
Done011
Total89695
Error
0.2b
Counts
95 → 6
Alt Table
StatusErrorProgram
0.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3))) (*.f64 1/3 x))))
38.2b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (cbrt.f64 (pow.f64 (*.f64 1/3 x) 3)))))
46.8b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (sqrt.f64 (*.f64 (*.f64 x x) 1/9)))))
35.1b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (sqrt.f64 (*.f64 1/3 x)) 2))))
1.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3))))
0.3b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 1/3 x))))
Compiler

Compiled 2590 to 2148 computations (17.1% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 2/945 (pow.f64 x 5))
0.3b
(*.f64 1/3 x)
0.6b
(cbrt.f64 (*.f64 1/3 x))
0.7b
(pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3)

series98.0ms (0.9%)

Counts
2 → 24
Calls

2 calls:

59.0ms
(pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3)
38.0ms
(cbrt.f64 (*.f64 1/3 x))

rewrite36.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
487×log1p-expm1-u_binary64
487×expm1-log1p-u_binary64
439×unpow-prod-down_binary64
247×log-prod_binary64
139×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
114110
2137710
Stop Event
node limit
Counts
2 → 104
Calls

2 calls:

35.0ms
(cbrt.f64 (*.f64 1/3 x))
35.0ms
(pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3)

simplify62.0ms (0.6%)

Algorithm
egg-herbie
Rules
828×sqr-pow_binary64
416×unswap-sqr_binary64
388×pow-sqr_binary64
332×cube-prod_binary64
240×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013152
127152
244152
381152
4198152
5609152
6904152
71549152
81662152
91827152
102045152
112378152
122837152
133437152
144193152
Stop Event
node limit
Counts
128 → 107

prune138.0ms (1.3%)

Pruning

15 alts after pruning (12 fresh and 3 done)

PrunedKeptTotal
New1309139
Fresh033
Picked011
Done022
Total13015145
Error
0.1b
Counts
145 → 15
Alt Table
StatusErrorProgram
1.6b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (cbrt.f64 1/3) (*.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 2))))))
0.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (log.f64 (pow.f64 (exp.f64 1/45) (pow.f64 x 3))) (*.f64 1/3 x))))
1.6b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 1/3)))))
38.2b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (cbrt.f64 (pow.f64 (*.f64 1/3 x) 3)))))
1.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (cbrt.f64 (*.f64 1/3 x)) (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 2)))))
46.8b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (sqrt.f64 (*.f64 (*.f64 x x) 1/9)))))
1.9b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (*.f64 (cbrt.f64 1/3) (cbrt.f64 x)) 3))))
35.1b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (sqrt.f64 (*.f64 1/3 x)) 2))))
35.0b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 1/3)))))
1.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 3))))
0.3b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 1/3 x))))
2.7b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/3 x))) 3) 3))))
2.4b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/3 x))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 2))) 3))))
35.6b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (pow.f64 (*.f64 (cbrt.f64 (*.f64 1/3 x)) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 1/3 x)) 2))) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/3 x))) 3/2)))))
1.5b
(+.f64 (*.f64 2/945 (pow.f64 x 5)) (+.f64 (*.f64 1/4725 (pow.f64 x 7)) (+.f64 (*.f64 1/45 (pow.f64 x 3)) (*.f64 (*.f64 1/3 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x)))))
Compiler

Compiled 4518 to 3748 computations (17% saved)

regimes55.0ms (0.5%)

Accuracy

Total 0.2b remaining (59.2%)

Threshold costs 0.2b (59.2%)

Counts
24 → 1
Compiler

Compiled 1164 to 956 computations (17.9% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01931
12631
Stop Event
saturated

end329.0ms (3.1%)

Compiler

Compiled 462 to 382 computations (17.3% saved)

Profiling

Loading profile data...