Details

Time bar (total: 2.9s)

analyze16.0ms (0.6%)

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
99.9%0%0%13
99.9%0%0%14
Compiler

Compiled 175 to 47 computations (73.1% saved)

sample2.0s (68.9%)

Results
2.0s8256×body128valid

preprocess37.0ms (1.3%)

Algorithm
egg-herbie
Rules
705×fma-def_binary64
691×distribute-rgt-out_binary64
550×+-commutative_binary64
437×*-commutative_binary64
350×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046256
1133150
2590101
3327790
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))))))))
Compiler

Compiled 174 to 46 computations (73.6% saved)

simplify26.0ms (0.9%)

Algorithm
egg-herbie
Rules
705×fma-def_binary64
691×distribute-rgt-out_binary64
550×+-commutative_binary64
437×*-commutative_binary64
350×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
046256
1133150
2590101
3327790
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))))))))

prune8.0ms (0.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
32.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
32.8b
(*.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))))))))
32.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 716 to 277 computations (61.3% saved)

localize37.0ms (1.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 7715471019/10000000000 (*.f64 x x))
0.2b
(*.f64 1049934947/10000000000 (*.f64 x x))
16.3b
(*.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)
32.2b
(/.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)))))

series11.0ms (0.4%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(*.f64 1049934947/10000000000 (*.f64 x x))
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 (/.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)))))

rewrite59.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
512×pow1_binary64
506×add-exp-log_binary64
506×add-log-exp_binary64
506×log1p-expm1-u_binary64
506×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046367
11071367
Stop Event
node limit
Counts
4 → 29
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 7715471019/10000000000 (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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 log1p.f64 (expm1.f64 (*.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 expm1.f64 (log1p.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))))
((#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 x x) 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (*.f64 x x) 7715471019/10000000000)) (*.f64 (*.f64 x x) 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 x x) 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 x x) 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 x x) 7715471019/10000000000)))))))

simplify39.0ms (1.3%)

Algorithm
egg-herbie
Rules
612×fma-def_binary64
493×associate-*l*_binary64
426×associate-/r*_binary64
366×associate-*r*_binary64
214×distribute-lft-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
072570
1180568
2422564
31101564
44149564
Stop Event
node limit
Counts
77 → 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))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
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 1 (fma.f64 -833192009/1250000000 (*.f64 x x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4))))
(fma.f64 x (*.f64 -833192009/1250000000 x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (fma.f64 x (*.f64 -833192009/1250000000 x) 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 1 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 -833192009/1250000000 (*.f64 x x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)))))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 x (*.f64 -833192009/1250000000 x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) 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 600041/2386628 (pow.f64 x 4)) (+.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 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 1/2 (*.f64 x x)) (+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.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 600041/2386628 (pow.f64 x 4)) (+.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 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 1/2 (*.f64 x x)) (+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.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 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) (fma.f64 -833192009/1250000000 (pow.f64 x 3) (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 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.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 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.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))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))
(*.f64 7715471019/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 7715471019/10000000000)
(*.f64 x (*.f64 x 7715471019/10000000000))

prune129.0ms (4.4%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New60262
Fresh101
Picked011
Done000
Total61364
Error
0b
Counts
64 → 3
Alt Table
StatusErrorProgram
34.6b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
32.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)
28.8b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Compiler

Compiled 6324 to 2704 computations (57.2% saved)

localize11.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
0.2b
(/.f64 600041/2386628 (pow.f64 x 3))

series3.0ms (0.1%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(/.f64 600041/2386628 (pow.f64 x 3))
1.0ms
x
@0
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
0.0ms
x
@inf
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
0.0ms
x
@inf
(/.f64 600041/2386628 (pow.f64 x 3))
0.0ms
x
@-inf
(/.f64 600041/2386628 (pow.f64 x 3))

rewrite52.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
914×prod-diff_binary64
184×log1p-udef_binary64
107×add-sqr-sqrt_binary64
103×add-log-exp_binary64
103×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0920
121918
2295118
Stop Event
node limit
Counts
2 → 80
Calls
Call 1
Inputs
(/.f64 600041/2386628 (pow.f64 x 3))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 600041/2386628 (pow.f64 x -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 600041/2386628 (pow.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 600041/2386628) x) (cbrt.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6))) (/.f64 (cbrt.f64 600041/2386628) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 600041/2386628) (pow.f64 x 3/2)) (/.f64 (sqrt.f64 600041/2386628) (pow.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -600041/2386628 (/.f64 1 (neg.f64 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -3) 600041/2386628)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cbrt.f64 600041/2386628) x) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 600041/2386628) (pow.f64 x 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 3) 2386628/600041) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 600041/2386628 (pow.f64 x -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 600041/2386628 (pow.f64 x -3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 600041/2386628 (pow.f64 x -3))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x))) (/.f64 (/.f64 1/4 (*.f64 x x)) (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) (cbrt.f64 (pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 2)) (cbrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) (sqrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2)) (/.f64 1 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) (/.f64 1/8 (pow.f64 x 3))) (/.f64 1 (-.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (/.f64 600041/4773256 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (/.f64 1 (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 x 4) (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (/.f64 600041/4773256 (pow.f64 x 4))) (+.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) (/.f64 1/8 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x)) (-.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2)) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) (/.f64 1/8 (pow.f64 x 3))) (-.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (/.f64 600041/4773256 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) (/.f64 1/8 (pow.f64 x 3))) (+.f64 (/.f64 1/4 (*.f64 x x)) (-.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 600041/4773256 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2))) (neg.f64 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 3) (/.f64 1/8 (pow.f64 x 3)))) (neg.f64 (-.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x))) (/.f64 600041/4773256 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (/.f64 1/4 (*.f64 x x)))) (neg.f64 (-.f64 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) 1/2)) (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -600041/2386628 x) (*.f64 (neg.f64 (pow.f64 x 3)) 1/2)) (*.f64 (neg.f64 (pow.f64 x 3)) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 600041/2386628 (*.f64 x 2)) (pow.f64 x 3)) (*.f64 (pow.f64 x 3) (*.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x 2) (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) 1)) (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) (*.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -600041/2386628 (*.f64 x 2)) (*.f64 (neg.f64 (pow.f64 x 3)) 1)) (*.f64 (neg.f64 (pow.f64 x 3)) (*.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 600041/2386628 (neg.f64 x)) (*.f64 (pow.f64 x 3) -1/2)) (*.f64 (pow.f64 x 3) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 x) (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) -1/2)) (*.f64 (*.f64 (pow.f64 x 3) 2386628/600041) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -600041/2386628 (neg.f64 x)) (*.f64 (neg.f64 (pow.f64 x 3)) -1/2)) (*.f64 (neg.f64 (pow.f64 x 3)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (*.f64 (*.f64 x 2) 600041/2386628)) (*.f64 (*.f64 x 2) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -1/2 (pow.f64 x 3)) (*.f64 (neg.f64 x) 600041/2386628)) (*.f64 (neg.f64 x) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x 3) 2386628/600041)) x) (*.f64 x (*.f64 (pow.f64 x 3) 2386628/600041)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 x 3) 2386628/600041) (*.f64 (*.f64 x 2) 1)) (*.f64 (*.f64 x 2) (*.f64 (pow.f64 x 3) 2386628/600041)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 3) 2386628/600041)) (*.f64 (neg.f64 x) 1)) (*.f64 (neg.f64 x) (*.f64 (pow.f64 x 3) 2386628/600041)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/2 (neg.f64 (pow.f64 x 3))) (*.f64 x -600041/2386628)) (*.f64 x (neg.f64 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (pow.f64 x 3)) (*.f64 (*.f64 x 2) -600041/2386628)) (*.f64 (*.f64 x 2) (neg.f64 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -1/2 (neg.f64 (pow.f64 x 3))) (*.f64 (neg.f64 x) -600041/2386628)) (*.f64 (neg.f64 x) (neg.f64 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1/4 (*.f64 x x)) (/.f64 360049201681/5695993210384 (pow.f64 x 6))) (-.f64 (/.f64 1/2 x) (*.f64 600041/2386628 (pow.f64 x -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2)) (pow.f64 x 3)) x)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 1 x) (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 600041/2386628 (pow.f64 x -3)) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 1/2 x) (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1/4 (*.f64 x x))) (cbrt.f64 (/.f64 1/2 x)) (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6))) (/.f64 (cbrt.f64 600041/2386628) x) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 1/2 x)) (sqrt.f64 (/.f64 1/2 x)) (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 600041/2386628) (pow.f64 x 3/2)) (/.f64 (sqrt.f64 600041/2386628) (pow.f64 x 3/2)) (/.f64 1/2 x))))))

simplify48.0ms (1.7%)

Algorithm
egg-herbie
Rules
1028×associate-/l*_binary64
585×associate-/r/_binary64
362×unswap-sqr_binary64
256×associate-/r*_binary64
255×associate-/l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015132
131132
251132
383132
4164132
5464132
62010132
72785132
82882132
93015132
103173132
113415132
Stop Event
node limit
Counts
92 → 85
Calls
Call 1
Inputs
(/.f64 600041/2386628 (pow.f64 x 3))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(/.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 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.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 1/2 (/.f64 1 x)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
Outputs
(/.f64 600041/2386628 (pow.f64 x 3))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))

prune47.0ms (1.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New85085
Fresh011
Picked011
Done011
Total85388
Error
0b
Counts
88 → 3
Alt Table
StatusErrorProgram
34.6b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
32.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)
28.8b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Compiler

Compiled 1491 to 1075 computations (27.9% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)

series2.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
1.0ms
x
@inf
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
0.0ms
x
@0
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)

rewrite33.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
522×pow1_binary64
493×add-log-exp_binary64
493×log1p-expm1-u_binary64
493×expm1-log1p-u_binary64
483×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11308
213438
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 -833192009/1250000000 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (cbrt.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2)) (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (sqrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) (*.f64 -833192009/1250000000 (pow.f64 x 3))) (-.f64 (*.f64 x x) (*.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) (*.f64 -833192009/1250000000 (pow.f64 x 3))) (*.f64 x x)) (-.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))

simplify68.0ms (2.3%)

Algorithm
egg-herbie
Rules
729×sqr-pow_binary64
435×associate-*l*_binary64
362×unswap-sqr_binary64
313×pow-sqr_binary64
258×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0787
11887
23687
37587
414487
535787
6121887
7192987
8201687
9214987
10230787
11253787
12285987
13328087
14378087
15437587
Stop Event
node limit
Counts
33 → 24
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(*.f64 -833192009/1250000000 (pow.f64 x 3))
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(*.f64 -833192009/1250000000 (pow.f64 x 3))
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
Outputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(*.f64 -833192009/1250000000 (pow.f64 x 3))
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(*.f64 -833192009/1250000000 (pow.f64 x 3))
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)

prune16.0ms (0.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New24024
Fresh000
Picked011
Done022
Total24327
Error
0b
Counts
27 → 3
Alt Table
StatusErrorProgram
34.6b
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
32.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)
28.8b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Compiler

Compiled 446 to 251 computations (43.7% saved)

regimes70.0ms (2.4%)

Accuracy

Total -63.4b remaining (-405958.6%)

Threshold costs -63.4b (-405958.6%)

Counts
14 → 3
Calls
Call 1
Inputs
(fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))
(*.f64 (*.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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))))))) x)
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
x
(*.f64 (/.f64 1/2 (pow.f64 x 2)) x)
(*.f64 (fma.f64 x (*.f64 -833192009/1250000000 x) 1) x)
(*.f64 (+.f64 1 (*.f64 -833192009/1250000000 (pow.f64 x 2))) x)
(*.f64 1 x)
(*.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 (+.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
(fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))
(*.f64 (*.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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))))))) x)
(fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))
Results
37.0ms0.0bx
13.0ms0.3b(*.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 609 to 261 computations (57.1% saved)

bsearch107.0ms (3.7%)

Algorithm
binary-search
Calls

2 calls:

53.0ms
x
53.0ms
x
Steps
ItersPointRange
1.2590029086498682e-8
∈ [
1.2590029086498682e-8
,
229183110142357820.0
]
-5722209.554962575
∈ [
-5722209.554962575
,
-1225670.5692362273
]
Compiler

Compiled 178 to 49 computations (72.5% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
11×+-commutative_binary64
*-lft-identity_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060212
190212
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 x -24576702899422976/4294967296) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) (if (<=.f64 x 951275702022965/75557863725914323419136) (*.f64 (*.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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))))))) x) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))
Outputs
(if (<=.f64 x -24576702899422976/4294967296) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) (if (<=.f64 x 951275702022965/75557863725914323419136) (*.f64 (*.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.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))))))) x) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))
(if (<=.f64 x -96002745700871/16777216) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x)) (if (<=.f64 x 951275702022965/75557863725914323419136) (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (+.f64 (*.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 (*.f64 (pow.f64 (*.f64 x x) 2) (pow.f64 (*.f64 x x) 3))))) (+.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) 2) (pow.f64 (*.f64 x x) 3)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))))))) (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))

end77.0ms (2.7%)

Stop Event
done
Compiler

Compiled 288 to 174 computations (39.6% saved)

Profiling

Loading profile data...