Details

Time bar (total: 7.0s)

analyze15.0ms (0.2%)

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

Compiled 175 to 47 computations (73.1% saved)

sample2.1s (29.9%)

Results
2.1s8256×body256valid

preprocess86.0ms (1.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
046256
1133150
2600101
3327290
4527884
5613584
6666384
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 x (/.f64 (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 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 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 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
Compiler

Compiled 175 to 47 computations (73.1% saved)

simplify73.0ms (1%)

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

Useful iterations: 4 (0.0ms)

IterNodesCost
046256
1133150
2600101
3327290
4527884
5613584
6666384
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 x (/.f64 (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 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 (*.f64 x x) 5) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 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 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))

eval2.0ms (0%)

Compiler

Compiled 234 to 91 computations (61.1% saved)

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
30.3b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
30.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)
30.3b
(*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
Compiler

Compiled 235 to 93 computations (60.4% saved)

localize142.0ms (2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 x 7715471019/10000000000)
0.3b
(fma.f64 1049934947/10000000000 (*.f64 x x) 1)
16.4b
(*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
29.7b
(/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))
Compiler

Compiled 349 to 260 computations (25.5% saved)

series8.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))
1.0ms
x
@0
(/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))
1.0ms
x
@-inf
(/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))
1.0ms
x
@inf
(*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
1.0ms
x
@-inf
(*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))

rewrite94.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
381×add-sqr-sqrt_binary64
366×add-log-exp_binary64
366×log1p-expm1-u_binary64
366×expm1-log1p-u_binary64
361×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039177
1825177
Stop Event
node limit
Counts
4 → 80
Calls
Call 1
Inputs
(/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))
(*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))
(fma.f64 1049934947/10000000000 (*.f64 x x) 1)
(*.f64 x 7715471019/10000000000)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (/.f64 1 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 2) (cbrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) (sqrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (/.f64 1 (neg.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) 1) (/.f64 (sqrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 2)) (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (cbrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) 2) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 2)) (cbrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 2)) (/.f64 (sqrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (cbrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (sqrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) 2) (sqrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) (/.f64 (cbrt.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (sqrt.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (neg.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) 3) (pow.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (/.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))) (*.f64 x (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))))) (neg.f64 (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1)))))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (/.f64 (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 x (*.f64 x 7715471019/10000000000) (fma.f64 (pow.f64 x 4) 2909738639/10000000000 1))))))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)) 2) (cbrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)) (sqrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 3) 1) (+.f64 (*.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 1049934947/10000000000 (*.f64 x x))) (-.f64 1 (*.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) (*.f64 1049934947/10000000000 (*.f64 x x))) 1) (-.f64 (*.f64 1049934947/10000000000 (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1049934947/10000000000 (*.f64 x x) 1)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x 7715471019/10000000000))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 7715471019/10000000000) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x 7715471019/10000000000) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x 7715471019/10000000000)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x 7715471019/10000000000)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 x x) 59528493045028898361/100000000000000000000))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 7715471019/10000000000) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x 7715471019/10000000000))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x 7715471019/10000000000) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x 7715471019/10000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x 7715471019/10000000000)) 1))))))

simplify70.0ms (1%)

Algorithm
egg-herbie
Rules
748×distribute-lft-out_binary64
618×fma-def_binary64
487×associate-*l*_binary64
487×associate-*l/_binary64
441×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
073555
1182535
2422531
31101531
44372531
57195531
Stop Event
node limit
Counts
128 → 115
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)))))
1
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
(*.f64 7715471019/10000000000 x)
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)
(+.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 (fma.f64 -833192009/1250000000 (*.f64 x x) 1) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))))
(+.f64 1 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (*.f64 -833192009/1250000000 (*.f64 x x)))))
(+.f64 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4))) (fma.f64 -833192009/1250000000 (*.f64 x x) 1))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 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 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.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 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.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 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 x)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 5)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(/.f64 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)))))
1
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(*.f64 1049934947/10000000000 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1049934947/10000000000)
(*.f64 x (*.f64 x 1049934947/10000000000))
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(+.f64 1 (*.f64 1049934947/10000000000 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) 1049934947/10000000000))
(fma.f64 (*.f64 x x) 1049934947/10000000000 1)
(fma.f64 x (*.f64 x 1049934947/10000000000) 1)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)
(*.f64 7715471019/10000000000 x)
(*.f64 x 7715471019/10000000000)

localize199.0ms (2.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 7715471019/10000000000 (*.f64 x x))
0.4b
(*.f64 1049934947/10000000000 (*.f64 x x))
16.4b
(*.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)
29.7b
(/.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)))))
Compiler

Compiled 1045 to 244 computations (76.7% saved)

series6.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
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)))))
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)
0.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)))))
0.0ms
x
@0
(*.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)

rewrite99.0ms (1.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
046367
11071367
Stop Event
node limit
Counts
4 → 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 (+.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 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (/.f64 1 (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))) (cbrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (sqrt.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))) (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) x) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2))))))) (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))) (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 2532017/5000000000 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)))) (*.f64 1789971/10000000000 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)))) (+.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 (*.f64 x x) 7715471019/10000000000) (*.f64 (pow.f64 (*.f64 x x) 2) 2909738639/10000000000))) (+.f64 (*.f64 (pow.f64 (*.f64 x x) 3) 694555761/10000000000) (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) 70002721/5000000000))) (+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 x x) 2)) 1665589/2000000000) (*.f64 1789971/5000000000 (*.f64 (*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) 3)) (pow.f64 (*.f64 x x) 2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 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 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 expm1.f64 (log1p.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1049934947/10000000000 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.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 expm1.f64 (log1p.f64 (*.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)))))))

simplify71.0ms (1%)

Algorithm
egg-herbie
Rules
758×distribute-lft-out_binary64
612×fma-def_binary64
497×associate-*l*_binary64
480×associate-*l/_binary64
437×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
072570
1180568
2422564
31104564
44406564
57214564
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 (fma.f64 -833192009/1250000000 (*.f64 x x) 1) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6)) (+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4)) (*.f64 -833192009/1250000000 (pow.f64 x 2)))))
(+.f64 1 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) (*.f64 -833192009/1250000000 (*.f64 x x)))))
(+.f64 (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4))) (fma.f64 -833192009/1250000000 (*.f64 x x) 1))
(fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 6) (fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 4) 1)))
(fma.f64 -833192009/1250000000 (*.f64 x x) (fma.f64 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 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(/.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 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 344398180852034095277/30586987988352776592 (/.f64 1 (pow.f64 x 8))) (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 4))))))
(+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8))) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 1/2 (*.f64 x x)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 1307076337763/8543989815576 (pow.f64 x 6)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)))))
(+.f64 (/.f64 1/2 (*.f64 x x)) (+.f64 (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 8)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 4)) (/.f64 1307076337763/8543989815576 (pow.f64 x 6)))))
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 -833192009/1250000000 (pow.f64 x 3) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -9156128575487588197208397249/125000000000000000000000000000 (pow.f64 x 7) x)))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.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 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(/.f64 1/2 x)
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 600041/2386628 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1307076337763/8543989815576 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 1307076337763/8543989815576 (pow.f64 x 5))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.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 1307076337763/8543989815576 (pow.f64 x 5)) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (+.f64 (/.f64 1/2 x) (/.f64 344398180852034095277/30586987988352776592 (pow.f64 x 7)))))
(*.f64 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))

eval201.0ms (2.9%)

Compiler

Compiled 12399 to 7410 computations (40.2% saved)

prune27.0ms (0.4%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1716177
Fresh000
Picked011
Done101
Total1727179
Error
0b
Counts
179 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
32.5b
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
32.7b
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
47.8b
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
30.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)
31.8b
x
30.9b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
30.4b
(/.f64 1/2 x)
Compiler

Compiled 264 to 113 computations (57.2% saved)

localize3.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1/2 (*.f64 x x))
31.1b
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
Compiler

Compiled 18 to 8 computations (55.6% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
0.0ms
x
@0
(/.f64 1/2 (*.f64 x x))
0.0ms
x
@inf
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
0.0ms
x
@inf
(/.f64 1/2 (*.f64 x x))
0.0ms
x
@-inf
(*.f64 (/.f64 1/2 (*.f64 x x)) x)

rewrite79.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
630×pow1_binary64
590×add-log-exp_binary64
590×log1p-expm1-u_binary64
590×expm1-log1p-u_binary64
578×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
113117
2164917
Stop Event
node limit
Counts
2 → 44
Calls
Call 1
Inputs
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
(/.f64 1/2 (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (*.f64 x x) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (*.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x x) (*.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/2 x)) (neg.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 x) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 x) 1) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 x) (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 x) (neg.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 x) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -1/2) (neg.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 1/2 x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (/.f64 x (*.f64 x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (/.f64 x (*.f64 x x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 1/2 x)) x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 x x) (/.f64 1/4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (/.f64 1/2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 x (*.f64 x x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 x (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 x (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (/.f64 x (*.f64 x x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 (*.f64 x x))) (cbrt.f64 (/.f64 1/4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 x 4))) (cbrt.f64 (/.f64 1/2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 1/2) x) (/.f64 (sqrt.f64 1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 1 (neg.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 (*.f64 x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 (*.f64 x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 1/2) x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 (*.f64 x x))))))))

simplify175.0ms (2.5%)

Algorithm
egg-herbie
Rules
1137×associate-/r*_binary64
1082×sqr-pow_binary64
560×cube-prod_binary64
553×fabs-mul_binary64
523×pow-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07132
112132
219132
334132
474132
5225132
6827132
72032132
82198132
92382132
102590132
112887132
123282132
133761132
144327132
155009132
165848132
176244132
186530132
196806132
206878132
216914132
Stop Event
node limit
Counts
68 → 47
Calls
Call 1
Inputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
Outputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))

localize18.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -833192009/1250000000 (pow.f64 x 3))
Compiler

Compiled 19 to 14 computations (26.3% saved)

series5.0ms (0.1%)

Counts
1 → 0
Calls

3 calls:

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

rewrite82.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
505×pow1_binary64
499×add-sqr-sqrt_binary64
477×add-log-exp_binary64
477×log1p-expm1-u_binary64
477×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11297
213257
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 -833192009/1250000000 (pow.f64 x 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -833192009/1250000000 (pow.f64 x 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (cbrt.f64 -833192009/1250000000)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 -833192009/1250000000) (pow.f64 x 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 6) 694208923861456081/1562500000000000000))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -833192009/1250000000) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
11 → 11
Calls
Call 1
Inputs
Outputs

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 25 to 19 computations (24% saved)

series3.0ms (0%)

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 600041/2386628 (pow.f64 x 3))
0.0ms
x
@-inf
(/.f64 600041/2386628 (pow.f64 x 3))
0.0ms
x
@inf
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))

rewrite71.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
914×prod-diff_binary64
437×log-prod_binary64
297×fma-def_binary64
264×pow2_binary64
184×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0920
121918
2295618
Stop Event
node limit
Counts
2 → 103
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 0 (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3)))))))) (#(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) (pow.f64 (/.f64 (cbrt.f64 600041/2386628) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (cbrt.f64 600041/2386628) x) 2) (/.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 360049201681/5695993210384 (pow.f64 x 6)) 1/2)))) (#(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 (*.f64 216044283025868921/13594216883712345152 (pow.f64 (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 pow.f64 (/.f64 (*.f64 (pow.f64 x 3) 2386628/600041) 1) -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 (*.f64 216044283025868921/13594216883712345152 (pow.f64 (pow.f64 x -3) 3)))))) (#(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 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 -.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))) (pow.f64 (cbrt.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.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 (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (pow.f64 x -3) 3) (/.f64 1/8 (pow.f64 x 3))) (/.f64 1 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (/.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 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (/.f64 1/4 (*.f64 x x)) (/.f64 600041/4773256 (pow.f64 x 4)))) (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (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 (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (pow.f64 x -3) 3) (/.f64 1/8 (pow.f64 x 3))) (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (/.f64 1/4 (*.f64 x x)) (/.f64 600041/4773256 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (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 (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (pow.f64 x -3) 3) (/.f64 1/8 (pow.f64 x 3)))) (neg.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (/.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 (fma.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 (fma.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 (fma.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 (fma.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 (fma.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 (fma.f64 -1 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 (fma.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 (fma.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 (fma.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 (fma.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 (fma.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 (fma.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 (fma.f64 -1 (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 (fma.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)) 2) 1/2)))) (#(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 pow.f64 (/.f64 (pow.f64 x 4) (fma.f64 600041/2386628 x (*.f64 (pow.f64 x 3) 1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 360049201681/5695993210384 (pow.f64 x 6)) (-.f64 (/.f64 1/4 (*.f64 x x)) (/.f64 600041/4773256 (pow.f64 x 4)))) (fma.f64 216044283025868921/13594216883712345152 (pow.f64 (pow.f64 x -3) 3) (/.f64 1/8 (pow.f64 x 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.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)))) -1)))) (#(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 log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3)))) (exp.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3)) (+.f64 1 (expm1.f64 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3)))) (+.f64 1 (expm1.f64 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 x))) (pow.f64 (exp.f64 600041/2386628) (pow.f64 x -3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1/2 x)) (+.f64 1 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 x))) (+.f64 1 (expm1.f64 (*.f64 600041/2386628 (pow.f64 x -3))))))))) (#(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 expm1.f64 (log1p.f64 (fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))))) (#(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 fma.f64 600041/2386628 (pow.f64 x -3) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 600041/2386628 (pow.f64 x -3)) 1 (/.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 (/.f64 1/2 x) 1 (*.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/2 x)) (cbrt.f64 (/.f64 1/4 (*.f64 x 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 (/.f64 (cbrt.f64 600041/2386628) x) (pow.f64 (/.f64 (cbrt.f64 600041/2386628) x) 2) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 (cbrt.f64 600041/2386628) x) 2) (/.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))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -600041/2386628 (/.f64 1 (neg.f64 (pow.f64 x 3))) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 1 (neg.f64 x)) (*.f64 600041/2386628 (pow.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -3) 600041/2386628 (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 x) 1/2 (*.f64 600041/2386628 (pow.f64 x -3)))))))

simplify92.0ms (1.3%)

Algorithm
egg-herbie
Rules
1024×associate-/l*_binary64
861×associate-*l/_binary64
569×associate-/r/_binary64
451×associate-*r/_binary64
362×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015132
131132
251132
383132
4164132
5482132
62051132
72827132
82924132
93057132
103215132
113463132
127337132
137869132
Stop Event
node limit
Counts
115 → 108
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)))

localize40.0ms (0.6%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -833192009/1250000000 (pow.f64 x 3))
0.1b
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
21.0b
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
Compiler

Compiled 42 to 32 computations (23.8% saved)

series3.0ms (0%)

Counts
2 → 6
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
1.0ms
x
@0
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
1.0ms
x
@0
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
0.0ms
x
@-inf
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
0.0ms
x
@-inf
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))

rewrite87.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
556×log-prod_binary64
547×fma-def_binary64
332×pow2_binary64
315×fma-neg_binary64
228×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
127922
2351622
Stop Event
node limit
Counts
2 → 104
Calls
Call 1
Inputs
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))) (/.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (pow.f64 (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) 2) (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (sqrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3)) (/.f64 1 (fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2)) (/.f64 1 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)) (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3)) (fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3)) (+.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2) (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (*.f64 (pow.f64 x 5) (*.f64 3321371254951887171/12500000000000000000 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2)) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3))) (neg.f64 (fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2))) (neg.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) 2) (-.f64 (*.f64 x x) (*.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) 2) (*.f64 x x)) (-.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (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 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (-.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)) (fma.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000 (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (neg.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (-.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) (pow.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (*.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000) (pow.f64 (exp.f64 -833192009/1250000000) (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (*.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000) (pow.f64 (exp.f64 -833192009/1250000000) (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))) (exp.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000) (+.f64 1 (expm1.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))) (+.f64 1 (expm1.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (+.f64 1 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) (+.f64 1 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000) (pow.f64 (exp.f64 -833192009/1250000000) (pow.f64 x 3))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000) (pow.f64 (exp.f64 -833192009/1250000000) (pow.f64 x 3))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (*.f64 x x) -833192009/1250000000) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 5) 3321371254951887171/12500000000000000000 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) 1 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -833192009/1250000000 (pow.f64 x 3) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3) -833192009/1250000000 (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) 1 (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) 1 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -833192009/1250000000 (pow.f64 x 3)) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 x -833192009/1250000000) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (pow.f64 (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 2) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) 2) (cbrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 10)) (*.f64 (pow.f64 (cbrt.f64 x) 5) 3321371254951887171/12500000000000000000) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (cbrt.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000)) (cbrt.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 -833192009/1250000000)) (pow.f64 (*.f64 x (cbrt.f64 -833192009/1250000000)) 2) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 x (cbrt.f64 -833192009/1250000000)) 2) (*.f64 x (cbrt.f64 -833192009/1250000000)) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (sqrt.f64 (fma.f64 -833192009/1250000000 (pow.f64 x 3) x)) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 3321371254951887171/12500000000000000000) (pow.f64 x 5/2)) (*.f64 (sqrt.f64 3321371254951887171/12500000000000000000) (pow.f64 x 5/2)) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 -833192009/1250000000) (pow.f64 x 3/2)) (*.f64 (sqrt.f64 -833192009/1250000000) (pow.f64 x 3/2)) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 x 9) -578409327937854629793656729/1953125000000000000000000000 (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 -833192009/1250000000 (pow.f64 x 3))) (*.f64 (pow.f64 x 6) 694208923861456081/1562500000000000000))) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 x 6) 694208923861456081/1562500000000000000 (neg.f64 (*.f64 x x))) (/.f64 1 (-.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 5/2) (*.f64 (pow.f64 x 5/2) 3321371254951887171/12500000000000000000) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3/2) (*.f64 (pow.f64 x 3/2) -833192009/1250000000) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3))) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))) 2) (cbrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))) (sqrt.f64 (fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -833192009/1250000000 x) (*.f64 x x) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3321371254951887171/12500000000000000000 (cbrt.f64 (pow.f64 x 10))) (pow.f64 (cbrt.f64 x) 5) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5/2)) (pow.f64 x 5/2) (fma.f64 -833192009/1250000000 (pow.f64 x 3) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -833192009/1250000000 (*.f64 x x)) x (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3/2)) (pow.f64 x 3/2) (+.f64 x (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 3321371254951887171/12500000000000000000) (pow.f64 x 5/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 10) 11031507013220673890527654054314383241/156250000000000000000000000000000000000))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 x 5)) 3321371254951887171/12500000000000000000))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 15) 36639730292511294221188179936424279490424752821885301211/1953125000000000000000000000000000000000000000000000000000))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 5 (log.f64 x) (log1p.f64 -9178628745048112829/12500000000000000000)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 5 (log.f64 x) (log1p.f64 -9178628745048112829/12500000000000000000)) 1))))))

simplify175.0ms (2.5%)

Algorithm
egg-herbie
Rules
1204×sqr-pow_binary64
710×cube-prod_binary64
681×fabs-mul_binary64
660×pow-sqr_binary64
416×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01251
13051
26051
313151
426051
571351
6107751
7171951
8182751
9198951
10220251
11253251
12298851
13358651
14433851
15527051
16578051
17627251
18667051
19699051
20715251
Stop Event
node limit
Counts
110 → 110
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
Outputs
x
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(fma.f64 -833192009/1250000000 (pow.f64 x 3) x)
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))
(*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5))
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
(fma.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5) (*.f64 -833192009/1250000000 (pow.f64 x 3)))
(fma.f64 -833192009/1250000000 (pow.f64 x 3) (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)))

eval190.0ms (2.7%)

Compiler

Compiled 4345 to 3303 computations (24% saved)

prune57.0ms (0.8%)

Pruning

10 alts after pruning (4 fresh and 6 done)

PrunedKeptTotal
New2843287
Fresh011
Picked011
Done055
Total28410294
Error
0b
Counts
294 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
32.5b
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
32.7b
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
47.7b
(/.f64 (*.f64 1/2 x) (*.f64 x x))
31.8b
x
47.8b
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
30.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)
30.4b
(/.f64 1/2 x)
60.9b
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
60.4b
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
30.9b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Compiler

Compiled 252 to 103 computations (59.1% saved)

localize16.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1/2 (*.f64 x x))
1.1b
(-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1)
14.7b
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
Compiler

Compiled 39 to 23 computations (41% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@0
(-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1)
0.0ms
x
@0
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
0.0ms
x
@inf
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
0.0ms
x
@-inf
(-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1)
0.0ms
x
@-inf
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)

rewrite87.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
992×pow1_binary64
933×add-log-exp_binary64
932×log1p-expm1-u_binary64
932×expm1-log1p-u_binary64
104×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0929
120517
2286417
Stop Event
node limit
Counts
2 → 77
Calls
Call 1
Inputs
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
(-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x (fma.f64 1/2 (pow.f64 x -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) x) (*.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (fma.f64 1/2 (pow.f64 x -2) 1)) (*.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1) x) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1) x) (+.f64 (/.f64 (/.f64 1/2 x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1)) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1)) (+.f64 (/.f64 (/.f64 1/2 x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) (sqrt.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 x x) (/.f64 1/4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 1/2 x) x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (/.f64 (/.f64 1/2 x) x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1/2 x) x) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 (/.f64 1/2 x) x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (fma.f64 1/2 (pow.f64 x -2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 1/2 x) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/2 (pow.f64 x -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (fma.f64 1/2 (pow.f64 x -2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/2 (pow.f64 x -2) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 1/2 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 1/2 x) x)) (cbrt.f64 (/.f64 1/4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 x 4))) (cbrt.f64 (/.f64 (/.f64 1/2 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 1/2) x) (/.f64 (sqrt.f64 1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 1 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1) (/.f64 1 (+.f64 (/.f64 (/.f64 1/2 x) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 1 (/.f64 (sqrt.f64 1/2) x)) 1) (-.f64 (hypot.f64 1 (/.f64 (sqrt.f64 1/2) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (*.f64 x x) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2)) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 2) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (neg.f64 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (-.f64 1 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (*.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1) (+.f64 (/.f64 (/.f64 1/2 x) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1) (-.f64 (fma.f64 1/2 (pow.f64 x -2) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 x) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1/2 x)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) (+.f64 (/.f64 (/.f64 1/2 x) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 2) -1)) (neg.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) -1) 3)) (+.f64 1 (-.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) (fma.f64 1/2 (pow.f64 x -2) -1)) (fma.f64 1/2 (pow.f64 x -2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) (fma.f64 1/2 (pow.f64 x -2) -1))) (-.f64 1 (fma.f64 1/2 (pow.f64 x -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 x) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 x) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 x) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1/2 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (/.f64 1/2 x) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 1/2) x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 1/2 x) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 1/2 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 1/2 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 1/2 x) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 1/2 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 1/2 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (/.f64 1/2 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/2 (pow.f64 x -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 x -2) 1)) 2) (cbrt.f64 (fma.f64 1/2 (pow.f64 x -2) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (/.f64 (sqrt.f64 1/2) x)) (hypot.f64 1 (/.f64 (sqrt.f64 1/2) x)) -1)))))

simplify181.0ms (2.6%)

Algorithm
egg-herbie
Rules
1137×associate-/r*_binary64
1082×sqr-pow_binary64
560×cube-prod_binary64
553×fabs-mul_binary64
523×pow-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07132
112132
219132
334132
474132
5225132
6827132
72032132
82198132
92382132
102590132
112887132
123282132
133761132
144327132
155009132
165848132
176244132
186530132
196806132
206878132
216914132
Stop Event
node limit
Counts
101 → 79
Calls
Call 1
Inputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (pow.f64 x 2))
Outputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))
(/.f64 1/2 (pow.f64 x 2))
(/.f64 1/2 (*.f64 x x))

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.8b
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
31.5b
(/.f64 x (*.f64 x x))
Compiler

Compiled 39 to 17 computations (56.4% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(/.f64 x (*.f64 x x))
0.0ms
x
@0
(/.f64 x (*.f64 x x))
0.0ms
x
@inf
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
0.0ms
x
@0
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
0.0ms
x
@inf
(/.f64 x (*.f64 x x))

rewrite71.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
986×pow1_binary64
927×add-log-exp_binary64
926×log1p-expm1-u_binary64
926×expm1-log1p-u_binary64
105×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0923
12068
229248
Stop Event
node limit
Counts
2 → 87
Calls
Call 1
Inputs
(/.f64 x (*.f64 x x))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x -2)) (cbrt.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) x) (/.f64 (cbrt.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 x 4))) (/.f64 x (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4))) (cbrt.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (pow.f64 x 4))) (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 x -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 x -2) x) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sqrt.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x -2) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x 3) (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (/.f64 1/2 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (+.f64 (/.f64 1/2 x) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 1/2 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (pow.f64 x -2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 x)) (pow.f64 (cbrt.f64 (/.f64 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 x)) 2) (cbrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x -2)) (*.f64 (cbrt.f64 (/.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 x)) (sqrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (*.f64 (/.f64 1 (sqrt.f64 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (/.f64 1 (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 x 4))) (/.f64 x (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) 1) (-.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 x -2))) (cbrt.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1 (sqrt.f64 x))) (/.f64 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2)) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 1/2 x) 2) (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x x) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (-.f64 1 (*.f64 (+.f64 1 (/.f64 1/2 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (+.f64 (/.f64 1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (-.f64 (+.f64 1 (/.f64 1/2 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x))) (neg.f64 (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x 1/2)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 1/2 x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 1/2 x) -1) (+.f64 (/.f64 1/2 x) -1)) (+.f64 (/.f64 1/2 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 1/2 x) -1) (+.f64 (/.f64 1/2 x) -1))) (-.f64 1 (+.f64 (/.f64 1/2 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) 1) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 1/2) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 x)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (/.f64 1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 1/2 x))) 2) (cbrt.f64 (+.f64 1 (/.f64 1/2 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) -1)))))

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Rules
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0696
1896
Stop Event
saturated
Counts
111 → 88
Calls
Call 1
Inputs
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
Outputs
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
31.5b
(/.f64 (*.f64 1/2 x) (*.f64 x x))
Compiler

Compiled 16 to 8 computations (50% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(/.f64 (*.f64 1/2 x) (*.f64 x x))
0.0ms
x
@inf
(/.f64 (*.f64 1/2 x) (*.f64 x x))
0.0ms
x
@-inf
(/.f64 (*.f64 1/2 x) (*.f64 x x))

rewrite133.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
673×pow1_binary64
633×add-log-exp_binary64
633×log1p-expm1-u_binary64
633×expm1-log1p-u_binary64
617×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0610
11334
218604
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(/.f64 (*.f64 1/2 x) (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 x (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 x (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1/2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 1/2 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 x) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 x)) (pow.f64 (cbrt.f64 (/.f64 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 x)) 2) (cbrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 x)) 2) (*.f64 (cbrt.f64 (*.f64 1/2 x)) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 x)) (sqrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 x)) (*.f64 (sqrt.f64 (*.f64 1/2 x)) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x -1/2) (/.f64 1 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) (*.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 x)) 2) 1) (/.f64 (cbrt.f64 (*.f64 1/2 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 1/2 x)) 1) (/.f64 (sqrt.f64 (*.f64 1/2 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 x)) 2) x) (/.f64 (cbrt.f64 (*.f64 1/2 x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 x x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 x 4))) (/.f64 x (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (cbrt.f64 (pow.f64 x 4))) (/.f64 1/2 (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 x 4))) (/.f64 (*.f64 1/2 x) (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 x)) 2) (cbrt.f64 (pow.f64 x 4))) (cbrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 1/2 x)) (cbrt.f64 (pow.f64 x 4))) (/.f64 (sqrt.f64 (*.f64 1/2 x)) (pow.f64 (cbrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 1/2 x) (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 1/2 x) 3) (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 x)))))))

simplify12.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0448
Stop Event
saturated
Counts
51 → 40
Calls
Call 1
Inputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
Outputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)

eval66.0ms (0.9%)

Compiler

Compiled 2776 to 2115 computations (23.8% saved)

prune38.0ms (0.5%)

Pruning

8 alts after pruning (2 fresh and 6 done)

PrunedKeptTotal
New2291230
Fresh011
Picked101
Done268
Total2328240
Error
0b
Counts
240 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
32.5b
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
32.7b
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
30.4b
(/.f64 1/2 x)
60.9b
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
31.8b
x
30.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)
30.9b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
60.1b
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
Compiler

Compiled 232 to 91 computations (60.8% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.8b
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
Compiler

Compiled 19 to 15 computations (21.1% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
0.0ms
x
@-inf
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
0.0ms
x
@inf
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)

rewrite53.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
782×pow1_binary64
736×add-log-exp_binary64
736×log1p-expm1-u_binary64
736×expm1-log1p-u_binary64
725×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0710
11634
222554
Stop Event
node limit
Counts
1 → 49
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (/.f64 1/2 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (+.f64 (/.f64 1/2 x) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 1/2 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 x)) (cbrt.f64 (/.f64 1/4 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 (*.f64 x x))) (cbrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 x)) (sqrt.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (/.f64 1 (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) 1) (-.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2)) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 1/2 x) 2) (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (neg.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (-.f64 1 (*.f64 (+.f64 1 (/.f64 1/2 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (*.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (+.f64 (/.f64 1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x)) (-.f64 (+.f64 1 (/.f64 1/2 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 1/2 x)) 2) (+.f64 (/.f64 1/2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (/.f64 1/2 x) 2) (/.f64 1/2 x))) (neg.f64 (+.f64 (/.f64 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 1/2 x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 1/2 x) -1) (+.f64 (/.f64 1/2 x) -1)) (+.f64 (/.f64 1/2 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 1/2 x) -1) (+.f64 (/.f64 1/2 x) -1))) (-.f64 1 (+.f64 (/.f64 1/2 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/8 (pow.f64 x 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 1/8 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (/.f64 1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 1/2 x))) 2) (cbrt.f64 (+.f64 1 (/.f64 1/2 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) (hypot.f64 1 (sqrt.f64 (/.f64 1/2 x))) -1)))))

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0448
Stop Event
saturated
Counts
61 → 49
Calls
Call 1
Inputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
Outputs
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)
(/.f64 1/2 x)

eval12.0ms (0.2%)

Compiler

Compiled 520 to 429 computations (17.5% saved)

prune11.0ms (0.2%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New49049
Fresh011
Picked011
Done066
Total49857
Error
0b
Counts
57 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
32.5b
(+.f64 (*.f64 3321371254951887171/12500000000000000000 (pow.f64 x 5)) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x))
32.7b
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
30.4b
(/.f64 1/2 x)
60.9b
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
31.8b
x
30.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)
30.9b
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
60.1b
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
Compiler

Compiled 232 to 91 computations (60.8% saved)

regimes101.0ms (1.4%)

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

2 calls:

72.0ms
(*.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)
20.0ms
x
Results
ErrorSegmentsBranch
0.0b3x
0.3b2(*.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 486 to 188 computations (61.3% saved)

bsearch125.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
77.0ms
7.908190706125405
21429.54292376538
47.0ms
-8.564039961946689e+57
-3.25944592962656e+20
Compiler

Compiled 178 to 49 computations (72.5% saved)

regimes24.0ms (0.3%)

Counts
9 → 3
Calls
Call 1
Inputs
x
(/.f64 1/2 x)
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
(/.f64 (*.f64 1/2 x) (*.f64 x x))
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Outputs
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))
Calls

1 calls:

20.0ms
x
Results
ErrorSegmentsBranch
0.2b3x
Compiler

Compiled 66 to 43 computations (34.8% saved)

bsearch202.0ms (2.9%)

Algorithm
binary-search
Steps
TimeLeftRight
113.0ms
7.357464671497419e-7
7.908190706125405
89.0ms
-8263.882917271578
-0.0032733772091323274
Compiler

Compiled 178 to 49 computations (72.5% saved)

regimes23.0ms (0.3%)

Counts
8 → 3
Calls
Call 1
Inputs
x
(/.f64 1/2 x)
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
(/.f64 (*.f64 1/2 x) (*.f64 x x))
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
Outputs
(/.f64 1/2 x)
(+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x)
(/.f64 1/2 x)
Calls

1 calls:

19.0ms
x
Results
ErrorSegmentsBranch
0.4b3x
Compiler

Compiled 57 to 36 computations (36.8% saved)

bsearch102.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
53.0ms
7.357464671497419e-7
7.908190706125405
49.0ms
-8263.882917271578
-0.0032733772091323274
Compiler

Compiled 178 to 49 computations (72.5% saved)

regimes26.0ms (0.4%)

Accuracy

Total -61.6b remaining (-10869.7%)

Threshold costs -61.6b (-10869.7%)

Counts
7 → 3
Calls
Call 1
Inputs
x
(/.f64 1/2 x)
(-.f64 (+.f64 1 (/.f64 1/2 x)) 1)
(/.f64 (*.f64 1/2 x) (*.f64 x x))
(*.f64 (/.f64 1/2 (*.f64 x x)) x)
(*.f64 (-.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) 1) x)
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 x (*.f64 x x)))) 1)
Outputs
(/.f64 1/2 x)
x
(/.f64 1/2 x)
Calls

1 calls:

23.0ms
x
Results
ErrorSegmentsBranch
0.6b3x
Compiler

Compiled 50 to 31 computations (38% saved)

bsearch103.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
53.0ms
7.357464671497419e-7
7.908190706125405
49.0ms
-8263.882917271578
-0.0032733772091323274
Compiler

Compiled 178 to 49 computations (72.5% saved)

simplify10.0ms (0.2%)

Algorithm
egg-herbie
Rules
17×*-commutative_binary64
13×+-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
073385
1105385
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 x -8564039961946688746182560576856382674725350120463282470912) (/.f64 1/2 x) (if (<=.f64 x 4451915589660149/562949953421312) (*.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 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(if (<=.f64 x -70986213735309/8589934592) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(if (<=.f64 x -70986213735309/8589934592) (/.f64 1/2 x) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x) (/.f64 1/2 x)))
(if (<=.f64 x -70986213735309/8589934592) (/.f64 1/2 x) (if (<=.f64 x 6948928912715387/9444732965739290427392) x (/.f64 1/2 x)))
x
Outputs
(if (<=.f64 x -8564039961946688746182560576856382674725350120463282470912) (/.f64 1/2 x) (if (<=.f64 x 4451915589660149/562949953421312) (*.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 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(if (<=.f64 x -8564039961946688746182560576856382674725350120463282470912) (/.f64 1/2 x) (if (<=.f64 x 4451915589660149/562949953421312) (*.f64 x (/.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 x x) (*.f64 (*.f64 x x) (*.f64 x x))))) (*.f64 2532017/5000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x)))))) (*.f64 1789971/10000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x))))))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 (*.f64 x x) 7715471019/10000000000)) (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2909738639/10000000000)) (*.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x))) 694555761/10000000000)) (*.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x)))) 70002721/5000000000)) (*.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x))))) 1665589/2000000000)) (*.f64 1789971/5000000000 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x)))))))))) (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))))
(if (<=.f64 x -70986213735309/8589934592) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x)) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x) (+.f64 (/.f64 600041/2386628 (pow.f64 x 3)) (/.f64 1/2 x))))
(if (<=.f64 x -70986213735309/8589934592) (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 x (*.f64 (pow.f64 x 3) -833192009/1250000000)) (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3)))))
(if (<=.f64 x -70986213735309/8589934592) (/.f64 1/2 x) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 (*.f64 -833192009/1250000000 (pow.f64 x 3)) x) (/.f64 1/2 x)))
(if (<=.f64 x -70986213735309/8589934592) (/.f64 1/2 x) (if (<=.f64 x 6948928912715387/9444732965739290427392) (+.f64 x (*.f64 (pow.f64 x 3) -833192009/1250000000)) (/.f64 1/2 x)))
(if (<=.f64 x -70986213735309/8589934592) (/.f64 1/2 x) (if (<=.f64 x 6948928912715387/9444732965739290427392) x (/.f64 1/2 x)))
x
Compiler

Compiled 266 to 113 computations (57.5% saved)

soundness1.2s (16.6%)

Algorithm
egg-herbie
Rules
755×unswap-sqr_binary64
755×unswap-sqr_binary64
748×distribute-lft-out_binary64
705×fma-def_binary64
705×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046256
1133150
2600101
3327290
4527884
5613584
6666384
046256
1133150
2600101
3327290
4527884
5613584
6666384
073555
1182535
2422531
31101531
44372531
57195531
Stop Event
node limit
node limit
node limit
Compiler

Compiled 29454 to 11522 computations (60.9% saved)

end86.0ms (1.2%)

Compiler

Compiled 262 to 109 computations (58.4% saved)

Profiling

Loading profile data...