Details

Time bar (total: 11.3s)

analyze287.0ms (2.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
12.5%87.4%0.1%5
18.7%81.2%0.1%6
28.1%71.8%0.1%7
32.8%67.1%0.1%8
38.2%61.7%0.1%9
41%58.9%0.1%10
43.9%56%0.1%11
45.4%54.5%0.1%12
Compiler

Compiled 19 to 9 computations (52.6% saved)

sample4.2s (37%)

Results
2.4s4023×body8192exit
1.1s7519×body256valid
491.0ms3954×body256invalid
152.0ms711×body512valid
8.0ms26×body1024valid

preprocess149.0ms (1.3%)

Algorithm
egg-herbie
Rules
418×neg-mul-1_binary64
385×div-sub_binary64
340×times-frac_binary64
314×sub-neg_binary64
268×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01546
14046
210946
330542
485736
5328936
6579836
7777236
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
(-.f64 x (/.f64 (-.f64 (*.f64 x (exp.f64 x)) wj) (+.f64 (exp.f64 x) (*.f64 x (exp.f64 x)))))
Outputs
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (*.f64 (+.f64 wj 1) (exp.f64 wj))))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (fma.f64 wj (exp.f64 wj) (exp.f64 wj))))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 wj (/.f64 (-.f64 (/.f64 wj 1) (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
(+.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (-.f64 -1 wj)))
(-.f64 x (/.f64 (-.f64 (*.f64 x (exp.f64 x)) wj) (+.f64 (exp.f64 x) (*.f64 x (exp.f64 x)))))
(-.f64 x (/.f64 (fma.f64 x (exp.f64 x) (neg.f64 wj)) (*.f64 (+.f64 x 1) (exp.f64 x))))
(-.f64 x (/.f64 (-.f64 (*.f64 x (exp.f64 x)) wj) (*.f64 (exp.f64 x) (+.f64 x 1))))
(-.f64 x (/.f64 (fma.f64 x (exp.f64 x) (neg.f64 wj)) (*.f64 (exp.f64 x) (+.f64 x 1))))
(-.f64 x (/.f64 (-.f64 (/.f64 x 1) (/.f64 wj (exp.f64 x))) (+.f64 x 1)))
(+.f64 x (/.f64 (-.f64 (/.f64 wj (exp.f64 x)) x) (+.f64 x 1)))
(+.f64 x (/.f64 (-.f64 x (/.f64 wj (exp.f64 x))) (-.f64 -1 x)))
Compiler

Compiled 20 to 10 computations (50% saved)

simplify77.0ms (0.7%)

Algorithm
egg-herbie
Rules
503×fma-def_binary64
485×div-sub_binary64
467×fma-neg_binary64
417×distribute-neg-frac_binary64
300×associate-/r*_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0923
12223
25823
315721
446218
5152918
6486118
7703418
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
Outputs
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (*.f64 (+.f64 wj 1) (exp.f64 wj))))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 wj (/.f64 (-.f64 (/.f64 wj 1) (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))

eval1.0ms (0%)

Compiler

Compiled 30 to 14 computations (53.3% saved)

prune68.0ms (0.6%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
11.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
11.0b
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
11.0b
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
Compiler

Compiled 32 to 17 computations (46.9% saved)

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1))
0.0b
(/.f64 x (exp.f64 wj))
4.6b
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
Compiler

Compiled 42 to 15 computations (64.3% saved)

series12.0ms (0.1%)

Counts
3 → 52
Calls

18 calls:

TimeVariablePointExpression
1.0ms
wj
@0
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
1.0ms
x
@0
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
1.0ms
x
@-inf
(/.f64 x (exp.f64 wj))
1.0ms
x
@inf
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
1.0ms
wj
@0
(/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1))

rewrite230.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
642×log-prod_binary64
496×fma-def_binary64
331×pow2_binary64
269×fma-neg_binary64
241×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify178.0ms (1.6%)

Algorithm
egg-herbie
Rules
660×associate-+l+_binary64
427×associate-+r+_binary64
352×associate--l+_binary64
335×associate-*l*_binary64
330×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01391138
14661068
21720989
Stop Event
node limit
Counts
249 → 253
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
wj
(-.f64 wj 1)
(-.f64 (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) wj)) 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) wj))) 1)
wj
(-.f64 wj 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj) 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj)) (+.f64 1 (/.f64 1 (pow.f64 wj 2))))
(-.f64 wj (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
x
(+.f64 (*.f64 -1 (*.f64 wj x)) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (*.f64 wj x)) x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (*.f64 wj x)) x)))
(*.f64 -1 x)
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 -1 x))
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -2 x)) (+.f64 1 x)))))
(+.f64 (*.f64 (-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))) x)))) (+.f64 (*.f64 1/2 x) (*.f64 -2 x))) (pow.f64 wj 3)) (+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -2 x)) (+.f64 1 x))))))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 2)))) (+.f64 (/.f64 1 wj) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj))))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (/.f64 1 (pow.f64 wj 2)) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 3)))))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) (pow.f64 wj 2))) (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))))
(/.f64 wj (+.f64 1 wj))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
Outputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 x wj) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(fma.f64 (-.f64 1 (*.f64 x -5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x))
(fma.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(fma.f64 -1 (*.f64 (fma.f64 2/3 x (fma.f64 -3 x (+.f64 1 (*.f64 -2 (*.f64 x -5/2))))) (pow.f64 wj 3)) (fma.f64 (-.f64 1 (*.f64 x -5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x)))
(-.f64 (fma.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x)) (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)))
(-.f64 (fma.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x)) (*.f64 (+.f64 1 (*.f64 x 8/3)) (pow.f64 wj 3)))
wj
(-.f64 wj 1)
(+.f64 wj -1)
(-.f64 (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) wj)) 1)
(+.f64 (/.f64 1 wj) (-.f64 (+.f64 wj (/.f64 x (*.f64 wj (exp.f64 wj)))) 1))
(+.f64 -1 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))))
(+.f64 -1 (+.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (+.f64 (/.f64 1 wj) wj)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) wj))) 1)
(+.f64 (fma.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj)) (+.f64 (/.f64 1 wj) (+.f64 wj (/.f64 x (*.f64 wj (exp.f64 wj)))))) -1)
(+.f64 -1 (-.f64 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj))))
(+.f64 -1 (+.f64 (-.f64 0 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))) wj))
wj
(-.f64 wj 1)
(+.f64 wj -1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj) 1)
(+.f64 (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj) wj) -1)
(+.f64 -1 (-.f64 wj (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj)))
(+.f64 wj (+.f64 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj) -1))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj)) (+.f64 1 (/.f64 1 (pow.f64 wj 2))))
(-.f64 (fma.f64 -1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj) wj)) (+.f64 1 (/.f64 1 (*.f64 wj wj))))
(-.f64 (-.f64 (-.f64 wj (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj)) (/.f64 (/.f64 (/.f64 x wj) wj) (exp.f64 wj))) (+.f64 1 (/.f64 1 (*.f64 wj wj))))
(+.f64 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj) (+.f64 wj (+.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj)) -1)))
(-.f64 wj (/.f64 wj (+.f64 1 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 wj (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))) (/.f64 wj (+.f64 wj 1)))
(+.f64 wj (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
x
(+.f64 (*.f64 -1 (*.f64 wj x)) x)
(fma.f64 -1 (*.f64 x wj) x)
(-.f64 x (*.f64 x wj))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (*.f64 wj x)) x))
(fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -1/2)) (fma.f64 -1 (*.f64 x wj) x))
(fma.f64 (*.f64 x 1/2) (*.f64 wj wj) (-.f64 x (*.f64 x wj)))
(+.f64 x (*.f64 wj (-.f64 (*.f64 1/2 (*.f64 x wj)) x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (*.f64 wj x)) x)))
(fma.f64 -1 (*.f64 (pow.f64 wj 3) (fma.f64 -1/2 x (fma.f64 1/6 x (neg.f64 (*.f64 x -1/2))))) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -1/2)) (fma.f64 -1 (*.f64 x wj) x)))
(-.f64 (fma.f64 (*.f64 x 1/2) (*.f64 wj wj) (-.f64 x (*.f64 x wj))) (*.f64 (pow.f64 wj 3) (-.f64 (*.f64 x -1/3) (*.f64 x -1/2))))
(+.f64 (*.f64 wj (-.f64 (*.f64 1/2 (*.f64 x wj)) x)) (-.f64 x (*.f64 x (*.f64 1/6 (pow.f64 wj 3)))))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 -1 x))
(fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (neg.f64 x))
(fma.f64 wj (+.f64 x (+.f64 x 1)) (neg.f64 x))
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -2 x)) (+.f64 1 x)))))
(fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 -1 x (*.f64 (*.f64 wj wj) (-.f64 (*.f64 x -3/2) (+.f64 x 1)))))
(fma.f64 wj (+.f64 x (+.f64 x 1)) (fma.f64 (*.f64 wj wj) (-.f64 (fma.f64 x -3/2 -1) x) (neg.f64 x)))
(-.f64 (*.f64 wj (+.f64 (+.f64 x (+.f64 x 1)) (*.f64 (+.f64 (*.f64 x -5/2) -1) wj))) x)
(+.f64 (*.f64 (-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))) x)))) (+.f64 (*.f64 1/2 x) (*.f64 -2 x))) (pow.f64 wj 3)) (+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -2 x)) (+.f64 1 x))))))
(fma.f64 (-.f64 (+.f64 1 (fma.f64 -1/2 x (fma.f64 1/6 x (fma.f64 -1 (*.f64 x -1/2) x)))) (*.f64 x -3/2)) (pow.f64 wj 3) (fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 -1 x (*.f64 (*.f64 wj wj) (-.f64 (*.f64 x -3/2) (+.f64 x 1))))))
(fma.f64 (pow.f64 wj 3) (+.f64 (+.f64 (-.f64 (*.f64 x -1/3) (*.f64 x -1/2)) x) (-.f64 1 (*.f64 x -3/2))) (fma.f64 wj (+.f64 x (+.f64 x 1)) (fma.f64 (*.f64 wj wj) (-.f64 (fma.f64 x -3/2 -1) x) (neg.f64 x))))
(fma.f64 (+.f64 1 (*.f64 x 8/3)) (pow.f64 wj 3) (-.f64 (*.f64 wj (+.f64 (+.f64 x (+.f64 x 1)) (*.f64 (+.f64 (*.f64 x -5/2) -1) wj))) x))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(+.f64 1 (-.f64 (/.f64 (neg.f64 x) (*.f64 wj (exp.f64 wj))) (/.f64 1 wj)))
(+.f64 1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj))
(+.f64 1 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 2)))) (+.f64 (/.f64 1 wj) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj))))))
(-.f64 (+.f64 1 (fma.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 1 (*.f64 wj wj)))) (+.f64 (/.f64 1 wj) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(+.f64 1 (-.f64 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (exp.f64 wj)))) (-.f64 (/.f64 1 wj) (/.f64 (/.f64 (/.f64 x wj) wj) (exp.f64 wj)))))
(+.f64 (+.f64 1 (/.f64 1 (*.f64 wj wj))) (+.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (/.f64 1 (pow.f64 wj 2)) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 3)))))
(+.f64 1 (-.f64 (+.f64 (fma.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 1 (*.f64 wj wj))) (/.f64 (neg.f64 x) (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (/.f64 1 (pow.f64 wj 3))))))
(+.f64 1 (-.f64 (-.f64 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (+.f64 (-.f64 (/.f64 1 wj) (/.f64 (/.f64 (/.f64 x wj) wj) (exp.f64 wj))) (/.f64 1 (pow.f64 wj 3)))))
(+.f64 (+.f64 (+.f64 1 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj)) (+.f64 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (/.f64 -1 (pow.f64 wj 3))))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(+.f64 1 (-.f64 (/.f64 (neg.f64 x) (*.f64 wj (exp.f64 wj))) (/.f64 1 wj)))
(+.f64 1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj))
(+.f64 1 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) (pow.f64 wj 2))) (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) (*.f64 wj wj)) (/.f64 (neg.f64 x) (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(+.f64 (-.f64 1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) (*.f64 wj wj))) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) wj))
(+.f64 1 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))))
(+.f64 1 (-.f64 (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) (*.f64 wj wj)) (*.f64 -1 (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj)))))) (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3)))))
(+.f64 1 (-.f64 (-.f64 (-.f64 (/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) wj) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) -1) (*.f64 wj wj))) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3)))))
(+.f64 1 (+.f64 (+.f64 (/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (pow.f64 wj 3)) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))) (/.f64 -1 (pow.f64 wj 3))))
(/.f64 wj (+.f64 1 wj))
(/.f64 wj (+.f64 wj 1))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj))))
(/.f64 (neg.f64 x) (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj))))
(/.f64 (neg.f64 x) (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 wj (+.f64 1 wj)) (*.f64 -1 (/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1)))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))
0.0b
(+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))
0.0b
(*.f64 wj (exp.f64 wj))
4.6b
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
Compiler

Compiled 53 to 8 computations (84.9% saved)

series12.0ms (0.1%)

Counts
4 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
x
@0
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
1.0ms
wj
@-inf
(/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))
1.0ms
x
@inf
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
1.0ms
x
@inf
(/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))
1.0ms
wj
@-inf
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))

rewrite138.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
681×fma-def_binary64
662×log-prod_binary64
347×fma-neg_binary64
321×pow2_binary64
219×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify91.0ms (0.8%)

Algorithm
egg-herbie
Rules
911×fma-neg_binary64
657×fma-def_binary64
547×sub-neg_binary64
412×associate-+l+_binary64
368×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01511482
14471430
213901167
358941133
Stop Event
node limit
Counts
321 → 315
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
wj
(-.f64 wj 1)
(-.f64 (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) wj)) 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) wj))) 1)
wj
(-.f64 wj 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj) 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj)) 1)
(-.f64 wj (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
wj
(+.f64 (pow.f64 wj 2) wj)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) (+.f64 wj (*.f64 1/6 (pow.f64 wj 4)))))
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
1
(+.f64 1 (*.f64 2 wj))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj)))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj))))
(*.f64 (exp.f64 wj) wj)
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 -1 x)
(+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj))
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x))))) (pow.f64 wj 2)) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj)))
(+.f64 (*.f64 (-.f64 1/2 (+.f64 (*.f64 2 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x)))))) (+.f64 (*.f64 -2/3 x) (*.f64 3/2 (-.f64 1 (*.f64 -2 x)))))) (pow.f64 wj 3)) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x))))) (pow.f64 wj 2)) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj))))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 2)))) (+.f64 (/.f64 1 wj) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj))))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (/.f64 1 (pow.f64 wj 2)) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 3)))))
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)))
(+.f64 1 (+.f64 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)) (/.f64 1 (pow.f64 wj 2)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)) (+.f64 (/.f64 1 (pow.f64 wj 2)) (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))))))
(/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
Outputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 -2 wj 1))
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(fma.f64 (-.f64 1 (*.f64 x -5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x))
(fma.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj (*.f64 wj (fma.f64 x 5/2 1)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(fma.f64 -1 (*.f64 (fma.f64 2/3 x (fma.f64 -3 x (+.f64 1 (*.f64 -2 (*.f64 x -5/2))))) (pow.f64 wj 3)) (fma.f64 (-.f64 1 (*.f64 x -5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x)))
(fma.f64 (neg.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3))) (pow.f64 wj 3) (fma.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj) (fma.f64 -2 (*.f64 x wj) x)))
(fma.f64 (fma.f64 -2 wj 1) x (*.f64 (*.f64 wj wj) (+.f64 (neg.f64 (+.f64 (*.f64 (*.f64 x 8/3) wj) wj)) (fma.f64 x 5/2 1))))
(fma.f64 (fma.f64 -2 wj 1) x (*.f64 (*.f64 wj wj) (-.f64 (fma.f64 x 5/2 1) (+.f64 (*.f64 (*.f64 x 8/3) wj) wj))))
wj
(-.f64 wj 1)
(+.f64 wj -1)
(-.f64 (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) wj)) 1)
(+.f64 (+.f64 (/.f64 1 wj) (+.f64 wj (/.f64 (/.f64 x wj) (exp.f64 wj)))) -1)
(+.f64 -1 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 1 (/.f64 -1 wj)))
(+.f64 -1 (+.f64 wj (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) wj))) 1)
(+.f64 (fma.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj)) (+.f64 (/.f64 1 wj) (+.f64 wj (/.f64 (/.f64 x wj) (exp.f64 wj))))) -1)
(+.f64 -1 (-.f64 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj))))
(+.f64 (+.f64 wj (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) -1)) (-.f64 (/.f64 1 wj) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj))))
(+.f64 wj (fma.f64 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj) (+.f64 1 (/.f64 -1 wj)) -1))
wj
(-.f64 wj 1)
(+.f64 wj -1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj) 1)
(+.f64 (+.f64 (/.f64 1 wj) (+.f64 wj (/.f64 (/.f64 x wj) (exp.f64 wj)))) -1)
(+.f64 -1 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))))
(-.f64 (+.f64 wj (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 1 (/.f64 -1 wj)))
(+.f64 -1 (+.f64 wj (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 (/.f64 x (exp.f64 wj))) 1) wj)) wj)) 1)
(+.f64 (fma.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj)) (+.f64 (/.f64 1 wj) (+.f64 wj (/.f64 (/.f64 x wj) (exp.f64 wj))))) -1)
(+.f64 -1 (-.f64 (+.f64 wj (+.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj))))
(+.f64 (+.f64 wj (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) -1)) (-.f64 (/.f64 1 wj) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (*.f64 wj wj))))
(+.f64 wj (fma.f64 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj) (+.f64 1 (/.f64 -1 wj)) -1))
(-.f64 wj (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 wj (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))) wj) (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) wj) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))
(+.f64 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (-.f64 wj (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)))
(+.f64 wj (-.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1))))
wj
(+.f64 (pow.f64 wj 2) wj)
(+.f64 wj (*.f64 wj wj))
(fma.f64 wj wj wj)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) wj))
(+.f64 (*.f64 wj wj) (fma.f64 1/2 (pow.f64 wj 3) wj))
(fma.f64 wj wj (fma.f64 (pow.f64 wj 3) 1/2 wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) (+.f64 wj (*.f64 1/6 (pow.f64 wj 4)))))
(+.f64 (*.f64 wj wj) (+.f64 (fma.f64 1/2 (pow.f64 wj 3) wj) (*.f64 1/6 (pow.f64 wj 4))))
(fma.f64 wj wj (fma.f64 (pow.f64 wj 3) 1/2 (fma.f64 1/6 (pow.f64 wj 4) wj)))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
1
(+.f64 1 (*.f64 2 wj))
(+.f64 1 (*.f64 wj 2))
(fma.f64 wj 2 1)
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj)))
(+.f64 1 (fma.f64 3/2 (*.f64 wj wj) (*.f64 wj 2)))
(+.f64 (fma.f64 wj 2 1) (*.f64 wj (*.f64 wj 3/2)))
(fma.f64 wj 2 (fma.f64 wj (*.f64 wj 3/2) 1))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj))))
(+.f64 1 (fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2))))
(+.f64 1 (fma.f64 3/2 (*.f64 wj wj) (fma.f64 wj 2 (*.f64 2/3 (pow.f64 wj 3)))))
(+.f64 1 (fma.f64 wj 2 (*.f64 (*.f64 wj wj) (+.f64 3/2 (*.f64 wj 2/3)))))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(*.f64 (+.f64 wj 1) (exp.f64 wj))
(*.f64 (exp.f64 wj) (+.f64 wj 1))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj))
(fma.f64 -1 x (*.f64 wj (+.f64 1 (*.f64 2 x))))
(fma.f64 wj (+.f64 1 (*.f64 x 2)) (neg.f64 x))
(-.f64 (*.f64 wj (fma.f64 x 2 1)) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x))))) (pow.f64 wj 2)) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj)))
(fma.f64 (-.f64 1 (fma.f64 -3/2 x (*.f64 2 (+.f64 1 (*.f64 2 x))))) (*.f64 wj wj) (fma.f64 -1 x (*.f64 wj (+.f64 1 (*.f64 2 x)))))
(fma.f64 (*.f64 wj wj) (-.f64 1 (fma.f64 x -3/2 (+.f64 2 (*.f64 (*.f64 x 2) 2)))) (fma.f64 wj (+.f64 1 (*.f64 x 2)) (neg.f64 x)))
(-.f64 (*.f64 wj (+.f64 (fma.f64 x 2 1) (*.f64 wj (-.f64 1 (+.f64 2 (*.f64 x 5/2)))))) x)
(-.f64 (*.f64 wj (+.f64 (fma.f64 x 2 1) (*.f64 wj (-.f64 1 (-.f64 2 (*.f64 x -5/2)))))) x)
(+.f64 (*.f64 (-.f64 1/2 (+.f64 (*.f64 2 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x)))))) (+.f64 (*.f64 -2/3 x) (*.f64 3/2 (-.f64 1 (*.f64 -2 x)))))) (pow.f64 wj 3)) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -3/2 x) (*.f64 2 (-.f64 1 (*.f64 -2 x))))) (pow.f64 wj 2)) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 1 (*.f64 -2 x)) wj))))
(fma.f64 (-.f64 1/2 (fma.f64 2 (-.f64 1 (fma.f64 -3/2 x (*.f64 2 (+.f64 1 (*.f64 2 x))))) (fma.f64 -2/3 x (*.f64 3/2 (+.f64 1 (*.f64 2 x)))))) (pow.f64 wj 3) (fma.f64 (-.f64 1 (fma.f64 -3/2 x (*.f64 2 (+.f64 1 (*.f64 2 x))))) (*.f64 wj wj) (fma.f64 -1 x (*.f64 wj (+.f64 1 (*.f64 2 x))))))
(fma.f64 (pow.f64 wj 3) (-.f64 1/2 (fma.f64 2 (-.f64 1 (fma.f64 x -3/2 (+.f64 2 (*.f64 (*.f64 x 2) 2)))) (fma.f64 3/2 (+.f64 1 (*.f64 x 2)) (*.f64 x -2/3)))) (fma.f64 (*.f64 wj wj) (-.f64 1 (fma.f64 x -3/2 (+.f64 2 (*.f64 (*.f64 x 2) 2)))) (fma.f64 wj (+.f64 1 (*.f64 x 2)) (neg.f64 x))))
(fma.f64 (pow.f64 wj 3) (-.f64 (-.f64 -3/2 (*.f64 -2 (+.f64 2 (*.f64 x 5/2)))) (+.f64 3/2 (*.f64 x 7/3))) (-.f64 (*.f64 wj (+.f64 (fma.f64 x 2 1) (*.f64 wj (-.f64 1 (+.f64 2 (*.f64 x 5/2)))))) x))
(fma.f64 (pow.f64 wj 3) (-.f64 (+.f64 -3/2 (*.f64 2 (-.f64 2 (*.f64 x -5/2)))) (+.f64 3/2 (*.f64 x 7/3))) (-.f64 (*.f64 wj (+.f64 (fma.f64 x 2 1) (*.f64 wj (-.f64 1 (-.f64 2 (*.f64 x -5/2)))))) x))
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj))))) (/.f64 1 wj))
(-.f64 (+.f64 1 (/.f64 (neg.f64 x) (*.f64 wj (exp.f64 wj)))) (/.f64 1 wj))
(-.f64 1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj))
(+.f64 1 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 2)))) (+.f64 (/.f64 1 wj) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj))))))
(-.f64 (+.f64 1 (fma.f64 -1 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 1 (*.f64 wj wj)))) (+.f64 (/.f64 1 wj) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(+.f64 (-.f64 1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (-.f64 (/.f64 1 (*.f64 wj wj)) (-.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))))
(+.f64 1 (+.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (/.f64 1 (pow.f64 wj 2)) (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))) (/.f64 1 (pow.f64 wj 3)))))
(+.f64 1 (-.f64 (+.f64 (fma.f64 -1 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 1 (*.f64 wj wj))) (/.f64 (neg.f64 x) (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (/.f64 1 (pow.f64 wj 3))))))
(+.f64 1 (-.f64 (-.f64 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 (/.f64 x (pow.f64 wj 3)) (exp.f64 wj))) (+.f64 (/.f64 1 wj) (-.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj))))))))
(+.f64 (+.f64 1 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (exp.f64 wj))))) (-.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3)) (-.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))))
(+.f64 (+.f64 1 (-.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (exp.f64 wj))))) (+.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3)) (+.f64 (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))) (/.f64 -1 wj))))
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)))
(-.f64 (+.f64 1 (/.f64 (neg.f64 x) (*.f64 wj (exp.f64 wj)))) (/.f64 1 wj))
(-.f64 1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj))
(+.f64 1 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))
(+.f64 1 (+.f64 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)) (/.f64 1 (pow.f64 wj 2)))))
(-.f64 (+.f64 1 (fma.f64 -1 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 1 (*.f64 wj wj)))) (+.f64 (/.f64 1 wj) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(+.f64 (-.f64 1 (/.f64 x (*.f64 wj (exp.f64 wj)))) (-.f64 (/.f64 1 (*.f64 wj wj)) (-.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))))
(+.f64 1 (+.f64 (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)) (+.f64 (/.f64 1 (pow.f64 wj 2)) (/.f64 x (*.f64 (pow.f64 wj 2) (exp.f64 wj)))))))
(fma.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3)) (+.f64 (+.f64 1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))) (fma.f64 -1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj) (/.f64 1 (*.f64 wj wj)))))
(-.f64 (+.f64 (-.f64 1 (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) wj)) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3)))
(+.f64 (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))) (-.f64 (+.f64 1 (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))) (/.f64 (+.f64 1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3))))
(+.f64 (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))) (+.f64 (+.f64 1 (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) wj))) (/.f64 (-.f64 -1 (/.f64 x (exp.f64 wj))) (pow.f64 wj 3))))
(/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
(/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj))
(*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj)
(/.f64 wj (+.f64 wj 1))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))) (/.f64 (*.f64 (exp.f64 wj) wj) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(/.f64 (neg.f64 x) (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 (neg.f64 x) (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))))
(/.f64 (neg.f64 x) (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 (neg.f64 x) (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(+.f64 (/.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))) (*.f64 -1 (/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))))
(fma.f64 -1 (/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj))) (/.f64 (exp.f64 wj) (/.f64 (*.f64 (+.f64 wj 1) (exp.f64 wj)) wj)))
(-.f64 (*.f64 (/.f64 (exp.f64 wj) (*.f64 (exp.f64 wj) (+.f64 wj 1))) wj) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))
(-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1))))

eval185.0ms (1.6%)

Compiler

Compiled 15152 to 4942 computations (67.4% saved)

prune139.0ms (1.2%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New57814592
Fresh000
Picked101
Done101
Total58014594
Error
0.0b
Counts
594 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
61.4b
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
6.8b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
11.0b
(fma.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
7.2b
x
6.7b
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
61.6b
wj
6.6b
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
1.0b
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
1.0b
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj (*.f64 wj (fma.f64 x 5/2 1)) x))
11.2b
(-.f64 wj (/.f64 (-.f64 wj (+.f64 x (*.f64 wj (-.f64 (*.f64 1/2 (*.f64 x wj)) x)))) (+.f64 wj 1)))
47.2b
(fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (fma.f64 (neg.f64 (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj))))) (-.f64 (*.f64 wj (exp.f64 wj)) x) (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj))))))
11.2b
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
33.9b
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (-.f64 wj (/.f64 x (exp.f64 wj)))) (+.f64 wj 1)))
0.8b
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
Compiler

Compiled 522 to 308 computations (41% saved)

localize193.0ms (1.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(+.f64 (*.f64 -4 x) (*.f64 3/2 x))
1.0b
(+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))
3.5b
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
8.9b
(*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2))
Compiler

Compiled 245 to 181 computations (26.1% saved)

series25.0ms (0.2%)

Counts
4 → 60
Calls

18 calls:

TimeVariablePointExpression
7.0ms
wj
@0
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
2.0ms
wj
@0
(*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2))
2.0ms
x
@0
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
2.0ms
x
@0
(*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2))
1.0ms
x
@inf
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))

rewrite155.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
452×log1p-udef_binary64
279×add-sqr-sqrt_binary64
265×pow1_binary64
263×*-un-lft-identity_binary64
262×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02555
157147
2760547
Stop Event
node limit
Counts
4 → 128
Calls
Call 1
Inputs
(*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2))
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))
(+.f64 (*.f64 -4 x) (*.f64 3/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj wj) (*.f64 (*.f64 x 5/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj wj) (*.f64 (*.f64 wj wj) (*.f64 x 5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 x 3) -125/8)) (*.f64 wj wj)) (+.f64 1 (+.f64 (*.f64 x -5/2) (*.f64 (*.f64 x x) 25/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (*.f64 (*.f64 x x) 25/4)) (*.f64 wj wj)) (+.f64 1 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 wj wj) (-.f64 1 (*.f64 (pow.f64 x 3) -125/8))) (+.f64 1 (+.f64 (*.f64 x -5/2) (*.f64 (*.f64 x x) 25/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 wj wj) (-.f64 1 (*.f64 (*.f64 x x) 25/4))) (+.f64 1 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj (sqrt.f64 (+.f64 1 (*.f64 x 5/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 wj 4) (pow.f64 (+.f64 1 (*.f64 x 5/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 wj) wj) (+.f64 1 (*.f64 x 5/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 1 (*.f64 x 5/2)) 3) (pow.f64 wj 6)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 wj 6) (pow.f64 (+.f64 1 (*.f64 x 5/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 1 (*.f64 x 5/2)) (*.f64 wj wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log1p.f64 (*.f64 x 5/2)) (*.f64 2 (log.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 (log1p.f64 (*.f64 x 5/2)) (*.f64 2 (log.f64 wj))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x 2/3) (pow.f64 wj 3)) (*.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (pow.f64 wj 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (pow.f64 wj 3)) (*.f64 (*.f64 x 2/3) (pow.f64 wj 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x -7/3) (pow.f64 wj 3)) (*.f64 (+.f64 1 (*.f64 x 5)) (pow.f64 wj 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 wj 3) (*.f64 x 2/3)) (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) (*.f64 (pow.f64 wj 3) (*.f64 x 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 wj 3) (*.f64 x -7/3)) (*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 8/27 (pow.f64 x 3)) (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 3)) (pow.f64 wj 3)) (+.f64 (*.f64 4/9 (*.f64 x x)) (*.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (-.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (*.f64 x 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 4/9 (*.f64 x x)) (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 2)) (pow.f64 wj 3)) (-.f64 (*.f64 x 2/3) (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 8/27 (pow.f64 x 3)) (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 3))) (+.f64 (*.f64 4/9 (*.f64 x x)) (*.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (-.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) (*.f64 x 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 wj 3) (-.f64 (*.f64 4/9 (*.f64 x x)) (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 2))) (-.f64 (*.f64 x 2/3) (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj (cbrt.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3))) (pow.f64 wj 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 wj 6) (pow.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 wj 3)) (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) 3) (pow.f64 (pow.f64 wj 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 wj 3) 3) (pow.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -7/3)) (pow.f64 wj 3))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x -3) 2) (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5)))) (/.f64 (pow.f64 (+.f64 1 (*.f64 x 5)) 2) (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) (pow.f64 (cbrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) 2) (cbrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) (sqrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -27 (pow.f64 x 3)) (pow.f64 (+.f64 1 (*.f64 x 5)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x -3) 2) (*.f64 (+.f64 1 (*.f64 x 5)) (-.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x -3) 2) (pow.f64 (+.f64 1 (*.f64 x 5)) 2)) (/.f64 1 (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x -3) 2) (*.f64 (+.f64 1 (*.f64 x 5)) (-.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -3)))) (+.f64 (*.f64 -27 (pow.f64 x 3)) (pow.f64 (+.f64 1 (*.f64 x 5)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5))) (-.f64 (pow.f64 (*.f64 x -3) 2) (pow.f64 (+.f64 1 (*.f64 x 5)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -27 (pow.f64 x 3)) (pow.f64 (+.f64 1 (*.f64 x 5)) 3)) (+.f64 (pow.f64 (*.f64 x -3) 2) (*.f64 (+.f64 1 (*.f64 x 5)) (-.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -27 (pow.f64 x 3)) (pow.f64 (+.f64 1 (*.f64 x 5)) 3)) (+.f64 (pow.f64 (+.f64 1 (*.f64 x 5)) 2) (-.f64 (pow.f64 (*.f64 x -3) 2) (*.f64 x (*.f64 -3 (+.f64 1 (*.f64 x 5)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x -3) 2) (pow.f64 (+.f64 1 (*.f64 x 5)) 2)) (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 -27 (pow.f64 x 3)) (pow.f64 (+.f64 1 (*.f64 x 5)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x -3) 2) (*.f64 (+.f64 1 (*.f64 x 5)) (-.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x -3) 2) (pow.f64 (+.f64 1 (*.f64 x 5)) 2))) (neg.f64 (-.f64 (*.f64 x -3) (+.f64 1 (*.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x -3 1) 3) (pow.f64 (*.f64 x 5) 3)) (+.f64 (*.f64 (fma.f64 x -3 1) (fma.f64 x -3 1)) (-.f64 (pow.f64 (*.f64 x 5) 2) (*.f64 (fma.f64 x -3 1) (*.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 (*.f64 x 5)) 2) (pow.f64 (*.f64 x -3) 2)) (-.f64 (+.f64 1 (*.f64 x 5)) (*.f64 x -3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (fma.f64 x -3 1) (fma.f64 x -3 1)) (pow.f64 (*.f64 x 5) 2)) (-.f64 (fma.f64 x -3 1) (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (*.f64 x 5) (fma.f64 x -3 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x -3) (+.f64 1 (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (*.f64 x 5)) (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x -3 (+.f64 1 (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -3 x (+.f64 1 (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (*.f64 x 5))) 2) (cbrt.f64 (+.f64 1 (*.f64 x 5))) (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x -3)) 2) (cbrt.f64 (*.f64 x -3)) (+.f64 1 (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (sqrt.f64 (*.f64 x 5))) (hypot.f64 1 (sqrt.f64 (*.f64 x 5))) (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x -3)) (sqrt.f64 (*.f64 x -3)) (+.f64 1 (*.f64 x 5)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x -5/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 16 (*.f64 x x)) (*.f64 x -11/2)) (/.f64 (*.f64 9/4 (*.f64 x x)) (*.f64 x -11/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x -5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x -5/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x -5/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x -5/2)) (cbrt.f64 (*.f64 (*.f64 x x) 25/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 x x) 25/4)) (cbrt.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) -5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x -5/2)) (sqrt.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) -5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -64 (pow.f64 x 3)) (*.f64 27/8 (pow.f64 x 3))) (/.f64 1 (+.f64 (*.f64 16 (*.f64 x x)) (*.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 3/2) (*.f64 -4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x -5/2) (*.f64 x -11/2)) (/.f64 1 (*.f64 x -11/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -5/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 16 (*.f64 x x)) (*.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 3/2) (*.f64 -4 x)))) (+.f64 (*.f64 -64 (pow.f64 x 3)) (*.f64 27/8 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x -11/2) (*.f64 (*.f64 x -5/2) (*.f64 x -11/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -64 (pow.f64 x 3)) (*.f64 27/8 (pow.f64 x 3))) (+.f64 (*.f64 16 (*.f64 x x)) (*.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 3/2) (*.f64 -4 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -64 (pow.f64 x 3)) (*.f64 27/8 (pow.f64 x 3))) (+.f64 (*.f64 9/4 (*.f64 x x)) (-.f64 (*.f64 16 (*.f64 x x)) (*.f64 (*.f64 -4 x) (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -5/2) (*.f64 x -11/2)) (*.f64 x -11/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 -64 (pow.f64 x 3)) (*.f64 27/8 (pow.f64 x 3)))) (neg.f64 (+.f64 (*.f64 16 (*.f64 x x)) (*.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 3/2) (*.f64 -4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 x -5/2) (*.f64 x -11/2))) (neg.f64 (*.f64 x -11/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 9/4 (*.f64 x x)) (*.f64 16 (*.f64 x x))) (-.f64 (*.f64 x 3/2) (*.f64 -4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x -5/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x -5/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x -5/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 3) -125/8) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 x x) 25/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x -5/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) -125/8))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x -5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x -5/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -4 x) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 3/2) (*.f64 -4 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -4 x (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x -4 (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (*.f64 -4 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (*.f64 -4 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 16 (*.f64 x x))) (cbrt.f64 (*.f64 -4 x)) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 9/4 (*.f64 x x))) (cbrt.f64 (*.f64 x 3/2)) (*.f64 -4 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -4 x)) (sqrt.f64 (*.f64 -4 x)) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)) (*.f64 -4 x))))))

simplify160.0ms (1.4%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
518×distribute-rgt-in_binary64
514×distribute-lft-in_binary64
417×*-commutative_binary64
410×neg-mul-1_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040588
199570
2321540
31146480
43745480
54067480
64487480
75409480
87352480
Stop Event
node limit
Counts
188 → 147
Calls
Call 1
Inputs
(pow.f64 wj 2)
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(*.f64 5/2 (*.f64 (pow.f64 wj 2) x))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(*.f64 5/2 (*.f64 (pow.f64 wj 2) x))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(pow.f64 wj 3)
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(*.f64 8/3 (*.f64 (pow.f64 wj 3) x))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(*.f64 8/3 (*.f64 (pow.f64 wj 3) x))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
1
(+.f64 (*.f64 2 x) 1)
(+.f64 (*.f64 2 x) 1)
(+.f64 (*.f64 2 x) 1)
(*.f64 2 x)
(+.f64 1 (*.f64 2 x))
(+.f64 1 (*.f64 2 x))
(+.f64 1 (*.f64 2 x))
(*.f64 2 x)
(+.f64 1 (*.f64 2 x))
(+.f64 1 (*.f64 2 x))
(+.f64 1 (*.f64 2 x))
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
(*.f64 -5/2 x)
Outputs
(pow.f64 wj 2)
(*.f64 wj wj)
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(*.f64 5/2 (*.f64 (pow.f64 wj 2) x))
(*.f64 5/2 (*.f64 (*.f64 wj wj) x))
(*.f64 (*.f64 wj wj) (*.f64 x 5/2))
(*.f64 5/2 (*.f64 wj (*.f64 wj x)))
(*.f64 (*.f64 wj wj) (*.f64 5/2 x))
(*.f64 wj (*.f64 5/2 (*.f64 wj x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(*.f64 5/2 (*.f64 (pow.f64 wj 2) x))
(*.f64 5/2 (*.f64 (*.f64 wj wj) x))
(*.f64 (*.f64 wj wj) (*.f64 x 5/2))
(*.f64 5/2 (*.f64 wj (*.f64 wj x)))
(*.f64 (*.f64 wj wj) (*.f64 5/2 x))
(*.f64 wj (*.f64 5/2 (*.f64 wj x)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(+.f64 (pow.f64 wj 2) (*.f64 5/2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 wj wj) (*.f64 5/2 (*.f64 (*.f64 wj wj) x)))
(fma.f64 5/2 (*.f64 (*.f64 wj wj) x) (*.f64 wj wj))
(*.f64 (+.f64 (*.f64 5/2 x) 1) (*.f64 wj wj))
(*.f64 (*.f64 wj wj) (fma.f64 5/2 x 1))
(*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))
(pow.f64 wj 3)
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 8/3 (*.f64 (pow.f64 wj 3) x))
(*.f64 8/3 (*.f64 x (pow.f64 wj 3)))
(*.f64 x (*.f64 (pow.f64 wj 3) 8/3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 8/3 (*.f64 (pow.f64 wj 3) x))
(*.f64 8/3 (*.f64 x (pow.f64 wj 3)))
(*.f64 x (*.f64 (pow.f64 wj 3) 8/3))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(+.f64 (*.f64 8/3 (*.f64 (pow.f64 wj 3) x)) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 1 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
(*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
(fma.f64 8/3 (*.f64 x (pow.f64 wj 3)) (pow.f64 wj 3))
(*.f64 (pow.f64 wj 3) (+.f64 1 (*.f64 x 8/3)))
(*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))
1
(+.f64 (*.f64 2 x) 1)
(fma.f64 2 x 1)
(+.f64 (*.f64 2 x) 1)
(fma.f64 2 x 1)
(+.f64 (*.f64 2 x) 1)
(fma.f64 2 x 1)
(*.f64 2 x)
(+.f64 x x)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(*.f64 2 x)
(+.f64 x x)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(+.f64 1 (*.f64 2 x))
(fma.f64 2 x 1)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)
(*.f64 -5/2 x)
(*.f64 x -5/2)

localize16.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
0.0b
(*.f64 -2 (*.f64 wj x))
Compiler

Compiled 20 to 9 computations (55% saved)

series22.0ms (0.2%)

Counts
2 → 15
Calls

12 calls:

TimeVariablePointExpression
13.0ms
x
@0
(*.f64 -2 (*.f64 wj x))
1.0ms
wj
@0
(*.f64 -2 (*.f64 wj x))
1.0ms
x
@inf
(*.f64 -2 (*.f64 wj x))
1.0ms
wj
@inf
(*.f64 -2 (*.f64 wj x))
1.0ms
wj
@-inf
(*.f64 -2 (*.f64 wj x))

rewrite87.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
811×pow1_binary64
755×add-log-exp_binary64
755×log1p-expm1-u_binary64
755×expm1-log1p-u_binary64
740×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify59.0ms (0.5%)

Algorithm
egg-herbie
Rules
270×fma-def_binary64
151×fma-neg_binary64
52×associate-*l*_binary64
48×associate-*r*_binary64
44×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018111
136111
274111
3169111
4307111
5504111
6747111
7993111
81009111
91014111
Stop Event
saturated
Counts
65 → 56
Calls
Call 1
Inputs
x
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
Outputs
x
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 x wj))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 x wj))
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 (*.f64 -2 wj) 1) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(*.f64 x (fma.f64 -2 wj 1))
(fma.f64 -2 (*.f64 x wj) x)

localize71.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1))
4.6b
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
Compiler

Compiled 47 to 15 computations (68.1% saved)

series14.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
1.0ms
x
@-inf
(/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1))
1.0ms
x
@0
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
1.0ms
wj
@-inf
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
1.0ms
wj
@0
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))

rewrite156.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
749×fma-def_binary64
683×log-prod_binary64
373×fma-neg_binary64
234×log1p-udef_binary64
233×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01035
124735
2416231
Stop Event
node limit
Counts
2 → 158
Calls
Call 1
Inputs
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
(/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 wj (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 wj (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) wj)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 wj (/.f64 wj (+.f64 wj 1))) (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))) (cbrt.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (/.f64 1 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 1 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj)) (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3))) (neg.f64 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2))) (neg.f64 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 3)) (fma.f64 wj wj (-.f64 (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) (*.f64 wj (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 wj wj) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))) (-.f64 wj (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 wj)) (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 wj) (+.f64 1 (expm1.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 wj)) (+.f64 1 (expm1.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 wj)) (exp.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 wj) (/.f64 1 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 wj)) (/.f64 1 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) (+.f64 1 (expm1.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (+.f64 1 (expm1.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj 1 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj 1 (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 wj (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 wj (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1 (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1 (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 1 (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 wj) (cbrt.f64 (*.f64 wj wj)) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 wj) (cbrt.f64 (*.f64 wj wj)) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (cbrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (cbrt.f64 wj) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) 1) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) 1) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 2) (cbrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) 1) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) 1) (*.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (neg.f64 (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (-.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (/.f64 1 (+.f64 wj 1)) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (/.f64 1 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (/.f64 1 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (/.f64 1 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 wj 3) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3)) (/.f64 1 (fma.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (*.f64 wj wj))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 1 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 1 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 1 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 wj wj) (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 1 (+.f64 wj (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) (cbrt.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))) (cbrt.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) (sqrt.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) wj)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 wj 1))) (fma.f64 wj x (-.f64 wj x)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (+.f64 (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)) (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2))) (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) wj)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 wj (+.f64 wj 1)) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) (cbrt.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 wj x (-.f64 wj x)) (/.f64 1 (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2)) (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 wj x (-.f64 wj x)) 2)) (*.f64 (cbrt.f64 (fma.f64 wj x (-.f64 wj x))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) (*.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (/.f64 1 (+.f64 (neg.f64 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 wj 1)) (fma.f64 wj x (-.f64 wj x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 wj x (-.f64 wj x)) 2)) 1) (/.f64 (cbrt.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) 1) (/.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (/.f64 (fma.f64 wj x (-.f64 wj x)) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 wj x (-.f64 wj x)) 2)) (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (/.f64 (sqrt.f64 (fma.f64 wj x (-.f64 wj x))) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 wj 1))) (/.f64 (fma.f64 wj x (-.f64 wj x)) (sqrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 wj x (-.f64 wj x)) 2)) (sqrt.f64 (+.f64 wj 1))) (/.f64 (cbrt.f64 (fma.f64 wj x (-.f64 wj x))) (sqrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 1 (pow.f64 wj 3))) (-.f64 (fma.f64 wj wj 1) wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (fma.f64 wj wj -1)) (+.f64 wj -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 wj 1) (fma.f64 wj x (-.f64 wj x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 (neg.f64 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 wj x (-.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (fma.f64 wj x (-.f64 wj x))) (log1p.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (fma.f64 wj x (-.f64 wj x))) (log1p.f64 wj)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (/.f64 1 (+.f64 wj 1)) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 wj (+.f64 wj 1)) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 wj (+.f64 wj 1))) (cbrt.f64 (/.f64 wj (+.f64 wj 1)))) (cbrt.f64 (/.f64 wj (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 wj (+.f64 wj 1))) (sqrt.f64 (/.f64 wj (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (/.f64 wj (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (+.f64 wj 1))) (/.f64 wj (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 wj wj)) 1) (/.f64 (cbrt.f64 wj) (+.f64 wj 1)) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 wj) 1) (/.f64 (sqrt.f64 wj) (+.f64 wj 1)) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 wj wj)) (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (/.f64 (cbrt.f64 wj) (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 wj) (cbrt.f64 (pow.f64 (+.f64 wj 1) 2))) (/.f64 (sqrt.f64 wj) (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 wj wj)) (sqrt.f64 (+.f64 wj 1))) (/.f64 (cbrt.f64 wj) (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 wj) (sqrt.f64 (+.f64 wj 1))) (/.f64 (sqrt.f64 wj) (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 wj (+.f64 1 (pow.f64 wj 3))) (-.f64 (fma.f64 wj wj 1) wj) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 wj (fma.f64 wj wj -1)) (+.f64 wj -1) (neg.f64 (/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))))))))

simplify78.0ms (0.7%)

Algorithm
egg-herbie
Rules
700×fma-def_binary64
694×associate-+r+_binary64
549×associate--l+_binary64
362×+-commutative_binary64
353×div-sub_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01211191
14141139
21488959
37537895
Stop Event
node limit
Counts
206 → 214
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 3)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 wj (*.f64 2 (/.f64 x wj)))))
(-.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 wj (*.f64 2 (/.f64 x wj)))))) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2))))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) wj)) wj))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 2 x) 1) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) wj)) wj)))
(-.f64 wj (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x)
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(*.f64 -1 x)
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 -1 x))
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 2))))
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 (pow.f64 wj 3) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 2)))))
(+.f64 1 x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 1 x)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 1 (+.f64 (/.f64 x (pow.f64 wj 2)) (+.f64 (/.f64 1 (pow.f64 wj 2)) x)))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 3))) (+.f64 1 (+.f64 (/.f64 1 (pow.f64 wj 2)) (+.f64 (/.f64 x (pow.f64 wj 2)) x))))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 x wj))))))
(*.f64 -1 (-.f64 (*.f64 -1 x) 1))
(+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)))
(-.f64 (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2))))) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))
(-.f64 (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) (pow.f64 wj 3))) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2)))))) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))
(/.f64 wj (+.f64 1 wj))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
Outputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 -2 wj 1))
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(fma.f64 (*.f64 wj wj) (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 -2 (*.f64 x wj) x))
(fma.f64 (*.f64 wj wj) (+.f64 1 (+.f64 x x)) (fma.f64 -2 (*.f64 x wj) x))
(fma.f64 x (*.f64 -2 wj) (fma.f64 (*.f64 wj wj) (fma.f64 x 2 1) x))
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 3)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(fma.f64 (*.f64 wj wj) (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 (-.f64 (fma.f64 -1 x -1) x) (pow.f64 wj 3) (fma.f64 -2 (*.f64 x wj) x)))
(fma.f64 (*.f64 wj wj) (+.f64 1 (+.f64 x x)) (fma.f64 (-.f64 (-.f64 -1 x) x) (pow.f64 wj 3) (fma.f64 -2 (*.f64 x wj) x)))
(fma.f64 (fma.f64 -2 wj 1) x (*.f64 (*.f64 wj wj) (+.f64 (fma.f64 x 2 1) (*.f64 wj (+.f64 -1 (*.f64 x -2))))))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(fma.f64 -1 (+.f64 x 1) wj)
(+.f64 wj (-.f64 -1 x))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 wj (*.f64 2 (/.f64 x wj)))))
(fma.f64 -1 (+.f64 x 1) (+.f64 (+.f64 (/.f64 1 wj) wj) (*.f64 2 (/.f64 x wj))))
(+.f64 (/.f64 1 wj) (+.f64 (fma.f64 2 (/.f64 x wj) wj) (-.f64 -1 x)))
(+.f64 (fma.f64 2 (/.f64 x wj) wj) (-.f64 -1 (+.f64 x (/.f64 -1 wj))))
(-.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 wj (*.f64 2 (/.f64 x wj)))))) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2))))
(-.f64 (fma.f64 -1 (+.f64 x 1) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (+.f64 wj (*.f64 2 (/.f64 x wj)))))) (+.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (*.f64 wj wj))))
(+.f64 (-.f64 -1 x) (-.f64 (+.f64 (/.f64 1 wj) (-.f64 (fma.f64 2 (/.f64 x wj) wj) (/.f64 x (*.f64 wj wj)))) (+.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (*.f64 wj wj)))))
(+.f64 (-.f64 -1 x) (+.f64 (/.f64 1 wj) (+.f64 (+.f64 (-.f64 wj (/.f64 x (*.f64 wj wj))) (*.f64 (/.f64 x wj) (+.f64 2 (/.f64 -1 wj)))) (/.f64 -1 (*.f64 wj wj)))))
(+.f64 (-.f64 -1 x) (+.f64 (/.f64 1 wj) (-.f64 (fma.f64 2 (/.f64 x wj) wj) (/.f64 (fma.f64 x 2 1) (*.f64 wj wj)))))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(fma.f64 -1 (+.f64 x 1) wj)
(+.f64 wj (-.f64 -1 x))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) wj)) wj))
(fma.f64 -1 (+.f64 x 1) (fma.f64 -1 (/.f64 (-.f64 (fma.f64 -1 x -1) x) wj) wj))
(+.f64 wj (+.f64 (-.f64 -1 x) (/.f64 (+.f64 1 (+.f64 x x)) wj)))
(+.f64 wj (+.f64 (-.f64 -1 x) (/.f64 (fma.f64 x 2 1) wj)))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 2 x) 1) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) wj)) wj)))
(fma.f64 -1 (+.f64 x 1) (fma.f64 -1 (/.f64 (fma.f64 2 x 1) (*.f64 wj wj)) (fma.f64 -1 (/.f64 (-.f64 (fma.f64 -1 x -1) x) wj) wj)))
(+.f64 (-.f64 wj (/.f64 (-.f64 (-.f64 -1 x) x) wj)) (-.f64 (-.f64 -1 x) (/.f64 (fma.f64 x 2 1) (*.f64 wj wj))))
(+.f64 (+.f64 (-.f64 -1 x) (/.f64 (fma.f64 x 2 1) wj)) (-.f64 wj (/.f64 (fma.f64 x 2 1) (*.f64 wj wj))))
(-.f64 wj (/.f64 wj (+.f64 1 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x)
(*.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(*.f64 (/.f64 x (+.f64 wj 1)) (-.f64 1 wj))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 1 wj)) (/.f64 wj (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x)
(*.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(*.f64 (/.f64 x (+.f64 wj 1)) (-.f64 1 wj))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (/.f64 1 (+.f64 1 wj))) x) wj) (/.f64 wj (+.f64 1 wj)))
(-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) x wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))) wj) (/.f64 wj (+.f64 wj 1)))
(-.f64 wj (fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1))))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 -1 x))
(fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (neg.f64 x))
(fma.f64 wj (+.f64 1 (+.f64 x x)) (neg.f64 x))
(fma.f64 wj (fma.f64 x 2 1) (neg.f64 x))
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 2))))
(fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 -1 x (*.f64 (*.f64 wj wj) (-.f64 (fma.f64 -1 x -1) x))))
(fma.f64 wj (+.f64 1 (+.f64 x x)) (-.f64 (*.f64 (*.f64 wj wj) (-.f64 (-.f64 -1 x) x)) x))
(-.f64 (*.f64 wj (+.f64 (fma.f64 x 2 1) (*.f64 wj (+.f64 -1 (*.f64 x -2))))) x)
(+.f64 (*.f64 wj (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 (pow.f64 wj 3) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (*.f64 (-.f64 (*.f64 -1 x) (+.f64 1 x)) (pow.f64 wj 2)))))
(fma.f64 wj (+.f64 1 (-.f64 x (neg.f64 x))) (fma.f64 -1 x (fma.f64 (pow.f64 wj 3) (+.f64 1 (-.f64 x (neg.f64 x))) (*.f64 (*.f64 wj wj) (-.f64 (fma.f64 -1 x -1) x)))))
(fma.f64 wj (+.f64 1 (+.f64 x x)) (-.f64 (fma.f64 (+.f64 1 (+.f64 x x)) (pow.f64 wj 3) (*.f64 (*.f64 wj wj) (-.f64 (-.f64 -1 x) x))) x))
(-.f64 (fma.f64 wj (fma.f64 x 2 1) (*.f64 (*.f64 wj wj) (+.f64 (+.f64 -1 (*.f64 x -2)) (*.f64 wj (fma.f64 x 2 1))))) x)
(+.f64 1 x)
(+.f64 x 1)
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 1 x)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (fma.f64 -1 (/.f64 x wj) (+.f64 x 1)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (-.f64 (+.f64 x 1) (/.f64 x wj)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (+.f64 x 1) (/.f64 (fma.f64 x 2 1) wj))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 1 (+.f64 (/.f64 x (pow.f64 wj 2)) (+.f64 (/.f64 1 (pow.f64 wj 2)) x)))) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))))
(-.f64 (fma.f64 -1 (/.f64 x wj) (+.f64 1 (+.f64 (/.f64 x (*.f64 wj wj)) (+.f64 x (/.f64 1 (*.f64 wj wj)))))) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))))
(-.f64 (-.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 (+.f64 x (/.f64 x (*.f64 wj wj))) 1)) (/.f64 x wj)) (+.f64 (/.f64 1 wj) (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))))
(+.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 1 (+.f64 x (/.f64 x (*.f64 wj wj))))) (-.f64 (/.f64 x (*.f64 wj wj)) (/.f64 (fma.f64 x 2 1) wj)))
(+.f64 (+.f64 x 1) (-.f64 (/.f64 (fma.f64 x 2 1) (*.f64 wj wj)) (/.f64 (fma.f64 x 2 1) wj)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 3))) (+.f64 1 (+.f64 (/.f64 1 (pow.f64 wj 2)) (+.f64 (/.f64 x (pow.f64 wj 2)) x))))) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 x wj))))))
(-.f64 (fma.f64 -1 (/.f64 x wj) (fma.f64 -1 (/.f64 x (pow.f64 wj 3)) (+.f64 1 (+.f64 (/.f64 x (*.f64 wj wj)) (+.f64 x (/.f64 1 (*.f64 wj wj))))))) (+.f64 (+.f64 (/.f64 1 wj) (/.f64 x (pow.f64 wj 3))) (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (+.f64 (/.f64 x wj) (/.f64 1 (pow.f64 wj 3))))))
(-.f64 (-.f64 (-.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 (+.f64 x (/.f64 x (*.f64 wj wj))) 1)) (/.f64 x (pow.f64 wj 3))) (/.f64 x wj)) (+.f64 (/.f64 1 wj) (+.f64 (+.f64 (/.f64 x wj) (/.f64 1 (pow.f64 wj 3))) (-.f64 (/.f64 x (pow.f64 wj 3)) (/.f64 x (*.f64 wj wj))))))
(-.f64 (+.f64 (-.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 1 (+.f64 x (/.f64 x (*.f64 wj wj))))) (/.f64 x (pow.f64 wj 3))) (/.f64 (-.f64 -1 x) wj)) (+.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (/.f64 x wj) (-.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (pow.f64 wj 3))))))
(+.f64 (+.f64 x (+.f64 (/.f64 (+.f64 x 1) (*.f64 wj wj)) (-.f64 1 (/.f64 x wj)))) (-.f64 (/.f64 (*.f64 x -2) (pow.f64 wj 3)) (+.f64 (+.f64 (/.f64 x wj) (-.f64 (/.f64 1 wj) (/.f64 x (*.f64 wj wj)))) (/.f64 1 (pow.f64 wj 3)))))
(*.f64 -1 (-.f64 (*.f64 -1 x) 1))
(+.f64 x 1)
(+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)))
(-.f64 (fma.f64 -1 (/.f64 x wj) (+.f64 x 1)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (-.f64 (+.f64 x 1) (/.f64 x wj)) (+.f64 (/.f64 1 wj) (/.f64 x wj)))
(-.f64 (+.f64 x 1) (/.f64 (fma.f64 x 2 1) wj))
(-.f64 (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2))))) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))
(-.f64 (fma.f64 -1 (/.f64 x wj) (+.f64 1 (+.f64 (/.f64 x (*.f64 wj wj)) (+.f64 x (/.f64 1 (*.f64 wj wj)))))) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))))
(-.f64 (-.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 (+.f64 x (/.f64 x (*.f64 wj wj))) 1)) (/.f64 x wj)) (+.f64 (/.f64 1 wj) (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))))
(+.f64 (+.f64 (/.f64 1 (*.f64 wj wj)) (+.f64 1 (+.f64 x (/.f64 x (*.f64 wj wj))))) (-.f64 (/.f64 x (*.f64 wj wj)) (/.f64 (fma.f64 x 2 1) wj)))
(+.f64 (+.f64 x 1) (-.f64 (/.f64 (fma.f64 x 2 1) (*.f64 wj wj)) (/.f64 (fma.f64 x 2 1) wj)))
(-.f64 (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 x) 1)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) wj)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 1 x) (*.f64 -1 x)) (pow.f64 wj 3))) (+.f64 (/.f64 x (pow.f64 wj 2)) (/.f64 1 (pow.f64 wj 2)))))) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))
(-.f64 (fma.f64 -1 (fma.f64 -1 x -1) (fma.f64 -1 (/.f64 (+.f64 1 (-.f64 x (neg.f64 x))) wj) (fma.f64 -1 (/.f64 (+.f64 1 (-.f64 x (neg.f64 x))) (pow.f64 wj 3)) (+.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (*.f64 wj wj)))))) (/.f64 (neg.f64 x) (*.f64 wj wj)))
(+.f64 (+.f64 (+.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (*.f64 wj wj))) (+.f64 (/.f64 (-.f64 (-.f64 -1 x) x) wj) (/.f64 (-.f64 (-.f64 -1 x) x) (pow.f64 wj 3)))) (+.f64 (+.f64 x 1) (/.f64 x (*.f64 wj wj))))
(+.f64 (+.f64 x 1) (+.f64 (*.f64 (/.f64 (fma.f64 x 2 1) wj) (+.f64 -1 (/.f64 -1 (*.f64 wj wj)))) (+.f64 (/.f64 x (*.f64 wj wj)) (+.f64 (/.f64 x (*.f64 wj wj)) (/.f64 1 (*.f64 wj wj))))))
(+.f64 (+.f64 x 1) (+.f64 (/.f64 (fma.f64 x 2 1) (*.f64 wj wj)) (*.f64 (/.f64 (fma.f64 x 2 1) wj) (+.f64 -1 (/.f64 -1 (*.f64 wj wj))))))
(/.f64 wj (+.f64 1 wj))
(/.f64 wj (+.f64 wj 1))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 (-.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 1 (+.f64 1 wj))) x) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))
(/.f64 (+.f64 wj -1) (/.f64 (+.f64 wj 1) x))
(*.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (/.f64 wj (+.f64 1 wj)) (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj)))
(/.f64 (+.f64 wj -1) (/.f64 (+.f64 wj 1) x))
(*.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))) (/.f64 wj (+.f64 1 wj)))
(fma.f64 (-.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 1 (+.f64 wj 1))) x (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (+.f64 (/.f64 wj (+.f64 wj 1)) (/.f64 -1 (+.f64 wj 1))) (/.f64 wj (+.f64 wj 1)))
(fma.f64 x (/.f64 (+.f64 wj -1) (+.f64 wj 1)) (/.f64 wj (+.f64 wj 1)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
0.0b
(/.f64 x (exp.f64 wj))
Compiler

Compiled 22 to 10 computations (54.5% saved)

series12.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
wj
@inf
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
1.0ms
x
@-inf
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
1.0ms
x
@0
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
1.0ms
wj
@-inf
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
0.0ms
x
@inf
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))

rewrite71.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
455×log-prod_binary64
353×exp-prod_binary64
313×prod-exp_binary64
284×pow-prod-down_binary64
229×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0812
117211
2249111
Stop Event
node limit
Counts
1 → 63
Calls
Call 1
Inputs
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (exp.f64 wj)) (/.f64 1 (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) (pow.f64 (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) 2) (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (exp.f64 wj) x) -2)) (*.f64 (cbrt.f64 (/.f64 x (exp.f64 wj))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) (sqrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) (*.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 x) (exp.f64 wj)) (/.f64 1 (+.f64 -1 (neg.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 wj 1)) (/.f64 x (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (+.f64 wj 1)) (/.f64 (cbrt.f64 x) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (+.f64 wj 1)) (/.f64 (sqrt.f64 x) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (exp.f64 (-.f64 (neg.f64 wj) (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (exp.f64 wj) x) -2)) 1) (/.f64 (cbrt.f64 (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) 1) (/.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (/.f64 (exp.f64 (neg.f64 wj)) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 wj 1)) -2) (/.f64 (/.f64 x (exp.f64 wj)) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (exp.f64 wj) x) -2)) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (/.f64 (sqrt.f64 (/.f64 x (exp.f64 wj))) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (hypot.f64 1 (sqrt.f64 wj))) (/.f64 (exp.f64 (neg.f64 wj)) (hypot.f64 1 (sqrt.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 wj 1) -1/2) (/.f64 (/.f64 x (exp.f64 wj)) (hypot.f64 1 (sqrt.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (exp.f64 wj) x) -2)) (hypot.f64 1 (sqrt.f64 wj))) (/.f64 (cbrt.f64 (/.f64 x (exp.f64 wj))) (hypot.f64 1 (sqrt.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 1 (pow.f64 wj 3))) (-.f64 (fma.f64 wj wj 1) wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (exp.f64 wj)) (fma.f64 wj wj -1)) (+.f64 wj -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 wj 1) (/.f64 (exp.f64 wj) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 x (exp.f64 wj)) 3) (pow.f64 (+.f64 wj 1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (exp.f64 wj) x) (+.f64 wj 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 (+.f64 wj (log1p.f64 wj))) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (+.f64 wj 1) (/.f64 (exp.f64 wj) x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))) 2)) (cbrt.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj))))) (sqrt.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 x (exp.f64 wj)) (+.f64 -1 (neg.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 x (exp.f64 wj)) 3) (pow.f64 (+.f64 wj 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (exp.f64 (+.f64 wj (log1p.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 wj) (-.f64 (log.f64 x) wj)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log.f64 x) (+.f64 wj (log1p.f64 wj))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 x) 1) (+.f64 wj (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (-.f64 (log.f64 x) wj) 1) (log1p.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (-.f64 (log.f64 x) wj) (*.f64 (log1p.f64 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (-.f64 (log.f64 x) wj) 1) (*.f64 (log1p.f64 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (-.f64 (log.f64 x) wj) 1) (neg.f64 (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (log1p.f64 wj)) (*.f64 (-.f64 (log.f64 x) wj) 1)))))))

simplify70.0ms (0.6%)

Algorithm
egg-herbie
Rules
391×distribute-rgt-in_binary64
379×distribute-lft-in_binary64
376×cancel-sign-sub-inv_binary64
291×fma-neg_binary64
266×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
057471
1162451
2524437
32073395
47786395
Stop Event
node limit
Counts
87 → 79
Calls
Call 1
Inputs
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
Outputs
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 1 wj) (exp.f64 wj)))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 wj -2 1))
(fma.f64 x (*.f64 wj -2) x)
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(fma.f64 -2 (*.f64 x wj) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x))
(fma.f64 -2 (*.f64 x wj) (-.f64 x (*.f64 wj (*.f64 wj (*.f64 x -5/2)))))
(fma.f64 (*.f64 wj wj) (*.f64 x 5/2) (*.f64 x (fma.f64 wj -2 1)))
(+.f64 x (*.f64 x (*.f64 wj (-.f64 -2 (*.f64 wj -5/2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(fma.f64 -1 (*.f64 (fma.f64 -3 x (fma.f64 2/3 x (*.f64 -2 (*.f64 x -5/2)))) (pow.f64 wj 3)) (fma.f64 -2 (*.f64 x wj) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x)))
(-.f64 (fma.f64 -2 (*.f64 x wj) (-.f64 x (*.f64 wj (*.f64 wj (*.f64 x -5/2))))) (*.f64 (+.f64 (*.f64 x 5) (*.f64 x -7/3)) (pow.f64 wj 3)))
(-.f64 (fma.f64 (*.f64 wj wj) (*.f64 x 5/2) (*.f64 x (fma.f64 wj -2 1))) (*.f64 (*.f64 x 8/3) (pow.f64 wj 3)))
(+.f64 x (fma.f64 x (*.f64 wj (-.f64 -2 (*.f64 wj -5/2))) (*.f64 (pow.f64 wj 3) (*.f64 x -8/3))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj)))))
(-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (/.f64 x (*.f64 wj wj)) (exp.f64 wj)))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj))))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))
(+.f64 (-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj))))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (/.f64 (/.f64 x (*.f64 wj wj)) (exp.f64 wj))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj))) (fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj))))) (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))))
(+.f64 (*.f64 (/.f64 x (exp.f64 wj)) (+.f64 (/.f64 -1 (*.f64 wj wj)) (/.f64 -1 (pow.f64 wj 4)))) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3)))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj)))))
(-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (/.f64 x (*.f64 wj wj)) (exp.f64 wj)))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj))))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))
(+.f64 (-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj))))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (/.f64 (/.f64 x (*.f64 wj wj)) (exp.f64 wj))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (*.f64 wj wj))) (fma.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (-.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj))))) (-.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))))
(+.f64 (*.f64 (/.f64 x (exp.f64 wj)) (+.f64 (/.f64 -1 (*.f64 wj wj)) (/.f64 -1 (pow.f64 wj 4)))) (+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3)))))

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
0.0b
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
0.0b
(*.f64 (exp.f64 wj) wj)
Compiler

Compiled 26 to 6 computations (76.9% saved)

series5.0ms (0%)

Counts
3 → 26
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
1.0ms
x
@-inf
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
1.0ms
x
@0
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
0.0ms
wj
@inf
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
0.0ms
wj
@-inf
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))

rewrite108.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
888×pow1_binary64
825×add-log-exp_binary64
825×log1p-expm1-u_binary64
825×expm1-log1p-u_binary64
806×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0727
115227
2222227
Stop Event
node limit
Counts
3 → 82
Calls
Call 1
Inputs
(*.f64 (exp.f64 wj) wj)
(+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj))
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 wj (exp.f64 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj (exp.f64 wj)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 wj (exp.f64 wj))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 wj (exp.f64 wj))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 wj) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 wj (log.f64 wj)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 wj 1))) (/.f64 (pow.f64 (exp.f64 wj) 2) (*.f64 (exp.f64 wj) (-.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 wj) (+.f64 1 wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 wj) (+.f64 wj 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2) (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (pow.f64 (exp.f64 wj) 2)) (/.f64 1 (*.f64 (exp.f64 wj) (-.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 wj 1) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))) (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (exp.f64 wj) (-.f64 wj 1)) (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (pow.f64 (exp.f64 wj) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3)) (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3)) (+.f64 (pow.f64 (exp.f64 wj) 2) (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 wj (pow.f64 (exp.f64 wj) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (pow.f64 (exp.f64 wj) 2)) (*.f64 (exp.f64 wj) (-.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (pow.f64 (exp.f64 wj) 2))) (neg.f64 (*.f64 (exp.f64 wj) (-.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 wj) 2) (pow.f64 (*.f64 wj (exp.f64 wj)) 2)) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (exp.f64 wj) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 wj) wj (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj (exp.f64 wj)) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 wj)) 2) (cbrt.f64 (exp.f64 wj)) (*.f64 wj (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 wj (exp.f64 wj))) 2) (cbrt.f64 (*.f64 wj (exp.f64 wj))) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (exp.f64 wj)) (sqrt.f64 (exp.f64 wj)) (*.f64 wj (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj (exp.f64 wj))) (sqrt.f64 (*.f64 wj (exp.f64 wj))) (exp.f64 wj))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (pow.f64 (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) 2) (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (sqrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (neg.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (exp.f64 wj) (+.f64 1 wj))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (*.f64 (exp.f64 wj) (+.f64 1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2)) (/.f64 x (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2)) (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 x (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))) (/.f64 (cbrt.f64 x) (sqrt.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 3) (pow.f64 (exp.f64 wj) 3))) (+.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (*.f64 (exp.f64 wj) (-.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 (pow.f64 (*.f64 wj (exp.f64 wj)) 2) (pow.f64 (exp.f64 wj) 2))) (*.f64 (exp.f64 wj) (-.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (neg.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x 3) (pow.f64 (*.f64 (exp.f64 wj) (+.f64 1 wj)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x (*.f64 (exp.f64 wj) (+.f64 1 wj)))))))))

simplify53.0ms (0.5%)

Algorithm
egg-herbie
Rules
393×distribute-rgt-in_binary64
388×cancel-sign-sub-inv_binary64
381×distribute-lft-in_binary64
378×fma-def_binary64
349×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075475
1211445
2668428
32565385
Stop Event
node limit
Counts
108 → 115
Calls
Call 1
Inputs
wj
(+.f64 (pow.f64 wj 2) wj)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) (+.f64 wj (*.f64 1/6 (pow.f64 wj 4)))))
1
(+.f64 1 (*.f64 2 wj))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj)))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj))))
(*.f64 (exp.f64 wj) wj)
(*.f64 (exp.f64 wj) wj)
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
Outputs
wj
(+.f64 (pow.f64 wj 2) wj)
(+.f64 wj (*.f64 wj wj))
(fma.f64 wj wj wj)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) wj))
(+.f64 (*.f64 wj wj) (fma.f64 1/2 (pow.f64 wj 3) wj))
(fma.f64 wj wj (fma.f64 1/2 (pow.f64 wj 3) wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 1/2 (pow.f64 wj 3)) (+.f64 wj (*.f64 1/6 (pow.f64 wj 4)))))
(+.f64 (*.f64 wj wj) (+.f64 (fma.f64 1/2 (pow.f64 wj 3) wj) (*.f64 1/6 (pow.f64 wj 4))))
(fma.f64 wj wj (fma.f64 1/2 (pow.f64 wj 3) (fma.f64 1/6 (pow.f64 wj 4) wj)))
(fma.f64 1/2 (pow.f64 wj 3) (fma.f64 wj wj (fma.f64 1/6 (pow.f64 wj 4) wj)))
1
(+.f64 1 (*.f64 2 wj))
(+.f64 1 (*.f64 wj 2))
(fma.f64 wj 2 1)
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj)))
(+.f64 1 (fma.f64 3/2 (*.f64 wj wj) (*.f64 wj 2)))
(+.f64 1 (fma.f64 wj 2 (*.f64 wj (*.f64 wj 3/2))))
(fma.f64 wj 2 (fma.f64 wj (*.f64 wj 3/2) 1))
(+.f64 1 (+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj))))
(+.f64 1 (fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2))))
(+.f64 1 (fma.f64 (*.f64 wj wj) 3/2 (fma.f64 wj 2 (*.f64 (pow.f64 wj 3) 2/3))))
(+.f64 1 (fma.f64 (pow.f64 wj 3) 2/3 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
(+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3))))))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(*.f64 (exp.f64 wj) wj)
(*.f64 wj (exp.f64 wj))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
(/.f64 x (+.f64 (*.f64 wj (exp.f64 wj)) (exp.f64 wj)))
(/.f64 x (*.f64 (+.f64 wj 1) (exp.f64 wj)))
(/.f64 x (*.f64 (exp.f64 wj) (+.f64 wj 1)))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 wj x) x)
(*.f64 x (fma.f64 wj -2 1))
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(fma.f64 -2 (*.f64 wj x) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x))
(fma.f64 -2 (*.f64 wj x) (-.f64 x (*.f64 wj (*.f64 wj (*.f64 x -5/2)))))
(fma.f64 wj (*.f64 x -2) (fma.f64 (*.f64 wj wj) (*.f64 x 5/2) x))
(+.f64 x (*.f64 wj (*.f64 x (-.f64 -2 (*.f64 wj -5/2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(fma.f64 -1 (*.f64 (pow.f64 wj 3) (fma.f64 -3 x (fma.f64 2/3 x (*.f64 -2 (*.f64 x -5/2))))) (fma.f64 -2 (*.f64 wj x) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x)))
(-.f64 (fma.f64 -2 (*.f64 wj x) (-.f64 x (*.f64 wj (*.f64 wj (*.f64 x -5/2))))) (*.f64 (pow.f64 wj 3) (+.f64 (*.f64 x 5) (*.f64 x -7/3))))
(-.f64 (fma.f64 wj (*.f64 x -2) (fma.f64 (*.f64 wj wj) (*.f64 x 5/2) x)) (*.f64 (pow.f64 wj 3) (*.f64 x 8/3)))
(+.f64 x (fma.f64 wj (*.f64 x (-.f64 -2 (*.f64 wj -5/2))) (*.f64 (pow.f64 wj 3) (*.f64 x -8/3))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 (/.f64 x (exp.f64 wj)) wj)
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (/.f64 x (*.f64 wj (exp.f64 wj)))) (neg.f64 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(-.f64 (+.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 4) (exp.f64 wj))) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))
(+.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (-.f64 (-.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (/.f64 x (*.f64 (pow.f64 wj 4) (exp.f64 wj)))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(+.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (*.f64 (/.f64 x (exp.f64 wj)) (+.f64 (/.f64 -1 (pow.f64 wj 4)) (/.f64 -1 (*.f64 wj wj))))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 (/.f64 x (exp.f64 wj)) wj)
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (neg.f64 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2))))))
(+.f64 (+.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (/.f64 x (*.f64 wj (exp.f64 wj)))) (neg.f64 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(-.f64 (+.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj)))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (+.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))) (+.f64 (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 4)))) (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 3))))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj))) (fma.f64 -1 (/.f64 x (*.f64 (pow.f64 wj 4) (exp.f64 wj))) (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))))))
(+.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (-.f64 (-.f64 (/.f64 x (*.f64 (pow.f64 wj 3) (exp.f64 wj))) (/.f64 x (*.f64 (pow.f64 wj 4) (exp.f64 wj)))) (/.f64 x (*.f64 (*.f64 wj wj) (exp.f64 wj)))))
(+.f64 (/.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3)) (*.f64 (/.f64 x (exp.f64 wj)) (+.f64 (/.f64 -1 (pow.f64 wj 4)) (/.f64 -1 (*.f64 wj wj))))))
(+.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj))) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x (exp.f64 wj)) (pow.f64 wj 3))))

eval412.0ms (3.6%)

Compiler

Compiled 18754 to 11417 computations (39.1% saved)

prune215.0ms (1.9%)

Pruning

18 alts after pruning (16 fresh and 2 done)

PrunedKeptTotal
New68313696
Fresh639
Picked101
Done224
Total69218710
Error
0.0b
Counts
710 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
61.4b
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
6.8b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
11.2b
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
6.6b
(*.f64 x (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj)))))
47.2b
(fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (fma.f64 (neg.f64 (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj))))) (-.f64 (*.f64 wj (exp.f64 wj)) x) (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj))))))
7.2b
x
61.6b
wj
0.8b
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
34.1b
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))
6.8b
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
6.8b
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
1.0b
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
62.3b
(/.f64 (/.f64 x (exp.f64 wj)) wj)
1.0b
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj (*.f64 wj (fma.f64 x 5/2 1)) x))
6.8b
(/.f64 x (+.f64 1 (*.f64 2 wj)))
61.5b
(*.f64 -2 (*.f64 x wj))
6.7b
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
63.4b
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
Compiler

Compiled 537 to 321 computations (40.2% saved)

localize74.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 2/3 x)
0.5b
(+.f64 (*.f64 -4 x) (*.f64 3/2 x))
1.0b
(+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))
3.5b
(*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))
Compiler

Compiled 202 to 142 computations (29.7% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite57.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
345×pow1_binary64
338×add-sqr-sqrt_binary64
329×*-un-lft-identity_binary64
321×add-log-exp_binary64
321×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044
1804
28734
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 2/3 x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (*.f64 2/3 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2/3 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (exp.f64 x))) (log.f64 (cbrt.f64 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 4/3) x))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 2/3) x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 2/3 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 (*.f64 2/3 x)) 3) 1) (+.f64 (*.f64 (+.f64 1 (*.f64 2/3 x)) (+.f64 1 (*.f64 2/3 x))) (+.f64 1 (*.f64 (+.f64 1 (*.f64 2/3 x)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 1 (*.f64 2/3 x)) (+.f64 1 (*.f64 2/3 x))) 1) (+.f64 (+.f64 1 (*.f64 2/3 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2/3 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 2/3 x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 3) 8/27) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 2/3 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2/3 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 2/3 x)))) (sqrt.f64 (log.f64 (*.f64 2/3 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 2/3 x))) 2)) (cbrt.f64 (log.f64 (*.f64 2/3 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 2/3 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 2/3 x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 2/3) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) 8/27))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 2/3 x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 2/3 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2/3 x))) 2))))))

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -2 (*.f64 x wj))
Compiler

Compiled 13 to 6 computations (53.8% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite87.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

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

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 12
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
Outputs
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))
(*.f64 -2 (*.f64 wj x))

localize109.0ms (1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
Compiler

Compiled 25 to 10 computations (60% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite64.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
511×log-prod_binary64
383×exp-prod_binary64
316×pow-prod-down_binary64
312×fma-def_binary64
253×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
118513
2287113
Stop Event
node limit
Counts
1 → 65
Calls
Call 1
Inputs
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (+.f64 wj 1)) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (+.f64 wj 1)) (/.f64 wj (/.f64 (+.f64 wj 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 x wj)) (/.f64 1 (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -2)) (cbrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) 2) (*.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))) (sqrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) (*.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) (/.f64 1 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 x (*.f64 x wj))) (/.f64 1 (+.f64 (neg.f64 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 wj 1)) (-.f64 x (*.f64 x wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 wj 1)) -2) (/.f64 (-.f64 x (*.f64 x wj)) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 wj 1) -1/2) (/.f64 (-.f64 x (*.f64 x wj)) (sqrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) 2) 1) (/.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) 1) (/.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) 2) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (cbrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (/.f64 (sqrt.f64 (-.f64 x (*.f64 x wj))) (cbrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) 2) (sqrt.f64 (+.f64 wj 1))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 x wj))) (sqrt.f64 (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 1 (pow.f64 wj 3))) (-.f64 (fma.f64 wj wj 1) wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (*.f64 x wj)) (fma.f64 wj wj -1)) (-.f64 wj 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 x wj)) 3) (pow.f64 (+.f64 wj 1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))) 2)) (cbrt.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj)))) (sqrt.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 (neg.f64 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 wj 1) (-.f64 x (*.f64 x wj))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 x wj)) 3) (pow.f64 (+.f64 wj 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 wj) (log.f64 (-.f64 x (*.f64 x wj)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log.f64 (-.f64 x (*.f64 x wj))) (log1p.f64 wj)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (+.f64 wj 1)) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (+.f64 wj 1)) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x (+.f64 wj 1))) 2) (cbrt.f64 (/.f64 x (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (+.f64 wj 1))) (sqrt.f64 (/.f64 x (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 wj 1)) -2) (/.f64 x (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 wj 1) -1/2) (/.f64 x (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (+.f64 wj 1)) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (+.f64 wj 1)) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (/.f64 (cbrt.f64 x) (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (+.f64 wj 1)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (+.f64 wj 1))) (/.f64 (cbrt.f64 x) (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 wj 1))) (/.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 wj 1))) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (+.f64 1 (pow.f64 wj 3))) (-.f64 (fma.f64 wj wj 1) wj) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (fma.f64 wj wj -1)) (-.f64 wj 1) (neg.f64 (/.f64 wj (/.f64 (+.f64 wj 1) x))))))))

simplify73.0ms (0.6%)

Algorithm
egg-herbie
Rules
514×associate-/l*_binary64
432×unsub-neg_binary64
395×distribute-lft-out_binary64
373×sub-neg_binary64
355×distribute-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
055435
1189401
2600345
33076319
Stop Event
node limit
Counts
89 → 86
Calls
Call 1
Inputs
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
x
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) x)
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) (+.f64 (*.f64 (-.f64 x (*.f64 -1 x)) (pow.f64 wj 2)) x))
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) (pow.f64 wj 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) (+.f64 (*.f64 (-.f64 x (*.f64 -1 x)) (pow.f64 wj 2)) x)))
(*.f64 -1 x)
(-.f64 (+.f64 (*.f64 -1 x) (/.f64 x wj)) (*.f64 -1 (/.f64 x wj)))
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))) (+.f64 (*.f64 -1 (/.f64 x wj)) (/.f64 x (pow.f64 wj 2))))
(-.f64 (+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 3))) (/.f64 x (pow.f64 wj 2)))))
(*.f64 -1 x)
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (*.f64 -1 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))) (/.f64 x (pow.f64 wj 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) (pow.f64 wj 3)))))) (/.f64 x (pow.f64 wj 2)))
Outputs
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (-.f64 1 wj) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(/.f64 (-.f64 1 wj) (/.f64 (+.f64 1 wj) x))
(*.f64 x (/.f64 (-.f64 1 wj) (+.f64 1 wj)))
x
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) x)
(fma.f64 (-.f64 (neg.f64 x) x) wj x)
(fma.f64 wj (*.f64 x -2) x)
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) (+.f64 (*.f64 (-.f64 x (*.f64 -1 x)) (pow.f64 wj 2)) x))
(fma.f64 (-.f64 (neg.f64 x) x) wj (fma.f64 (-.f64 x (neg.f64 x)) (*.f64 wj wj) x))
(fma.f64 wj (*.f64 x -2) (fma.f64 (+.f64 x x) (*.f64 wj wj) x))
(+.f64 x (*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1))))
(+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) (pow.f64 wj 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1 x) x) wj) (+.f64 (*.f64 (-.f64 x (*.f64 -1 x)) (pow.f64 wj 2)) x)))
(fma.f64 (-.f64 (neg.f64 x) x) (pow.f64 wj 3) (fma.f64 (-.f64 (neg.f64 x) x) wj (fma.f64 (-.f64 x (neg.f64 x)) (*.f64 wj wj) x)))
(+.f64 (fma.f64 (+.f64 x x) (*.f64 wj wj) x) (*.f64 (*.f64 x -2) (+.f64 (pow.f64 wj 3) wj)))
(fma.f64 (*.f64 x -2) (+.f64 wj (pow.f64 wj 3)) (fma.f64 (+.f64 x x) (*.f64 wj wj) x))
(fma.f64 (*.f64 x -2) (+.f64 wj (pow.f64 wj 3)) (fma.f64 wj (*.f64 x (+.f64 wj wj)) x))
(*.f64 -1 x)
(neg.f64 x)
(-.f64 (+.f64 (*.f64 -1 x) (/.f64 x wj)) (*.f64 -1 (/.f64 x wj)))
(-.f64 (fma.f64 -1 x (/.f64 x wj)) (/.f64 (neg.f64 x) wj))
(+.f64 (/.f64 x wj) (-.f64 (/.f64 x wj) x))
(-.f64 (/.f64 (+.f64 x x) wj) x)
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))) (+.f64 (*.f64 -1 (/.f64 x wj)) (/.f64 x (pow.f64 wj 2))))
(-.f64 (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))) (fma.f64 -1 (/.f64 x wj) (/.f64 x (*.f64 wj wj))))
(+.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) (-.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) x))
(-.f64 (*.f64 2 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))) x)
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
(-.f64 (+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 3))) (/.f64 x (pow.f64 wj 2)))))
(+.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))) (fma.f64 -1 (/.f64 x wj) (fma.f64 -1 (/.f64 x (pow.f64 wj 3)) (/.f64 x (*.f64 wj wj))))))
(+.f64 (-.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) x) (-.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (-.f64 (/.f64 (/.f64 x wj) wj) (/.f64 x (pow.f64 wj 3))) (/.f64 x wj))))
(+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (*.f64 2 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))) x)))
(+.f64 (-.f64 (*.f64 2 (/.f64 x (pow.f64 wj 3))) x) (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (*.f64 -1 x))
(-.f64 (fma.f64 -1 x (/.f64 x wj)) (/.f64 (neg.f64 x) wj))
(+.f64 (/.f64 x wj) (-.f64 (/.f64 x wj) x))
(-.f64 (/.f64 (+.f64 x x) wj) x)
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 x (pow.f64 wj 2))))) (/.f64 x (pow.f64 wj 2)))
(-.f64 (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))) (fma.f64 -1 (/.f64 x wj) (/.f64 x (*.f64 wj wj))))
(+.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) (-.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) x))
(-.f64 (*.f64 2 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))) x)
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) wj)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 -1 x) x) (pow.f64 wj 3)))))) (/.f64 x (pow.f64 wj 2)))
(+.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))) (fma.f64 -1 (/.f64 x wj) (fma.f64 -1 (/.f64 x (pow.f64 wj 3)) (/.f64 x (*.f64 wj wj))))))
(+.f64 (-.f64 (-.f64 (/.f64 x wj) (/.f64 (/.f64 x wj) wj)) x) (-.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (-.f64 (/.f64 (/.f64 x wj) wj) (/.f64 x (pow.f64 wj 3))) (/.f64 x wj))))
(+.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 (/.f64 x (pow.f64 wj 3)) (-.f64 (*.f64 2 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj)))) x)))
(+.f64 (-.f64 (*.f64 2 (/.f64 x (pow.f64 wj 3))) x) (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)))

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 -1 wj) 1)
0.0b
(/.f64 (/.f64 x wj) (exp.f64 wj))
0.2b
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
Compiler

Compiled 37 to 18 computations (51.4% saved)

series13.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

TimeVariablePointExpression
4.0ms
x
@inf
(/.f64 (/.f64 x wj) (exp.f64 wj))
1.0ms
x
@0
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
1.0ms
wj
@-inf
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
1.0ms
wj
@inf
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
1.0ms
wj
@0
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))

rewrite102.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
602×log-prod_binary64
447×pow-prod-down_binary64
302×pow2_binary64
244×log-div_binary64
213×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134
123334
2329834
Stop Event
node limit
Counts
3 → 190
Calls
Call 1
Inputs
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(+.f64 (/.f64 -1 wj) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))) (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)) (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)) (/.f64 x (*.f64 wj (exp.f64 wj))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)) (/.f64 x (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)) (/.f64 x (*.f64 wj (exp.f64 wj)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)) (/.f64 x (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (exp.f64 wj) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 -1 wj) 1) (*.f64 (exp.f64 wj) (/.f64 wj x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (*.f64 (*.f64 (exp.f64 wj) (/.f64 wj x)) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 wj -2) -1) (*.f64 (*.f64 (exp.f64 wj) (/.f64 wj x)) (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj)) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))) (neg.f64 (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 (pow.f64 wj -3) 1) 1) (*.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (*.f64 (exp.f64 wj) (/.f64 wj x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 wj -2) -1) 1) (*.f64 (+.f64 (/.f64 -1 wj) -1) (*.f64 (exp.f64 wj) (/.f64 wj x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 (pow.f64 wj -3) 1) x) (*.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 wj -2) -1) x) (*.f64 (+.f64 (/.f64 -1 wj) -1) (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (/.f64 x wj)) (*.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 wj -2) -1) (/.f64 x wj)) (*.f64 (+.f64 (/.f64 -1 wj) -1) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (/.f64 (neg.f64 x) wj)) (*.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (neg.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 wj -2) -1) (/.f64 (neg.f64 x) wj)) (*.f64 (+.f64 (/.f64 -1 wj) -1) (neg.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (fma.f64 -1 (pow.f64 wj -3) 1)) (*.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x wj) (fma.f64 -1 (pow.f64 wj -3) 1)) (*.f64 (exp.f64 wj) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (neg.f64 x) wj) (fma.f64 -1 (pow.f64 wj -3) 1)) (*.f64 (neg.f64 (exp.f64 wj)) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 wj -2) -1)) (*.f64 (*.f64 wj (exp.f64 wj)) (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x wj) (+.f64 (pow.f64 wj -2) -1)) (*.f64 (exp.f64 wj) (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (neg.f64 x) wj) (+.f64 (pow.f64 wj -2) -1)) (*.f64 (neg.f64 (exp.f64 wj)) (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj)) 1) (exp.f64 wj))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj)) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (cbrt.f64 (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj)) (sqrt.f64 (exp.f64 wj))) (sqrt.f64 (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 wj -2) -1) (/.f64 x (*.f64 wj (exp.f64 wj)))) (+.f64 (/.f64 -1 wj) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (neg.f64 x) wj) (+.f64 (/.f64 -1 wj) 1)) (neg.f64 (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) x) (*.f64 wj (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (neg.f64 x) wj)) (neg.f64 (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (fma.f64 -1 (pow.f64 wj -3) 1)) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (+.f64 (pow.f64 wj -2) -1)) (+.f64 (/.f64 -1 wj) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 wj) (*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 x (+.f64 (/.f64 -1 wj) 1)) (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 (/.f64 -1 wj)) (-.f64 wj (log.f64 (/.f64 x wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 (/.f64 -1 wj)) (-.f64 wj (log.f64 (/.f64 x wj)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (*.f64 wj (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x wj) (exp.f64 (neg.f64 wj)) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x wj) (exp.f64 (neg.f64 wj)) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 1 (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 1 (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (*.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (*.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x wj)) (*.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x wj)) (*.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (neg.f64 x) wj) (/.f64 1 (neg.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (neg.f64 x) wj) (/.f64 1 (neg.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (neg.f64 wj)) (/.f64 x wj) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (neg.f64 wj)) (/.f64 x wj) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (exp.f64 wj)) (/.f64 (cbrt.f64 x) wj) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (exp.f64 wj)) (/.f64 (cbrt.f64 x) wj) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (exp.f64 wj)) (/.f64 (sqrt.f64 x) wj) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (exp.f64 wj)) (/.f64 (sqrt.f64 x) wj) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 1) (/.f64 (/.f64 1 wj) (exp.f64 wj)) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 1) (/.f64 (/.f64 1 wj) (exp.f64 wj)) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) 1) (/.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 wj)) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) 1) (/.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 wj)) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) 1) (/.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 wj)) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) 1) (/.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 wj)) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 wj)) -2) (/.f64 (/.f64 x wj) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 wj)) -2) (/.f64 (/.f64 x wj) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (/.f64 1 wj) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (/.f64 1 wj) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (sqrt.f64 (/.f64 x wj)) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (sqrt.f64 (/.f64 x wj)) (cbrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (exp.f64 wj) -1/2) (/.f64 (/.f64 x wj) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (exp.f64 wj) -1/2) (/.f64 (/.f64 x wj) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 (exp.f64 wj))) (/.f64 (/.f64 1 wj) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 (exp.f64 wj))) (/.f64 (/.f64 1 wj) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (sqrt.f64 (exp.f64 wj))) (/.f64 (cbrt.f64 (/.f64 x wj)) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 -1 wj) (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (sqrt.f64 (exp.f64 wj))) (/.f64 (cbrt.f64 (/.f64 x wj)) (sqrt.f64 (exp.f64 wj))) (*.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 -1 wj)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 x (*.f64 wj (exp.f64 wj))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 x (*.f64 wj (exp.f64 wj))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (*.f64 wj (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x wj) (exp.f64 (neg.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (*.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x wj)) (*.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 (neg.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 x) wj) (/.f64 1 (neg.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 wj)) (/.f64 x wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (exp.f64 wj)) (/.f64 (cbrt.f64 x) wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (exp.f64 wj)) (/.f64 (sqrt.f64 x) wj))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (/.f64 (/.f64 1 wj) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) 1) (/.f64 (cbrt.f64 (/.f64 x wj)) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) 1) (/.f64 (sqrt.f64 (/.f64 x wj)) (exp.f64 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 wj)) -2) (/.f64 (/.f64 x wj) (cbrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (/.f64 1 wj) (cbrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x wj)) (pow.f64 (cbrt.f64 (exp.f64 wj)) 2)) (/.f64 (sqrt.f64 (/.f64 x wj)) (cbrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 wj) -1/2) (/.f64 (/.f64 x wj) (sqrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 (exp.f64 wj))) (/.f64 (/.f64 1 wj) (sqrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x wj)) 2) (sqrt.f64 (exp.f64 wj))) (/.f64 (cbrt.f64 (/.f64 x wj)) (sqrt.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 wj) (/.f64 wj x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 x wj) 3) (pow.f64 (exp.f64 wj) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 wj x) (exp.f64 wj)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (exp.f64 wj) (/.f64 wj x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 wj (exp.f64 wj)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 x wj) (neg.f64 (exp.f64 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 x (*.f64 wj (exp.f64 wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 x wj) 3) (pow.f64 (exp.f64 wj) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (*.f64 wj (exp.f64 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (/.f64 x wj)) wj))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (/.f64 x wj)) wj) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (/.f64 -1 wj) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 wj -2) (+.f64 (/.f64 -1 wj) -1)) (/.f64 1 (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 -1 wj) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 -1 wj) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 -1 wj) 1)) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1 wj) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1 wj) 1)) 2) (cbrt.f64 (+.f64 (/.f64 -1 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 -1 wj) 1)) (sqrt.f64 (+.f64 (/.f64 -1 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (/.f64 1 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 wj -2) -1) (/.f64 1 (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (fma.f64 -1 (pow.f64 wj -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 -1 wj) -1) (+.f64 (pow.f64 wj -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 (pow.f64 wj -3) 1) (+.f64 1 (-.f64 (pow.f64 wj -2) (/.f64 -1 wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 wj -2) -1) (+.f64 (/.f64 -1 wj) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 -1 (pow.f64 wj -3) 1)) (neg.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 wj -2) -1)) (neg.f64 (+.f64 (/.f64 -1 wj) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 wj -2)) (-.f64 1 (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 -1 wj) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 -1 wj) 1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 -1 wj) 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (/.f64 -1 wj) 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (/.f64 -1 wj) 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 wj -2) (-.f64 1 (/.f64 -1 wj))) (fma.f64 -1 (pow.f64 wj -3) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 -1 wj) -1) (+.f64 (pow.f64 wj -2) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (/.f64 -1 wj) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (/.f64 -1 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (/.f64 -1 wj) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (/.f64 -1 wj) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (/.f64 -1 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (/.f64 -1 wj) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (/.f64 -1 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (/.f64 -1 wj)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 wj) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (/.f64 1 wj) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 wj) 1 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 -1 wj) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 (cbrt.f64 wj)) (cbrt.f64 (pow.f64 wj -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 wj -2)) (/.f64 -1 (cbrt.f64 wj)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 wj -2)) (*.f64 (/.f64 -1 (cbrt.f64 wj)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (neg.f64 wj) -1/2) (pow.f64 (neg.f64 wj) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (neg.f64 wj) -1/2) (*.f64 (pow.f64 (neg.f64 wj) -1/2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 wj) -1 1)))))

simplify67.0ms (0.6%)

Algorithm
egg-herbie
Rules
867×times-frac_binary64
745×unsub-neg_binary64
475×fma-def_binary64
469×sub-neg_binary64
348×distribute-neg-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
061907
1206842
2764662
35042662
Stop Event
node limit
Counts
250 → 216
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 x (pow.f64 wj 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)) (*.f64 -1 (/.f64 x wj)))
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1/2 x) x)))
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/2 x) x) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/6 x) (*.f64 1/2 (-.f64 x (*.f64 -1 x)))))) wj) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1/2 x) x)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x wj)
(+.f64 (*.f64 -1 x) (/.f64 x wj))
(+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) wj)) (/.f64 x wj)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))))))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) wj)) (/.f64 x wj))))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 -1 wj)
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
1
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
1
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
(-.f64 1 (/.f64 1 wj))
Outputs
(*.f64 -1 (/.f64 x (pow.f64 wj 2)))
(/.f64 (neg.f64 x) (*.f64 wj wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(-.f64 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)) (*.f64 -1 (/.f64 x wj)))
(-.f64 (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj)) (/.f64 (neg.f64 x) wj))
(+.f64 (/.f64 x wj) (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj))))
(+.f64 (/.f64 x wj) (/.f64 (-.f64 x (/.f64 x wj)) wj))
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1/2 x) x)))
(-.f64 (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj))) (fma.f64 -1 (/.f64 x wj) (*.f64 x 1/2)))
(+.f64 (-.f64 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj))) x) (+.f64 (/.f64 x wj) (*.f64 x -1/2)))
(+.f64 (/.f64 x wj) (+.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (*.f64 x -3/2)))
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/2 x) x) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/6 x) (*.f64 1/2 (-.f64 x (*.f64 -1 x)))))) wj) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (/.f64 x wj)))) (+.f64 (*.f64 -1 (/.f64 x wj)) (+.f64 (*.f64 -1/2 x) x)))
(-.f64 (fma.f64 (-.f64 (*.f64 x 1/2) (fma.f64 -1 x (fma.f64 -1/6 x (*.f64 1/2 (-.f64 x (neg.f64 x)))))) wj (fma.f64 -1 x (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (/.f64 x wj)))) (fma.f64 -1 (/.f64 x wj) (*.f64 x 1/2)))
(+.f64 (fma.f64 wj (-.f64 (*.f64 x 3/2) (fma.f64 x -1/6 (*.f64 1/2 (+.f64 x x)))) (-.f64 (-.f64 (/.f64 x wj) (/.f64 x (*.f64 wj wj))) x)) (+.f64 (/.f64 x wj) (*.f64 x -1/2)))
(+.f64 (fma.f64 wj (*.f64 x 2/3) (/.f64 (-.f64 x (/.f64 x wj)) wj)) (+.f64 (*.f64 x -3/2) (/.f64 x wj)))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(+.f64 (/.f64 x (*.f64 (exp.f64 wj) wj)) (*.f64 -1 (/.f64 x (*.f64 (exp.f64 wj) (pow.f64 wj 2)))))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 wj (exp.f64 wj)))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 (*.f64 (-.f64 1 (/.f64 1 wj)) x) (*.f64 (exp.f64 wj) wj))
(+.f64 (/.f64 x (*.f64 wj (exp.f64 wj))) (/.f64 (neg.f64 x) (*.f64 (*.f64 wj wj) (exp.f64 wj))))
(-.f64 (/.f64 (/.f64 x wj) (exp.f64 wj)) (/.f64 x (*.f64 wj (*.f64 wj (exp.f64 wj)))))
(/.f64 (/.f64 (-.f64 x (/.f64 x wj)) wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 (exp.f64 wj) wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x wj)
(+.f64 (*.f64 -1 x) (/.f64 x wj))
(fma.f64 -1 x (/.f64 x wj))
(-.f64 (/.f64 x wj) x)
(+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) wj)) (/.f64 x wj)))
(fma.f64 -1 x (fma.f64 -1 (*.f64 wj (*.f64 x -1/2)) (/.f64 x wj)))
(-.f64 (fma.f64 (*.f64 x 1/2) wj (/.f64 x wj)) x)
(-.f64 (fma.f64 wj (*.f64 x 1/2) (/.f64 x wj)) x)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/6 x) (*.f64 -1 (+.f64 (*.f64 1/2 x) (*.f64 -1 x))))))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1 x)) wj)) (/.f64 x wj))))
(fma.f64 -1 (*.f64 (*.f64 wj wj) (fma.f64 -1/2 x (fma.f64 1/6 x (neg.f64 (*.f64 x -1/2))))) (fma.f64 -1 x (fma.f64 -1 (*.f64 wj (*.f64 x -1/2)) (/.f64 x wj))))
(-.f64 (-.f64 (fma.f64 (*.f64 x 1/2) wj (/.f64 x wj)) x) (*.f64 wj (*.f64 wj (+.f64 (*.f64 x 1/2) (*.f64 x -1/3)))))
(-.f64 (fma.f64 wj (*.f64 x 1/2) (/.f64 x wj)) (fma.f64 (*.f64 wj wj) (*.f64 x 1/6) x))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 x (*.f64 wj (exp.f64 wj)))
(/.f64 (/.f64 x wj) (exp.f64 wj))
(/.f64 -1 wj)
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
1
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
1
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))
(-.f64 1 (/.f64 1 wj))
(+.f64 1 (/.f64 -1 wj))

localize19.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 wj 1))
4.6b
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
Compiler

Compiled 42 to 22 computations (47.6% saved)

series14.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
9.0ms
wj
@0
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
1.0ms
x
@-inf
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
1.0ms
x
@0
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
1.0ms
x
@inf
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
1.0ms
wj
@-inf
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)

rewrite83.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
642×prod-diff_binary64
459×log-prod_binary64
324×fma-def_binary64
313×pow-prod-down_binary64
264×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify65.0ms (0.6%)

Algorithm
egg-herbie
Rules
578×fma-neg_binary64
421×fma-def_binary64
409×sub-neg_binary64
357×associate-+l+_binary64
303×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
087700
1272643
2851600
33711571
Stop Event
node limit
Counts
113 → 118
Calls
Call 1
Inputs
x
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) (+.f64 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 2 x) 1)) x))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (*.f64 -1 x)) (pow.f64 wj 3)) (+.f64 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 2 x) 1)) x)))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 wj (*.f64 2 (/.f64 x wj)))))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 x) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 wj (*.f64 2 (/.f64 x wj)))))))
wj
(-.f64 (+.f64 (*.f64 -1 x) wj) 1)
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 x) 1) wj)) wj)) 1)
(-.f64 (+.f64 (*.f64 -2 (/.f64 x (pow.f64 wj 2))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 x) 1) wj)) wj))) (+.f64 1 (/.f64 1 (pow.f64 wj 2))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) wj)
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
1
(+.f64 1 (*.f64 -1 wj))
(+.f64 (pow.f64 wj 2) (+.f64 1 (*.f64 -1 wj)))
(+.f64 (pow.f64 wj 2) (+.f64 1 (+.f64 (*.f64 -1 wj) (*.f64 -1 (pow.f64 wj 3)))))
(/.f64 1 wj)
(-.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (pow.f64 wj 4)) (/.f64 1 (pow.f64 wj 2))))
(/.f64 1 wj)
(-.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (pow.f64 wj 4)) (/.f64 1 (pow.f64 wj 2))))
Outputs
x
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) x)
(fma.f64 (fma.f64 -1 (+.f64 x 1) (+.f64 1 (neg.f64 x))) wj x)
(fma.f64 (-.f64 (-.f64 1 x) (+.f64 x 1)) wj x)
(fma.f64 (*.f64 x -2) wj x)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) (+.f64 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 2 x) 1)) x))
(fma.f64 (fma.f64 -1 (+.f64 x 1) (+.f64 1 (neg.f64 x))) wj (fma.f64 (*.f64 wj wj) (fma.f64 2 x 1) x))
(fma.f64 (-.f64 (-.f64 1 x) (+.f64 x 1)) wj (fma.f64 (*.f64 wj wj) (fma.f64 x 2 1) x))
(fma.f64 (*.f64 x -2) wj (fma.f64 (*.f64 wj wj) (fma.f64 x 2 1) x))
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 1 (*.f64 -1 x))) wj) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 1 x)) (*.f64 -1 x)) (pow.f64 wj 3)) (+.f64 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 2 x) 1)) x)))
(fma.f64 (fma.f64 -1 (+.f64 x 1) (+.f64 1 (neg.f64 x))) wj (fma.f64 (*.f64 -1 (+.f64 (+.f64 x 1) x)) (pow.f64 wj 3) (fma.f64 (*.f64 wj wj) (fma.f64 2 x 1) x)))
(fma.f64 (-.f64 (-.f64 1 x) (+.f64 x 1)) wj (fma.f64 (-.f64 (-.f64 -1 x) x) (pow.f64 wj 3) (fma.f64 (*.f64 wj wj) (fma.f64 x 2 1) x)))
(fma.f64 (*.f64 x -2) wj (fma.f64 (fma.f64 x -2 -1) (pow.f64 wj 3) (fma.f64 (*.f64 wj wj) (fma.f64 x 2 1) x)))
(+.f64 x (*.f64 wj (+.f64 (*.f64 x -2) (*.f64 wj (*.f64 (fma.f64 x -2 -1) (+.f64 -1 wj))))))
wj
(+.f64 (*.f64 -1 (+.f64 1 x)) wj)
(fma.f64 -1 (+.f64 x 1) wj)
(+.f64 -1 (-.f64 wj x))
(-.f64 (+.f64 -1 wj) x)
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 wj (*.f64 2 (/.f64 x wj)))))
(fma.f64 -1 (+.f64 x 1) (+.f64 (+.f64 (/.f64 1 wj) wj) (*.f64 2 (/.f64 x wj))))
(+.f64 (-.f64 -1 x) (+.f64 (/.f64 1 wj) (fma.f64 2 (/.f64 x wj) wj)))
(+.f64 (/.f64 1 wj) (+.f64 wj (fma.f64 2 (/.f64 x wj) (-.f64 -1 x))))
(+.f64 (-.f64 -1 x) (-.f64 wj (/.f64 (fma.f64 x -2 -1) wj)))
(+.f64 (*.f64 -1 (+.f64 1 x)) (+.f64 (/.f64 1 wj) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 x) (pow.f64 wj 2))) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 wj 2))) (+.f64 wj (*.f64 2 (/.f64 x wj)))))))
(fma.f64 -1 (+.f64 x 1) (+.f64 (/.f64 1 wj) (fma.f64 -1 (/.f64 (+.f64 x 1) (*.f64 wj wj)) (fma.f64 -1 (/.f64 x (*.f64 wj wj)) (+.f64 wj (*.f64 2 (/.f64 x wj)))))))
(+.f64 (-.f64 -1 x) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 (-.f64 -1 x) (*.f64 wj wj)) (-.f64 (fma.f64 2 (/.f64 x wj) wj) (/.f64 x (*.f64 wj wj))))))
(+.f64 (/.f64 (-.f64 -1 x) (*.f64 wj wj)) (+.f64 (+.f64 (+.f64 wj (/.f64 1 wj)) (*.f64 (/.f64 x wj) (+.f64 (/.f64 -1 wj) 2))) (-.f64 -1 x)))
(+.f64 (+.f64 (-.f64 -1 x) (-.f64 wj (/.f64 (fma.f64 x -2 -1) wj))) (*.f64 (/.f64 -1 (*.f64 wj wj)) (fma.f64 x 2 1)))
wj
(-.f64 (+.f64 (*.f64 -1 x) wj) 1)
(fma.f64 -1 (+.f64 x 1) wj)
(+.f64 -1 (-.f64 wj x))
(-.f64 (+.f64 -1 wj) x)
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 x) 1) wj)) wj)) 1)
(fma.f64 -1 (+.f64 x 1) (+.f64 (+.f64 (/.f64 1 wj) wj) (*.f64 2 (/.f64 x wj))))
(+.f64 (-.f64 -1 x) (+.f64 (/.f64 1 wj) (fma.f64 2 (/.f64 x wj) wj)))
(+.f64 (/.f64 1 wj) (+.f64 wj (fma.f64 2 (/.f64 x wj) (-.f64 -1 x))))
(+.f64 (-.f64 -1 x) (-.f64 wj (/.f64 (fma.f64 x -2 -1) wj)))
(-.f64 (+.f64 (*.f64 -2 (/.f64 x (pow.f64 wj 2))) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 x) 1) wj)) wj))) (+.f64 1 (/.f64 1 (pow.f64 wj 2))))
(-.f64 (fma.f64 -2 (/.f64 x (*.f64 wj wj)) (fma.f64 -1 x (fma.f64 -1 (/.f64 (fma.f64 -2 x -1) wj) wj))) (+.f64 1 (/.f64 1 (*.f64 wj wj))))
(fma.f64 (/.f64 x (*.f64 wj wj)) -2 (+.f64 (-.f64 (-.f64 wj (/.f64 (fma.f64 x -2 -1) wj)) x) (+.f64 -1 (/.f64 -1 (*.f64 wj wj)))))
(+.f64 (/.f64 -1 (*.f64 wj wj)) (fma.f64 (/.f64 x wj) (/.f64 -2 wj) (-.f64 (-.f64 wj (-.f64 (/.f64 (fma.f64 x -2 -1) wj) -1)) x)))
(fma.f64 x (/.f64 -2 (*.f64 wj wj)) (+.f64 (-.f64 wj (/.f64 (fma.f64 x -2 -1) wj)) (-.f64 (-.f64 -1 x) (/.f64 (/.f64 1 wj) wj))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) wj)
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) wj)
(-.f64 wj (/.f64 wj (+.f64 1 wj)))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj))) wj))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))
(neg.f64 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)))
(/.f64 (neg.f64 (+.f64 -1 wj)) (/.f64 (+.f64 1 wj) x))
(*.f64 (/.f64 x (+.f64 1 wj)) (-.f64 1 wj))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (*.f64 -1 (/.f64 (*.f64 (-.f64 wj 1) x) (+.f64 1 wj)))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))
(neg.f64 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)))
(/.f64 (neg.f64 (+.f64 -1 wj)) (/.f64 (+.f64 1 wj) x))
(*.f64 (/.f64 x (+.f64 1 wj)) (-.f64 1 wj))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
(+.f64 (*.f64 -1 (/.f64 wj (+.f64 1 wj))) (+.f64 wj (/.f64 (*.f64 (+.f64 1 (*.f64 -1 wj)) x) (+.f64 1 wj))))
(fma.f64 -1 (/.f64 wj (+.f64 1 wj)) (fma.f64 -1 (/.f64 (+.f64 wj -1) (/.f64 (+.f64 1 wj) x)) wj))
(-.f64 (-.f64 wj (/.f64 wj (+.f64 1 wj))) (*.f64 (/.f64 (+.f64 -1 wj) (+.f64 1 wj)) x))
(fma.f64 (/.f64 (-.f64 1 wj) (+.f64 1 wj)) x (-.f64 wj (/.f64 wj (+.f64 1 wj))))
(+.f64 wj (*.f64 (/.f64 -1 (+.f64 1 wj)) (+.f64 wj (-.f64 (*.f64 x wj) x))))
1
(+.f64 1 (*.f64 -1 wj))
(+.f64 1 (neg.f64 wj))
(-.f64 1 wj)
(+.f64 (pow.f64 wj 2) (+.f64 1 (*.f64 -1 wj)))
(+.f64 (*.f64 wj wj) (+.f64 1 (neg.f64 wj)))
(-.f64 (fma.f64 wj wj 1) wj)
(+.f64 (pow.f64 wj 2) (+.f64 1 (+.f64 (*.f64 -1 wj) (*.f64 -1 (pow.f64 wj 3)))))
(+.f64 (+.f64 (*.f64 wj wj) 1) (*.f64 -1 (+.f64 wj (pow.f64 wj 3))))
(fma.f64 wj wj (-.f64 (-.f64 1 wj) (pow.f64 wj 3)))
(-.f64 (-.f64 (fma.f64 wj wj 1) wj) (pow.f64 wj 3))
(*.f64 (fma.f64 wj wj 1) (-.f64 1 wj))
(/.f64 1 wj)
(-.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (/.f64 1 wj) (/.f64 1 (*.f64 wj wj)))
(+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj)))
(-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (/.f64 1 (pow.f64 wj 2)))
(+.f64 (/.f64 1 wj) (-.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 1 (*.f64 wj wj))))
(+.f64 (/.f64 1 (pow.f64 wj 3)) (+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj))))
(+.f64 (+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj))) (/.f64 1 (pow.f64 wj 3)))
(+.f64 (-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj)) (/.f64 1 (pow.f64 wj 3)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (pow.f64 wj 4)) (/.f64 1 (pow.f64 wj 2))))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 1 (pow.f64 wj 4))))
(+.f64 (/.f64 1 (pow.f64 wj 3)) (-.f64 (/.f64 1 wj) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 1 (pow.f64 wj 4)))))
(+.f64 (/.f64 -1 (*.f64 wj wj)) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 -1 (pow.f64 wj 4)))))
(+.f64 (+.f64 (-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj)) (/.f64 1 (pow.f64 wj 3))) (/.f64 -1 (pow.f64 wj 4)))
(/.f64 1 wj)
(-.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 2)))
(-.f64 (/.f64 1 wj) (/.f64 1 (*.f64 wj wj)))
(+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj)))
(-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (/.f64 1 (pow.f64 wj 2)))
(+.f64 (/.f64 1 wj) (-.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 1 (*.f64 wj wj))))
(+.f64 (/.f64 1 (pow.f64 wj 3)) (+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj))))
(+.f64 (+.f64 (/.f64 1 wj) (/.f64 -1 (*.f64 wj wj))) (/.f64 1 (pow.f64 wj 3)))
(+.f64 (-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj)) (/.f64 1 (pow.f64 wj 3)))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (pow.f64 wj 4)) (/.f64 1 (pow.f64 wj 2))))
(-.f64 (+.f64 (/.f64 1 wj) (/.f64 1 (pow.f64 wj 3))) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 1 (pow.f64 wj 4))))
(+.f64 (/.f64 1 (pow.f64 wj 3)) (-.f64 (/.f64 1 wj) (+.f64 (/.f64 1 (*.f64 wj wj)) (/.f64 1 (pow.f64 wj 4)))))
(+.f64 (/.f64 -1 (*.f64 wj wj)) (+.f64 (/.f64 1 wj) (+.f64 (/.f64 1 (pow.f64 wj 3)) (/.f64 -1 (pow.f64 wj 4)))))
(+.f64 (+.f64 (-.f64 (/.f64 1 wj) (/.f64 (/.f64 1 wj) wj)) (/.f64 1 (pow.f64 wj 3))) (/.f64 -1 (pow.f64 wj 4)))

eval438.0ms (3.9%)

Compiler

Compiled 13262 to 7661 computations (42.2% saved)

prune203.0ms (1.8%)

Pruning

21 alts after pruning (17 fresh and 4 done)

PrunedKeptTotal
New5689577
Fresh3811
Picked011
Done336
Total57421595
Error
0.0b
Counts
595 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
1.0b
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj (*.f64 wj (fma.f64 x 5/2 1)) x))
0.3b
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
63.4b
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
6.8b
(/.f64 x (+.f64 1 (*.f64 2 wj)))
63.4b
(/.f64 (/.f64 (neg.f64 x) wj) wj)
7.3b
(+.f64 x (*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1))))
61.4b
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
6.8b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
11.2b
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
6.6b
(*.f64 x (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj)))))
47.2b
(fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (fma.f64 (neg.f64 (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj))))) (-.f64 (*.f64 wj (exp.f64 wj)) x) (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj))))))
7.2b
x
6.8b
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
6.8b
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
62.3b
(-.f64 (*.f64 2 (/.f64 x wj)) x)
62.7b
(neg.f64 x)
61.6b
wj
34.1b
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))
1.0b
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
6.7b
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
63.4b
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
Compiler

Compiled 516 to 300 computations (41.9% saved)

localize39.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
0.0b
(+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
0.0b
(*.f64 -2 (*.f64 wj x))
Compiler

Compiled 61 to 31 computations (49.2% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite83.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
549×fma-def_binary64
507×log-prod_binary64
395×pow-prod-down_binary64
283×fma-neg_binary64
271×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
120612
2298212
Stop Event
node limit
Counts
1 → 93
Calls
Call 1
Inputs
(+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 wj 4) (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1)))) (/.f64 (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2) (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))) (pow.f64 (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))) 2) (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 wj (sqrt.f64 (*.f64 x (fma.f64 wj -2 1)))) (hypot.f64 wj (sqrt.f64 (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3)) (/.f64 1 (fma.f64 (*.f64 x (fma.f64 wj -2 1)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)) (pow.f64 wj 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 wj 4) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2)) (/.f64 1 (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x (fma.f64 wj -2 1)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)) (pow.f64 wj 4)) (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1))) (-.f64 (pow.f64 wj 4) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3)) (fma.f64 (*.f64 x (fma.f64 wj -2 1)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)) (pow.f64 wj 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3)) (+.f64 (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2) (-.f64 (pow.f64 wj 4) (*.f64 wj (*.f64 wj (*.f64 x (fma.f64 wj -2 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 wj 4) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2)) (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3))) (neg.f64 (fma.f64 (*.f64 x (fma.f64 wj -2 1)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)) (pow.f64 wj 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 wj 4) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2))) (neg.f64 (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) 2) (-.f64 (*.f64 x x) (*.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2) (pow.f64 wj 4)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) 2) (*.f64 x x)) (-.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 wj (sqrt.f64 (*.f64 x (fma.f64 wj -2 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x (fma.f64 wj -2 1)) (-.f64 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj)) (pow.f64 wj 4)) (+.f64 (pow.f64 wj 6) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1))) (-.f64 (pow.f64 wj 4) (pow.f64 (*.f64 x (fma.f64 wj -2 1)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 wj wj))) (pow.f64 (exp.f64 x) (fma.f64 wj -2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 wj) wj) (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 wj -2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 wj wj))) (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 wj -2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 1) (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 wj -2 1)))) (pow.f64 (exp.f64 wj) wj)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (fma.f64 wj -2 1)) (+.f64 1 (expm1.f64 (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 wj -2 1)))) (+.f64 1 (expm1.f64 (*.f64 wj wj)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1) (fma.f64 wj (*.f64 x -2) (*.f64 wj wj))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 wj (sqrt.f64 (*.f64 x (fma.f64 wj -2 1))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj wj (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (*.f64 x -2) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj wj) 1 (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 wj x) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 wj -2) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (fma.f64 wj -2 1) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (+.f64 1 (*.f64 wj -2)) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj x) -2 (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (*.f64 x -2)) 1 (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (fma.f64 wj -2 1)) 1 (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj wj) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj (*.f64 x -2)) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (fma.f64 wj -2 1)) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (fma.f64 wj -2 1))) (pow.f64 (cbrt.f64 (*.f64 x (fma.f64 wj -2 1))) 2) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (fma.f64 wj -2 1))) 2) (cbrt.f64 (*.f64 x (fma.f64 wj -2 1))) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 wj x) 2)) (*.f64 (cbrt.f64 (*.f64 wj x)) -2) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 wj) 2) (*.f64 (cbrt.f64 wj) wj) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 wj) wj) (pow.f64 (cbrt.f64 wj) 2) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj (*.f64 x -2))) (pow.f64 (cbrt.f64 (*.f64 wj (*.f64 x -2))) 2) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 wj (*.f64 x -2))) 2) (cbrt.f64 (*.f64 wj (*.f64 x -2))) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (fma.f64 wj -2 1))) (sqrt.f64 (*.f64 x (fma.f64 wj -2 1))) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (pow.f64 wj 3/2) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj x)) (*.f64 (sqrt.f64 (*.f64 wj x)) -2) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj (*.f64 x -2))) (sqrt.f64 (*.f64 wj (*.f64 x -2))) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 wj x) 3) -8 (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 wj (*.f64 x -2))) (*.f64 (pow.f64 (*.f64 wj x) 2) 4))) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 wj x) 2) 4 (neg.f64 (*.f64 x x))) (/.f64 1 (*.f64 x (fma.f64 wj -2 -1))) (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj -2) x (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj))) 2) (cbrt.f64 (fma.f64 wj (*.f64 x -2) (*.f64 wj wj))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 wj (sqrt.f64 (*.f64 wj (*.f64 x -2)))) (hypot.f64 wj (sqrt.f64 (*.f64 wj (*.f64 x -2)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 wj -2 1) x (*.f64 wj wj))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 x) wj (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 wj 3/2) (sqrt.f64 wj) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 wj) 5) (cbrt.f64 wj) (*.f64 x (fma.f64 wj -2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (cbrt.f64 (pow.f64 (*.f64 wj x) 2))) (cbrt.f64 (*.f64 wj x)) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sqrt.f64 (*.f64 wj x))) (sqrt.f64 (*.f64 wj x)) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj -2) 1) x (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj -2) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (+.f64 x (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj -2) (sqrt.f64 x)) (sqrt.f64 x) (+.f64 x (*.f64 wj wj)))))))

simplify113.0ms (1%)

Algorithm
egg-herbie
Rules
672×fma-neg_binary64
501×fma-def_binary64
456×distribute-rgt-neg-in_binary64
355×distribute-lft-neg-in_binary64
322×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
023273
151239
2119237
3283188
4651188
52020188
64368188
76229188
86945188
97627188
Stop Event
node limit
Counts
117 → 107
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(pow.f64 wj 2)
(+.f64 (pow.f64 wj 2) (*.f64 -2 (*.f64 wj x)))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(pow.f64 wj 2)
(+.f64 (pow.f64 wj 2) (*.f64 -2 (*.f64 wj x)))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(pow.f64 wj 2)
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
Outputs
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 -2 wj 1))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(pow.f64 wj 2)
(*.f64 wj wj)
(+.f64 (pow.f64 wj 2) (*.f64 -2 (*.f64 wj x)))
(+.f64 (*.f64 -2 (*.f64 x wj)) (*.f64 wj wj))
(fma.f64 -2 (*.f64 x wj) (*.f64 wj wj))
(*.f64 wj (+.f64 (*.f64 x -2) wj))
(*.f64 wj (fma.f64 x -2 wj))
(*.f64 wj (fma.f64 x 2 wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(pow.f64 wj 2)
(*.f64 wj wj)
(+.f64 (pow.f64 wj 2) (*.f64 -2 (*.f64 wj x)))
(+.f64 (*.f64 -2 (*.f64 x wj)) (*.f64 wj wj))
(fma.f64 -2 (*.f64 x wj) (*.f64 wj wj))
(*.f64 wj (+.f64 (*.f64 x -2) wj))
(*.f64 wj (fma.f64 x -2 wj))
(*.f64 wj (fma.f64 x 2 wj))
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(pow.f64 wj 2)
(*.f64 wj wj)
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -2 wj)) x) (pow.f64 wj 2))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(*.f64 (+.f64 1 (*.f64 -2 wj)) x)
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 -2 wj 1))
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (*.f64 (+.f64 1 (*.f64 -2 wj)) x))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x))
(fma.f64 -2 (*.f64 x wj) x)
(*.f64 x (fma.f64 -2 wj 1))
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)
(+.f64 (pow.f64 wj 2) (*.f64 -1 (*.f64 (-.f64 (*.f64 2 wj) 1) x)))
(+.f64 (fma.f64 -2 (*.f64 x wj) x) (*.f64 wj wj))
(fma.f64 x (fma.f64 -2 wj 1) (*.f64 wj wj))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj wj x))
(fma.f64 wj (fma.f64 x -2 wj) x)

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 2 (/.f64 x wj)) x)
Compiler

Compiled 20 to 9 computations (55% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite66.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
899×pow1_binary64
839×add-log-exp_binary64
838×log1p-expm1-u_binary64
838×expm1-log1p-u_binary64
822×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify55.0ms (0.5%)

Algorithm
egg-herbie
Rules
164×fma-def_binary64
147×fma-neg_binary64
103×cancel-sign-sub-inv_binary64
76×associate-*l*_binary64
60×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
017223
144223
289223
3204223
4497223
5893223
61114223
71218223
81407223
Stop Event
saturated
Counts
61 → 45
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 2 (/.f64 x wj))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 -1 x)
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 -1 x)
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
Outputs
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 (-.f64 (*.f64 2 (/.f64 1 wj)) 1) x)
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 (*.f64 (-.f64 1 (*.f64 2 (/.f64 1 wj))) x))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 2 (/.f64 x wj))
(/.f64 (*.f64 2 x) wj)
(/.f64 2 (/.f64 wj x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))
(+.f64 (*.f64 -1 x) (*.f64 2 (/.f64 x wj)))
(*.f64 (+.f64 (/.f64 2 wj) -1) x)
(fma.f64 (/.f64 2 wj) x (neg.f64 x))
(neg.f64 (fma.f64 x (/.f64 -2 wj) x))

localize27.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 x x) (+.f64 wj -1))
0.5b
(*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1)))
Compiler

Compiled 38 to 18 computations (52.6% saved)

series13.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1)))
1.0ms
x
@0
(*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1)))
1.0ms
x
@0
(*.f64 (+.f64 x x) (+.f64 wj -1))
1.0ms
x
@inf
(*.f64 (+.f64 x x) (+.f64 wj -1))
1.0ms
wj
@inf
(*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1)))

rewrite83.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
943×pow1_binary64
881×add-log-exp_binary64
879×log1p-expm1-u_binary64
879×expm1-log1p-u_binary64
94×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0823
117923
2270723
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1)))
(*.f64 (+.f64 x x) (+.f64 wj -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj (+.f64 x x)) wj) (*.f64 wj (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj (+.f64 x x)) wj) (*.f64 (*.f64 wj (+.f64 x x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj (*.f64 wj (+.f64 x x))) (*.f64 wj (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj (*.f64 wj (+.f64 x x))) (*.f64 -1 (*.f64 wj (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (*.f64 wj (+.f64 x x))) (*.f64 wj (*.f64 wj (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj (+.f64 x x)) -1) (*.f64 (*.f64 wj (+.f64 x x)) wj))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 wj (+.f64 x x)) (+.f64 -1 (pow.f64 wj 3))) (fma.f64 wj wj (-.f64 1 (*.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 wj (+.f64 x x)) (fma.f64 wj wj -1)) (+.f64 wj 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 2) x) (+.f64 wj -1)) wj))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 wj 3) (pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 3) (pow.f64 wj 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 wj -1) (*.f64 wj (+.f64 x x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x x) (*.f64 wj (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj (+.f64 x x)) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 wj -1)) (*.f64 x (+.f64 wj -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj (+.f64 x x)) 1) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 wj -1) x) (*.f64 (+.f64 wj -1) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 x 3)) (+.f64 -1 (pow.f64 wj 3))) (*.f64 (fma.f64 x x 0) (fma.f64 wj wj (-.f64 1 (*.f64 wj -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 0 (+.f64 -1 (pow.f64 wj 3))) (*.f64 0 (fma.f64 wj wj (-.f64 1 (*.f64 wj -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 x 3)) (fma.f64 wj wj -1)) (*.f64 (fma.f64 x x 0) (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 0 (fma.f64 wj wj -1)) (*.f64 0 (+.f64 wj 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 wj 3)) (*.f64 2 (pow.f64 x 3))) (*.f64 (fma.f64 wj wj (-.f64 1 (*.f64 wj -1))) (fma.f64 x x 0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 wj wj -1) (*.f64 2 (pow.f64 x 3))) (*.f64 (+.f64 wj 1) (fma.f64 x x 0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 wj 3)) 0) (*.f64 (fma.f64 wj wj (-.f64 1 (*.f64 wj -1))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 wj wj -1) 0) (*.f64 (+.f64 wj 1) 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 wj (+.f64 x x)) 3) (+.f64 x x)) (+.f64 (*.f64 (*.f64 wj (+.f64 x x)) (*.f64 wj (+.f64 x x))) (-.f64 (+.f64 x x) (*.f64 wj (+.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 wj (+.f64 x x)) (*.f64 wj (+.f64 x x))) (+.f64 x x)) (-.f64 (*.f64 wj (+.f64 x x)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 x 3)) (+.f64 wj -1)) (fma.f64 x x 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 0 (+.f64 wj -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 wj 3)) (+.f64 x x)) (fma.f64 wj wj (-.f64 1 (*.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 wj wj -1) (+.f64 x x)) (+.f64 wj 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (+.f64 -1 (pow.f64 wj 3))) (fma.f64 wj wj (-.f64 1 (*.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (fma.f64 wj wj -1)) (+.f64 wj 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 wj -1) (*.f64 2 (pow.f64 x 3))) (fma.f64 x x 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 wj -1) 0) 0)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 x x) (+.f64 wj -1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x x) (sqrt.f64 (+.f64 wj -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 2) x) (+.f64 wj -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 x x) (+.f64 wj -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (+.f64 x x) (pow.f64 (+.f64 wj -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 wj -1) 3) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 x x) (+.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 x x) (+.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 x x) (+.f64 wj -1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (+.f64 x x) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x x) wj (+.f64 x x))))))

simplify180.0ms (1.6%)

Algorithm
egg-herbie
Rules
804×fma-neg_binary64
675×fma-def_binary64
349×distribute-rgt-neg-in_binary64
347×*-commutative_binary64
339×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
021612
155591
2130444
3299444
4859444
51575444
63267444
75410444
Stop Event
node limit
Counts
109 → 75
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 wj x))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(*.f64 2 (*.f64 (pow.f64 wj 2) x))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(*.f64 2 (*.f64 (pow.f64 wj 2) x))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 -2 x)
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 wj x))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 wj x))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
Outputs
(*.f64 -2 (*.f64 wj x))
(*.f64 wj (*.f64 -2 x))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 wj 2) x)) (*.f64 -2 (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (pow.f64 wj 2) x))
(*.f64 2 (*.f64 x (*.f64 wj wj)))
(*.f64 2 (*.f64 wj (*.f64 wj x)))
(*.f64 wj (*.f64 (*.f64 wj x) 2))
(*.f64 (*.f64 wj wj) (*.f64 x 2))
(*.f64 wj (*.f64 x (*.f64 wj 2)))
(*.f64 (*.f64 wj x) (*.f64 wj 2))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (pow.f64 wj 2) x))
(*.f64 2 (*.f64 x (*.f64 wj wj)))
(*.f64 2 (*.f64 wj (*.f64 wj x)))
(*.f64 wj (*.f64 (*.f64 wj x) 2))
(*.f64 (*.f64 wj wj) (*.f64 x 2))
(*.f64 wj (*.f64 x (*.f64 wj 2)))
(*.f64 (*.f64 wj x) (*.f64 wj 2))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(+.f64 (*.f64 -2 (*.f64 wj x)) (*.f64 2 (*.f64 (pow.f64 wj 2) x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) (*.f64 wj x)))
(fma.f64 -2 (*.f64 wj x) (*.f64 2 (*.f64 x (*.f64 wj wj))))
(*.f64 x (+.f64 (*.f64 -2 wj) (*.f64 2 (*.f64 wj wj))))
(*.f64 (*.f64 wj x) (fma.f64 wj 2 -2))
(*.f64 wj (*.f64 x (fma.f64 wj 2 -2)))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 (-.f64 wj 1) x))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 -2 x)
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 wj x))
(*.f64 (*.f64 wj x) 2)
(*.f64 wj (*.f64 x 2))
(*.f64 x (*.f64 wj 2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(*.f64 2 (*.f64 wj x))
(*.f64 (*.f64 wj x) 2)
(*.f64 wj (*.f64 x 2))
(*.f64 x (*.f64 wj 2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))
(+.f64 (*.f64 -2 x) (*.f64 2 (*.f64 wj x)))
(*.f64 2 (*.f64 x (+.f64 wj -1)))
(*.f64 x (+.f64 (*.f64 wj 2) -2))
(*.f64 x (fma.f64 wj 2 -2))

localize30.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))
0.0b
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
0.0b
(*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))
0.4b
(*.f64 wj 2/3)
Compiler

Compiled 71 to 53 computations (25.4% saved)

series40.0ms (0.4%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
30.0ms
x
@0
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
1.0ms
x
@inf
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
1.0ms
wj
@inf
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
1.0ms
x
@-inf
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
1.0ms
wj
@-inf
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))

rewrite103.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
744×log-prod_binary64
568×fma-def_binary64
276×expm1-udef_binary64
276×log1p-udef_binary64
241×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01452
132240
2455340
Stop Event
node limit
Counts
4 → 168
Calls
Call 1
Inputs
(*.f64 wj 2/3)
(*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
(*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 wj 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 2/3) wj)) (cbrt.f64 (pow.f64 (exp.f64 2/3) wj)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 2/3) wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 2/3) wj))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 2/3) wj))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 wj 2/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj 2/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 wj 2/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 wj 2/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 wj 3) 8/27) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 wj wj) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 2/3) wj))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 wj 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 wj 3) 8/27))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 wj 2/3)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 wj (fma.f64 wj 2/3 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj 3/2) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj 3/2) 1) (*.f64 (*.f64 wj (*.f64 wj 2/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2))) (cbrt.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 wj 3/2) 3) (pow.f64 (*.f64 wj (*.f64 wj 2/3)) 3)) (fma.f64 (*.f64 wj 3/2) (*.f64 wj 3/2) (-.f64 (*.f64 (*.f64 wj (*.f64 wj 2/3)) (*.f64 wj (*.f64 wj 2/3))) (*.f64 (*.f64 wj 3/2) (*.f64 wj (*.f64 wj 2/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 wj 3/2) (*.f64 wj 3/2)) (*.f64 (*.f64 wj (*.f64 wj 2/3)) (*.f64 wj (*.f64 wj 2/3)))) (-.f64 (*.f64 wj 3/2) (*.f64 wj (*.f64 wj 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 wj 3) 8/27 27/8) wj) (fma.f64 (*.f64 wj 2/3) (fma.f64 wj 2/3 -3/2) 9/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9/4 (*.f64 (*.f64 wj wj) 4/9)) wj) (+.f64 3/2 (*.f64 -2/3 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 wj (fma.f64 (pow.f64 wj 3) 8/27 27/8)) (fma.f64 (*.f64 wj 2/3) (fma.f64 wj 2/3 -3/2) 9/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 wj (-.f64 9/4 (*.f64 (*.f64 wj wj) 4/9))) (+.f64 3/2 (*.f64 -2/3 wj)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 wj) (fma.f64 wj 2/3 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 wj (*.f64 wj 2/3))) (exp.f64 (*.f64 wj 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (*.f64 wj 2/3) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj 3/2 (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2/3 (*.f64 wj wj) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj 2/3) wj (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 wj (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj 3/2) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj wj) 2/3 (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) 3/2) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 wj 2/3)) 2) (*.f64 (cbrt.f64 (*.f64 wj 2/3)) wj) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) 3/2) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj 2/3)) (*.f64 (sqrt.f64 (*.f64 wj 2/3)) wj) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj 3/2) 1 (*.f64 (*.f64 wj (*.f64 wj 2/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 wj 3/2)) (cbrt.f64 (*.f64 wj 3/2))) (cbrt.f64 (*.f64 wj 3/2)) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 wj (*.f64 wj 2/3))) (cbrt.f64 (*.f64 wj (*.f64 wj 2/3)))) (cbrt.f64 (*.f64 wj (*.f64 wj 2/3))) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj 3/2)) (sqrt.f64 (*.f64 wj 3/2)) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj (*.f64 wj 2/3))) (sqrt.f64 (*.f64 wj (*.f64 wj 2/3))) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 wj) (sqrt.f64 (*.f64 wj 2/3))) (*.f64 (sqrt.f64 wj) (sqrt.f64 (*.f64 wj 2/3))) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 wj 2/3)) (sqrt.f64 wj)) (*.f64 (sqrt.f64 (*.f64 wj 2/3)) (sqrt.f64 wj)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (pow.f64 (cbrt.f64 (*.f64 wj 2/3)) 2)) (cbrt.f64 (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (sqrt.f64 (*.f64 wj 2/3))) (sqrt.f64 (*.f64 wj 2/3)) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj 2/3) (cbrt.f64 (*.f64 wj wj))) (cbrt.f64 wj) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj 2/3) (sqrt.f64 wj)) (sqrt.f64 wj) (*.f64 wj 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (cbrt.f64 (*.f64 wj wj))) (cbrt.f64 wj) (*.f64 wj (*.f64 wj 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (sqrt.f64 wj)) (sqrt.f64 wj) (*.f64 wj (*.f64 wj 2/3)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))) (cbrt.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) (pow.f64 (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) 2) (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (/.f64 1 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) (sqrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (neg.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) 1) (/.f64 (cbrt.f64 x) (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2)) (/.f64 x (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2)) (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) (/.f64 x (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) (/.f64 (cbrt.f64 x) (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 1 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 3))) (fma.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 1 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 2))) (-.f64 1 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (neg.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x 3) (pow.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 wj 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 wj 2) 1) (*.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj)) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 wj 2) 3) (pow.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) 3)) (fma.f64 (*.f64 wj 2) (*.f64 wj 2) (-.f64 (*.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (*.f64 (*.f64 wj 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 wj 2) (*.f64 wj 2)) (*.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))) (-.f64 (*.f64 wj 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 8 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 3)) wj) (fma.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) (fma.f64 wj (fma.f64 wj 2/3 3/2) -2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 2)) wj) (-.f64 2 (*.f64 wj (fma.f64 wj 2/3 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 wj (+.f64 8 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 3))) (fma.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) (fma.f64 wj (fma.f64 wj 2/3 3/2) -2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 wj (-.f64 4 (pow.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) 2))) (-.f64 2 (*.f64 wj (fma.f64 wj 2/3 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) wj))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (exp.f64 (*.f64 wj 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj (*.f64 wj (fma.f64 wj 2/3 3/2)) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 wj 2 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) wj (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 wj 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 wj (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj wj) (fma.f64 wj 2/3 3/2) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) (*.f64 wj (fma.f64 wj 2/3 3/2))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 wj wj)) (*.f64 (cbrt.f64 wj) 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) (pow.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) 2) (cbrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) 2) (*.f64 (cbrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) wj) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) (*.f64 wj (fma.f64 wj 2/3 3/2))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 wj) (*.f64 (sqrt.f64 wj) 2) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) (sqrt.f64 (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) (*.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) wj) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 3)) (/.f64 1 (fma.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) (fma.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2) -1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (pow.f64 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)) 2)) (/.f64 1 (-.f64 1 (*.f64 wj (fma.f64 wj (fma.f64 wj 2/3 3/2) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj 2) 1 (*.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 wj 2)) (cbrt.f64 (*.f64 wj 2))) (cbrt.f64 (*.f64 wj 2)) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (cbrt.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))) (cbrt.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 wj 2)) (sqrt.f64 (*.f64 wj 2)) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (sqrt.f64 (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) (sqrt.f64 wj)) (*.f64 (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) (sqrt.f64 wj)) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 wj) (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)))) (*.f64 (sqrt.f64 wj) (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) (cbrt.f64 (*.f64 wj wj))) (cbrt.f64 wj) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)) (sqrt.f64 wj)) (sqrt.f64 wj) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (pow.f64 (cbrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) 2)) (cbrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 wj (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2)))) (sqrt.f64 (*.f64 wj (fma.f64 wj 2/3 3/2))) (*.f64 wj 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (cbrt.f64 (*.f64 wj wj))) (cbrt.f64 wj) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sqrt.f64 wj)) (sqrt.f64 wj) (*.f64 (fma.f64 wj 2/3 3/2) (*.f64 wj wj)))))))

simplify64.0ms (0.6%)

Algorithm
egg-herbie
Rules
643×times-frac_binary64
558×fma-def_binary64
463×distribute-rgt-in_binary64
455×cancel-sign-sub-inv_binary64
441×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0106877
1311782
2973713
33403683
Stop Event
node limit
Counts
228 → 204
Calls
Call 1
Inputs
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 3/2 wj)
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(*.f64 2/3 (pow.f64 wj 2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(*.f64 2/3 (pow.f64 wj 2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(*.f64 3/2 (/.f64 x (pow.f64 wj 3)))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x)) (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -9/4 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x))) (+.f64 (*.f64 9/4 x) (*.f64 -81/8 x))) (pow.f64 wj 6))) (+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x)) (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(*.f64 3/2 (/.f64 x (pow.f64 wj 3)))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 243/32 (/.f64 x (pow.f64 wj 5))) (+.f64 (*.f64 -9/2 (/.f64 x (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 9/4 (+.f64 (*.f64 243/32 x) (*.f64 -9/2 x))) (+.f64 (*.f64 9/4 x) (*.f64 -81/8 x))) (pow.f64 wj 6))) (+.f64 (*.f64 -9/2 (/.f64 x (pow.f64 wj 5))) (+.f64 (*.f64 243/32 (/.f64 x (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))))
(*.f64 2 wj)
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(*.f64 2/3 (pow.f64 wj 3))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2/3 (pow.f64 wj 3)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(*.f64 2/3 (pow.f64 wj 3))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2/3 (pow.f64 wj 3)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
Outputs
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 2/3 wj)
(*.f64 3/2 wj)
(*.f64 wj 3/2)
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(*.f64 2/3 (pow.f64 wj 2))
(*.f64 2/3 (*.f64 wj wj))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(*.f64 2/3 (pow.f64 wj 2))
(*.f64 2/3 (*.f64 wj wj))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 wj) (*.f64 2/3 (pow.f64 wj 2)))
(fma.f64 3/2 wj (*.f64 2/3 (*.f64 wj wj)))
(*.f64 wj (fma.f64 2/3 wj 3/2))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 (+.f64 2 (*.f64 (+.f64 3/2 (*.f64 2/3 wj)) wj)) wj)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 (+.f64 (*.f64 2/3 wj) 3/2) wj)))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (fma.f64 2/3 wj 3/2))))))
(/.f64 x (fma.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2) 1))
x
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(fma.f64 -2 (*.f64 wj x) x)
(*.f64 x (fma.f64 wj -2 1))
(+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x))
(fma.f64 -2 (*.f64 wj x) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x))
(fma.f64 -2 (*.f64 wj x) (-.f64 x (*.f64 (*.f64 wj wj) (*.f64 x -5/2))))
(fma.f64 (fma.f64 wj -2 1) x (*.f64 (*.f64 wj wj) (*.f64 x 5/2)))
(+.f64 x (*.f64 wj (*.f64 x (-.f64 -2 (*.f64 wj -5/2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -3 x) (+.f64 (*.f64 2/3 x) (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))))) (pow.f64 wj 3))) (+.f64 (*.f64 -2 (*.f64 wj x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 wj 2) (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))) x)))
(fma.f64 -1 (*.f64 (fma.f64 -3 x (fma.f64 2/3 x (*.f64 -2 (*.f64 x -5/2)))) (pow.f64 wj 3)) (fma.f64 -2 (*.f64 wj x) (fma.f64 -1 (*.f64 (*.f64 wj wj) (*.f64 x -5/2)) x)))
(-.f64 (fma.f64 -2 (*.f64 wj x) (-.f64 x (*.f64 (*.f64 wj wj) (*.f64 x -5/2)))) (*.f64 (+.f64 (*.f64 x 5) (*.f64 x -7/3)) (pow.f64 wj 3)))
(-.f64 (fma.f64 (fma.f64 wj -2 1) x (*.f64 (*.f64 wj wj) (*.f64 x 5/2))) (*.f64 (*.f64 x 8/3) (pow.f64 wj 3)))
(+.f64 x (fma.f64 wj (*.f64 x (-.f64 -2 (*.f64 wj -5/2))) (*.f64 (pow.f64 wj 3) (*.f64 x -8/3))))
(*.f64 3/2 (/.f64 x (pow.f64 wj 3)))
(/.f64 (*.f64 3/2 x) (pow.f64 wj 3))
(/.f64 3/2 (/.f64 (pow.f64 wj 3) x))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (/.f64 (*.f64 x -27/8) (pow.f64 wj 4)))
(*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj)))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x)) (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (fma.f64 -1 (/.f64 (*.f64 x -99/32) (pow.f64 wj 5)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (*.f64 3/2 (/.f64 x (pow.f64 wj 3))) (/.f64 x (/.f64 (pow.f64 wj 5) -99/32))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (*.f64 (/.f64 x (pow.f64 wj 5)) 99/32)))
(fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -9/4 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x))) (+.f64 (*.f64 9/4 x) (*.f64 -81/8 x))) (pow.f64 wj 6))) (+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -243/32 x) (*.f64 9/2 x)) (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(fma.f64 -1 (/.f64 (fma.f64 -9/4 (*.f64 x -99/32) (*.f64 x -63/8)) (pow.f64 wj 6)) (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (fma.f64 -1 (/.f64 (*.f64 x -99/32) (pow.f64 wj 5)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(-.f64 (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (*.f64 3/2 (/.f64 x (pow.f64 wj 3))) (/.f64 x (/.f64 (pow.f64 wj 5) -99/32)))) (/.f64 (fma.f64 x -63/8 (*.f64 x 891/128)) (pow.f64 wj 6)))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (/.f64 (*.f64 3/2 x) (pow.f64 wj 3))) (/.f64 (*.f64 x -117/128) (pow.f64 wj 6))))
(+.f64 (*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj))) (fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (/.f64 (*.f64 x 117/128) (pow.f64 wj 6))))
(*.f64 3/2 (/.f64 x (pow.f64 wj 3)))
(/.f64 (*.f64 3/2 x) (pow.f64 wj 3))
(/.f64 3/2 (/.f64 (pow.f64 wj 3) x))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (/.f64 (*.f64 x -27/8) (pow.f64 wj 4)))
(*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj)))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 243/32 (/.f64 x (pow.f64 wj 5))) (+.f64 (*.f64 -9/2 (/.f64 x (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (fma.f64 -1 (/.f64 (*.f64 x -99/32) (pow.f64 wj 5)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (*.f64 3/2 (/.f64 x (pow.f64 wj 3))) (/.f64 x (/.f64 (pow.f64 wj 5) -99/32))))
(fma.f64 3/2 (/.f64 x (pow.f64 wj 3)) (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (*.f64 (/.f64 x (pow.f64 wj 5)) 99/32)))
(fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj))))
(+.f64 (*.f64 -27/8 (/.f64 x (pow.f64 wj 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 9/4 (+.f64 (*.f64 243/32 x) (*.f64 -9/2 x))) (+.f64 (*.f64 9/4 x) (*.f64 -81/8 x))) (pow.f64 wj 6))) (+.f64 (*.f64 -9/2 (/.f64 x (pow.f64 wj 5))) (+.f64 (*.f64 243/32 (/.f64 x (pow.f64 wj 5))) (*.f64 3/2 (/.f64 x (pow.f64 wj 3)))))))
(fma.f64 -1 (/.f64 (fma.f64 -9/4 (*.f64 x -99/32) (*.f64 x -63/8)) (pow.f64 wj 6)) (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (fma.f64 -1 (/.f64 (*.f64 x -99/32) (pow.f64 wj 5)) (*.f64 3/2 (/.f64 x (pow.f64 wj 3))))))
(-.f64 (fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (*.f64 3/2 (/.f64 x (pow.f64 wj 3))) (/.f64 x (/.f64 (pow.f64 wj 5) -99/32)))) (/.f64 (fma.f64 x -63/8 (*.f64 x 891/128)) (pow.f64 wj 6)))
(fma.f64 -27/8 (/.f64 x (pow.f64 wj 4)) (-.f64 (fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (/.f64 (*.f64 3/2 x) (pow.f64 wj 3))) (/.f64 (*.f64 x -117/128) (pow.f64 wj 6))))
(+.f64 (*.f64 (/.f64 x (pow.f64 wj 3)) (+.f64 3/2 (/.f64 -27/8 wj))) (fma.f64 (/.f64 x (pow.f64 wj 5)) 99/32 (/.f64 (*.f64 x 117/128) (pow.f64 wj 6))))
(*.f64 2 wj)
(*.f64 wj 2)
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2 wj))
(fma.f64 3/2 (*.f64 wj wj) (*.f64 wj 2))
(fma.f64 wj 2 (*.f64 3/2 (*.f64 wj wj)))
(*.f64 wj (+.f64 2 (*.f64 wj 3/2)))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))
(*.f64 2/3 (pow.f64 wj 3))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2/3 (pow.f64 wj 3)))
(fma.f64 3/2 (*.f64 wj wj) (*.f64 2/3 (pow.f64 wj 3)))
(fma.f64 2/3 (pow.f64 wj 3) (*.f64 3/2 (*.f64 wj wj)))
(*.f64 wj (*.f64 wj (fma.f64 2/3 wj 3/2)))
(*.f64 (*.f64 wj wj) (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))
(*.f64 2/3 (pow.f64 wj 3))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (*.f64 2/3 (pow.f64 wj 3)))
(fma.f64 3/2 (*.f64 wj wj) (*.f64 2/3 (pow.f64 wj 3)))
(fma.f64 2/3 (pow.f64 wj 3) (*.f64 3/2 (*.f64 wj wj)))
(*.f64 wj (*.f64 wj (fma.f64 2/3 wj 3/2)))
(*.f64 (*.f64 wj wj) (fma.f64 2/3 wj 3/2))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))
(+.f64 (*.f64 3/2 (pow.f64 wj 2)) (+.f64 (*.f64 2/3 (pow.f64 wj 3)) (*.f64 2 wj)))
(fma.f64 3/2 (*.f64 wj wj) (fma.f64 2/3 (pow.f64 wj 3) (*.f64 wj 2)))
(*.f64 wj (fma.f64 wj (fma.f64 2/3 wj 3/2) 2))

eval344.0ms (3%)

Compiler

Compiled 9491 to 6117 computations (35.5% saved)

prune134.0ms (1.2%)

Pruning

21 alts after pruning (15 fresh and 6 done)

PrunedKeptTotal
New4816487
Fresh3912
Picked011
Done358
Total48721508
Error
0.0b
Counts
508 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
6.8b
(/.f64 x (+.f64 1 (*.f64 wj 2)))
55.9b
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (*.f64 wj wj))
6.8b
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
0.8b
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (fma.f64 wj (fma.f64 x -2 wj) x))
63.4b
(/.f64 (/.f64 (neg.f64 x) wj) wj)
61.4b
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
6.8b
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
11.2b
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
6.6b
(*.f64 x (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj)))))
7.2b
x
34.1b
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))
1.0b
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
62.3b
(*.f64 2 (/.f64 x wj))
6.8b
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
6.8b
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
62.7b
(neg.f64 x)
63.4b
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
61.6b
wj
47.2b
(fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (fma.f64 (neg.f64 (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj))))) (-.f64 (*.f64 wj (exp.f64 wj)) x) (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj))))))
6.7b
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
63.4b
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
Compiler

Compiled 273 to 163 computations (40.3% saved)

regimes118.0ms (1%)

Counts
44 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(/.f64 x (+.f64 1 (*.f64 2 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
(+.f64 x (*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1))))
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
(-.f64 wj (/.f64 (-.f64 wj (+.f64 x (*.f64 wj (-.f64 (*.f64 1/2 (*.f64 x wj)) x)))) (+.f64 wj 1)))
(/.f64 (/.f64 x (exp.f64 wj)) wj)
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (*.f64 wj wj))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(+.f64 (*.f64 (pow.f64 wj 2) (-.f64 (+.f64 1 x) (*.f64 -1 x))) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(*.f64 x (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj)))))
(/.f64 x (+.f64 (*.f64 (exp.f64 wj) wj) (exp.f64 wj)))
(fma.f64 (fma.f64 wj x (-.f64 wj x)) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
(fma.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (neg.f64 (/.f64 1 (+.f64 wj 1))) wj)
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 x) (+.f64 (*.f64 -3 x) (+.f64 1 (*.f64 -2 (+.f64 (*.f64 -4 x) (*.f64 3/2 x)))))) (pow.f64 wj 3))) (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -4 x) (*.f64 3/2 x))) (pow.f64 wj 2)) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (fma.f64 wj (fma.f64 x -2 wj) x))
(fma.f64 x (*.f64 -2 wj) (fma.f64 wj (*.f64 wj (fma.f64 x 5/2 1)) x))
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (fma.f64 wj x (-.f64 wj x))) (+.f64 wj 1)))
(fma.f64 (sqrt.f64 wj) (sqrt.f64 wj) (/.f64 (neg.f64 (-.f64 wj (/.f64 x (exp.f64 wj)))) (+.f64 wj 1)))
(fma.f64 (+.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (-.f64 (sqrt.f64 wj) (sqrt.f64 (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj)))))) (fma.f64 (neg.f64 (exp.f64 (neg.f64 (+.f64 wj (log1p.f64 wj))))) (-.f64 (*.f64 wj (exp.f64 wj)) x) (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (exp.f64 (+.f64 wj (log1p.f64 wj))))))
Outputs
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
Calls

3 calls:

40.0ms
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
38.0ms
x
24.0ms
wj
Results
ErrorSegmentsBranch
0.3b1wj
0.3b1x
0.3b1(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
Compiler

Compiled 563 to 287 computations (49% saved)

regimes42.0ms (0.4%)

Counts
29 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(/.f64 x (+.f64 1 (*.f64 2 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
(+.f64 x (*.f64 wj (*.f64 (+.f64 x x) (+.f64 wj -1))))
(-.f64 (*.f64 (/.f64 x wj) (+.f64 (/.f64 -2 wj) 2)) x)
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
(-.f64 wj (/.f64 (-.f64 wj (-.f64 x (*.f64 x wj))) (+.f64 wj 1)))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj (+.f64 3/2 (*.f64 wj 2/3)))))))
(-.f64 wj (/.f64 (-.f64 wj (+.f64 x (*.f64 wj (-.f64 (*.f64 1/2 (*.f64 x wj)) x)))) (+.f64 wj 1)))
(/.f64 (/.f64 x (exp.f64 wj)) wj)
(/.f64 (/.f64 x (exp.f64 wj)) (+.f64 wj 1))
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (*.f64 wj wj))
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 (/.f64 x wj) (exp.f64 wj)))
(-.f64 wj (/.f64 (-.f64 wj (/.f64 x (exp.f64 wj))) (+.f64 wj 1)))
Outputs
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
Calls

2 calls:

19.0ms
wj
16.0ms
x
Results
ErrorSegmentsBranch
1.0b1wj
1.0b1x
Compiler

Compiled 225 to 122 computations (45.8% saved)

regimes33.0ms (0.3%)

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

2 calls:

16.0ms
x
12.0ms
wj
Results
ErrorSegmentsBranch
6.8b1wj
6.8b1x
Compiler

Compiled 118 to 65 computations (44.9% saved)

regimes28.0ms (0.2%)

Counts
17 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(/.f64 x (+.f64 1 (*.f64 2 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
Outputs
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
Calls

2 calls:

14.0ms
wj
10.0ms
x
Results
ErrorSegmentsBranch
6.8b1wj
6.8b1x
Compiler

Compiled 85 to 45 computations (47.1% saved)

regimes21.0ms (0.2%)

Counts
16 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(/.f64 x (+.f64 1 (*.f64 2 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(*.f64 (+.f64 (/.f64 -1 wj) 1) (/.f64 x wj))
Outputs
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
Calls

2 calls:

9.0ms
wj
9.0ms
x
Results
ErrorSegmentsBranch
6.8b1wj
6.8b1x
Compiler

Compiled 76 to 41 computations (46.1% saved)

regimes21.0ms (0.2%)

Counts
14 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
(-.f64 (*.f64 2 (/.f64 x wj)) x)
(/.f64 x (+.f64 1 (*.f64 2 wj)))
(-.f64 wj (/.f64 wj (+.f64 wj 1)))
Outputs
(/.f64 x (+.f64 1 (*.f64 wj 2)))
Calls

2 calls:

11.0ms
x
8.0ms
wj
Results
ErrorSegmentsBranch
6.8b1wj
6.8b1x
Compiler

Compiled 60 to 32 computations (46.7% saved)

regimes15.0ms (0.1%)

Accuracy

Total -56.4b remaining (-788%)

Threshold costs -56.4b (-788%)

Counts
10 → 1
Calls
Call 1
Inputs
x
wj
x
wj
x
wj
(neg.f64 x)
(*.f64 2 (/.f64 x wj))
(*.f64 -2 (*.f64 x wj))
(/.f64 (/.f64 (neg.f64 x) wj) wj)
Outputs
x
Calls

2 calls:

7.0ms
x
6.0ms
wj
Results
ErrorSegmentsBranch
7.2b1wj
7.2b1x
Compiler

Compiled 32 to 15 computations (53.1% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×+-commutative_binary64
11×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03593
16291
27491
38191
48691
58791
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(/.f64 x (+.f64 1 (*.f64 wj 2)))
x
Outputs
(+.f64 (*.f64 -1 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 (*.f64 -2 (*.f64 wj x)) x)))
(+.f64 (neg.f64 (pow.f64 wj 3)) (+.f64 (*.f64 wj wj) (+.f64 x (*.f64 -2 (*.f64 wj x)))))
(-.f64 (+.f64 (*.f64 wj wj) (+.f64 x (*.f64 -2 (*.f64 wj x)))) (pow.f64 wj 3))
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 2 wj))))))
(+.f64 x (*.f64 wj (+.f64 wj (*.f64 x (+.f64 -2 (*.f64 wj 2))))))
(/.f64 x (+.f64 1 (*.f64 wj (+.f64 2 (*.f64 wj 3/2)))))
(/.f64 (-.f64 x (*.f64 x wj)) (+.f64 wj 1))
(/.f64 (-.f64 x (*.f64 wj x)) (+.f64 wj 1))
(+.f64 (*.f64 -2 (*.f64 wj x)) x)
(+.f64 x (*.f64 -2 (*.f64 wj x)))
(/.f64 x (+.f64 1 (*.f64 wj 2)))
x
Compiler

Compiled 77 to 53 computations (31.2% saved)

soundness296.0ms (2.6%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
518×distribute-rgt-in_binary64
514×distribute-lft-in_binary64
503×fma-def_binary64
485×div-sub_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0923
12223
25823
315721
446218
5152918
6486118
7703418
040588
199570
2321540
31146480
43745480
54067480
64487480
75409480
87352480
Stop Event
node limit
node limit
Compiler

Compiled 204 to 111 computations (45.6% saved)

end53.0ms (0.5%)

Compiler

Compiled 65 to 39 computations (40% saved)

Profiling

Loading profile data...