Details

Time bar (total: 4.9s)

analyze16.0ms (0.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
50%50%0%4
50%50%0%5
75%25%0%6
96.8%3.1%0%7
98.4%1.6%0%8
99.2%0.8%0%9
99.6%0.4%0%10
99.8%0.2%0%11
99.9%0.1%0%12
Compiler

Compiled 175 to 47 computations (73.1% saved)

sample1.8s (37.3%)

Results
1.8s8209×body64valid
22.0ms47×body128valid

preprocess70.0ms (1.4%)

Algorithm
egg-herbie
Rules
755×unswap-sqr_binary64
705×fma-def_binary64
691×distribute-rgt-out_binary64
550×+-commutative_binary64
437×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046256
1133150
2590101
3327790
4528084
5613784
6666584
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
Outputs
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
(*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.f64 106015151/2500000000 (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))))))) (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2909738639/10000000000))) (*.f64 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)) 694555761/10000000000)) (*.f64 (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))) (*.f64 x x))) (+.f64 (*.f64 (*.f64 1665589/2000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)))) (*.f64 x x)) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))) (*.f64 x (*.f64 x (*.f64 x x)))))))))
(/.f64 (*.f64 x (fma.f64 1789971/10000000000 (*.f64 (*.f64 x (pow.f64 x 3)) (pow.f64 (*.f64 x x) 3)) (fma.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (fma.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3) (fma.f64 106015151/2500000000 (*.f64 x (pow.f64 x 3)) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (fma.f64 1789971/5000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 3)) (fma.f64 (*.f64 (*.f64 x (pow.f64 x 3)) (pow.f64 (*.f64 x x) 3)) 1665589/2000000000 (fma.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (fma.f64 (*.f64 x (pow.f64 x 3)) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))
(/.f64 (*.f64 x (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1)) (fma.f64 36322091/5000000000 (pow.f64 x 6) (*.f64 (pow.f64 (*.f64 x x) 4) (+.f64 2532017/5000000000 (*.f64 x (*.f64 x 1789971/10000000000))))))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 4) (+.f64 70002721/5000000000 (*.f64 x (*.f64 x 1665589/2000000000)))) (fma.f64 1789971/5000000000 (pow.f64 (pow.f64 x 4) 3) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) 1))))))
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
(*.f64 (/.f64 x (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))))
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
Compiler

Compiled 174 to 46 computations (73.6% saved)

simplify59.0ms (1.2%)

Algorithm
egg-herbie
Rules
755×unswap-sqr_binary64
705×fma-def_binary64
691×distribute-rgt-out_binary64
550×+-commutative_binary64
437×*-commutative_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046256
1133150
2590101
3327790
4528084
5613784
6666584
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
Outputs
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
(*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.f64 106015151/2500000000 (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))))))) (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2909738639/10000000000))) (*.f64 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)) 694555761/10000000000)) (*.f64 (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))) (*.f64 x x))) (+.f64 (*.f64 (*.f64 1665589/2000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x)))) (*.f64 x x)) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 x x) x))) (*.f64 x (*.f64 x (*.f64 x x)))))))))
(/.f64 (*.f64 x (fma.f64 1789971/10000000000 (*.f64 (*.f64 x (pow.f64 x 3)) (pow.f64 (*.f64 x x) 3)) (fma.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (fma.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3) (fma.f64 106015151/2500000000 (*.f64 x (pow.f64 x 3)) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (fma.f64 1789971/5000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 3)) (fma.f64 (*.f64 (*.f64 x (pow.f64 x 3)) (pow.f64 (*.f64 x x) 3)) 1665589/2000000000 (fma.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (fma.f64 (*.f64 x (pow.f64 x 3)) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))
(/.f64 (*.f64 x (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1)) (fma.f64 36322091/5000000000 (pow.f64 x 6) (*.f64 (pow.f64 (*.f64 x x) 4) (+.f64 2532017/5000000000 (*.f64 x (*.f64 x 1789971/10000000000))))))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 4) (+.f64 70002721/5000000000 (*.f64 x (*.f64 x 1665589/2000000000)))) (fma.f64 1789971/5000000000 (pow.f64 (pow.f64 x 4) 3) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) 1))))))
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
(*.f64 (/.f64 x (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))))
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))

prune8.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
27.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
27.0b
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
27.0b
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
Compiler

Compiled 704 to 277 computations (60.7% saved)

localize40.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 x x) (*.f64 x x))
0.2b
(*.f64 1049934947/10000000000 (*.f64 x x))
12.9b
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
26.5b
(/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))))

series9.0ms (0.2%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))))
1.0ms
x
@0
(/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))))
1.0ms
x
@inf
(*.f64 1049934947/10000000000 (*.f64 x x))
1.0ms
x
@inf
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
1.0ms
x
@-inf
(/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))))

rewrite74.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
512×pow1_binary64
508×add-cbrt-cube_binary64
506×add-cube-cbrt_binary64
506×add-exp-log_binary64
506×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046367
11071367
Stop Event
node limit
Counts
4 → 30
Calls
Call 1
Inputs
(/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))))
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
(*.f64 1049934947/10000000000 (*.f64 x x))
(*.f64 (*.f64 x x) (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (/.f64 1 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))) (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (sqrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))) (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))) (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))))
((#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 x x) 2)))))))

simplify54.0ms (1.1%)

Algorithm
egg-herbie
Rules
774×distribute-lft-out_binary64
612×fma-def_binary64
486×associate-*l/_binary64
479×associate-*l*_binary64
433×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
070534
1177532
2415528
31079528
44085528
56877528
Stop Event
node limit
Counts
78 → 62
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -833192009/1250000000 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2))))
(+.f64 1 (+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))))
(/.f64 1/2 (pow.f64 x 2))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))) (*.f64 1/2 (/.f64 1 (pow.f64 x 2))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4)))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(/.f64 1/2 (pow.f64 x 2))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))) (*.f64 1/2 (/.f64 1 (pow.f64 x 2))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4)))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
Outputs
1
(+.f64 1 (*.f64 -833192009/1250000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 -833192009/1250000000 (*.f64 x x)))
(fma.f64 -833192009/1250000000 (*.f64 x x) 1)
(fma.f64 x (*.f64 -833192009/1250000000 x) 1)
(+.f64 1 (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2))))
(+.f64 1 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (*.f64 -833192009/1250000000 (*.f64 x x))))
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (fma.f64 -833192009/1250000000 (*.f64 x x) 1))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1))
(fma.f64 x (*.f64 -833192009/1250000000 x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))))
(+.f64 1 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (*.f64 -833192009/1250000000 (*.f64 x x)))))
(+.f64 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4))) (fma.f64 -833192009/1250000000 (*.f64 x x) 1))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1)))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))) (*.f64 1/2 (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1/2 (*.f64 x x)))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1/2 (*.f64 x x))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))) (*.f64 1/2 (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1/2 (*.f64 x x)))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1/2 (*.f64 x x))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (/.f64 1/2 x))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (/.f64 1/2 x))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)

prune362.0ms (7.4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1224126
Fresh101
Picked101
Done000
Total1244128
Error
0b
Counts
128 → 4
Alt Table
StatusErrorProgram
27.0b
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))
34.0b
(/.f64 1/2 x)
28.7b
(*.f64 (+.f64 1 (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))) x)
27.0b
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 x 4) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
Compiler

Compiled 17812 to 5787 computations (67.5% saved)

localize35.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (*.f64 x x) 2)
0.1b
(pow.f64 (*.f64 x x) 3)
0.2b
(*.f64 1049934947/10000000000 (*.f64 x x))
26.6b
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))

series5.0ms (0.1%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@0
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))
1.0ms
x
@inf
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))
1.0ms
x
@inf
(pow.f64 (*.f64 x x) 3)
0.0ms
x
@0
(pow.f64 (*.f64 x x) 3)
0.0ms
x
@-inf
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))

rewrite60.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
519×pow1_binary64
516×add-log-exp_binary64
516×log1p-expm1-u_binary64
516×expm1-log1p-u_binary64
515×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046157
11093157
Stop Event
node limit
Counts
3 → 30
Calls
Call 1
Inputs
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))
(pow.f64 (*.f64 x x) 3)
(pow.f64 (*.f64 x x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))) (cbrt.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))) (cbrt.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))) (sqrt.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))) (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 x x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 x x) 3)) (sqrt.f64 (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 3) (pow.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 3/2) (pow.f64 (*.f64 x x) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 x x) 3)))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 x x) 2)) (cbrt.f64 (pow.f64 (*.f64 x x) 2))) (cbrt.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 x x) 2)) (sqrt.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 x x) 2)))))))

simplify92.0ms (1.9%)

Algorithm
egg-herbie
Rules
765×fma-def_binary64
569×associate-*l/_binary64
564×associate-/l*_binary64
520×sqr-pow_binary64
378×associate-*r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041282
1105282
2250282
3544282
41266282
52949282
65906282
76283282
86633282
97018282
107524282
Stop Event
node limit
Counts
66 → 46
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
Outputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 6)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)

prune672.0ms (13.7%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1633166
Fresh213
Picked101
Done000
Total1664170
Error
0b
Counts
170 → 4
Alt Table
StatusErrorProgram
28.9b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
27.0b
(pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)
34.0b
(/.f64 1/2 x)
27.0b
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
Compiler

Compiled 19553 to 11110 computations (43.2% saved)

localize36.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (*.f64 x x) 5)
0.1b
(pow.f64 (*.f64 x x) 2)
0.1b
(pow.f64 (*.f64 x x) 3)
26.6b
(/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))

series4.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))
1.0ms
x
@0
(/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))
1.0ms
x
@0
(pow.f64 (*.f64 x x) 5)
1.0ms
x
@inf
(pow.f64 (*.f64 x x) 5)
0.0ms
x
@-inf
(/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))

rewrite53.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
496×add-sqr-sqrt_binary64
470×add-log-exp_binary64
470×log1p-expm1-u_binary64
470×expm1-log1p-u_binary64
468×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044148
11011148
Stop Event
node limit
Counts
2 → 20
Calls
Call 1
Inputs
(/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))
(pow.f64 (*.f64 x x) 5)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))) (cbrt.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5)))))))))) (cbrt.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))) (sqrt.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5)))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5)))))))) (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))) (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 5))))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 x x) 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 x x) 5)) (cbrt.f64 (pow.f64 (*.f64 x x) 5))) (cbrt.f64 (pow.f64 (*.f64 x x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 x x) 5)) (sqrt.f64 (pow.f64 (*.f64 x x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 5) (pow.f64 x 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 5/2) (pow.f64 (*.f64 x x) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 x x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 5) (pow.f64 (*.f64 x x) 5)) (pow.f64 (*.f64 x x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x x)) 5))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 x x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 x x) 5)))))))

simplify88.0ms (1.8%)

Algorithm
egg-herbie
Rules
717×fma-def_binary64
533×times-frac_binary64
530×sqr-pow_binary64
494×unswap-sqr_binary64
413×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039234
1100234
2230234
3499234
41050234
52706234
66162234
76386234
86713234
97054234
107521234
Stop Event
node limit
Counts
44 → 35
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
Outputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)
(pow.f64 x 10)

prune449.0ms (9.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1250125
Fresh033
Picked011
Done000
Total1254129
Error
0b
Counts
129 → 4
Alt Table
StatusErrorProgram
28.9b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
27.0b
(pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)
34.0b
(/.f64 1/2 x)
27.0b
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
Compiler

Compiled 12447 to 7174 computations (42.4% saved)

localize41.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (*.f64 x x) 5)
0.1b
(pow.f64 (*.f64 x x) 2)
0.1b
(pow.f64 (*.f64 x x) 3)
26.6b
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
0.0ms
x
@inf
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
0.0ms
x
@-inf
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))

rewrite47.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
506×add-sqr-sqrt_binary64
479×add-log-exp_binary64
479×log1p-expm1-u_binary64
479×expm1-log1p-u_binary64
477×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045141
11034141
Stop Event
node limit
Counts
1 → 8
Calls
Call 1
Inputs
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) 1) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5)))))))) (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))) (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 x (+.f64 1 (+.f64 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (fma.f64 2532017/5000000000 (*.f64 x (*.f64 x (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5)))))) (+.f64 1 (+.f64 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000)) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 x (*.f64 x (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000)))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))))))))

simplify101.0ms (2%)

Algorithm
egg-herbie
Rules
1893×fma-def_binary64
624×unswap-sqr_binary64
533×times-frac_binary64
357×sqr-pow_binary64
338×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037186
196186
2221186
3479186
4968186
52327186
65252186
76219186
86387186
96633186
106950186
117447186
Stop Event
node limit
Counts
20 → 22
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
Outputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x))
(+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) x)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7))) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)))

prune483.0ms (9.8%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1212123
Fresh202
Picked011
Done011
Total1234127
Error
0b
Counts
127 → 4
Alt Table
StatusErrorProgram
27.0b
(pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)
28.9b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
27.0b
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
34.0b
(/.f64 1/2 x)
Compiler

Compiled 11798 to 6775 computations (42.6% saved)

regimes52.0ms (1.1%)

Accuracy

Total -62.6b remaining (-620201.4%)

Threshold costs -62.6b (-620201.4%)

Counts
11 → 3
Calls
Call 1
Inputs
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(/.f64 1/2 x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)
(*.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (/.f64 1 (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))))
(/.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2)))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))
(/.f64 1/2 x)
(*.f64 (+.f64 1 (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))) x)
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 x 4) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
(*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) (fma.f64 106015151/2500000000 (pow.f64 x 4) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
Outputs
(/.f64 1/2 x)
(pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1)
(/.f64 1/2 x)
Results
20.0ms0.0bx
14.0ms0.8b(*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)
Compiler

Compiled 929 to 386 computations (58.4% saved)

bsearch98.0ms (2%)

Algorithm
binary-search
Calls

2 calls:

49.0ms
x
49.0ms
x
Steps
ItersPointRange
7648486.249947317
∈ [
7648486.249947317
,
342867535817.8324
]
-4.584203442930011e+22
∈ [
-4.584203442930011e+22
,
-2.430358814021882e+22
]
Compiler

Compiled 178 to 49 computations (72.5% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×*-commutative_binary64
+-commutative_binary64
1-exp_binary64
unpow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054163
175163
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 x -45842034429300110786560) (/.f64 1/2 x) (if (<=.f64 x 32849998307429408/4294967296) (pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1) (/.f64 1/2 x)))
Outputs
(if (<=.f64 x -45842034429300110786560) (/.f64 1/2 x) (if (<=.f64 x 32849998307429408/4294967296) (pow.f64 (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) 1) (/.f64 1/2 x)))
(if (<=.f64 x -45842034429300110786560) (/.f64 1/2 x) (if (<=.f64 x 1026562447107169/134217728) (/.f64 (*.f64 x (+.f64 (+.f64 1 (+.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) (*.f64 106015151/2500000000 (pow.f64 (*.f64 x x) 2))) (*.f64 36322091/5000000000 (pow.f64 (*.f64 x x) 3)))) (+.f64 (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3))) (*.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5))))) (+.f64 (+.f64 1 (fma.f64 (*.f64 x x) 7715471019/10000000000 (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (fma.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000 (*.f64 (*.f64 x x) (*.f64 (pow.f64 (*.f64 x x) 3) 70002721/5000000000))) (fma.f64 (pow.f64 (*.f64 x x) 5) 1665589/2000000000 (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 5))))))) (/.f64 1/2 x)))

end69.0ms (1.4%)

Stop Event
fuel
Compiler

Compiled 224 to 132 computations (41.1% saved)

Profiling

Loading profile data...