Details

Time bar (total: 10.2s)

analyze156.0ms (1.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
0%99.9%0.1%5
0%74.9%25.1%6
6.2%68.6%25.1%7
9.4%65.5%25.1%8
14%35.9%50.1%9
21.1%28.9%50.1%10
24.6%25.4%50.1%11
28.7%21.3%50.1%12
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.2s (11.3%)

Results
1.1s8255×body256valid
8.0ms43×body256invalid
0.0msbody1024valid

preprocess105.0ms (1%)

Algorithm
egg-herbie
Rules
777×sub-neg_binary64
518×neg-sub0_binary64
375×+-commutative_binary64
365×fma-def_binary64
351×distribute-neg-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02672
17572
224264
3106964
4318664
5493664
6645464
7748764
8774864
9796064
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (+.f64 (-.f64 y (*.f64 (+.f64 x 1/2) (log.f64 x))) x) z)
(-.f64 (+.f64 (-.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y))) y) x)
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 z 1/2) (log.f64 z))) z) y)
Outputs
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) (-.f64 y z))
(+.f64 (-.f64 x z) (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) x) (-.f64 y z))
(-.f64 (+.f64 (-.f64 y (*.f64 (+.f64 x 1/2) (log.f64 x))) x) z)
(+.f64 (-.f64 y (*.f64 (+.f64 x 1/2) (log.f64 x))) (-.f64 x z))
(+.f64 x (-.f64 (-.f64 y (*.f64 (+.f64 x 1/2) (log.f64 x))) z))
(+.f64 x (-.f64 (fma.f64 (log.f64 x) (-.f64 -1/2 x) y) z))
(+.f64 x (fma.f64 (log.f64 x) (-.f64 -1/2 x) (-.f64 y z)))
(-.f64 (+.f64 (-.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y))) y) x)
(+.f64 (-.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y))) (-.f64 y x))
(+.f64 y (-.f64 (-.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y))) x))
(+.f64 y (-.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) z) x))
(-.f64 z (fma.f64 (-.f64 y -1/2) (log.f64 y) (-.f64 x y)))
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 z 1/2) (log.f64 z))) z) y)
(+.f64 (-.f64 x (*.f64 (+.f64 1/2 z) (log.f64 z))) (-.f64 z y))
(+.f64 x (fma.f64 (log.f64 z) (-.f64 -1/2 z) (-.f64 z y)))
Compiler

Compiled 18 to 13 computations (27.8% saved)

simplify134.0ms (1.3%)

Algorithm
egg-herbie
Rules
782×fma-neg_binary64
608×unsub-neg_binary64
579×distribute-rgt-in_binary64
435×sub-neg_binary64
406×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01118
12518
27716
331316
498316
5289716
6451516
7500916
8517416
9520116
10521816
11552816
12639616
13799416
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
Outputs
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (-.f64 x (-.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) y)) z)
(+.f64 y (-.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) z))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) (-.f64 y z)))
(+.f64 x (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))

eval1.0ms (0%)

Compiler

Compiled 26 to 15 computations (42.3% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 29 to 19 computations (34.5% saved)

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
0.1b
(-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z))
0.1b
(fma.f64 (-.f64 y -1/2) (log.f64 y) z)
Compiler

Compiled 39 to 19 computations (51.3% saved)

series23.0ms (0.2%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
4.0ms
y
@0
(fma.f64 (-.f64 y -1/2) (log.f64 y) z)
4.0ms
y
@-inf
(fma.f64 (-.f64 y -1/2) (log.f64 y) z)
3.0ms
z
@0
(fma.f64 (-.f64 y -1/2) (log.f64 y) z)
3.0ms
z
@-inf
(-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z))
2.0ms
y
@inf
(fma.f64 (-.f64 y -1/2) (log.f64 y) z)

rewrite94.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
525×log-prod_binary64
464×fma-def_binary64
394×pow-prod-down_binary64
320×pow2_binary64
263×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify91.0ms (0.9%)

Algorithm
egg-herbie
Rules
674×sub-neg_binary64
400×distribute-rgt-in_binary64
387×associate-+l+_binary64
367×unsub-neg_binary64
309×associate-+l-_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0661158
12281080
2643981
31825981
45159981
57459981
Stop Event
node limit
Counts
280 → 235
Calls
Call 1
Inputs
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
x
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
x
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(-.f64 x (+.f64 (*.f64 1/2 (log.f64 y)) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
Outputs
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 (+.f64 1/2 y) (log.f64 y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(neg.f64 (fma.f64 1/2 (log.f64 y) z))
(fma.f64 (log.f64 y) -1/2 (neg.f64 z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (*.f64 -1 (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z)) (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 y (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
x
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
x
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 x (+.f64 (*.f64 1/2 (log.f64 y)) z))
(-.f64 x (fma.f64 1/2 (log.f64 y) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) z))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y x)) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (fma.f64 (+.f64 1/2 y) (log.f64 y) z)))
(+.f64 y (-.f64 x (fma.f64 (log.f64 y) (+.f64 1/2 y) z)))
(+.f64 (-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z)) x)
(-.f64 (+.f64 y x) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))

localize22.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))
0.1b
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
0.1b
(*.f64 (+.f64 y 1/2) (log.f64 y))
Compiler

Compiled 48 to 25 computations (47.9% saved)

series5.0ms (0%)

Counts
3 → 60
Calls

15 calls:

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

rewrite87.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
556×fma-def_binary64
514×log-prod_binary64
379×pow-prod-down_binary64
302×fma-neg_binary64
292×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify112.0ms (1.1%)

Algorithm
egg-herbie
Rules
683×sub-neg_binary64
399×+-commutative_binary64
366×neg-sub0_binary64
324×distribute-rgt-in_binary64
323×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
056698
1187664
2517584
31285584
43701584
55733584
66888584
77658584
87995584
Stop Event
node limit
Counts
253 → 224
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(neg.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)))
(*.f64 (neg.f64 (log.f64 y)) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 -1/2 y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)

eval165.0ms (1.6%)

Compiler

Compiled 9665 to 5605 computations (42% saved)

prune88.0ms (0.9%)

Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New44118459
Fresh000
Picked101
Done101
Total44318461
Error
0.0b
Counts
461 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
25.3b
(-.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) z)
45.0b
(-.f64 (+.f64 (log.f64 (/.f64 (exp.f64 x) (pow.f64 y (+.f64 y 1/2)))) y) z)
0.1b
(-.f64 (-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y))) z)
27.8b
(-.f64 (-.f64 (+.f64 y x) (log.f64 (pow.f64 y (+.f64 y 1/2)))) z)
16.1b
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
1.2b
(pow.f64 (cbrt.f64 (+.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) x)) 3)
37.1b
(+.f64 x (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (fma.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (*.f64 y y))))
29.7b
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)))
25.3b
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
48.3b
(+.f64 x (log.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))
17.1b
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
13.8b
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))) y) z)
29.7b
(+.f64 x (fma.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y))
37.1b
(+.f64 x (-.f64 y (cbrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))))
24.7b
(+.f64 x (-.f64 y z))
24.5b
(-.f64 x z)
30.4b
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
46.1b
x
Compiler

Compiled 554 to 371 computations (33% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 1 (log.f64 y))
0.0b
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x)
0.0b
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
0.3b
(*.f64 (-.f64 1 (log.f64 y)) y)
Compiler

Compiled 60 to 32 computations (46.7% saved)

series51.0ms (0.5%)

Counts
4 → 40
Calls

18 calls:

TimeVariablePointExpression
30.0ms
y
@0
(*.f64 (-.f64 1 (log.f64 y)) y)
9.0ms
y
@-inf
(*.f64 (-.f64 1 (log.f64 y)) y)
6.0ms
y
@inf
(*.f64 (-.f64 1 (log.f64 y)) y)
1.0ms
y
@inf
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
1.0ms
x
@0
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))

rewrite109.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
651×fma-def_binary64
580×log-prod_binary64
323×pow2_binary64
302×fma-neg_binary64
220×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01143
124842
2354141
Stop Event
node limit
Counts
4 → 289
Calls
Call 1
Inputs
(*.f64 (-.f64 1 (log.f64 y)) y)
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x)
(-.f64 1 (log.f64 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (E.f64) y) y)) 2)) (log.f64 (cbrt.f64 (pow.f64 (/.f64 (E.f64) y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (/.f64 (E.f64) y) y))) (log.f64 (sqrt.f64 (pow.f64 (/.f64 (E.f64) y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (-.f64 1 (log.f64 y))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 3)) y) (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) y) (+.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 (pow.f64 (log.f64 y) 3))) (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 (pow.f64 (log.f64 y) 2))) (+.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (/.f64 (E.f64) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 1 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 1 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 1 (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 1 (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y (neg.f64 (log.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 y) -1/2) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (log.f64 (sqrt.f64 y))) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 y))) 2)) (log.f64 (cbrt.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 y)))) (log.f64 (sqrt.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3)) (/.f64 1 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2)) (/.f64 1 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (-.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3)) (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3))) (neg.f64 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2))) (neg.f64 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 3)) (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (-.f64 (pow.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 2) (*.f64 (*.f64 y (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (*.f64 (log.f64 y) -1/2) 3)) (+.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (-.f64 (pow.f64 (*.f64 (log.f64 y) -1/2) 2) (*.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (pow.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 2)) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (*.f64 (log.f64 y) -1/2) 2)) (-.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (+.f64 1 (-.f64 (sqrt.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (+.f64 1 (-.f64 (sqrt.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1)) (exp.f64 (-.f64 x (log.f64 (sqrt.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (/.f64 (E.f64) y) y) (/.f64 (exp.f64 x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1)) (/.f64 (exp.f64 x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (exp.f64 (*.f64 (log.f64 y) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (/.f64 1 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (/.f64 1 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (log.f64 y) -1/2)) (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (sqrt.f64 y)) (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (log.f64 y) -1/2)) (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (sqrt.f64 y)) (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) (pow.f64 (/.f64 (E.f64) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (exp.f64 x) (sqrt.f64 y)) (pow.f64 (/.f64 (E.f64) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (exp.f64 x) (sqrt.f64 y)) (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (log.f64 y) -1/2) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (log.f64 (sqrt.f64 y))) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (-.f64 1 (log.f64 y)) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (log.f64 y)) y (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (log.f64 y)) y (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 1 (log.f64 y))) 1 (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 1 (log.f64 y))) 1 (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 1 (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 1 (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (neg.f64 (log.f64 y)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1 (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1 (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)) (cbrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2)) (*.f64 (cbrt.f64 (-.f64 1 (log.f64 y))) y) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2)) (*.f64 (cbrt.f64 (-.f64 1 (log.f64 y))) y) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (sqrt.f64 (fma.f64 (log.f64 y) -1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) (*.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) y) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) (*.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) y) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 (sqrt.f64 y))) (neg.f64 (sqrt.f64 (log.f64 (sqrt.f64 y)))) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3)) (/.f64 1 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3)) (/.f64 1 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) (pow.f64 (log.f64 (sqrt.f64 y)) 3)) (/.f64 1 (fma.f64 (log.f64 (sqrt.f64 y)) (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (log.f64 y)) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2)) (/.f64 1 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2)) (/.f64 1 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) (pow.f64 (log.f64 (sqrt.f64 y)) 2)) (/.f64 1 (fma.f64 (log.f64 y) 1/2 (fma.f64 y (-.f64 1 (log.f64 y)) x))) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)) (*.f64 (log.f64 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)) (*.f64 (*.f64 (log.f64 y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (log.f64 y) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) 2) (cbrt.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 y) -1/2)) 2) (cbrt.f64 (*.f64 (log.f64 y) -1/2)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) (sqrt.f64 (-.f64 x (log.f64 (sqrt.f64 y)))) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (log.f64 y) -1/2)) (sqrt.f64 (*.f64 (log.f64 y) -1/2)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (log.f64 (sqrt.f64 y)))) (sqrt.f64 (log.f64 (sqrt.f64 y))) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (log.f64 (sqrt.f64 y)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (-.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (fma.f64 (*.f64 (log.f64 y) -1/2) 1 (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (-.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (sqrt.f64 y)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (-.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (log.f64 (sqrt.f64 y)))) (fma.f64 -1/2 (log.f64 y) (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 y))) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2))) (cbrt.f64 (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2))) (cbrt.f64 (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 (-.f64 1 (log.f64 y)))) (sqrt.f64 (-.f64 1 (log.f64 y))) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 (-.f64 1 (log.f64 y)))) (sqrt.f64 (-.f64 1 (log.f64 y))) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (sqrt.f64 y)) (sqrt.f64 y) (-.f64 x (log.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (-.f64 x (log.f64 (sqrt.f64 y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (-.f64 1 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2)) (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2)) (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x) (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 (-.f64 1 (log.f64 y)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x)) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2)) (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2)) (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) x) (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (/.f64 (E.f64) y) y) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (/.f64 (E.f64) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (-.f64 1 (log.f64 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (-.f64 1 (log.f64 y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (log.f64 y)) y x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 1 (log.f64 y))) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 1 (log.f64 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2)) (*.f64 (cbrt.f64 (-.f64 1 (log.f64 y))) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (-.f64 1 (log.f64 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) (*.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2))) (cbrt.f64 (-.f64 1 (log.f64 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 (-.f64 1 (log.f64 y)))) (sqrt.f64 (-.f64 1 (log.f64 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 (log.f64 y)) (sqrt.f64 y)) (sqrt.f64 y) x)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (neg.f64 (log.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (E.f64) y)) 2)) (log.f64 (cbrt.f64 (/.f64 (E.f64) y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (E.f64) y))) (log.f64 (sqrt.f64 (/.f64 (E.f64) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 1 (log.f64 y))) (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2)) (cbrt.f64 (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) (sqrt.f64 (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (pow.f64 (log.f64 y) 3)) (/.f64 1 (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) (/.f64 1 (+.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1) (-.f64 1 (pow.f64 (log.f64 y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1 (log.f64 y)) (-.f64 1 (pow.f64 (log.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (log.f64 y) 3)) (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) (+.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (pow.f64 (log.f64 y) 3))) (neg.f64 (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (pow.f64 (log.f64 y) 2))) (neg.f64 (+.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (neg.f64 (log.f64 y)) 3)) (+.f64 1 (-.f64 (pow.f64 (neg.f64 (log.f64 y)) 2) (neg.f64 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (neg.f64 (log.f64 y)) 2)) (-.f64 1 (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1 (log.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 1 (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 1 (log.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (log.f64 y) (+.f64 1 (log.f64 y)) 1) (-.f64 1 (pow.f64 (log.f64 y) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 (log.f64 y)) (-.f64 1 (pow.f64 (log.f64 y) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (E.f64) y))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (/.f64 (E.f64) y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 1 (log.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (/.f64 (E.f64) y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (neg.f64 (log.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (neg.f64 (cbrt.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (neg.f64 (sqrt.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (log.f64 y))) 2) (cbrt.f64 (neg.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (log.f64 y))) (sqrt.f64 (neg.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (log.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) 1)))))

simplify143.0ms (1.4%)

Algorithm
egg-herbie
Rules
798×sub-neg_binary64
681×unsub-neg_binary64
402×fma-neg_binary64
355×+-commutative_binary64
324×associate--r+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
031508
190362
2225348
3561347
41859339
54493339
66378339
77217339
87571339
97731339
107815339
117837339
Stop Event
node limit
Counts
329 → 306
Calls
Call 1
Inputs
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y)))
x
x
x
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(*.f64 (-.f64 1 (log.f64 y)) y)
x
x
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
Outputs
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(fma.f64 (log.f64 y) -1/2 x)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x) (*.f64 1/2 (neg.f64 (log.f64 y))))
(fma.f64 y (-.f64 1 (log.f64 y)) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
(-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y)))
(+.f64 (*.f64 y (-.f64 1 (log.f64 y))) (*.f64 -1/2 (log.f64 y)))
(fma.f64 y (-.f64 1 (log.f64 y)) (*.f64 (log.f64 y) -1/2))
(+.f64 y (*.f64 (neg.f64 (log.f64 y)) (-.f64 y -1/2)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y)))
x
x
x
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(+.f64 (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y) x)
(fma.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))) x)
(fma.f64 y (-.f64 1 (log.f64 y)) x)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
x
x
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))
(-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 1 (neg.f64 (neg.f64 (log.f64 y))))
(-.f64 1 (log.f64 y))

localize3.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
0.2b
(*.f64 (log.f64 y) (neg.f64 y))
0.3b
(+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y)
Compiler

Compiled 30 to 8 computations (73.3% saved)

series5.0ms (0%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y
@0
(+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y)
1.0ms
y
@inf
(+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y)
1.0ms
y
@-inf
(+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y)
1.0ms
z
@0
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
0.0ms
y
@-inf
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)

rewrite74.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
975×pow1_binary64
908×add-log-exp_binary64
907×log1p-expm1-u_binary64
907×expm1-log1p-u_binary64
100×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0829
118523
2289423
Stop Event
node limit
Counts
3 → 103
Calls
Call 1
Inputs
(+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y)
(*.f64 (log.f64 y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 y (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (log.f64 y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y (log.f64 y) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (fma.f64 y (log.f64 y) y)) (/.f64 (*.f64 y y) (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (log.f64 y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (/.f64 1 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (log.f64 y) y)) (pow.f64 (cbrt.f64 (fma.f64 y (log.f64 y) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y (log.f64 y) y)) 2) (cbrt.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (log.f64 y) y)) (sqrt.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (fma.f64 y (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 y (log.f64 y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 y (log.f64 y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (fma.f64 y (log.f64 y) y))) (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (log.f64 y) y) (pow.f64 (fma.f64 y (log.f64 y) y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (fma.f64 y (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (fma.f64 y (log.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (*.f64 y (log.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (fma.f64 y (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2)) (neg.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 y (fma.f64 y (log.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 y (log.f64 y)) 2)) (fma.f64 y (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (log.f64 y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (log.f64 y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y (log.f64 y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 y y) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y (log.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y y) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (log.f64 y) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) y y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (log.f64 y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (log.f64 y))) 2) (cbrt.f64 (*.f64 y (log.f64 y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (log.f64 y))) (sqrt.f64 (*.f64 y (log.f64 y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y (log.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (log.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 y y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (log.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 y y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (log.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (-.f64 (*.f64 y (log.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (+.f64 (*.f64 y (log.f64 y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (log.f64 y)) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (log.f64 y)) (*.f64 (-.f64 y z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (log.f64 y) y) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (log.f64 y) y) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) (fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (fma.f64 y (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y z) (*.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (fma.f64 y (log.f64 y) y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) 2) (cbrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) (sqrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) (pow.f64 z 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z (+.f64 (fma.f64 y (log.f64 y) y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z z)) (/.f64 1 (+.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 y (log.f64 y) y)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 y (log.f64 y) y)) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z (+.f64 (fma.f64 y (log.f64 y) y) z))) (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 y (log.f64 y) y) z) (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) (pow.f64 z 3)) (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z (+.f64 (fma.f64 y (log.f64 y) y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z z)) (+.f64 (fma.f64 y (log.f64 y) y) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) (pow.f64 z 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z (+.f64 (fma.f64 y (log.f64 y) y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 z z))) (neg.f64 (+.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 3) (pow.f64 (-.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (-.f64 (*.f64 (-.f64 y z) (-.f64 y z)) (*.f64 (*.f64 y (log.f64 y)) (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 3) (pow.f64 (neg.f64 z) 3)) (+.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (-.f64 (*.f64 (neg.f64 z) (neg.f64 z)) (*.f64 (fma.f64 y (log.f64 y) y) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (log.f64 y)) 2) (*.f64 (-.f64 y z) (-.f64 y z))) (-.f64 (*.f64 y (log.f64 y)) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y (log.f64 y) y) 2) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (fma.f64 y (log.f64 y) y) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 y y) (exp.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 y (log.f64 y) y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (fma.f64 y (log.f64 y) y) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (fma.f64 y (log.f64 y) y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (log.f64 y) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) y (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (log.f64 y)) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (log.f64 y) y) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (log.f64 y))) 2) (cbrt.f64 (*.f64 y (log.f64 y))) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (log.f64 y) y)) 2) (cbrt.f64 (fma.f64 y (log.f64 y) y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (log.f64 y))) (sqrt.f64 (*.f64 y (log.f64 y))) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (log.f64 y) y)) (sqrt.f64 (fma.f64 y (log.f64 y) y)) (neg.f64 z))))))

simplify221.0ms (2.2%)

Algorithm
egg-herbie
Rules
3708×fma-def_binary64
550×fma-neg_binary64
482×unsub-neg_binary64
421×distribute-neg-in_binary64
385×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
034540
199456
2248420
3658420
41872420
53735420
64178420
74399420
84471420
94501420
104505420
115165420
125861420
136071420
146251420
156371420
166371420
176371420
Stop Event
node limit
Counts
151 → 120
Calls
Call 1
Inputs
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(*.f64 -1 z)
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(*.f64 -1 z)
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
Outputs
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(*.f64 -1 (*.f64 y (log.f64 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(neg.f64 (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 y (+.f64 1 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (+.f64 1 (log.f64 (/.f64 1 y)))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1)))
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 -1 (*.f64 y (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1))))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y)
(*.f64 y (+.f64 1 (neg.f64 (log.f64 y))))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -1 z) y))
(fma.f64 -1 z (*.f64 y (+.f64 1 (neg.f64 (log.f64 y)))))
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 y (fma.f64 y (log.f64 y) z))

localize33.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2)))
0.1b
(*.f64 (fma.f64 y y -1/4) (log.f64 y))
0.1b
(+.f64 (-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))) y)
12.9b
(/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))
Compiler

Compiled 80 to 43 computations (46.3% saved)

series14.0ms (0.1%)

Counts
4 → 72
Calls

18 calls:

TimeVariablePointExpression
5.0ms
x
@-inf
(+.f64 (-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))) y)
1.0ms
y
@-inf
(/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))
1.0ms
y
@0
(/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))
1.0ms
x
@0
(+.f64 (-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))) y)
1.0ms
y
@inf
(/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))

rewrite103.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
688×log-prod_binary64
620×fma-def_binary64
334×fma-neg_binary64
256×expm1-udef_binary64
256×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify80.0ms (0.8%)

Algorithm
egg-herbie
Rules
713×unsub-neg_binary64
602×div-sub_binary64
395×fma-neg_binary64
287×associate-+l+_binary64
275×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0781108
1249990
2709914
31982913
46436911
Stop Event
node limit
Counts
306 → 279
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1/4 (log.f64 y))
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 1/2 (log.f64 y))
(log.f64 (sqrt.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 y (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 y (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 y (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 (+.f64 y x) (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 y (fma.f64 (fma.f64 y y -1/4) (/.f64 (log.f64 y) (+.f64 y -1/2)) (neg.f64 x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 1/2 (neg.f64 (log.f64 y)) x)
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 y (*.f64 y (log.f64 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 y (*.f64 y (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 x (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(*.f64 -1/4 (log.f64 y))
(*.f64 (log.f64 y) -1/4)
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 (pow.f64 y 2) (log.f64 y)) (*.f64 -1/4 (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (*.f64 y y)))
(*.f64 y (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (*.f64 y y))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y)))) (*.f64 1/4 (log.f64 (/.f64 1 y))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (*.f64 y y)))
(*.f64 y (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (*.f64 y y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)) (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4))
(*.f64 (log.f64 y) (fma.f64 y y -1/4))
(*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(neg.f64 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(/.f64 (neg.f64 (log.f64 y)) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4)))
(*.f64 (/.f64 (neg.f64 (log.f64 y)) (+.f64 y -1/2)) (fma.f64 y y -1/4))
(*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 (neg.f64 y) -1/2)))
(*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (fma.f64 y y -1/4))))
(-.f64 x (/.f64 (fma.f64 y y -1/4) (/.f64 (+.f64 y -1/2) (log.f64 y))))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 1/2 (neg.f64 (log.f64 y)) x)
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (neg.f64 (log.f64 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 y (neg.f64 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) -1/2) (-.f64 x (*.f64 y (log.f64 y))))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))

localize27.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))
0.1b
(-.f64 y (pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2))
0.1b
(fma.f64 (+.f64 y 1/2) (log.f64 y) z)
0.3b
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
Compiler

Compiled 64 to 36 computations (43.8% saved)

series26.0ms (0.3%)

Counts
4 → 50
Calls

24 calls:

TimeVariablePointExpression
4.0ms
y
@-inf
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
3.0ms
z
@0
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
2.0ms
y
@inf
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
2.0ms
z
@-inf
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
2.0ms
y
@0
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)

rewrite96.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
559×prod-diff_binary64
454×log-prod_binary64
316×pow-prod-down_binary64
279×pow2_binary64
268×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01145
124345
2282145
Stop Event
node limit
Counts
4 → 218
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)
(fma.f64 (+.f64 y 1/2) (log.f64 y) z)
(-.f64 y (pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2))
(sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 1) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 3) (pow.f64 z 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 2) (-.f64 (*.f64 z z) (*.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 2) (*.f64 z z)) (-.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) (+.f64 y 1/2) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 z) 2) (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y 1/2)) 2) (*.f64 (cbrt.f64 (+.f64 y 1/2)) (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 1 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) 2) (cbrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y 1/2) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y 1/2) (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) z)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (+.f64 y 1/2) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 1) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 3) (pow.f64 z 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 2) (-.f64 (*.f64 z z) (*.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) 2) (*.f64 z z)) (-.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 -1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)) (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/4) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y 1 (neg.f64 (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6)))) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 y (neg.f64 (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6)))) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (neg.f64 (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6)))) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (neg.f64 (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6)))) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 y) (sqrt.f64 y) (neg.f64 (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6)))) (fma.f64 (neg.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6) (*.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2)) (/.f64 1 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2)) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))) (neg.f64 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2))) (neg.f64 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 y 3) (pow.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3)) (fma.f64 y y (-.f64 (pow.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (*.f64 y (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y y) (pow.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)) (-.f64 y (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (exp.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (/.f64 1 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 1 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 1 (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (cbrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2)) (/.f64 1 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2)) (/.f64 1 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2)) (/.f64 1 (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2) (cbrt.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (+.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2) (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)) (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) y)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) (sqrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) 2))))))

simplify58.0ms (0.6%)

Algorithm
egg-herbie
Rules
679×associate-*r*_binary64
644×associate-*l*_binary64
531×associate-+l+_binary64
400×associate-+r+_binary64
235×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01651250
15431145
21895999
Stop Event
node limit
Counts
268 → 236
Calls
Call 1
Inputs
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))) (pow.f64 y 2)) z)))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))) (pow.f64 y 2)) (+.f64 z (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2))) (*.f64 1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2)))))))))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (pow.f64 z 4)) z))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (pow.f64 z 4)) (+.f64 z (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2)) (*.f64 (+.f64 1/2 y) (log.f64 y)))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (*.f64 (+.f64 1/2 y) (log.f64 y))))) (pow.f64 z 5)))))
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))))))))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2))) (*.f64 1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2)))))) (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))))))))
y
y
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))))) (pow.f64 z 4))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))))) (pow.f64 z 4))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2)) (*.f64 (+.f64 1/2 y) (log.f64 y))))) (pow.f64 z 5))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 (log.f64 y) 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 3))))) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 (log.f64 y) 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z))))) (*.f64 1/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (log.f64 y) 3)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 5))))))))
(sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z)))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z))))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 5) (pow.f64 (log.f64 y) 5)))) (pow.f64 z 3))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z)))))
Outputs
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))) (pow.f64 y 2)) z)))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))) (pow.f64 y 2)) (+.f64 z (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2))) (*.f64 1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2)))))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 (+.f64 1/2 y) (log.f64 y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (pow.f64 z 4)) z))
(fma.f64 (+.f64 1/2 y) (log.f64 y) (fma.f64 (fma.f64 -1 (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))))) 2)) (/.f64 5/64 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (pow.f64 z 4) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3)))) 2))) (pow.f64 z 4) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 z 4) z))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (pow.f64 z 4)) (+.f64 z (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2)) (*.f64 (+.f64 1/2 y) (log.f64 y)))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (*.f64 (+.f64 1/2 y) (log.f64 y))))) (pow.f64 z 5)))))
(fma.f64 (+.f64 1/2 y) (log.f64 y) (fma.f64 (fma.f64 -1 (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))))) 2)) (/.f64 5/64 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (pow.f64 z 4) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3)))) 2))) (pow.f64 z 4) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 z 4) z))
(+.f64 (*.f64 1/2 (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) z))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 y))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(*.f64 y (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(*.f64 y (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y z))
(+.f64 z (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 1/2 y)))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y z))
(+.f64 z (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 1/2 y)))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) z))
(fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y z))
(+.f64 z (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 1/2 y)))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
z
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(+.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)) z)
(fma.f64 1/2 (log.f64 y) (fma.f64 y (log.f64 y) z))
(fma.f64 (log.f64 y) (+.f64 1/2 y) z)
(*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(neg.f64 (fma.f64 1/2 (log.f64 y) z))
(-.f64 (*.f64 (log.f64 y) -1/2) z)
(fma.f64 (log.f64 y) -1/2 (neg.f64 z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))))))))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2))) (*.f64 1/8 (/.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 2)))))) (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z))) (*.f64 -1/4 (/.f64 (pow.f64 (log.f64 y) 2) (+.f64 (*.f64 1/2 (log.f64 y)) z)))))))))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
y
y
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 z) y) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 (fma.f64 1/2 (log.f64 y) z)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (fma.f64 1/2 (log.f64 y) z))
(-.f64 y (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))))) (pow.f64 z 4))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (fma.f64 -1 z y) (neg.f64 (*.f64 (fma.f64 -1 (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))))) 2)) (/.f64 5/64 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (pow.f64 z 4)))) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(-.f64 (-.f64 (-.f64 y z) (*.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3)))) 2))) (pow.f64 z 4))) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(-.f64 (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 z 4) y) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))))) (pow.f64 z 4))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3))))) 2)) (*.f64 (+.f64 1/2 y) (log.f64 y))))) (pow.f64 z 5))))) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 (fma.f64 -1 z y) (neg.f64 (*.f64 (fma.f64 -1 (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))))) 2)) (/.f64 5/64 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (pow.f64 z 4)))) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(-.f64 (-.f64 (-.f64 y z) (*.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (+.f64 (/.f64 1/16 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3)))) 2))) (pow.f64 z 4))) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(-.f64 (fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3)) (/.f64 (/.f64 5/64 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (pow.f64 z 4) y) (fma.f64 (log.f64 y) (+.f64 1/2 y) z))
(sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z))
(sqrt.f64 (fma.f64 1/2 (log.f64 y) z))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z))))))
(+.f64 (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))))
(fma.f64 1/2 (*.f64 (log.f64 y) (*.f64 y (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))) (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 (log.f64 y) 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 3))))) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z)))))))
(+.f64 (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)) (fma.f64 -1/8 (*.f64 (*.f64 y y) (*.f64 (pow.f64 (log.f64 y) 2) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))))) (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z)))))))
(+.f64 (fma.f64 1/2 (*.f64 (log.f64 y) (*.f64 y (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))) (sqrt.f64 (fma.f64 1/2 (log.f64 y) z))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))) (*.f64 -1/8 (*.f64 y (*.f64 y (pow.f64 (log.f64 y) 2))))))
(+.f64 (fma.f64 1/2 (*.f64 (log.f64 y) (*.f64 y (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))) (sqrt.f64 (fma.f64 1/2 (log.f64 y) z))) (*.f64 (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 y y)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 (log.f64 y) 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 (log.f64 y)) z))))) (*.f64 1/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (log.f64 y) 3)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 (log.f64 y)) z) 5))))))))
(+.f64 (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)) (fma.f64 -1/8 (*.f64 (*.f64 y y) (*.f64 (pow.f64 (log.f64 y) 2) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))))) (fma.f64 1/2 (*.f64 (*.f64 y (log.f64 y)) (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z)))) (*.f64 1/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (log.f64 y) 3)) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 5))))))))
(+.f64 (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)) (fma.f64 -1/8 (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 (*.f64 y y) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))))) (fma.f64 1/2 (*.f64 (log.f64 y) (*.f64 y (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 5))) (*.f64 (*.f64 1/16 (pow.f64 y 3)) (pow.f64 (log.f64 y) 3))))))
(+.f64 (sqrt.f64 (fma.f64 1/2 (log.f64 y) z)) (fma.f64 -1/8 (*.f64 y (*.f64 (*.f64 y (pow.f64 (log.f64 y) 2)) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 3))))) (fma.f64 1/2 (*.f64 (log.f64 y) (*.f64 y (sqrt.f64 (/.f64 1 (fma.f64 1/2 (log.f64 y) z))))) (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (log.f64 y) 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 y) z) 5))) 1/16)))))
(sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z)))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (*.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y)))))))
(fma.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 (/.f64 1 (log.f64 y)) (+.f64 1/2 y)))) (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))))
(fma.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y))))) (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z))))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (*.f64 z z)) (*.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y))))))))
(+.f64 (fma.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 (/.f64 1 (log.f64 y)) (+.f64 1/2 y)))) (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3))) (*.f64 -1/8 (*.f64 z z))))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (*.f64 z (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y))))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (*.f64 -1/8 z)))))
(+.f64 (sqrt.f64 (*.f64 (+.f64 1/2 y) (log.f64 y))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 5) (pow.f64 (log.f64 y) 5)))) (pow.f64 z 3))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 3) (pow.f64 (log.f64 y) 3)))) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1/2 y) (log.f64 y)))) z)))))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 5) (pow.f64 (log.f64 y) 5)))) (pow.f64 z 3)) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 (+.f64 1/2 y) 3)))) (*.f64 z z)) (*.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y)))))))))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 5) (pow.f64 (log.f64 y) 5)))) (pow.f64 z 3)) (fma.f64 1/2 (*.f64 z (sqrt.f64 (/.f64 (/.f64 1 (log.f64 y)) (+.f64 1/2 y)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 1/2 y) 3)) (pow.f64 (log.f64 y) 3))) (*.f64 -1/8 (*.f64 z z))))))
(+.f64 (sqrt.f64 (*.f64 (log.f64 y) (+.f64 1/2 y))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (+.f64 1/2 y) 5) (pow.f64 (log.f64 y) 5)))) (pow.f64 z 3)) (*.f64 z (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 (log.f64 y) (+.f64 1/2 y))))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (log.f64 y) 3)) (pow.f64 (+.f64 1/2 y) 3))) (*.f64 -1/8 z))))))

eval361.0ms (3.5%)

Compiler

Compiled 20953 to 11445 computations (45.4% saved)

prune162.0ms (1.6%)

Pruning

22 alts after pruning (21 fresh and 1 done)

PrunedKeptTotal
New92714941
Fresh6713
Picked101
Done314
Total93722959
Error
0b
Counts
959 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
17.0b
(-.f64 (-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y))) z)
45.0b
(-.f64 (+.f64 (log.f64 (/.f64 (exp.f64 x) (pow.f64 y (+.f64 y 1/2)))) y) z)
22.3b
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
46.3b
(+.f64 x y)
27.8b
(-.f64 (-.f64 (+.f64 y x) (log.f64 (pow.f64 y (+.f64 y 1/2)))) z)
24.5b
(-.f64 x z)
16.5b
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))) y) z)
13.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))) y) z)
48.3b
(+.f64 x (log.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))
0.1b
(-.f64 (+.f64 (-.f64 x (pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)) y) z)
16.1b
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
40.9b
(neg.f64 z)
13.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))) y) z)
42.9b
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (*.f64 y (log.f64 y))) 2)))
24.7b
(+.f64 x (-.f64 y z))
0.3b
(+.f64 x (-.f64 y (fma.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)) z)))
1.2b
(pow.f64 (cbrt.f64 (+.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) x)) 3)
25.3b
(-.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) z)
30.4b
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
17.1b
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
25.3b
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
46.1b
x
Compiler

Compiled 592 to 409 computations (30.9% saved)

localize32.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (-.f64 x (pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)) y)
0.1b
(*.f64 (+.f64 y 1/2) (log.f64 y))
0.2b
(pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)
0.2b
(/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y)))
Compiler

Compiled 80 to 51 computations (36.3% saved)

series8.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
(pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)
1.0ms
y
@-inf
(/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y)))
1.0ms
y
@inf
(pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)
1.0ms
x
@0
(+.f64 (-.f64 x (pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)) y)
1.0ms
y
@-inf
(+.f64 (-.f64 x (pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)) y)

rewrite86.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
587×log-prod_binary64
575×fma-def_binary64
349×pow2_binary64
318×fma-neg_binary64
239×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify77.0ms (0.8%)

Algorithm
egg-herbie
Rules
932×fma-neg_binary64
499×+-commutative_binary64
362×associate-/r*_binary64
339×times-frac_binary64
288×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01991166
16721059
22655958
37116952
Stop Event
node limit
Counts
197 → 211
Calls
Call 1
Inputs
(/.f64 2 (log.f64 y))
(+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (*.f64 -4 (/.f64 y (log.f64 y))))
(+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (+.f64 (*.f64 -4 (/.f64 y (log.f64 y))) (*.f64 8 (/.f64 (pow.f64 y 2) (log.f64 y)))))
(+.f64 (*.f64 -16 (/.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (+.f64 (*.f64 -4 (/.f64 y (log.f64 y))) (*.f64 8 (/.f64 (pow.f64 y 2) (log.f64 y))))))
(/.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (+.f64 (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))) (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 y 3) (log.f64 (/.f64 1 y)))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 y 4) (log.f64 (/.f64 1 y)))))) (+.f64 (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))) (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 y 3) (log.f64 (/.f64 1 y)))))))
(/.f64 1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))))))
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 -1 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (log.f64 y)) (+.f64 (*.f64 -4 (log.f64 y)) (*.f64 2 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y)))))) (pow.f64 y 3))) (+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 -1 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2))))))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (log.f64 (/.f64 1 y))) (*.f64 1/4 (log.f64 (/.f64 1 y)))) y)) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (log.f64 (/.f64 1 y))) (*.f64 1/4 (log.f64 (/.f64 1 y)))) y)) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (log.f64 (/.f64 1 y))) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/4 (log.f64 (/.f64 1 y))) (*.f64 -1/4 (log.f64 (/.f64 1 y))))) (*.f64 -1/8 (log.f64 (/.f64 1 y))))) (pow.f64 y 2))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 -1/8 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 -1/2 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))))))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x)) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) (+.f64 (*.f64 (+.f64 (*.f64 4 (log.f64 y)) (+.f64 (*.f64 -4 (log.f64 y)) (*.f64 2 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y)))))) (pow.f64 y 3)) x))) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 (*.f64 1/2 (log.f64 (/.f64 1 y))) x))))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/4 (log.f64 (/.f64 1 y))) (*.f64 -1/4 (log.f64 (/.f64 1 y)))) (pow.f64 y 2))) (+.f64 (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (+.f64 (*.f64 1/2 (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) y)) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x)))
(+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) y)) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) (pow.f64 y 2))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) (+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) x))))))
Outputs
(/.f64 2 (log.f64 y))
(+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (*.f64 -4 (/.f64 y (log.f64 y))))
(+.f64 (/.f64 2 (log.f64 y)) (*.f64 -4 (/.f64 y (log.f64 y))))
(fma.f64 -4 (/.f64 y (log.f64 y)) (/.f64 2 (log.f64 y)))
(+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (+.f64 (*.f64 -4 (/.f64 y (log.f64 y))) (*.f64 8 (/.f64 (pow.f64 y 2) (log.f64 y)))))
(+.f64 (/.f64 2 (log.f64 y)) (fma.f64 -4 (/.f64 y (log.f64 y)) (*.f64 8 (/.f64 (*.f64 y y) (log.f64 y)))))
(+.f64 (*.f64 -16 (/.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 2 (/.f64 1 (log.f64 y))) (+.f64 (*.f64 -4 (/.f64 y (log.f64 y))) (*.f64 8 (/.f64 (pow.f64 y 2) (log.f64 y))))))
(fma.f64 -16 (/.f64 (pow.f64 y 3) (log.f64 y)) (+.f64 (/.f64 2 (log.f64 y)) (fma.f64 -4 (/.f64 y (log.f64 y)) (*.f64 8 (/.f64 (*.f64 y y) (log.f64 y))))))
(+.f64 (fma.f64 -4 (/.f64 y (log.f64 y)) (*.f64 8 (/.f64 (*.f64 y y) (log.f64 y)))) (fma.f64 -16 (/.f64 (pow.f64 y 3) (log.f64 y)) (/.f64 2 (log.f64 y))))
(/.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(/.f64 -1 (*.f64 y (neg.f64 (log.f64 y))))
(/.f64 -1 (*.f64 (log.f64 y) (neg.f64 y)))
(/.f64 1 (*.f64 y (log.f64 y)))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))))
(-.f64 (/.f64 1/2 (*.f64 (*.f64 y y) (neg.f64 (log.f64 y)))) (/.f64 (/.f64 1 y) (neg.f64 (log.f64 y))))
(+.f64 (/.f64 1/2 (neg.f64 (*.f64 (*.f64 y y) (log.f64 y)))) (/.f64 -1 (*.f64 (log.f64 y) (neg.f64 y))))
(+.f64 (/.f64 -1/2 (*.f64 y (*.f64 y (log.f64 y)))) (/.f64 1 (*.f64 y (log.f64 y))))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (+.f64 (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))) (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 y 3) (log.f64 (/.f64 1 y)))))))
(-.f64 (/.f64 1/2 (*.f64 (*.f64 y y) (neg.f64 (log.f64 y)))) (+.f64 (/.f64 (/.f64 1 y) (neg.f64 (log.f64 y))) (/.f64 1/4 (*.f64 (pow.f64 y 3) (neg.f64 (log.f64 y))))))
(+.f64 (/.f64 1/2 (neg.f64 (*.f64 (*.f64 y y) (log.f64 y)))) (-.f64 (/.f64 -1 (*.f64 (log.f64 y) (neg.f64 y))) (/.f64 1/4 (neg.f64 (*.f64 (log.f64 y) (pow.f64 y 3))))))
(-.f64 (/.f64 -1/2 (*.f64 y (*.f64 y (log.f64 y)))) (+.f64 (/.f64 -1 (*.f64 y (log.f64 y))) (/.f64 -1/4 (*.f64 (log.f64 y) (pow.f64 y 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y 2) (log.f64 (/.f64 1 y))))) (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 y 4) (log.f64 (/.f64 1 y)))))) (+.f64 (/.f64 1 (*.f64 y (log.f64 (/.f64 1 y)))) (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 y 3) (log.f64 (/.f64 1 y)))))))
(+.f64 (/.f64 1/2 (*.f64 (*.f64 y y) (neg.f64 (log.f64 y)))) (-.f64 (/.f64 1/8 (*.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4))) (+.f64 (/.f64 (/.f64 1 y) (neg.f64 (log.f64 y))) (/.f64 1/4 (*.f64 (pow.f64 y 3) (neg.f64 (log.f64 y)))))))
(+.f64 (/.f64 1/8 (*.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4))) (+.f64 (/.f64 1/2 (neg.f64 (*.f64 (*.f64 y y) (log.f64 y)))) (-.f64 (/.f64 -1 (*.f64 (log.f64 y) (neg.f64 y))) (/.f64 1/4 (neg.f64 (*.f64 (log.f64 y) (pow.f64 y 3)))))))
(+.f64 (/.f64 -1/2 (*.f64 y (*.f64 y (log.f64 y)))) (+.f64 (-.f64 (/.f64 -1/8 (*.f64 (log.f64 y) (pow.f64 y 4))) (/.f64 -1/4 (*.f64 (log.f64 y) (pow.f64 y 3)))) (/.f64 1 (*.f64 y (log.f64 y)))))
(/.f64 1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(/.f64 (/.f64 1 y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(-.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))))
(-.f64 (/.f64 (/.f64 1 y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1))) (/.f64 1/2 (*.f64 (*.f64 y y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))))
(+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (/.f64 -1/2 (*.f64 (*.f64 y y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))))
(+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (/.f64 (/.f64 -1/2 (*.f64 y y)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))))
(-.f64 (+.f64 (/.f64 (/.f64 1 y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1))) (/.f64 1/4 (*.f64 (pow.f64 y 3) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1))))) (/.f64 1/2 (*.f64 (*.f64 y y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))))
(+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (+.f64 (/.f64 (/.f64 1/4 (pow.f64 y 3)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (/.f64 -1/2 (*.f64 (*.f64 y y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))))))
(+.f64 (+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (/.f64 (/.f64 -1/2 (*.f64 y y)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))) (/.f64 (/.f64 1/4 (pow.f64 y 3)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))))))
(+.f64 (/.f64 (/.f64 1 y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1))) (-.f64 (/.f64 1/4 (*.f64 (pow.f64 y 3) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))) (+.f64 (/.f64 1/2 (*.f64 (*.f64 y y) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))) (/.f64 1/8 (*.f64 (pow.f64 y 4) (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))))))
(+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (-.f64 (/.f64 (/.f64 1/4 (pow.f64 y 3)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (+.f64 (/.f64 1/2 (*.f64 (*.f64 y y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))) (/.f64 1/8 (*.f64 (pow.f64 y 4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))))))
(+.f64 (/.f64 (/.f64 1 y) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (-.f64 (/.f64 (/.f64 1/4 (pow.f64 y 3)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (+.f64 (/.f64 (/.f64 1/2 (*.f64 y y)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (/.f64 (/.f64 1/8 (pow.f64 y 4)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))))))
(*.f64 1/2 (log.f64 y))
(*.f64 (log.f64 y) 1/2)
(log.f64 (sqrt.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 -1 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)))))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (log.f64 y)) (+.f64 (*.f64 -4 (log.f64 y)) (*.f64 2 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y)))))) (pow.f64 y 3))) (+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 -1 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2))))))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (log.f64 (/.f64 1 y))) (*.f64 1/4 (log.f64 (/.f64 1 y)))) y)) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (log.f64 (/.f64 1 y))) (*.f64 1/4 (log.f64 (/.f64 1 y)))) y)) (+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (log.f64 (/.f64 1 y))) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/4 (log.f64 (/.f64 1 y))) (*.f64 -1/4 (log.f64 (/.f64 1 y))))) (*.f64 -1/8 (log.f64 (/.f64 1 y))))) (pow.f64 y 2))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))))
(*.f64 (log.f64 y) (+.f64 y 1/2))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(*.f64 y (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(*.f64 y (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (*.f64 y (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1))))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))))
(fma.f64 1/4 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y) (fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y (*.f64 -1/4 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y)))))
(fma.f64 1/4 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) y) (+.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2)) (*.f64 -1/4 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) y))))
(+.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2)) 0)
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2) 0)
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 -1/8 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 -1/2 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))))) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))))))
(fma.f64 1/4 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y) (fma.f64 1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y (*.f64 -1/4 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) y)))))
(fma.f64 1/4 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) y) (+.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2)) (*.f64 -1/4 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) y))))
(+.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2)) 0)
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (+.f64 y 1/2) 0)
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(-.f64 x (*.f64 (log.f64 y) 1/2))
(-.f64 x (log.f64 (sqrt.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x)) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y))) (pow.f64 y 2)) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) (+.f64 (*.f64 (+.f64 (*.f64 4 (log.f64 y)) (+.f64 (*.f64 -4 (log.f64 y)) (*.f64 2 (+.f64 (*.f64 2 (log.f64 y)) (*.f64 -2 (log.f64 y)))))) (pow.f64 y 3)) x))) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 (*.f64 1/2 (log.f64 (/.f64 1 y))) x))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/4 (log.f64 (/.f64 1 y))) (*.f64 -1/4 (log.f64 (/.f64 1 y)))) (pow.f64 y 2))) (+.f64 (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (+.f64 (*.f64 1/2 (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 y 1/2)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (+.f64 1 (neg.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))))
(*.f64 y (-.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))))
(+.f64 y (*.f64 y (-.f64 (log.f64 (/.f64 -1 y)) (log.f64 -1))))
(+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x))
(fma.f64 -1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 y (+.f64 1 (neg.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))) x))
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (fma.f64 y (-.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) x))
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (fma.f64 y (+.f64 1 (-.f64 (log.f64 (/.f64 -1 y)) (log.f64 -1))) x))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) y)) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x)))
(fma.f64 -1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 y (+.f64 1 (neg.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))) x))
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (fma.f64 y (-.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) x))
(fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (fma.f64 y (+.f64 1 (-.f64 (log.f64 (/.f64 -1 y)) (log.f64 -1))) x))
(+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) y)) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) (pow.f64 y 2))) (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) (+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) x))))))
(fma.f64 1/8 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (*.f64 y y)) (fma.f64 -1 (/.f64 (*.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) 0) y) (fma.f64 -1/2 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (fma.f64 -1/2 (/.f64 (*.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) 0) (*.f64 y y)) (fma.f64 y (+.f64 1 (neg.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))) (fma.f64 -1/8 (/.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)) (*.f64 y y)) x))))))
(+.f64 (+.f64 (fma.f64 y (-.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y)))) (fma.f64 -1/8 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (*.f64 y y)) x)) (fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (/.f64 (/.f64 0 y) y))) (fma.f64 1/8 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (*.f64 y y)) (/.f64 0 y)))
(fma.f64 1/8 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (*.f64 y y)) (fma.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) -1/2 (fma.f64 y (+.f64 1 (-.f64 (log.f64 (/.f64 -1 y)) (log.f64 -1))) (fma.f64 -1/8 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))) (*.f64 y y)) x))))

localize3.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize14.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 1/2 (log.f64 y)))
Compiler

Compiled 27 to 14 computations (48.1% saved)

series2.0ms (0%)

Counts
1 → 20
Calls

6 calls:

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

rewrite58.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
769×pow1_binary64
716×add-log-exp_binary64
716×log1p-expm1-u_binary64
716×expm1-log1p-u_binary64
702×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify274.0ms (2.7%)

Algorithm
egg-herbie
Rules
1205×distribute-rgt-in_binary64
608×fma-def_binary64
462×unsub-neg_binary64
460×fma-neg_binary64
376×distribute-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021127
152127
2113127
3247127
4549127
51223127
63480127
74904127
85613127
95886127
105992127
116029127
126033127
136124127
146262127
156382127
166426127
176450127
186468127
196476127
206476127
216476127
226821127
Stop Event
node limit
Counts
57 → 43
Calls
Call 1
Inputs
(*.f64 -1/2 (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
x
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
x
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 -1/2 (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
x
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
x
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(+.f64 (*.f64 -1/2 (log.f64 y)) x)
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1/2 (log.f64 y) x)
(-.f64 x (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1/2 (log.f64 y) x)

localize24.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2)))
0.0b
(+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))) y)
0.1b
(/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))
Compiler

Compiled 61 to 36 computations (41% saved)

series7.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

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

rewrite105.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
635×log-prod_binary64
615×fma-def_binary64
317×fma-neg_binary64
240×pow1/3_binary64
240×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify68.0ms (0.7%)

Algorithm
egg-herbie
Rules
648×fma-def_binary64
549×associate-/l*_binary64
396×associate-*l/_binary64
272×unsub-neg_binary64
268×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01181093
13711062
21081920
33372843
Stop Event
node limit
Counts
277 → 277
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 2 (*.f64 (pow.f64 y 2) (log.f64 y)))))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (log.f64 y))) (*.f64 4 (*.f64 (pow.f64 y 3) (log.f64 y))))))
(*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2)))))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/32 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))
(*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))
(+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))))
(+.f64 (*.f64 -1/32 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))) (+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))))
(-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
x
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
x
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x)) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -4 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x))) (*.f64 1/2 (log.f64 y)))
y
(+.f64 y x)
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 y x))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 y (+.f64 x (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))
y
(+.f64 y x)
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 y x))
(+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 y x)))
(*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x)) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x))) (*.f64 1/2 (log.f64 y)))
x
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) x)
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) x))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (+.f64 (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) x)))
x
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) x)
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) x))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) x)))
Outputs
(*.f64 1/2 (log.f64 y))
(log.f64 (sqrt.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (*.f64 2 (*.f64 (pow.f64 y 2) (log.f64 y)))))
(+.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)) (*.f64 2 (*.f64 (log.f64 y) (*.f64 y y))))
(fma.f64 1/2 (log.f64 y) (*.f64 (log.f64 y) (+.f64 y (*.f64 2 (*.f64 y y)))))
(*.f64 (log.f64 y) (+.f64 1/2 (fma.f64 2 (*.f64 y y) y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (+.f64 (*.f64 y (log.f64 y)) (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (log.f64 y))) (*.f64 4 (*.f64 (pow.f64 y 3) (log.f64 y))))))
(+.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)) (fma.f64 2 (*.f64 (log.f64 y) (*.f64 y y)) (*.f64 4 (*.f64 (log.f64 y) (pow.f64 y 3)))))
(fma.f64 (log.f64 y) (+.f64 1/2 y) (*.f64 (log.f64 y) (+.f64 (*.f64 2 (*.f64 y y)) (*.f64 4 (pow.f64 y 3)))))
(*.f64 (log.f64 y) (+.f64 (+.f64 1/2 y) (*.f64 (*.f64 y y) (+.f64 (*.f64 y 4) 2))))
(*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y))
(*.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y))
(/.f64 (*.f64 (log.f64 y) -1/4) y)
(*.f64 (/.f64 -1/4 y) (log.f64 y))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (*.f64 (/.f64 1/8 y) (/.f64 (neg.f64 (log.f64 y)) y)))
(*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (/.f64 -1/8 y)))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2)))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (/.f64 (*.f64 (neg.f64 (log.f64 y)) 1/16) (pow.f64 y 3))))
(+.f64 (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y))) (/.f64 (*.f64 (log.f64 y) -1/16) (pow.f64 y 3)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (+.f64 (/.f64 -1/8 y) (/.f64 -1/16 (*.f64 y y)))))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 1/32 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y))))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (fma.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (/.f64 (*.f64 (neg.f64 (log.f64 y)) 1/16) (pow.f64 y 3)))))
(+.f64 (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y))) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (/.f64 (*.f64 (log.f64 y) -1/16) (pow.f64 y 3))))
(+.f64 (*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (/.f64 -1/8 y))) (*.f64 (/.f64 (log.f64 y) (pow.f64 y 3)) (+.f64 (/.f64 -1/32 y) -1/16)))
(*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y))
(/.f64 (*.f64 (log.f64 y) -1/4) y)
(*.f64 (/.f64 -1/4 y) (log.f64 y))
(+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (*.f64 (/.f64 1/8 y) (/.f64 (neg.f64 (log.f64 y)) y)))
(*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (/.f64 -1/8 y)))
(+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (/.f64 (*.f64 (neg.f64 (log.f64 y)) 1/16) (pow.f64 y 3))))
(+.f64 (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y))) (/.f64 (*.f64 (log.f64 y) -1/16) (pow.f64 y 3)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (+.f64 (/.f64 -1/8 y) (/.f64 -1/16 (*.f64 y y)))))
(+.f64 (*.f64 -1/32 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))) (+.f64 (*.f64 -1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 -1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (*.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y))))))
(fma.f64 1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (fma.f64 1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (/.f64 (*.f64 (neg.f64 (log.f64 y)) 1/16) (pow.f64 y 3)))))
(+.f64 (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 1/4 (/.f64 1/8 y))) (fma.f64 1/32 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 4)) (/.f64 (*.f64 (log.f64 y) -1/16) (pow.f64 y 3))))
(+.f64 (*.f64 (/.f64 (log.f64 y) y) (+.f64 -1/4 (/.f64 -1/8 y))) (*.f64 (/.f64 (log.f64 y) (pow.f64 y 3)) (+.f64 (/.f64 -1/32 y) -1/16)))
(-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 y (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) y)
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
x
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
x
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 (+.f64 y x) (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))))
(+.f64 (+.f64 y x) (*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2))))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x))
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) (+.f64 y x))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 (-.f64 1 (log.f64 y)) y x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x)) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 (-.f64 1 (log.f64 y)) y (fma.f64 -2 (*.f64 (log.f64 y) (*.f64 y y)) x)) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (*.f64 y (*.f64 y (log.f64 y))) -2 x)) (*.f64 (log.f64 y) -1/2))
(+.f64 y (fma.f64 (log.f64 y) -1/2 (fma.f64 (log.f64 y) (*.f64 y (+.f64 -1 (*.f64 y -2))) x)))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 y (+.f64 -1 (*.f64 y -2))) -1/2))))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (+.f64 (*.f64 -4 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x))) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 (-.f64 1 (log.f64 y)) y (fma.f64 -4 (*.f64 (log.f64 y) (pow.f64 y 3)) (fma.f64 -2 (*.f64 (log.f64 y) (*.f64 y y)) x))) (*.f64 -1/2 (log.f64 y)))
(+.f64 (+.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 (pow.f64 y 3) -4) (*.f64 (*.f64 y y) -2))) (fma.f64 y (-.f64 1 (log.f64 y)) x)) (*.f64 (log.f64 y) -1/2))
(+.f64 y (-.f64 (fma.f64 (log.f64 y) (*.f64 (*.f64 y y) (+.f64 (*.f64 y -4) -2)) x) (*.f64 (log.f64 y) (+.f64 1/2 y))))
(+.f64 y (+.f64 (*.f64 (log.f64 y) (+.f64 -1/2 (*.f64 y (+.f64 -1 (*.f64 y (+.f64 (*.f64 y -4) -2)))))) x))
y
(+.f64 y x)
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 y x))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 y x))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (+.f64 y x))
(+.f64 y (+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y)))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) y) x))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 y (+.f64 x (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 y (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x)))
(+.f64 y (fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x)))
(+.f64 (+.f64 y x) (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 (/.f64 -1/8 y) -1/4)))
(+.f64 y (+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/8 y) 1/4))))
y
(+.f64 y x)
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 y x))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 y x))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (+.f64 y x))
(+.f64 y (+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y)))
(+.f64 y (fma.f64 1/4 (/.f64 (log.f64 y) y) x))
(+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 y x)))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 y (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x)))
(+.f64 y (fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x)))
(+.f64 (+.f64 y x) (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 (/.f64 -1/8 y) -1/4)))
(+.f64 y (+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/8 y) 1/4))))
(*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))
(*.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)))
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
x
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
x
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(+.f64 (*.f64 1/4 (/.f64 (log.f64 y) (-.f64 y 1/2))) x)
(fma.f64 1/4 (/.f64 (log.f64 y) (+.f64 y -1/2)) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (-.f64 x (*.f64 y (log.f64 y))) (*.f64 (log.f64 y) -1/2))
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x)) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) (fma.f64 -2 (*.f64 (log.f64 y) (*.f64 y y)) x)) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) (+.f64 (neg.f64 y) (*.f64 (*.f64 y y) -2))) (+.f64 x (*.f64 (log.f64 y) -1/2)))
(fma.f64 (log.f64 y) -1/2 (fma.f64 (log.f64 y) (*.f64 y (+.f64 -1 (*.f64 y -2))) x))
(+.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 y (+.f64 -1 (*.f64 y -2))) -1/2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 y 2) (log.f64 y))) x))) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) (fma.f64 -4 (*.f64 (log.f64 y) (pow.f64 y 3)) (fma.f64 -2 (*.f64 (log.f64 y) (*.f64 y y)) x))) (*.f64 -1/2 (log.f64 y)))
(+.f64 (*.f64 (log.f64 y) (+.f64 (neg.f64 y) (*.f64 (pow.f64 y 3) -4))) (+.f64 (fma.f64 (*.f64 y (*.f64 y (log.f64 y))) -2 x) (*.f64 (log.f64 y) -1/2)))
(-.f64 (fma.f64 (log.f64 y) (*.f64 (*.f64 y y) (+.f64 (*.f64 y -4) -2)) x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 (*.f64 (log.f64 y) (+.f64 -1/2 (*.f64 y (+.f64 -1 (*.f64 y (+.f64 (*.f64 y -4) -2)))))) x)
x
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) x)
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) x)
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 x)
(+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y))
(fma.f64 1/4 (/.f64 (log.f64 y) y) x)
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) x))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x))
(+.f64 x (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 (/.f64 -1/8 y) -1/4)))
(+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/8 y) 1/4)))
(+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/16 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (+.f64 (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) x)))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x)))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) -1/16 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x)))
(+.f64 (+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y)) (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/8 (/.f64 -1/16 y))))
(+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 1/4 (+.f64 (/.f64 1/16 (*.f64 y y)) (/.f64 1/8 y)))))
x
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) x)
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) x)
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 x)
(+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y))
(fma.f64 1/4 (/.f64 (log.f64 y) y) x)
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) x))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x))
(+.f64 x (*.f64 (neg.f64 (/.f64 (log.f64 y) y)) (+.f64 (/.f64 -1/8 y) -1/4)))
(+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/8 y) 1/4)))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (+.f64 (*.f64 1/16 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) x)))
(fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/16 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (fma.f64 -1/8 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) x)))
(fma.f64 (/.f64 (neg.f64 (log.f64 y)) y) -1/4 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) -1/16 (fma.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) -1/8 x)))
(+.f64 (+.f64 x (/.f64 (*.f64 (log.f64 y) 1/4) y)) (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/8 (/.f64 -1/16 y))))
(+.f64 x (*.f64 (/.f64 (log.f64 y) y) (+.f64 1/4 (+.f64 (/.f64 1/16 (*.f64 y y)) (/.f64 1/8 y)))))

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2)))))
0.1b
(+.f64 (-.f64 x (*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))) y)
0.1b
(*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))
12.9b
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2)))
Compiler

Compiled 97 to 60 computations (38.1% saved)

series6.0ms (0.1%)

Counts
4 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
y
@0
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2)))
1.0ms
y
@-inf
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2)))
0.0ms
y
@inf
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2)))
0.0ms
y
@-inf
(*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))
0.0ms
y
@-inf
(+.f64 (-.f64 x (*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))) y)

rewrite109.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
743×log-prod_binary64
632×fma-def_binary64
351×fma-neg_binary64
274×expm1-udef_binary64
274×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify80.0ms (0.8%)

Algorithm
egg-herbie
Rules
497×unsub-neg_binary64
487×sub-neg_binary64
428×div-sub_binary64
363×fma-neg_binary64
246×associate-+l+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0681007
1218915
2575839
31646838
46061836
Stop Event
node limit
Counts
306 → 273
Calls
Call 1
Inputs
1/2
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
y
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
y
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
1/2
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
y
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
y
(+.f64 1/2 y)
(+.f64 1/2 y)
(+.f64 1/2 y)
(*.f64 1/2 (log.f64 y))
(log.f64 (sqrt.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 1/2 y) (log.f64 y))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 y (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 y (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(+.f64 y (+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 1/2 (neg.f64 (log.f64 y)) x)
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 y (*.f64 y (log.f64 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) y)
(-.f64 y (*.f64 y (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(neg.f64 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))))
(/.f64 (*.f64 (neg.f64 (log.f64 y)) (fma.f64 y y -1/4)) (+.f64 y -1/2))
(*.f64 (log.f64 y) (/.f64 (-.f64 1/4 (*.f64 y y)) (+.f64 y -1/2)))
(*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
x
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2))) x)
(fma.f64 -1 (/.f64 (log.f64 y) (/.f64 (+.f64 y -1/2) (+.f64 (*.f64 y y) -1/4))) x)
(-.f64 x (*.f64 (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)) (log.f64 y)))
(-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (-.f64 1/2 y))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 1/2 (neg.f64 (log.f64 y)) x)
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (neg.f64 (log.f64 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (log.f64 (/.f64 1 y))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 y (neg.f64 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (fma.f64 -1 (*.f64 y (log.f64 y)) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 y (neg.f64 (log.f64 y)) (fma.f64 1/2 (neg.f64 (log.f64 y)) x))
(+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))

eval481.0ms (4.7%)

Compiler

Compiled 19147 to 11622 computations (39.3% saved)

prune263.0ms (2.6%)

Pruning

22 alts after pruning (19 fresh and 3 done)

PrunedKeptTotal
New82912841
Fresh9716
Picked101
Done235
Total84122863
Error
0b
Counts
863 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
17.0b
(-.f64 (-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y))) z)
22.3b
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
41.1b
(-.f64 y z)
46.3b
(+.f64 x y)
0.3b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (pow.f64 (sqrt.f64 (+.f64 y 1/2)) 2))) y) z)
0.8b
(-.f64 (pow.f64 (cbrt.f64 (+.f64 y (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))))) 3) z)
0.1b
(-.f64 (+.f64 (-.f64 x (/.f64 (log.f64 y) (/.f64 1 (+.f64 y 1/2)))) y) z)
41.3b
(-.f64 (log.f64 (/.f64 (exp.f64 x) (sqrt.f64 y))) z)
25.3b
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
40.9b
(neg.f64 z)
32.9b
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
13.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))) y) z)
0.1b
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))) y) z)
33.3b
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
46.1b
x
42.9b
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (*.f64 y (log.f64 y))) 2)))
24.5b
(-.f64 x z)
13.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 (/.f64 1 (+.f64 y -1/2)) (*.f64 y y)) (*.f64 (/.f64 1 (+.f64 y -1/2)) -1/4)))) y) z)
30.4b
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
17.1b
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
0.1b
(-.f64 (+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y) z)
16.1b
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
Compiler

Compiled 568 to 401 computations (29.4% saved)

localize222.0ms (2.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))) y)
0.1b
(*.f64 (+.f64 y 1/2) (log.f64 y))
0.2b
(/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))
0.2b
(/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y)))
Compiler

Compiled 79 to 50 computations (36.7% saved)

series5.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite131.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
578×log-prod_binary64
572×fma-def_binary64
330×pow2_binary64
309×fma-neg_binary64
225×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify173.0ms (1.7%)

Algorithm
egg-herbie
Rules
782×fma-neg_binary64
694×fma-def_binary64
613×unsub-neg_binary64
510×sub-neg_binary64
384×distribute-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
045426
1142410
2382370
31091370
43173370
55654370
67480370
Stop Event
node limit
Counts
150 → 135
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (log.f64 y) (-.f64 y -1/2))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(+.f64 x (fma.f64 (log.f64 y) (-.f64 -1/2 y) y))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))

localize6.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize26.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 1 (log.f64 y))
0.0b
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
0.3b
(*.f64 y (-.f64 1 (log.f64 y)))
Compiler

Compiled 26 to 14 computations (46.2% saved)

series5.0ms (0%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
z
@0
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
1.0ms
y
@0
(*.f64 y (-.f64 1 (log.f64 y)))
1.0ms
y
@inf
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
1.0ms
y
@-inf
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
0.0ms
y
@0
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)

rewrite99.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
941×pow1_binary64
873×add-log-exp_binary64
873×log1p-expm1-u_binary64
873×expm1-log1p-u_binary64
856×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
117121
2231221
Stop Event
node limit
Counts
2 → 54
Calls
Call 1
Inputs
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (neg.f64 (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 y (neg.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (-.f64 1 (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 3)) y) (+.f64 1 (+.f64 (log.f64 y) (pow.f64 (log.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) y) (+.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 (pow.f64 (log.f64 y) 3))) (+.f64 1 (+.f64 (log.f64 y) (pow.f64 (log.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 (pow.f64 (log.f64 y) 2))) (+.f64 1 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (/.f64 (E.f64) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 1 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 (/.f64 (E.f64) y) y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 1 (log.f64 y)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 1 (log.f64 y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 1 (log.f64 y))) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (*.f64 y (-.f64 1 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) 2) (cbrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) (sqrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 z 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z (fma.f64 y (-.f64 1 (log.f64 y)) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z z)) (/.f64 1 (fma.f64 y (-.f64 1 (log.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z (fma.f64 y (-.f64 1 (log.f64 y)) z))) (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (-.f64 1 (log.f64 y)) z) (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 z 3)) (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z (fma.f64 y (-.f64 1 (log.f64 y)) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z z)) (fma.f64 y (-.f64 1 (log.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 z 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z (fma.f64 y (-.f64 1 (log.f64 y)) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 z z))) (neg.f64 (fma.f64 y (-.f64 1 (log.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 3) (pow.f64 (neg.f64 z) 3)) (+.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (-.f64 (*.f64 (neg.f64 z) (neg.f64 z)) (*.f64 (*.f64 y (-.f64 1 (log.f64 y))) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 (log.f64 y))) 2) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (/.f64 (E.f64) y) y) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (-.f64 1 (log.f64 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (-.f64 1 (log.f64 y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (log.f64 y)) y (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) 2) (cbrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (sqrt.f64 (*.f64 y (-.f64 1 (log.f64 y)))) (neg.f64 z))))))

simplify321.0ms (3.1%)

Algorithm
egg-herbie
Rules
3138×fma-neg_binary64
806×unsub-neg_binary64
401×distribute-neg-in_binary64
352×distribute-rgt-in_binary64
333×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
024378
157360
2112360
3274360
4836324
52256324
64714324
76288324
86911324
97242324
107347324
117380324
127382324
137390324
147390324
Stop Event
node limit
Counts
90 → 64
Calls
Call 1
Inputs
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(*.f64 (-.f64 1 (log.f64 y)) y)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
Outputs
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 (-.f64 1 (log.f64 y)) y)
(*.f64 y (-.f64 1 (log.f64 y)))
(fma.f64 (log.f64 y) (neg.f64 y) y)
(fma.f64 y (neg.f64 (log.f64 y)) y)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))
(+.f64 (*.f64 -1 z) (*.f64 (-.f64 1 (log.f64 y)) y))
(fma.f64 -1 z (*.f64 y (-.f64 1 (log.f64 y))))
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (fma.f64 (log.f64 y) (neg.f64 y) y) z)
(-.f64 y (fma.f64 y (log.f64 y) z))

localize89.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y))))
0.1b
(+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y)
0.3b
(/.f64 1 (log.f64 y))
0.3b
(/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))
Compiler

Compiled 61 to 36 computations (41% saved)

series12.0ms (0.1%)

Counts
4 → 68
Calls

18 calls:

TimeVariablePointExpression
2.0ms
y
@0
(/.f64 1 (log.f64 y))
1.0ms
y
@-inf
(/.f64 1 (log.f64 y))
1.0ms
y
@inf
(/.f64 1 (log.f64 y))
1.0ms
y
@0
(/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))
1.0ms
y
@-inf
(+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y)

rewrite170.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
592×log-prod_binary64
566×fma-def_binary64
337×pow2_binary64
307×fma-neg_binary64
230×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify128.0ms (1.3%)

Algorithm
egg-herbie
Rules
687×sub-neg_binary64
395×+-commutative_binary64
381×neg-sub0_binary64
324×distribute-rgt-in_binary64
323×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
058762
1189728
2516632
31289632
43708632
55733632
66882632
77652632
87989632
Stop Event
node limit
Counts
302 → 268
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (log.f64 (/.f64 1 y)))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 -1 (log.f64 (/.f64 1 y)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(/.f64 -1 (neg.f64 (log.f64 y)))
(/.f64 1 (log.f64 y))
(-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 y (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
x
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 y x) (*.f64 (+.f64 1/2 y) (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) (+.f64 y x))
(+.f64 y (fma.f64 (log.f64 y) (-.f64 -1/2 y) x))
(*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y)))
(neg.f64 (*.f64 (log.f64 y) (+.f64 1/2 y)))
(*.f64 (log.f64 y) (+.f64 -1/2 (neg.f64 y)))
(*.f64 (log.f64 y) (-.f64 -1/2 y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
x
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 1/2 y) (log.f64 y))) x)
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (log.f64 y))) x) (*.f64 1/2 (log.f64 y)))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(*.f64 y (log.f64 (/.f64 1 y)))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 y (log.f64 (/.f64 1 y))) x) (*.f64 -1/2 (log.f64 (/.f64 1 y))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(*.f64 y (neg.f64 (log.f64 y)))
(*.f64 (log.f64 y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)
(-.f64 (+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(fma.f64 -1 (*.f64 (log.f64 y) (+.f64 1/2 y)) x)
(-.f64 x (*.f64 (log.f64 y) (+.f64 1/2 y)))
(fma.f64 (log.f64 y) (-.f64 -1/2 y) x)

localize40.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))) y)
0.2b
(/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y)))
0.3b
(/.f64 (+.f64 y -1/2) (log.f64 y))
12.9b
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))
Compiler

Compiled 96 to 57 computations (40.6% saved)

series7.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))
1.0ms
y
@-inf
(/.f64 (+.f64 y -1/2) (log.f64 y))
1.0ms
y
@-inf
(/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y)))
1.0ms
y
@inf
(/.f64 (+.f64 y -1/2) (log.f64 y))
1.0ms
y
@0
(/.f64 (+.f64 y -1/2) (log.f64 y))

rewrite140.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
768×log-prod_binary64
657×fma-def_binary64
356×fma-neg_binary64
282×expm1-udef_binary64
282×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify97.0ms (0.9%)

Algorithm
egg-herbie
Rules
527×fma-neg_binary64
489×fma-def_binary64
307×unsub-neg_binary64
306×distribute-rgt-out_binary64
291×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01191054
1340905
21021831
34080799
Stop Event
node limit
Counts
235 → 227
Calls
Call 1
Inputs
(*.f64 1/2 (log.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(/.f64 -1/2 (log.f64 y))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y))))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 -2 (log.f64 y))
(+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y)))
(+.f64 (*.f64 -8 (*.f64 (pow.f64 y 2) (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y))))
(+.f64 (*.f64 -8 (*.f64 (pow.f64 y 2) (log.f64 y))) (+.f64 (*.f64 -16 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y)))))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3)))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 4))))))
(/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y)))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))) (+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y)))))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
Outputs
(*.f64 1/2 (log.f64 y))
(log.f64 (sqrt.f64 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y (log.f64 y)))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 -1/2 (log.f64 (/.f64 1 y))) (*.f64 -1 (*.f64 y (log.f64 (/.f64 1 y)))))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(neg.f64 (*.f64 y (neg.f64 (log.f64 y))))
(*.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y))
(*.f64 (log.f64 y) (+.f64 1/2 y))
(/.f64 -1/2 (log.f64 y))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(-.f64 (/.f64 y (log.f64 y)) (*.f64 1/2 (/.f64 1 (log.f64 y))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y))))
(neg.f64 (/.f64 y (neg.f64 (log.f64 y))))
(*.f64 1 (/.f64 y (log.f64 y)))
(/.f64 y (log.f64 y))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(+.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 y)))) (*.f64 -1 (/.f64 y (log.f64 (/.f64 1 y)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(neg.f64 (/.f64 y (neg.f64 (log.f64 y))))
(*.f64 1 (/.f64 y (log.f64 y)))
(/.f64 y (log.f64 y))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(-.f64 (/.f64 y (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) (*.f64 1/2 (/.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(-.f64 (/.f64 y (log.f64 y)) (/.f64 1/2 (log.f64 y)))
(/.f64 (+.f64 y -1/2) (log.f64 y))
(*.f64 -2 (log.f64 y))
(*.f64 (log.f64 y) -2)
(+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y)))
(fma.f64 -4 (*.f64 y (log.f64 y)) (*.f64 (log.f64 y) -2))
(*.f64 (log.f64 y) (+.f64 -2 (*.f64 y -4)))
(*.f64 (log.f64 y) (fma.f64 y -4 -2))
(+.f64 (*.f64 -8 (*.f64 (pow.f64 y 2) (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y))))
(fma.f64 -8 (*.f64 (log.f64 y) (*.f64 y y)) (fma.f64 -4 (*.f64 y (log.f64 y)) (*.f64 (log.f64 y) -2)))
(fma.f64 -8 (*.f64 (log.f64 y) (*.f64 y y)) (*.f64 (log.f64 y) (+.f64 -2 (*.f64 y -4))))
(*.f64 (log.f64 y) (+.f64 -2 (*.f64 y (+.f64 (*.f64 y -8) -4))))
(*.f64 (log.f64 y) (+.f64 (*.f64 y (+.f64 (*.f64 y -8) -4)) -2))
(+.f64 (*.f64 -8 (*.f64 (pow.f64 y 2) (log.f64 y))) (+.f64 (*.f64 -16 (*.f64 (pow.f64 y 3) (log.f64 y))) (+.f64 (*.f64 -4 (*.f64 y (log.f64 y))) (*.f64 -2 (log.f64 y)))))
(fma.f64 -8 (*.f64 (log.f64 y) (*.f64 y y)) (fma.f64 -16 (*.f64 (log.f64 y) (pow.f64 y 3)) (fma.f64 -4 (*.f64 y (log.f64 y)) (*.f64 (log.f64 y) -2))))
(+.f64 (*.f64 (log.f64 y) (+.f64 -2 (*.f64 y -4))) (*.f64 (log.f64 y) (+.f64 (*.f64 -8 (*.f64 y y)) (*.f64 -16 (pow.f64 y 3)))))
(*.f64 (log.f64 y) (+.f64 (fma.f64 y -4 -2) (*.f64 (*.f64 y y) (+.f64 -8 (*.f64 y -16)))))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y))
(/.f64 (neg.f64 (neg.f64 (log.f64 y))) y)
(/.f64 (log.f64 y) y)
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (/.f64 (*.f64 (neg.f64 (log.f64 y)) -1/2) (*.f64 y y)))
(+.f64 (/.f64 (log.f64 y) y) (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y)))
(*.f64 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 -1 (/.f64 -1/2 y)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/2 y) 1))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3)))))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/2 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (*.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)))))
(+.f64 (/.f64 (log.f64 y) y) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y))))
(+.f64 (/.f64 (log.f64 y) y) (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/2 (/.f64 -1/4 y))))
(+.f64 (/.f64 (log.f64 y) y) (*.f64 (/.f64 (log.f64 y) (*.f64 y y)) (+.f64 1/2 (/.f64 1/4 y))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 y)) y)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 2))) (+.f64 (*.f64 -1/4 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 3))) (*.f64 -1/8 (/.f64 (log.f64 (/.f64 1 y)) (pow.f64 y 4))))))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/2 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 -1/8 (neg.f64 (log.f64 y))) (pow.f64 y 4)))))
(+.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y)) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 1/8 (log.f64 y)) (pow.f64 y 4)))))
(+.f64 (/.f64 (log.f64 y) y) (+.f64 (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/2 (/.f64 -1/4 y))) (/.f64 1/8 (/.f64 (pow.f64 y 4) (log.f64 y)))))
(+.f64 (*.f64 (/.f64 (log.f64 y) (pow.f64 y 3)) (+.f64 1/4 (/.f64 1/8 y))) (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/2 y) 1)))
(/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) y)
(/.f64 (neg.f64 (neg.f64 (log.f64 y))) y)
(/.f64 (log.f64 y) y)
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y)))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (/.f64 (*.f64 (neg.f64 (log.f64 y)) -1/2) (*.f64 y y)))
(+.f64 (/.f64 (log.f64 y) y) (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y)))
(*.f64 (/.f64 (neg.f64 (log.f64 y)) y) (+.f64 -1 (/.f64 -1/2 y)))
(*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/2 y) 1))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y))))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/2 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (*.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)))))
(+.f64 (/.f64 (log.f64 y) y) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y))))
(+.f64 (/.f64 (log.f64 y) y) (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/2 (/.f64 -1/4 y))))
(+.f64 (/.f64 (log.f64 y) y) (*.f64 (/.f64 (log.f64 y) (*.f64 y y)) (+.f64 1/2 (/.f64 1/4 y))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 3))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 4))) (+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 y)) y)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (pow.f64 y 2))) (/.f64 (log.f64 -1) y)))))
(fma.f64 -1 (/.f64 (neg.f64 (log.f64 y)) y) (fma.f64 -1/2 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 -1/8 (neg.f64 (log.f64 y))) (pow.f64 y 4)))))
(+.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 (*.f64 1/2 (log.f64 y)) (*.f64 y y)) (fma.f64 -1/4 (/.f64 (neg.f64 (log.f64 y)) (pow.f64 y 3)) (/.f64 (*.f64 1/8 (log.f64 y)) (pow.f64 y 4)))))
(+.f64 (/.f64 (log.f64 y) y) (+.f64 (*.f64 (/.f64 (neg.f64 (log.f64 y)) (*.f64 y y)) (+.f64 -1/2 (/.f64 -1/4 y))) (/.f64 1/8 (/.f64 (pow.f64 y 4) (log.f64 y)))))
(+.f64 (*.f64 (/.f64 (log.f64 y) (pow.f64 y 3)) (+.f64 1/4 (/.f64 1/8 y))) (*.f64 (/.f64 (log.f64 y) y) (+.f64 (/.f64 1/2 y) 1)))
(-.f64 y (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 y (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 y (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 y (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (-.f64 (pow.f64 y 2) 1/4)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
x
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) 1/4) (log.f64 y)) (-.f64 y 1/2)))
(-.f64 (+.f64 y x) (/.f64 (*.f64 (log.f64 y) (+.f64 (*.f64 y y) -1/4)) (+.f64 y -1/2)))
(-.f64 (+.f64 y x) (*.f64 (/.f64 (log.f64 y) (+.f64 y -1/2)) (fma.f64 y y -1/4)))
(-.f64 (+.f64 y x) (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2))))
(+.f64 y (-.f64 x (*.f64 (log.f64 y) (/.f64 (fma.f64 y y -1/4) (+.f64 y -1/2)))))
(-.f64 x (*.f64 1/2 (log.f64 y)))
(+.f64 x (*.f64 -1/2 (log.f64 y)))
(+.f64 x (*.f64 (log.f64 y) -1/2))
(fma.f64 (log.f64 y) -1/2 x)
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) x) (*.f64 1/2 (log.f64 y)))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(+.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) (+.f64 x (*.f64 1/2 (log.f64 (/.f64 1 y)))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))))
(*.f64 y (-.f64 1 (neg.f64 (neg.f64 (log.f64 y)))))
(*.f64 y (-.f64 1 (log.f64 y)))
(-.f64 y (*.f64 y (log.f64 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 y (+.f64 1 (*.f64 -1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))) x) (*.f64 1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))))
(+.f64 (fma.f64 y (+.f64 1 (neg.f64 (log.f64 y))) x) (*.f64 -1/2 (log.f64 y)))
(+.f64 (fma.f64 y (-.f64 1 (log.f64 y)) x) (*.f64 (log.f64 y) -1/2))
(fma.f64 y (-.f64 1 (log.f64 y)) (fma.f64 (log.f64 y) -1/2 x))
(+.f64 (+.f64 y x) (*.f64 (log.f64 y) (-.f64 -1/2 y)))

eval626.0ms (6.1%)

Compiler

Compiled 16947 to 10002 computations (41% saved)

prune426.0ms (4.2%)

Pruning

22 alts after pruning (16 fresh and 6 done)

PrunedKeptTotal
New8254829
Fresh21214
Picked101
Done167
Total82922851
Error
0b
Counts
851 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
42.9b
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (*.f64 y (log.f64 y))) 2)))
8.7b
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 y (log.f64 y))))) y) z)
17.0b
(-.f64 (-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y))) z)
22.3b
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
41.1b
(-.f64 y z)
0.1b
(-.f64 (+.f64 (-.f64 x (/.f64 (log.f64 y) (/.f64 1 (+.f64 y 1/2)))) y) z)
41.3b
(-.f64 (log.f64 (/.f64 (exp.f64 x) (sqrt.f64 y))) z)
16.1b
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
25.5b
(-.f64 (/.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) y) (+.f64 1 (log.f64 y))) z)
25.3b
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
40.9b
(neg.f64 z)
32.9b
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
33.3b
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
46.1b
x
46.3b
(+.f64 x y)
34.2b
(-.f64 (+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 y (log.f64 y))))) y) z)
45.0b
(-.f64 (log.f64 (exp.f64 (+.f64 y (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))))) z)
24.5b
(-.f64 x z)
13.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 (/.f64 1 (+.f64 y -1/2)) (*.f64 y y)) (*.f64 (/.f64 1 (+.f64 y -1/2)) -1/4)))) y) z)
30.4b
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
17.1b
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
0.1b
(-.f64 (+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y) z)
Compiler

Compiled 292 to 205 computations (29.8% saved)

regimes261.0ms (2.6%)

Counts
50 → 1
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
(-.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 y (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (log.f64 y) (/.f64 1 (+.f64 y 1/2)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 (/.f64 1 (+.f64 y -1/2)) (*.f64 y y)) (*.f64 (/.f64 1 (+.f64 y -1/2)) -1/4)))) y) z)
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
(-.f64 (-.f64 (+.f64 y x) (log.f64 (pow.f64 y (+.f64 y 1/2)))) z)
(-.f64 (-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y))) z)
(-.f64 (+.f64 (-.f64 x (pow.f64 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))) -1)) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 y (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (fma.f64 y y -1/4) (log.f64 y)) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (*.f64 (fma.f64 y y -1/4) (/.f64 1 (+.f64 y -1/2))))) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (fma.f64 y y -1/4) (/.f64 1 (/.f64 (+.f64 y -1/2) (log.f64 y))))) y) z)
(-.f64 (log.f64 (/.f64 (exp.f64 x) (sqrt.f64 y))) z)
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (*.f64 y (log.f64 y))) 2)))
(-.f64 (+.f64 (log.f64 (/.f64 (exp.f64 x) (pow.f64 y (+.f64 y 1/2)))) y) z)
(-.f64 (log.f64 (exp.f64 (+.f64 y (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))))) z)
(-.f64 (/.f64 (*.f64 (-.f64 1 (pow.f64 (log.f64 y) 2)) y) (+.f64 1 (log.f64 y))) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (pow.f64 (sqrt.f64 (+.f64 y 1/2)) 2))) y) z)
(-.f64 (pow.f64 (cbrt.f64 (+.f64 y (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))))) 3) z)
(+.f64 x (log.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))
(+.f64 x (log.f64 (exp.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))))
(pow.f64 (cbrt.f64 (+.f64 (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) x)) 3)
(+.f64 x (-.f64 y (pow.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) 2)))
(+.f64 x (-.f64 y (cbrt.f64 (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3))))
(+.f64 x (-.f64 y (fma.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)) z)))
(+.f64 x (fma.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z))) y))
(+.f64 x (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) 3)) (fma.f64 (fma.f64 (+.f64 y 1/2) (log.f64 y) z) (+.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)) (*.f64 y y))))
Outputs
(-.f64 (-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y))) z)
Calls

6 calls:

73.0ms
y
59.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
30.0ms
x
27.0ms
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
27.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
0.1b1(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
0.1b1(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
Compiler

Compiled 680 to 378 computations (44.4% saved)

regimes217.0ms (2.1%)

Counts
29 → 1
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
(-.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 y (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (log.f64 y) (/.f64 1 (+.f64 y 1/2)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 (/.f64 1 (+.f64 y -1/2)) (*.f64 y y)) (*.f64 (/.f64 1 (+.f64 y -1/2)) -1/4)))) y) z)
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
(-.f64 (-.f64 (+.f64 y x) (log.f64 (pow.f64 y (+.f64 y 1/2)))) z)
(-.f64 (-.f64 (*.f64 (-.f64 1 (log.f64 y)) y) (*.f64 1/2 (log.f64 y))) z)
Outputs
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
Calls

6 calls:

69.0ms
y
45.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
44.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
17.0ms
z
17.0ms
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
0.1b1(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
0.1b1(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
Compiler

Compiled 344 to 191 computations (44.5% saved)

regimes114.0ms (1.1%)

Counts
26 → 1
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
(-.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 y (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (log.f64 y) (/.f64 1 (+.f64 y 1/2)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (+.f64 y 1/2) (/.f64 1 (log.f64 y)))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) -1/4) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 1 (/.f64 1 (*.f64 (+.f64 y 1/2) (log.f64 y))))) y) z)
(-.f64 (+.f64 (-.f64 x (/.f64 (*.f64 (log.f64 y) (*.f64 y y)) (+.f64 y -1/2))) y) z)
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 y) (+.f64 (*.f64 (/.f64 1 (+.f64 y -1/2)) (*.f64 y y)) (*.f64 (/.f64 1 (+.f64 y -1/2)) -1/4)))) y) z)
Outputs
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
Calls

5 calls:

41.0ms
z
18.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
16.0ms
y
15.0ms
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
15.0ms
x
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
0.1b1(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
Compiler

Compiled 295 to 163 computations (44.7% saved)

regimes229.0ms (2.2%)

Counts
18 → 3
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (*.f64 y (+.f64 1 (*.f64 -1 (log.f64 y)))) z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 -1/4 (/.f64 (log.f64 y) (-.f64 y 1/2)))) z)
(-.f64 (*.f64 y (-.f64 1 (*.f64 -1 (log.f64 (/.f64 1 y))))) z)
Outputs
(-.f64 x z)
(-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
Calls

3 calls:

127.0ms
z
74.0ms
x
23.0ms
y
Results
ErrorSegmentsBranch
3.6b3x
4.7b2y
10.7b6z
Compiler

Compiled 141 to 73 computations (48.2% saved)

bsearch71.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
3.912793296078689e-8
5.4316683679789e-8
40.0ms
-3.861263925013277e+64
-1.655212819879148e+58
Compiler

Compiled 21 to 15 computations (28.6% saved)

regimes142.0ms (1.4%)

Counts
13 → 2
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (-.f64 y (*.f64 y (log.f64 y))) z)
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (*.f64 y (log.f64 y))))
(-.f64 (+.f64 (*.f64 (log.f64 y) (neg.f64 y)) y) z)
Outputs
(-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
Calls

3 calls:

63.0ms
z
61.0ms
x
15.0ms
y
Results
ErrorSegmentsBranch
9.1b7x
4.7b2y
10.2b7z
Compiler

Compiled 87 to 41 computations (52.9% saved)

bsearch38.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
38.0ms
4.2753603504532514e+48
8.180991252694581e+48
Compiler

Compiled 21 to 15 computations (28.6% saved)

regimes126.0ms (1.2%)

Counts
8 → 7
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
Outputs
(-.f64 x z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 (*.f64 -1/2 (log.f64 y)) z)
(-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z)
(-.f64 x z)
Calls

3 calls:

49.0ms
z
48.0ms
x
25.0ms
y
Results
ErrorSegmentsBranch
9.7b7x
12.7b2y
18.3b7z
Compiler

Compiled 46 to 25 computations (45.7% saved)

bsearch160.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
2.80374427462309e+131
4.0052219135404625e+158
29.0ms
1.0758549292853214e-98
5.407978894126028e-98
25.0ms
5.919425087556587e-237
8.135627211281429e-225
26.0ms
-5.426900589376521e-148
-3.003199298916145e-148
27.0ms
-1.6195982893198655
-4.976032310892211e-11
27.0ms
-3.861263925013277e+64
-1.655212819879148e+58
Compiler

Compiled 21 to 15 computations (28.6% saved)

regimes38.0ms (0.4%)

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

3 calls:

16.0ms
x
15.0ms
z
5.0ms
y
Results
ErrorSegmentsBranch
16.6b3x
24.5b1y
22.0b3z
Compiler

Compiled 38 to 21 computations (44.7% saved)

bsearch79.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
5.8137304181422335e-5
62240.39309550095
54.0ms
-35252365.590344004
-1957.38926021608
Compiler

Compiled 21 to 15 computations (28.6% saved)

regimes32.0ms (0.3%)

Counts
6 → 1
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
(-.f64 x z)
(+.f64 x (-.f64 y z))
Outputs
(-.f64 x z)
Calls

3 calls:

19.0ms
z
5.0ms
x
5.0ms
y
Results
ErrorSegmentsBranch
24.5b1x
24.5b1y
24.5b1z
Compiler

Compiled 32 to 17 computations (46.9% saved)

regimes216.0ms (2.1%)

Accuracy

Total -33.4b remaining (-114.1%)

Threshold costs -33.4b (-114.1%)

Counts
4 → 3
Calls
Call 1
Inputs
x
(neg.f64 z)
(-.f64 y z)
(+.f64 x y)
Outputs
x
(neg.f64 z)
x
Calls

3 calls:

167.0ms
x
37.0ms
y
11.0ms
z
Results
ErrorSegmentsBranch
29.3b3x
37.6b5y
30.2b3z
Compiler

Compiled 24 to 15 computations (37.5% saved)

bsearch51.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
2.80374427462309e+131
4.0052219135404625e+158
26.0ms
-1.7088609310942196e+70
-1.1868565762861936e+67
Compiler

Compiled 21 to 15 computations (28.6% saved)

simplify21.0ms (0.2%)

Algorithm
egg-herbie
Rules
26×+-commutative_binary64
22×sub-neg_binary64
13×*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071279
1117279
2154279
3173279
4184279
5187279
6188279
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(-.f64 (-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y))) z)
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x 2956423026527847/75557863725914323419136) (-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z) (-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)))
(if (<=.f64 y 4275360350453251448885791020412982355986856542208) (-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z))
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x -7294022252270839/4503599627370496) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x -7812850535411403/14396524142538228424993723224595141948383030778566133225922417832357880258148761185020930195532450742879746914027266864394266451377581759004827248578768524336431104) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (if (<=.f64 x 5424827082724587/916444925391198758541401085877594831703095653509460880942126390473954048171292933099049096506388108013739504295007991042380699544226348054414240833330066547856411977855334787272537640367327320839841280263415847919229777715415602675691481187407177449472) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x 206986536084579/19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (if (<=.f64 x 280374427462308991341011108894728363861674906593972389082505764916447318057549247247224009252092811277218670651370130135433569370112) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (-.f64 x z)))))))
(if (<=.f64 x -4731492416161351/134217728) (-.f64 x z) (if (<=.f64 x 536221985685051/9223372036854775808) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (-.f64 x z)))
(-.f64 x z)
(if (<=.f64 x -17088609310942196143758010250283417594688061019531481730497450061332480) x (if (<=.f64 x 280374427462308991341011108894728363861674906593972389082505764916447318057549247247224009252092811277218670651370130135433569370112) (neg.f64 z) x))
x
Outputs
(-.f64 (-.f64 (+.f64 (*.f64 (-.f64 1 (log.f64 y)) y) x) (*.f64 1/2 (log.f64 y))) z)
(-.f64 (+.f64 (+.f64 x (*.f64 y (-.f64 1 (log.f64 y)))) (*.f64 (log.f64 y) -1/2)) z)
(+.f64 x (-.f64 y (fma.f64 (-.f64 y -1/2) (log.f64 y) z)))
(+.f64 x (-.f64 y (fma.f64 (+.f64 y 1/2) (log.f64 y) z)))
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
(-.f64 (+.f64 y (-.f64 x (*.f64 (log.f64 y) (+.f64 y 1/2)))) z)
(-.f64 (+.f64 y (+.f64 x (*.f64 (log.f64 y) (-.f64 -1/2 y)))) z)
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x 2956423026527847/75557863725914323419136) (-.f64 (-.f64 y (*.f64 (+.f64 1/2 y) (log.f64 y))) z) (-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z)))
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x 2956423026527847/75557863725914323419136) (-.f64 (-.f64 y (*.f64 (log.f64 y) (+.f64 y 1/2))) z) (-.f64 (+.f64 x (*.f64 (log.f64 y) -1/2)) z)))
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x 2956423026527847/75557863725914323419136) (-.f64 (+.f64 y (*.f64 (log.f64 y) (-.f64 -1/2 y))) z) (-.f64 (+.f64 x (*.f64 (log.f64 y) -1/2)) z)))
(if (<=.f64 y 4275360350453251448885791020412982355986856542208) (-.f64 (-.f64 x (*.f64 1/2 (log.f64 y))) z) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z))
(if (<=.f64 y 4275360350453251448885791020412982355986856542208) (-.f64 (+.f64 x (*.f64 (log.f64 y) -1/2)) z) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z))
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x -7294022252270839/4503599627370496) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x -7812850535411403/14396524142538228424993723224595141948383030778566133225922417832357880258148761185020930195532450742879746914027266864394266451377581759004827248578768524336431104) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (if (<=.f64 x 5424827082724587/916444925391198758541401085877594831703095653509460880942126390473954048171292933099049096506388108013739504295007991042380699544226348054414240833330066547856411977855334787272537640367327320839841280263415847919229777715415602675691481187407177449472) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x 206986536084579/19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (if (<=.f64 x 280374427462308991341011108894728363861674906593972389082505764916447318057549247247224009252092811277218670651370130135433569370112) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (-.f64 x z)))))))
(if (<=.f64 x -38612639250132767354647753494306738178821949219886534844129214464) (-.f64 x z) (if (<=.f64 x -7294022252270839/4503599627370496) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x -7812850535411403/14396524142538228424993723224595141948383030778566133225922417832357880258148761185020930195532450742879746914027266864394266451377581759004827248578768524336431104) (-.f64 (*.f64 (log.f64 y) -1/2) z) (if (<=.f64 x 5424827082724587/916444925391198758541401085877594831703095653509460880942126390473954048171292933099049096506388108013739504295007991042380699544226348054414240833330066547856411977855334787272537640367327320839841280263415847919229777715415602675691481187407177449472) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (if (<=.f64 x 206986536084579/19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392) (-.f64 (*.f64 (log.f64 y) -1/2) z) (if (<=.f64 x 280374427462308991341011108894728363861674906593972389082505764916447318057549247247224009252092811277218670651370130135433569370112) (-.f64 (*.f64 y (-.f64 1 (log.f64 y))) z) (-.f64 x z)))))))
(if (<=.f64 x -4731492416161351/134217728) (-.f64 x z) (if (<=.f64 x 536221985685051/9223372036854775808) (-.f64 (*.f64 -1/2 (log.f64 y)) z) (-.f64 x z)))
(if (<=.f64 x -4731492416161351/134217728) (-.f64 x z) (if (<=.f64 x 536221985685051/9223372036854775808) (-.f64 (*.f64 (log.f64 y) -1/2) z) (-.f64 x z)))
(-.f64 x z)
(if (<=.f64 x -17088609310942196143758010250283417594688061019531481730497450061332480) x (if (<=.f64 x 280374427462308991341011108894728363861674906593972389082505764916447318057549247247224009252092811277218670651370130135433569370112) (neg.f64 z) x))
x
Compiler

Compiled 219 to 138 computations (37% saved)

soundness0.0ms (0%)

end96.0ms (0.9%)

Compiler

Compiled 192 to 102 computations (46.9% saved)

Profiling

Loading profile data...