Details

Time bar (total: 11.0s)

analyze5.0ms (0%)

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.1s (82.4%)

Results
7.0s4135×body2048valid
1.4s2061×body1024valid
355.0ms1078×body512valid
196.0ms227×body4096valid
111.0ms513×body256valid
31.0ms242×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
14×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11112
21712
32512
43312
55112
67612
79312
811012
912012
1012412
1112612
1211212

prune5.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
60.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
60.0b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))
Compiler

Compiled 27 to 21 computations (22.2% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.6b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

series11.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

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

rewrite56.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
279×times-frac_binary64
230×add-sqr-sqrt_binary64
222×*-un-lft-identity_binary64
206×add-cube-cbrt_binary64
182×prod-diff_binary64
Counts
1 → 239
Calls

1 calls:

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

simplify216.0ms (2%)

Algorithm
egg-herbie
Rules
437×fma-def_binary64
387×fma-neg_binary64
371×unsub-neg_binary64
338×distribute-rgt-in_binary64
285×associate-*l*_binary64
Counts
251 → 251
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01528557
13244800
28033343
324373343
441693343
548663343
648053343

prune179.0ms (1.6%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New2501251
Fresh000
Picked101
Done000
Total2511252
Error
0.3b
Counts
252 → 1
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))))
Compiler

Compiled 9671 to 6065 computations (37.3% saved)

localize12.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.1b
(*.f64 1/45 (pow.f64 x 3))
0.3b
(*.f64 1/3 x)

series12.0ms (0.1%)

Counts
4 → 0
Calls

4 calls:

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

rewrite20.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
35×add-sqr-sqrt_binary64
29×associate-*r*_binary64
21×add-exp-log_binary64
16×*-un-lft-identity_binary64
16×add-cube-cbrt_binary64
Counts
4 → 107
Calls

4 calls:

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

simplify79.0ms (0.7%)

Algorithm
egg-herbie
Rules
666×fma-def_binary64
544×unswap-sqr_binary64
387×*-commutative_binary64
328×log-prod_binary64
309×associate-/l*_binary64
Counts
107 → 137
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01791082
13301006
2780993
31238993
42384939
54485939
64911939

prune168.0ms (1.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1307137
Fresh000
Picked011
Done000
Total1308138
Error
0.2b
Counts
138 → 8
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))))
30.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 (sqrt.f64 (*.f64 1/3 x)) (sqrt.f64 (*.f64 1/3 x))))))
39.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)) (cbrt.f64 (*.f64 (*.f64 (*.f64 1/3 x) (*.f64 1/3 x)) (*.f64 1/3 x))))))
30.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 (*.f64 1/3 (sqrt.f64 x)) (sqrt.f64 x)))))
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)))))
0.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)) (*.f64 (sqrt.f64 1/3) (*.f64 (sqrt.f64 1/3) x)))))
39.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 (*.f64 (*.f64 (*.f64 1/3 1/3) 1/3) (*.f64 (*.f64 x x) 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 (*.f64 (cbrt.f64 (*.f64 1/3 x)) (cbrt.f64 (*.f64 1/3 x))) (cbrt.f64 (*.f64 1/3 x))))))
Compiler

Compiled 4051 to 3282 computations (19% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 2/945 (pow.f64 x 5))
0.1b
(*.f64 1/45 (pow.f64 x 3))
0.4b
(*.f64 (sqrt.f64 1/3) (*.f64 (sqrt.f64 1/3) x))
0.4b
(*.f64 (sqrt.f64 1/3) x)

series11.0ms (0.1%)

Counts
2 → 12
Calls

2 calls:

8.0ms
(*.f64 (sqrt.f64 1/3) (*.f64 (sqrt.f64 1/3) x))
3.0ms
(*.f64 (sqrt.f64 1/3) x)

rewrite11.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
12×associate-*l*_binary64
11×add-sqr-sqrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
Counts
2 → 47
Calls

2 calls:

5.0ms
(*.f64 (sqrt.f64 1/3) (*.f64 (sqrt.f64 1/3) x))
4.0ms
(*.f64 (sqrt.f64 1/3) x)

simplify74.0ms (0.7%)

Algorithm
egg-herbie
Rules
981×fma-def_binary64
332×associate-*l*_binary64
332×unswap-sqr_binary64
263×associate-*r/_binary64
234×associate-*l/_binary64
Counts
59 → 59
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
057459
1121420
2338419
3628411
4824411
51265411
63215411
74671411
84933411

prune184.0ms (1.7%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1317138
Fresh246
Picked101
Done011
Total13412146
Error
0.1b
Counts
146 → 12
Alt Table
StatusErrorProgram
0.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)) (*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2))))))
39.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 (sqrt.f64 1/3) (cbrt.f64 (pow.f64 (*.f64 (sqrt.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))))
30.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 (sqrt.f64 (*.f64 1/3 x)) (sqrt.f64 (*.f64 1/3 x))))))
0.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 (sqrt.f64 1/3) (*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (sqrt.f64 (sqrt.f64 1/3)) x))))))
30.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)) (*.f64 (sqrt.f64 1/3) (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/3) x)) (sqrt.f64 (*.f64 (sqrt.f64 1/3) x)))))))
39.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 (sqrt.f64 1/3) (cbrt.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 1/3) (sqrt.f64 1/3)) (sqrt.f64 1/3)) (*.f64 (*.f64 x x) 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 (sqrt.f64 1/3) (*.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/3) x)) (cbrt.f64 (*.f64 (sqrt.f64 1/3) x))) (cbrt.f64 (*.f64 (sqrt.f64 1/3) x)))))))
0.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 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (sqrt.f64 1/3) x))))))
30.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 (*.f64 1/3 (sqrt.f64 x)) (sqrt.f64 x)))))
39.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 (*.f64 (*.f64 (*.f64 1/3 1/3) 1/3) (*.f64 (*.f64 x x) 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 (*.f64 (cbrt.f64 (*.f64 1/3 x)) (cbrt.f64 (*.f64 1/3 x))) (cbrt.f64 (*.f64 1/3 x))))))
Compiler

Compiled 4869 to 4084 computations (16.1% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 2/945 (pow.f64 x 5))
0.1b
(*.f64 1/45 (pow.f64 x 3))
0.2b
(*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2)))
0.4b
(*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2))

series24.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

16.0ms
(*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2))
8.0ms
(*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2)))

rewrite17.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
17×add-exp-log_binary64
16×add-sqr-sqrt_binary64
13×sqrt-prod_binary64
12×associate-*l*_binary64
11×associate-*r*_binary64
Counts
2 → 58
Calls

2 calls:

7.0ms
(*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2))
7.0ms
(*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2)))

simplify69.0ms (0.6%)

Algorithm
egg-herbie
Rules
564×associate-/r/_binary64
560×associate-/l/_binary64
541×fma-def_binary64
480×*-commutative_binary64
276×sqr-pow_binary64
Counts
82 → 85
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0951147
1190997
2602971
3873779
41358728
52345713
64971713

prune227.0ms (2.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1613164
Fresh7310
Picked101
Done011
Total1697176
Error
0b
Counts
176 → 7
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 (sqrt.f64 1/3) (*.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/3) x)) (cbrt.f64 (*.f64 (sqrt.f64 1/3) x))) (cbrt.f64 (*.f64 (sqrt.f64 1/3) x)))))))
0.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 (sqrt.f64 (sqrt.f64 (*.f64 (cbrt.f64 1/3) (cbrt.f64 1/3)))) (*.f64 (sqrt.f64 (sqrt.f64 (cbrt.f64 1/3))) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2)))))))
0.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)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 1/3))) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 1/3))) (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/2)))))))
0.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 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (sqrt.f64 1/3) x))))))
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.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 (sqrt.f64 (sqrt.f64 1/3)) (*.f64 (*.f64 x (pow.f64 (sqrt.f64 1/3) 3/4)) (pow.f64 (sqrt.f64 (sqrt.f64 1/3)) 3/2))))))
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 (*.f64 (cbrt.f64 (*.f64 1/3 x)) (cbrt.f64 (*.f64 1/3 x))) (cbrt.f64 (*.f64 1/3 x))))))
Compiler

Compiled 5699 to 4869 computations (14.6% saved)

regimes329.0ms (3%)

Accuracy

Total 0.3b remaining (96%)

Threshold costs 0.3b (96%)

Counts
136 → 1
Compiler

Compiled 8056 to 6872 computations (14.7% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01931
12631
22631

end189.0ms (1.7%)

Compiler

Compiled 277 to 237 computations (14.4% saved)

Profiling

Loading profile data...