Details

Time bar (total: 12.4s)

analyze248.0ms (2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
12.5%87.4%0.1%5
12.5%71.8%15.7%6
20.3%62.4%17.3%7
21.1%53.1%25.9%8
25.4%47.6%27%9
26%41.2%32.9%10
28.3%38%33.7%11
28.6%35.5%36%12
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample8.9s (71.9%)

Results
4.8s1624×body8192exit
1.8s3230×body1024invalid
1.4s8256×body256valid
473.0ms1645×body512invalid
335.0ms2084×body256invalid
5.0msbody2048invalid
3.0msbody4096invalid
3.0msbody8192invalid

preprocess91.0ms (0.7%)

Algorithm
egg-herbie
Rules
610×sqr-pow_binary64
409×associate-*l*_binary64
402×pow-sqr_binary64
386×associate-/l*_binary64
354×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01326
13126
26722
315722
449522
5215322
6394822
7410522
8433722
9478722
10563322
11719422
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (neg.f64 l)) (pow.f64 w (exp.f64 l)))
Outputs
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 l)) (pow.f64 w (exp.f64 l)))
(/.f64 (pow.f64 w (exp.f64 l)) (exp.f64 l))
Compiler

Compiled 12 to 9 computations (25% saved)

simplify64.0ms (0.5%)

Algorithm
egg-herbie
Rules
956×associate-*l/_binary64
656×unswap-sqr_binary64
607×times-frac_binary64
540×sqr-pow_binary64
391×pow-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
23811
38511
426011
5110511
6405511
7415411
8427811
9451511
10495811
11577111
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Outputs
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

eval1.0ms (0%)

Compiler

Compiled 17 to 8 computations (52.9% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.3b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Compiler

Compiled 19 to 12 computations (36.8% saved)

localize6.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 l (exp.f64 w))
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
0.3b
(pow.f64 l (exp.f64 w))

series76.0ms (0.6%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
26.0ms
l
@0
(pow.f64 l (exp.f64 w))
20.0ms
l
@-inf
(pow.f64 l (exp.f64 w))
12.0ms
w
@inf
(pow.f64 l (exp.f64 w))
8.0ms
l
@inf
(pow.f64 l (exp.f64 w))
3.0ms
w
@inf
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))

rewrite48.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
604×pow1_binary64
557×add-log-exp_binary64
555×log1p-expm1-u_binary64
555×expm1-log1p-u_binary64
542×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0819
115917
2200117
Stop Event
node limit
Counts
2 → 27
Calls
Call 1
Inputs
(pow.f64 l (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (exp.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (pow.f64 (sqrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 l (*.f64 2 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 w (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))))

simplify42.0ms (0.3%)

Algorithm
egg-herbie
Rules
492×fma-def_binary64
434×distribute-rgt-out_binary64
431×distribute-lft-out_binary64
425×+-commutative_binary64
295×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079631
1232613
2769552
33845544
Stop Event
node limit
Counts
67 → 49
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
l
(+.f64 l (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 -1/6 l)))) (pow.f64 w 3)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
Outputs
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (*.f64 l (*.f64 (log.f64 l) w)))
(fma.f64 l (*.f64 (log.f64 l) w) l)
(*.f64 l (fma.f64 (log.f64 l) w 1))
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 (log.f64 l) w))))
(fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 (log.f64 l) w)) l)
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) (*.f64 w (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))))) l)
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 (log.f64 l) w)))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 (log.f64 l) w)) l))
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) (*.f64 w (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))))) (fma.f64 (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) (*.f64 l (pow.f64 w 3)) l))
(fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
l
(+.f64 l (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))
(+.f64 l (*.f64 w (fma.f64 -1 l (*.f64 l (log.f64 l)))))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w)))
(+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l)))) (*.f64 w w) (*.f64 w (fma.f64 -1 l (*.f64 l (log.f64 l))))))
(+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 w (*.f64 w (-.f64 (*.f64 l (+.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) 1/2)) (*.f64 l (log.f64 l)))))))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) 1/2) (log.f64 l)))) l))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) 1/2) (log.f64 l)))) l))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 -1/6 l)))) (pow.f64 w 3)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))))
(fma.f64 (fma.f64 1/2 (*.f64 l (log.f64 l)) (fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l (fma.f64 -1 (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 l -1/6)))) (pow.f64 w 3) (+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l)))) (*.f64 w w) (*.f64 w (fma.f64 -1 l (*.f64 l (log.f64 l)))))))
(+.f64 (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 w (*.f64 w (-.f64 (*.f64 l (+.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) 1/2)) (*.f64 l (log.f64 l)))))) (fma.f64 (pow.f64 w 3) (fma.f64 1/2 (*.f64 l (log.f64 l)) (fma.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (-.f64 (*.f64 l -1/6) (*.f64 (*.f64 l 1/2) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) l))
(fma.f64 (pow.f64 w 3) (fma.f64 l (*.f64 (log.f64 l) 1/2) (fma.f64 l (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) (*.f64 l (-.f64 -1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) 1/2) (log.f64 l)))) l)))
(fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) -1/6)) (*.f64 (*.f64 l 1/2) (-.f64 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) (log.f64 l)))) (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) 1/2) (log.f64 l)))) l)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

localize5.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 l (exp.f64 w))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.3b
(pow.f64 l (exp.f64 w))

series4.0ms (0%)

Counts
1 → 16
Calls

6 calls:

TimeVariablePointExpression
1.0ms
w
@0
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.0ms
l
@0
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.0ms
l
@-inf
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.0ms
l
@inf
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.0ms
w
@inf
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

rewrite41.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
656×pow1_binary64
607×add-log-exp_binary64
607×log1p-expm1-u_binary64
607×expm1-log1p-u_binary64
591×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0611
112511
2163811
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))) (*.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (*.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))) 1) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) 1) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))

simplify51.0ms (0.4%)

Algorithm
egg-herbie
Rules
713×cancel-sign-sub-inv_binary64
509×+-commutative_binary64
481×fma-neg_binary64
324×associate-+l-_binary64
323×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
063330
1187322
2596312
33118294
47930294
Stop Event
node limit
Counts
47 → 42
Calls
Call 1
Inputs
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
Outputs
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 1/2)) (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (-.f64 (*.f64 l (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)) (*.f64 (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (+.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 1/6 l (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2)))) (pow.f64 w 3)))))
(+.f64 (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) (*.f64 (log.f64 l) 1/6)))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2) (*.f64 7/6 l)))) (pow.f64 w 3))) (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 1/2)) (+.f64 (log.f64 l) 1/2))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)))) (fma.f64 7/6 l (*.f64 1/2 (+.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (pow.f64 w 3) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)) (*.f64 (log.f64 l) (*.f64 l 1/2)))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (-.f64 (*.f64 l (-.f64 (+.f64 (*.f64 (+.f64 1 (pow.f64 (log.f64 l) 2)) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))) (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) -1/2)) 1/6)) (*.f64 l (-.f64 1/2 (*.f64 (log.f64 l) 1/2)))) (pow.f64 w 3) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)) (*.f64 (log.f64 l) (*.f64 l 1/2)))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (-.f64 (*.f64 l (-.f64 (+.f64 (*.f64 (+.f64 1 (pow.f64 (log.f64 l) 2)) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))) (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) -1/2)) 1/6)) (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) -1/2)) (pow.f64 w 3) l)))

eval33.0ms (0.3%)

Compiler

Compiled 1923 to 750 computations (61% saved)

prune30.0ms (0.2%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New10116117
Fresh000
Picked011
Done101
Total10217119
Error
0.1b
Counts
119 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
4.6b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
2.1b
(*.f64 (exp.f64 (neg.f64 w)) l)
1.6b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
7.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l) (exp.f64 w))
4.6b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
14.9b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
0.3b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))
8.8b
(/.f64 (fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)) (exp.f64 w))
2.7b
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
14.9b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
15.1b
l
1.3b
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))) (exp.f64 w))
0.7b
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
2.1b
(/.f64 l (exp.f64 w))
Compiler

Compiled 446 to 279 computations (37.4% saved)

localize9.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
0.0b
(/.f64 1 (sqrt.f64 (exp.f64 w)))
0.0b
(sqrt.f64 (exp.f64 w))
0.0b
(/.f64 1 (sqrt.f64 (exp.f64 w)))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
0.0b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))
0.3b
(pow.f64 l (exp.f64 w))

series8.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
w
@inf
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
1.0ms
l
@0
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
1.0ms
w
@0
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
1.0ms
w
@-inf
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
1.0ms
l
@-inf
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))

rewrite64.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
504×log-prod_binary64
379×exp-prod_binary64
309×pow-prod-down_binary64
288×pow-unpow_binary64
249×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01032
120630
2265430
Stop Event
node limit
Counts
3 → 166
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))
(/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))
(/.f64 1 (sqrt.f64 (exp.f64 w)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (sqrt.f64 (exp.f64 w)) (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (exp.f64 w)) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 w) -1/2) (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (/.f64 (exp.f64 w) (cbrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (pow.f64 l (*.f64 2 (exp.f64 w))) (exp.f64 w))) (/.f64 (sqrt.f64 (exp.f64 w)) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) (/.f64 (sqrt.f64 (exp.f64 w)) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 (sqrt.f64 (exp.f64 w))) (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))) (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (neg.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (*.f64 (neg.f64 (sqrt.f64 (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (*.f64 (sqrt.f64 (exp.f64 w)) (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (/.f64 (exp.f64 w) (pow.f64 (sqrt.f64 l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) 1) (*.f64 (neg.f64 (sqrt.f64 (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 (pow.f64 l (exp.f64 w)))) (pow.f64 (neg.f64 (sqrt.f64 (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 l (exp.f64 w)) -1) (*.f64 (sqrt.f64 (exp.f64 w)) (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1) (pow.f64 (neg.f64 (sqrt.f64 (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 l (exp.f64 w)) 1) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 w) 1/4)) (pow.f64 (exp.f64 w) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (pow.f64 (exp.f64 w) 2))) (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 1) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) (cbrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 w) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (exp.f64 w) -1/2)) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (neg.f64 (pow.f64 l (exp.f64 w)))) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) -1) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (*.f64 (exp.f64 w) 3)) (pow.f64 (exp.f64 w) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 3) (pow.f64 (exp.f64 w) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (exp.f64 w)) (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 2)) (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))) (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 l (*.f64 (exp.f64 w) 3)) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 3) (pow.f64 (exp.f64 w) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (*.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (exp.f64 w) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) (cbrt.f64 (/.f64 (pow.f64 l (*.f64 2 (exp.f64 w))) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (*.f64 2 (exp.f64 w))) (exp.f64 w))) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (neg.f64 w))) (*.f64 (pow.f64 (exp.f64 w) -1/6) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/4) (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/4) (*.f64 (pow.f64 (exp.f64 w) -1/4) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (*.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) 1) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) 1) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (cbrt.f64 (exp.f64 w))) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (pow.f64 (exp.f64 w) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (pow.f64 (exp.f64 w) 1/4)) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (exp.f64 w) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/4) (cbrt.f64 (pow.f64 l (exp.f64 w)))) 2) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 (sqrt.f64 l) (exp.f64 w))) (pow.f64 (sqrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 (neg.f64 w)))) (pow.f64 (exp.f64 w) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/4)) (pow.f64 (exp.f64 w) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (*.f64 2 (exp.f64 w))) (exp.f64 w)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (*.f64 (exp.f64 w) 3)) (pow.f64 (exp.f64 w) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/6) (cbrt.f64 (pow.f64 l (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2)) (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))) (sqrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 l (*.f64 2 (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 l (*.f64 (exp.f64 w) 3)) (pow.f64 (exp.f64 w) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (*.f64 1/2 w) (*.f64 (exp.f64 w) (log.f64 l))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 w) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 w) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 w) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 w) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (exp.f64 w) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/6) (cbrt.f64 (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (neg.f64 w))) (pow.f64 (exp.f64 w) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/4) (pow.f64 (exp.f64 w) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 w) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 w) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 w)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 -1/2 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 w -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 3/2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (neg.f64 w)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) -3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 2) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 3) -1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 1/6) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) -1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 w)) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 1/4) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) -1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 w)) (*.f64 (sqrt.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 w) 2)) (*.f64 (cbrt.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -1) (*.f64 1/2 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 w)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 w)) 2)) (cbrt.f64 (*.f64 -1/2 w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 w))) (sqrt.f64 (*.f64 -1/2 w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 w) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (exp.f64 w) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 w) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 w) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/2 w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 w) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 w -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (*.f64 -1/2 w)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 -1/2 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (*.f64 1/4 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 w 1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/2 w) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/2 w) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/2 w) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 w) -1/2)))))))

simplify62.0ms (0.5%)

Algorithm
egg-herbie
Rules
699×cancel-sign-sub-inv_binary64
654×fma-def_binary64
481×fma-neg_binary64
444×distribute-rgt-out_binary64
414×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01031004
1300987
21012965
35539943
Stop Event
node limit
Counts
226 → 195
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
l
(+.f64 l (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 -1/2 (*.f64 l (log.f64 l))) (*.f64 1/8 l))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w)))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 -1/2 (*.f64 l (log.f64 l))) (*.f64 1/8 l))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/48 l) (+.f64 (*.f64 1/8 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 -1/2 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))))) (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
1
(+.f64 1 (*.f64 -1/2 w))
(+.f64 (*.f64 1/8 (pow.f64 w 2)) (+.f64 1 (*.f64 -1/2 w)))
(+.f64 (*.f64 1/8 (pow.f64 w 2)) (+.f64 1 (+.f64 (*.f64 -1/48 (pow.f64 w 3)) (*.f64 -1/2 w))))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
Outputs
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (+.f64 l (*.f64 l (-.f64 (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) 1)) (log.f64 l)) (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (-.f64 (*.f64 l 1/2) (*.f64 l (*.f64 (log.f64 l) (-.f64 1 (*.f64 1/2 (+.f64 (log.f64 l) 1)))))) (*.f64 w w) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (+.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 1/6 l (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2)))) (pow.f64 w 3)))))
(+.f64 (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2) (*.f64 7/6 l)))) (pow.f64 w 3))) (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) 1)) (log.f64 l)) (+.f64 (log.f64 l) 1/2))))) (fma.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)))) (fma.f64 7/6 l (*.f64 1/2 (+.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 l (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (pow.f64 w 3) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l 1/2) (*.f64 l (*.f64 (log.f64 l) (-.f64 1 (*.f64 1/2 (+.f64 (log.f64 l) 1))))))) (fma.f64 (fma.f64 l (*.f64 (+.f64 (pow.f64 (log.f64 l) 2) 1) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))) (-.f64 (*.f64 l (*.f64 (log.f64 l) (-.f64 1 (*.f64 1/2 (+.f64 (log.f64 l) 1))))) (+.f64 (*.f64 l (*.f64 (log.f64 l) 1/2)) (*.f64 l 2/3)))) (pow.f64 w 3) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
l
(+.f64 l (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w))
(+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (*.f64 l -1/2))))
(fma.f64 w (*.f64 l (+.f64 -1/2 (log.f64 l))) l)
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1/2)) l)
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 -1/2 (*.f64 l (log.f64 l))) (*.f64 1/8 l))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w)))
(+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 -1/2 (*.f64 l (log.f64 l)) (*.f64 l 1/8))) (*.f64 w w) (*.f64 w (fma.f64 l (log.f64 l) (*.f64 l -1/2)))))
(+.f64 (*.f64 (*.f64 w w) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 (*.f64 l (log.f64 l)) -1/2 (*.f64 l 1/8)))) (fma.f64 w (*.f64 l (+.f64 -1/2 (log.f64 l))) l))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1/2)) (fma.f64 w (*.f64 w (fma.f64 l (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) 1)) (log.f64 l)) (*.f64 l (+.f64 (*.f64 (log.f64 l) -1/2) 1/8)))) l))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1/2)) (fma.f64 w (*.f64 w (fma.f64 l 1/8 (*.f64 l (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (+.f64 (log.f64 l) 1))))))) l))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 -1/2 (*.f64 l (log.f64 l))) (*.f64 1/8 l))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/48 l) (+.f64 (*.f64 1/8 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 -1/2 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))))) (*.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 -1/2 l)) w))))
(+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 -1/2 (*.f64 l (log.f64 l)) (*.f64 l 1/8))) (*.f64 w w) (fma.f64 (pow.f64 w 3) (fma.f64 -1/48 l (fma.f64 1/8 (*.f64 l (log.f64 l)) (fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l (*.f64 (*.f64 l -1/2) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (*.f64 w (fma.f64 l (log.f64 l) (*.f64 l -1/2))))))
(+.f64 l (fma.f64 (*.f64 w w) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 (*.f64 l (log.f64 l)) -1/2 (*.f64 l 1/8))) (fma.f64 w (*.f64 l (+.f64 -1/2 (log.f64 l))) (*.f64 (pow.f64 w 3) (fma.f64 l -1/48 (fma.f64 (*.f64 l (log.f64 l)) 1/8 (fma.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 (*.f64 (*.f64 l -1/2) 1/2) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))))))
(+.f64 l (fma.f64 (pow.f64 w 3) (fma.f64 l (*.f64 (log.f64 l) 1/8) (fma.f64 l -1/48 (*.f64 l (+.f64 (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) -1/4))))) (*.f64 w (+.f64 (*.f64 l (+.f64 (log.f64 l) -1/2)) (*.f64 w (fma.f64 l (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) 1)) (log.f64 l)) (*.f64 l (+.f64 (*.f64 (log.f64 l) -1/2) 1/8))))))))
(+.f64 l (fma.f64 (pow.f64 w 3) (fma.f64 l -1/48 (fma.f64 l (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) (*.f64 (log.f64 l) (+.f64 (*.f64 l 1/8) (*.f64 (*.f64 l -1/4) (+.f64 (log.f64 l) 1)))))) (*.f64 w (+.f64 (*.f64 l (+.f64 (log.f64 l) -1/2)) (*.f64 w (fma.f64 l 1/8 (*.f64 l (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (+.f64 (log.f64 l) 1)))))))))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 (neg.f64 w))))
1
(+.f64 1 (*.f64 -1/2 w))
(+.f64 1 (*.f64 w -1/2))
(fma.f64 w -1/2 1)
(+.f64 (*.f64 1/8 (pow.f64 w 2)) (+.f64 1 (*.f64 -1/2 w)))
(fma.f64 1/8 (*.f64 w w) (+.f64 1 (*.f64 w -1/2)))
(fma.f64 (*.f64 w w) 1/8 (fma.f64 w -1/2 1))
(fma.f64 w -1/2 (fma.f64 w (*.f64 w 1/8) 1))
(+.f64 (*.f64 1/8 (pow.f64 w 2)) (+.f64 1 (+.f64 (*.f64 -1/48 (pow.f64 w 3)) (*.f64 -1/2 w))))
(fma.f64 1/8 (*.f64 w w) (+.f64 1 (fma.f64 -1/48 (pow.f64 w 3) (*.f64 w -1/2))))
(+.f64 (fma.f64 (*.f64 w w) 1/8 (fma.f64 w -1/2 1)) (*.f64 (pow.f64 w 3) -1/48))
(fma.f64 w (*.f64 w 1/8) (fma.f64 w -1/2 (fma.f64 (pow.f64 w 3) -1/48 1)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))
(sqrt.f64 (/.f64 1 (exp.f64 w)))
(sqrt.f64 (exp.f64 (neg.f64 w)))

localize3.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 l (exp.f64 w))
0.0b
(/.f64 l (exp.f64 w))

series6.0ms (0%)

Counts
1 → 4
Calls

6 calls:

TimeVariablePointExpression
3.0ms
l
@inf
(/.f64 l (exp.f64 w))
1.0ms
l
@0
(/.f64 l (exp.f64 w))
1.0ms
l
@-inf
(/.f64 l (exp.f64 w))
1.0ms
w
@inf
(/.f64 l (exp.f64 w))
1.0ms
w
@-inf
(/.f64 l (exp.f64 w))

rewrite38.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
528×pow1_binary64
504×add-sqr-sqrt_binary64
487×add-log-exp_binary64
487×log1p-expm1-u_binary64
487×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11006
213056
Stop Event
node limit
Counts
1 → 30
Calls
Call 1
Inputs
(/.f64 l (exp.f64 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 l (exp.f64 w))) 2) (cbrt.f64 (/.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 l (exp.f64 w))) (sqrt.f64 (/.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 l) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) 1) (/.f64 (cbrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) 1) (/.f64 (sqrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 l (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (/.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 l) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 l (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 l) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 l (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 l (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) l) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 l (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 l (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 l (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 l (exp.f64 w))))))))

simplify49.0ms (0.4%)

Algorithm
egg-herbie
Rules
641×unsub-neg_binary64
408×distribute-neg-in_binary64
407×associate--r+_binary64
383×associate-+l-_binary64
347×associate--l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03173
110558
241453
3242249
4688249
Stop Event
node limit
Counts
34 → 37
Calls
Call 1
Inputs
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 l (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 1/2 l)) (pow.f64 w 2)))))
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 1/2 l)) (pow.f64 w 2))) (*.f64 -1 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 l) (*.f64 1/2 l))) (+.f64 (*.f64 1/6 l) (*.f64 -1/2 l))))))))
Outputs
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(fma.f64 -1 (*.f64 l w) l)
(-.f64 l (*.f64 l w))
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 l (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 1/2 l)) (pow.f64 w 2)))))
(+.f64 (fma.f64 -1 (*.f64 l w) l) (*.f64 (neg.f64 (*.f64 l -1/2)) (*.f64 w w)))
(-.f64 (fma.f64 (*.f64 l 1/2) (*.f64 w w) l) (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 1/2 l)) (pow.f64 w 2))) (*.f64 -1 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 l) (*.f64 1/2 l))) (+.f64 (*.f64 1/6 l) (*.f64 -1/2 l))))))))
(+.f64 (fma.f64 -1 (*.f64 l w) l) (fma.f64 -1 (*.f64 (*.f64 l -1/2) (*.f64 w w)) (neg.f64 (*.f64 (pow.f64 w 3) (fma.f64 -1 (*.f64 l -1/2) (*.f64 l -1/3))))))
(-.f64 (-.f64 (fma.f64 (*.f64 l 1/2) (*.f64 w w) l) (*.f64 (pow.f64 w 3) (fma.f64 l -1/3 (*.f64 l 1/2)))) (*.f64 l w))
(-.f64 (-.f64 l (*.f64 (*.f64 w w) (+.f64 (*.f64 l -1/2) (*.f64 w (*.f64 l 1/6))))) (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.3b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)

series32.0ms (0.3%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
19.0ms
l
@-inf
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
10.0ms
l
@0
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
1.0ms
l
@inf
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
1.0ms
w
@0
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
0.0ms
w
@-inf
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)

rewrite49.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
893×pow1_binary64
826×add-log-exp_binary64
826×log1p-expm1-u_binary64
826×expm1-log1p-u_binary64
809×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0822
116822
2221422
Stop Event
node limit
Counts
2 → 45
Calls
Call 1
Inputs
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(*.f64 l (+.f64 (log.f64 l) -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 l (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) (pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2) (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) 3) (pow.f64 l 3)) (+.f64 (*.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))) (-.f64 (*.f64 l l) (*.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))) (*.f64 l l)) (-.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 l (log.f64 l)) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 l) (*.f64 l (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 l (log.f64 l)) 1) (*.f64 (neg.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 l (+.f64 (log.f64 l) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 l (log.f64 l)) 3) (pow.f64 (neg.f64 l) 3)) (+.f64 (*.f64 (*.f64 l (log.f64 l)) (*.f64 l (log.f64 l))) (-.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 (*.f64 l (log.f64 l)) (neg.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 l (log.f64 l)) (*.f64 l (log.f64 l))) (*.f64 (neg.f64 l) (neg.f64 l))) (-.f64 (*.f64 l (log.f64 l)) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 (log.f64 l) 3)) l) (+.f64 (pow.f64 (log.f64 l) 2) (-.f64 1 (*.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (log.f64 l) 2) -1) l) (+.f64 (log.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (+.f64 -1 (pow.f64 (log.f64 l) 3))) (+.f64 (pow.f64 (log.f64 l) 2) (-.f64 1 (*.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (+.f64 (pow.f64 (log.f64 l) 2) -1)) (+.f64 (log.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (+.f64 (log.f64 l) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (+.f64 (log.f64 l) -1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (+.f64 (log.f64 l) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (*.f64 l (exp.f64 -1)) l))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (+.f64 (log.f64 l) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 l 3) (pow.f64 (+.f64 (log.f64 l) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (+.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (+.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (log.f64 l) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) l (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (+.f64 (log.f64 l) -1))))))))

simplify112.0ms (0.9%)

Algorithm
egg-herbie
Rules
769×unsub-neg_binary64
499×associate--r-_binary64
401×associate--l+_binary64
391×associate-+l-_binary64
343×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
034448
183406
2214406
3817406
42763406
54510406
65033406
75218406
85309406
95346406
105354406
117232406
127654406
137996406
Stop Event
node limit
Counts
81 → 57
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
Outputs
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (*.f64 (-.f64 (log.f64 l) 1) w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (*.f64 (-.f64 (log.f64 l) 1) w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(fma.f64 (-.f64 (log.f64 l) 1) (*.f64 l w) l)
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (-.f64 (log.f64 l) 1))
(-.f64 (*.f64 l (log.f64 l)) l)

localize11.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
4.6b
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
0.0b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
4.6b
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))

series7.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
l
@-inf
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
0.0ms
l
@-inf
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
0.0ms
l
@inf
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
0.0ms
l
@0
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
0.0ms
w
@0
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))

rewrite53.0ms (0.4%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0831
115625
2199925
Stop Event
node limit
Counts
3 → 70
Calls
Call 1
Inputs
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
(*.f64 (exp.f64 w) (log.f64 l))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (pow.f64 l (exp.f64 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (log.f64 l))) 2)) (cbrt.f64 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 (exp.f64 w) (log.f64 l)))) (sqrt.f64 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (exp.f64 w)) (pow.f64 (cbrt.f64 (log.f64 l)) 2)) (cbrt.f64 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (exp.f64 w)) (sqrt.f64 (log.f64 l))) (sqrt.f64 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (*.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (*.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) 1) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) 1) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (log.f64 (cbrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 l (exp.f64 w)))) (log.f64 (sqrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (exp.f64 w) (log.f64 l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (log.f64 l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (log.f64 l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) 3) (pow.f64 (log.f64 l) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 l) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 l (exp.f64 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 w (log.f64 (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 w) (log.f64 l))))))))

simplify49.0ms (0.4%)

Algorithm
egg-herbie
Rules
713×cancel-sign-sub-inv_binary64
594×fma-def_binary64
481×fma-neg_binary64
465×distribute-rgt-out_binary64
354×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082878
1257854
2896833
34566816
Stop Event
node limit
Counts
142 → 100
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(log.f64 l)
(+.f64 (*.f64 w (log.f64 l)) (log.f64 l))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (+.f64 (*.f64 w (log.f64 l)) (log.f64 l)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (log.f64 l))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (+.f64 (*.f64 w (log.f64 l)) (log.f64 l))))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
Outputs
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (*.f64 (*.f64 l w) (log.f64 l)))
(fma.f64 l (*.f64 w (log.f64 l)) l)
(*.f64 l (fma.f64 w (log.f64 l) 1))
(fma.f64 w (*.f64 l (log.f64 l)) l)
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 w (log.f64 l)))))
(fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 w (log.f64 l))) l)
(fma.f64 l (*.f64 w (+.f64 (*.f64 w (*.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)))) (log.f64 l))) l)
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) l)
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 w (log.f64 l))))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 w (log.f64 l))) l))
(fma.f64 l (*.f64 (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) (pow.f64 w 3)) (fma.f64 l (*.f64 w (+.f64 (*.f64 w (*.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)))) (log.f64 l))) l))
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) (fma.f64 l (*.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (pow.f64 w 3)) l))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 l))))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)))))
(fma.f64 (*.f64 w w) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l))
(fma.f64 (*.f64 w w) (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l))) (+.f64 (log.f64 l) 1/2)))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (*.f64 w w) (-.f64 (*.f64 l 1/2) (*.f64 l (*.f64 (log.f64 l) (-.f64 1 (*.f64 1/2 (+.f64 (log.f64 l) 1)))))) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 (pow.f64 w 3) (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 l (fma.f64 1/6 l (*.f64 1/2 (fma.f64 l (log.f64 l) (neg.f64 l)))))))))))
(+.f64 (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 1/2 (fma.f64 l (log.f64 l) (neg.f64 l))) (*.f64 7/6 l)))))) (fma.f64 (*.f64 w w) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) l))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l))) (+.f64 (log.f64 l) 1/2))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)))) (fma.f64 7/6 l (*.f64 1/2 (+.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l))))))) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l 1/2) (*.f64 l (*.f64 (log.f64 l) (-.f64 1 (*.f64 1/2 (+.f64 (log.f64 l) 1))))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (pow.f64 w 3) (+.f64 (*.f64 l (-.f64 (+.f64 (log.f64 l) (*.f64 (+.f64 (pow.f64 (log.f64 l) 2) 1) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))) 7/6)) (*.f64 -1/2 (*.f64 l (+.f64 (+.f64 (log.f64 l) -1) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) l)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(log.f64 l)
(+.f64 (*.f64 w (log.f64 l)) (log.f64 l))
(*.f64 (+.f64 w 1) (log.f64 l))
(*.f64 (log.f64 l) (+.f64 w 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (+.f64 (*.f64 w (log.f64 l)) (log.f64 l)))
(fma.f64 1/2 (*.f64 (log.f64 l) (*.f64 w w)) (*.f64 (+.f64 w 1) (log.f64 l)))
(*.f64 (log.f64 l) (+.f64 (+.f64 w 1) (*.f64 (*.f64 w w) 1/2)))
(*.f64 (log.f64 l) (+.f64 1 (fma.f64 (*.f64 w w) 1/2 w)))
(fma.f64 (log.f64 l) (fma.f64 (*.f64 w w) 1/2 w) (log.f64 l))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (log.f64 l))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (+.f64 (*.f64 w (log.f64 l)) (log.f64 l))))
(fma.f64 1/6 (*.f64 (log.f64 l) (pow.f64 w 3)) (fma.f64 1/2 (*.f64 (log.f64 l) (*.f64 w w)) (*.f64 (+.f64 w 1) (log.f64 l))))
(fma.f64 1/6 (*.f64 (log.f64 l) (pow.f64 w 3)) (*.f64 (log.f64 l) (+.f64 (+.f64 w 1) (*.f64 (*.f64 w w) 1/2))))
(*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w w) (+.f64 (*.f64 w 1/6) 1/2)) (+.f64 w 1)))
(*.f64 (log.f64 l) (+.f64 (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (+.f64 w 1)))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))
(*.f64 (log.f64 l) (exp.f64 w))

localize7.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
2.6b
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.3b
(pow.f64 l (exp.f64 w))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.3b
(pow.f64 l (exp.f64 w))
2.6b
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
l
@0
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.0ms
w
@0
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.0ms
l
@-inf
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.0ms
l
@inf
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
0.0ms
w
@-inf
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))

rewrite45.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
737×pow1_binary64
682×expm1-log1p-u_binary64
681×add-log-exp_binary64
681×log1p-expm1-u_binary64
663×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify34.0ms (0.3%)

Algorithm
egg-herbie
Rules
713×cancel-sign-sub-inv_binary64
510×+-commutative_binary64
481×fma-neg_binary64
331×*-commutative_binary64
324×associate-+l-_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
065418
1191410
2609400
33140382
Stop Event
node limit
Counts
68 → 54
Calls
Call 1
Inputs
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
Outputs
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2))) (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)) (*.f64 (log.f64 l) (*.f64 l 1/2)))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (+.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 1/6 l (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2)))) (pow.f64 w 3)))))
(+.f64 (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)) (*.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2) (*.f64 7/6 l)))) (pow.f64 w 3)))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2))) (+.f64 (log.f64 l) 1/2))))) (fma.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)))) (fma.f64 7/6 l (*.f64 1/2 (+.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l))))))) (pow.f64 w 3) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2)) (*.f64 (log.f64 l) (*.f64 l 1/2)))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (-.f64 (*.f64 l (-.f64 (+.f64 (*.f64 (+.f64 1 (pow.f64 (log.f64 l) 2)) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))) (*.f64 (fma.f64 (log.f64 l) (log.f64 l) (log.f64 l)) -1/2)) 1/6)) (*.f64 l (-.f64 1/2 (*.f64 (log.f64 l) 1/2)))) (pow.f64 w 3) l)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

eval126.0ms (1%)

Compiler

Compiled 8926 to 3500 computations (60.8% saved)

prune100.0ms (0.8%)

Pruning

30 alts after pruning (27 fresh and 3 done)

PrunedKeptTotal
New51324537
Fresh8311
Picked101
Done235
Total52430554
Error
0.1b
Counts
554 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
5.1b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (+.f64 w 1)))) (exp.f64 w))
61.2b
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
4.6b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
15.1b
l
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
4.8b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1/2)) (fma.f64 w (*.f64 w (fma.f64 l 1/8 (*.f64 l (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (+.f64 (log.f64 l) 1))))))) l)))
1.3b
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))) (exp.f64 w))
6.5b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2)) (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))
4.9b
(/.f64 (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)) (exp.f64 w))
8.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) (fma.f64 l (*.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (pow.f64 w 3)) l)) (exp.f64 w))
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
7.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) l) (exp.f64 w))
14.9b
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
15.4b
(-.f64 l (*.f64 l w))
0.7b
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
1.6b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
15.8b
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
4.6b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
15.9b
(pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
4.9b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
5.1b
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 3))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
14.6b
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
2.1b
(/.f64 l (exp.f64 w))
38.7b
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))) (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
6.5b
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 2)) (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
4.9b
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
Compiler

Compiled 913 to 586 computations (35.8% saved)

localize5.0ms (0%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 l (exp.f64 w))
0.1b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
0.0b
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
0.0b
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
0.1b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
0.3b
(pow.f64 l (exp.f64 w))

series6.0ms (0%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
1.0ms
w
@0
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
1.0ms
l
@-inf
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
1.0ms
l
@inf
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
1.0ms
w
@inf
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
1.0ms
w
@-inf
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))

rewrite52.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
811×pow1_binary64
750×add-log-exp_binary64
749×log1p-expm1-u_binary64
749×expm1-log1p-u_binary64
730×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0825
116622
2212022
Stop Event
node limit
Counts
2 → 67
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (neg.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (pow.f64 (pow.f64 l (neg.f64 (exp.f64 w))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1) (pow.f64 (sqrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) 1) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) 1) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (exp.f64 w))) (neg.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (neg.f64 w)) 1) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (neg.f64 w)) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (neg.f64 w)) (sqrt.f64 (pow.f64 l (exp.f64 w)))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 w) (pow.f64 l (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2) (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) (*.f64 (cbrt.f64 (exp.f64 w)) (pow.f64 l (neg.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) (sqrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 w)) (*.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (neg.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 w)) (/.f64 1 (neg.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) 1) (/.f64 (cbrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (exp.f64 w)) 1) (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (/.f64 (exp.f64 w) (cbrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (/.f64 (sqrt.f64 (exp.f64 w)) (cbrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (pow.f64 l (exp.f64 w)))) (/.f64 (exp.f64 w) (sqrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) (sqrt.f64 (pow.f64 l (exp.f64 w)))) (/.f64 (cbrt.f64 (exp.f64 w)) (sqrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (exp.f64 w) (neg.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (exp.f64 w) 3) (pow.f64 (pow.f64 l (exp.f64 w)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))))

simplify47.0ms (0.4%)

Algorithm
egg-herbie
Rules
678×fma-neg_binary64
515×fma-def_binary64
453×sub-neg_binary64
365×associate-+l+_binary64
344×distribute-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
098833
1305825
21027801
35322799
Stop Event
node limit
Counts
107 → 89
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 1 l)
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l))
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (pow.f64 w 2)) (/.f64 1 l)))
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (*.f64 1/6 (/.f64 1 l)) (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 1/6 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (log.f64 l)))))))) (/.f64 1 l))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
Outputs
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (log.f64 l) 1/2))))) l))
(fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) (fma.f64 w (*.f64 w (fma.f64 l (-.f64 (fma.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) 1) (log.f64 l)) (*.f64 l -1/2))) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (+.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 1/6 l (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2)))) (pow.f64 w 3)))))
(+.f64 (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)) (*.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2) (*.f64 7/6 l)))) (pow.f64 w 3)))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (log.f64 l) 1/2))))) (fma.f64 (-.f64 (*.f64 l (-.f64 (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2))) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))) (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2 (*.f64 l 7/6))) (pow.f64 w 3) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)))
(fma.f64 w (*.f64 w (fma.f64 l (-.f64 (fma.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) 1) (log.f64 l)) (*.f64 l -1/2))) (fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) (fma.f64 (+.f64 (fma.f64 l (+.f64 (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2))) (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) -1/2)) (*.f64 l -7/6)) (*.f64 (*.f64 l (+.f64 -1 (log.f64 l))) -1/2)) (pow.f64 w 3) l)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 l)
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l))
(fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w (/.f64 1 l))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l))
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (pow.f64 w 2)) (/.f64 1 l)))
(fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w (fma.f64 (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (*.f64 w w) (/.f64 1 l)))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (*.f64 w w) (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (/.f64 1 l)))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (*.f64 w w) (-.f64 (/.f64 1/2 l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 (/.f64 1/2 l) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))) (/.f64 1 l)))
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (*.f64 1/6 (/.f64 1 l)) (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 1/6 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (log.f64 l)))))))) (/.f64 1 l))))
(fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w (fma.f64 (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (*.f64 w w) (fma.f64 (pow.f64 w 3) (-.f64 (/.f64 1/6 l) (fma.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (fma.f64 1/6 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 (log.f64 l) (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (log.f64 l) (*.f64 1/2 (/.f64 (log.f64 l) l))))))))))) (/.f64 1 l))))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (*.f64 w w) (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (fma.f64 (pow.f64 w 3) (-.f64 (/.f64 1/6 l) (fma.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (fma.f64 1/6 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (*.f64 1/2 (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))))) (/.f64 1 l))))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 w (*.f64 w (-.f64 (/.f64 1/2 l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 (/.f64 1/2 l) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) (fma.f64 (pow.f64 w 3) (-.f64 (/.f64 1/6 l) (fma.f64 1/6 (+.f64 (/.f64 (log.f64 l) l) (/.f64 (pow.f64 (log.f64 l) 3) l)) (fma.f64 (log.f64 l) (-.f64 (/.f64 1/2 l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 (/.f64 1/2 l) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))) (*.f64 1/2 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (/.f64 (pow.f64 (log.f64 l) 2) l)))))) (/.f64 1 l))))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 w (*.f64 w (-.f64 (/.f64 1/2 l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 (/.f64 1/2 l) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) (fma.f64 (pow.f64 w 3) (-.f64 (/.f64 1/6 l) (fma.f64 1/6 (+.f64 (/.f64 (log.f64 l) l) (/.f64 (pow.f64 (log.f64 l) 3) l)) (fma.f64 (log.f64 l) (-.f64 (/.f64 1/2 l) (fma.f64 (log.f64 l) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 (/.f64 1/2 l) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))))) (/.f64 1 l))))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))

localize3.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 l (*.f64 l w))
0.0b
(-.f64 l (*.f64 l w))

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
l
@0
(-.f64 l (*.f64 l w))
0.0ms
l
@inf
(-.f64 l (*.f64 l w))
0.0ms
w
@inf
(-.f64 l (*.f64 l w))
0.0ms
l
@-inf
(-.f64 l (*.f64 l w))
0.0ms
w
@-inf
(-.f64 l (*.f64 l w))

rewrite44.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
649×pow1_binary64
604×add-log-exp_binary64
604×log1p-expm1-u_binary64
604×expm1-log1p-u_binary64
591×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11137
216447
Stop Event
node limit
Counts
1 → 38
Calls
Call 1
Inputs
(-.f64 l (*.f64 l w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 l (*.f64 l (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 l (*.f64 (*.f64 l (neg.f64 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 l (*.f64 l w)) (fma.f64 (neg.f64 w) l (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 l (*.f64 l w)) (fma.f64 (neg.f64 l) w (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 l (*.f64 l w)) (fma.f64 (*.f64 l (neg.f64 w)) 1 (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 l (*.f64 l w)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 l w))) (pow.f64 (cbrt.f64 (*.f64 l w)) 2) (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 l (*.f64 l w)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 l w))) (sqrt.f64 (*.f64 l w)) (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 l (neg.f64 w)) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (-.f64 1 w))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 l (*.f64 l w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 l (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 l (*.f64 l w))) (pow.f64 (cbrt.f64 (-.f64 l (*.f64 l w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 l (*.f64 l w))) 2) (cbrt.f64 (-.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 l (*.f64 l w))) (sqrt.f64 (-.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 l 3) (pow.f64 (*.f64 l w) 3)) (/.f64 1 (fma.f64 l l (*.f64 (*.f64 l w) (+.f64 l (*.f64 l w))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 l w) 2)) (/.f64 1 (+.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 l) (sqrt.f64 (*.f64 l w))) (-.f64 (sqrt.f64 l) (sqrt.f64 (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 l l (*.f64 (*.f64 l w) (+.f64 l (*.f64 l w)))) (-.f64 (pow.f64 l 3) (pow.f64 (*.f64 l w) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 l (*.f64 l w)) (-.f64 (*.f64 l l) (pow.f64 (*.f64 l w) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 l 3) (pow.f64 (*.f64 l w) 3)) (fma.f64 l l (*.f64 (*.f64 l w) (+.f64 l (*.f64 l w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 l w) 2)) (+.f64 l (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 l 3) (pow.f64 (*.f64 l w) 3))) (neg.f64 (fma.f64 l l (*.f64 (*.f64 l w) (+.f64 l (*.f64 l w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 l w) 2))) (neg.f64 (+.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 l (neg.f64 w)) 3)) (+.f64 (*.f64 l l) (-.f64 (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w))) (*.f64 l (*.f64 l (neg.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 l (*.f64 l w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 l (*.f64 l w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 l (*.f64 l w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 l (*.f64 l w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 l (*.f64 l w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 l (*.f64 l w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 l (*.f64 l (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 l) (*.f64 l (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (sqrt.f64 l) (*.f64 l (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 l (*.f64 l w))))))))

simplify16.0ms (0.1%)

Algorithm
egg-herbie
Rules
124×fma-def_binary64
69×fma-neg_binary64
19×sub-neg_binary64
18×cancel-sign-sub-inv_binary64
16×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013160
134160
250160
387160
4121160
5200160
6328160
7406160
8473160
9479160
Stop Event
saturated
Counts
62 → 45
Calls
Call 1
Inputs
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (+.f64 1 (*.f64 -1 w)))
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 -1 (*.f64 l w))
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 -1 (*.f64 l w))
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
Outputs
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 -1 (*.f64 l w))
(neg.f64 (*.f64 w l))
(*.f64 l (neg.f64 w))
(*.f64 w (neg.f64 l))
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 -1 (*.f64 l w))
(neg.f64 (*.f64 w l))
(*.f64 l (neg.f64 w))
(*.f64 w (neg.f64 l))
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 (-.f64 1 w) l)
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)

localize8.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.4b
(*.f64 l (*.f64 w (log.f64 l)))
0.3b
(*.f64 w (log.f64 l))
0.0b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
0.0b
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
0.0b
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
0.0b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
0.3b
(*.f64 w (log.f64 l))
0.4b
(*.f64 l (*.f64 w (log.f64 l)))

series23.0ms (0.2%)

Counts
4 → 55
Calls

24 calls:

TimeVariablePointExpression
8.0ms
w
@0
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
4.0ms
w
@0
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
l
@-inf
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
l
@0
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
l
@inf
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))

rewrite66.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
993×prod-diff_binary64
547×log-prod_binary64
294×fma-def_binary64
261×pow2_binary64
196×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0944
119040
2274040
Stop Event
node limit
Counts
4 → 145
Calls
Call 1
Inputs
(*.f64 l (*.f64 w (log.f64 l)))
(*.f64 w (log.f64 l))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 l (*.f64 l w))) 2)) (log.f64 (cbrt.f64 (pow.f64 l (*.f64 l w)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 l (*.f64 l w)))) (log.f64 (sqrt.f64 (pow.f64 l (*.f64 l w)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 l (log.f64 l)) w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 l (*.f64 l w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 l (*.f64 l w)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 l (*.f64 l w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 l (log.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 l (log.f64 l)) w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 l (log.f64 l)) w)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 w (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 l w)) 2)) (log.f64 (cbrt.f64 (pow.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 l w))) (log.f64 (sqrt.f64 (pow.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 w (log.f64 l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 w (log.f64 l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 w (log.f64 l)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 w (log.f64 l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 w (log.f64 l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 w (log.f64 l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (log.f64 l) 3) (pow.f64 w 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 w (log.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 l w))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 l w) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 w (log.f64 l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 l) 3) (pow.f64 w 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 l w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 w (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 w (log.f64 l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 w (log.f64 l))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2) (*.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) (sqrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (*.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (*.f64 l (fma.f64 w (log.f64 l) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2) 1) (/.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 1) (/.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (*.f64 l (fma.f64 w (log.f64 l) 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 3) (pow.f64 (exp.f64 w) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (exp.f64 w) (*.f64 l (fma.f64 w (log.f64 l) 1))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 l l) (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w))) (/.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2) (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (+.f64 1 (*.f64 w (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (fma.f64 w (log.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 l (fma.f64 w (log.f64 l) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2) (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3)) (/.f64 1 (fma.f64 l l (*.f64 (*.f64 (*.f64 l (log.f64 l)) w) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2)) (/.f64 1 (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 w (log.f64 l) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 l l (*.f64 (*.f64 (*.f64 l (log.f64 l)) w) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l))) (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w)) (-.f64 (*.f64 l l) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3)) (fma.f64 l l (*.f64 (*.f64 (*.f64 l (log.f64 l)) w) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2) (-.f64 (*.f64 l l) (*.f64 l (*.f64 (*.f64 l (log.f64 l)) w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2)) (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3))) (neg.f64 (fma.f64 l l (*.f64 (*.f64 (*.f64 l (log.f64 l)) w) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2))) (neg.f64 (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2) (*.f64 l l)) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 l l (*.f64 (*.f64 (*.f64 l (log.f64 l)) w) (-.f64 (*.f64 (*.f64 l (log.f64 l)) w) l))) (+.f64 (pow.f64 l 3) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 l (*.f64 (*.f64 l (log.f64 l)) w)) (-.f64 (*.f64 l l) (pow.f64 (*.f64 (*.f64 l (log.f64 l)) w) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (fma.f64 w (log.f64 l) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (pow.f64 l (*.f64 l w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 l) (+.f64 1 (-.f64 (pow.f64 l (*.f64 l w)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (+.f64 1 (-.f64 (pow.f64 l (*.f64 l w)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 l (*.f64 l w)) 1)) (exp.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 l (*.f64 l w)) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 l (*.f64 l w)) 1)) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (*.f64 w (log.f64 l)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l 1 (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 (log.f64 l) l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) (*.f64 l w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (log.f64 l)) l l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l (log.f64 l)) w) 1 l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 l (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 l (log.f64 l)) w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w (log.f64 l))) 2) (*.f64 (cbrt.f64 (*.f64 w (log.f64 l))) l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 l) (pow.f64 (cbrt.f64 l) 2) (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 l) (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (*.f64 w (log.f64 l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) (pow.f64 (cbrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) 2) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) 2) (cbrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 w (log.f64 l))) (*.f64 (sqrt.f64 (*.f64 w (log.f64 l))) l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (sqrt.f64 l) (*.f64 (*.f64 l (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (*.f64 w (log.f64 l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) (sqrt.f64 (*.f64 (*.f64 l (log.f64 l)) w)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l w) (log.f64 l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (log.f64 l)) w l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (*.f64 w (log.f64 l))) 2)) (cbrt.f64 (*.f64 w (log.f64 l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (sqrt.f64 (*.f64 w (log.f64 l)))) (sqrt.f64 (*.f64 w (log.f64 l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (log.f64 l)) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (log.f64 l)) (sqrt.f64 l)) (sqrt.f64 l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l w) 1) (log.f64 l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l w) (pow.f64 (cbrt.f64 (log.f64 l)) 2)) (cbrt.f64 (log.f64 l)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l w) (sqrt.f64 (log.f64 l))) (sqrt.f64 (log.f64 l)) l)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (fma.f64 w (log.f64 l) 1))))))))

simplify44.0ms (0.4%)

Algorithm
egg-herbie
Rules
600×associate-+l+_binary64
595×distribute-rgt-in_binary64
547×distribute-lft-in_binary64
497×associate-+r+_binary64
367×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
062810
1184741
2554666
32232656
Stop Event
node limit
Counts
200 → 168
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 l (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 l (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)) (+.f64 l (+.f64 (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 1/6 l))))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
l
(*.f64 l (*.f64 w (log.f64 l)))
(*.f64 l (*.f64 w (log.f64 l)))
Outputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (*.f64 l w)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 l (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) w)
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 w))
(*.f64 w (log.f64 l))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) l)
(+.f64 (*.f64 (-.f64 l (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 l (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2))) (*.f64 w w) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 (-.f64 (*.f64 l 1/2) (*.f64 l (log.f64 l))) (*.f64 w w) l))
(fma.f64 w (*.f64 w (*.f64 l (-.f64 1/2 (log.f64 l)))) (fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) l))
(+.f64 (*.f64 (-.f64 l (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)) (+.f64 l (+.f64 (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 1/6 l))))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))))
(fma.f64 (-.f64 l (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (fma.f64 (pow.f64 w 3) (-.f64 (fma.f64 l (log.f64 l) (*.f64 l 1/2)) (+.f64 l (fma.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l 1/6)))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))))
(fma.f64 (-.f64 l (*.f64 l (+.f64 (log.f64 l) 1/2))) (*.f64 w w) (fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) 1/2)) (+.f64 l (fma.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 1/2 (*.f64 l 1/6)))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l 1/2) (*.f64 l (log.f64 l)))) (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) 1/2)) (fma.f64 (*.f64 l (+.f64 (log.f64 l) -1)) 1/2 (*.f64 l 7/6))) l)))
(fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (-.f64 (+.f64 (log.f64 l) -1/2) (*.f64 (log.f64 l) 1/2))) (*.f64 l -1/3)) (fma.f64 w (*.f64 w (*.f64 l (-.f64 1/2 (log.f64 l)))) (fma.f64 w (*.f64 l (+.f64 -1 (log.f64 l))) l)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (*.f64 w (log.f64 l))))
(/.f64 l (/.f64 (/.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (*.f64 w (log.f64 l)) (/.f64 l (exp.f64 w)))
(*.f64 w (/.f64 l (/.f64 (exp.f64 w) (log.f64 l))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (*.f64 w (log.f64 l))))
(/.f64 l (/.f64 (/.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (*.f64 w (log.f64 l)) (/.f64 l (exp.f64 w)))
(*.f64 w (/.f64 l (/.f64 (exp.f64 w) (log.f64 l))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (/.f64 l (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (+.f64 1 (*.f64 w (log.f64 l)))))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 w (log.f64 l) 1)))
(*.f64 (fma.f64 w (log.f64 l) 1) (/.f64 l (exp.f64 w)))
(*.f64 l (/.f64 (fma.f64 w (log.f64 l) 1) (exp.f64 w)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (+.f64 1 (*.f64 w (log.f64 l))))
(*.f64 l (fma.f64 w (log.f64 l) 1))
l
(*.f64 l (*.f64 w (log.f64 l)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) (*.f64 l w)))
(*.f64 (neg.f64 (log.f64 l)) (neg.f64 (*.f64 l w)))
(*.f64 (*.f64 l w) (log.f64 l))

localize9.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.4b
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
0.3b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.0b
(sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))
0.0b
(sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.3b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
0.4b
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)

series14.0ms (0.1%)

Counts
2 → 8
Calls

12 calls:

TimeVariablePointExpression
3.0ms
l
@inf
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
2.0ms
l
@-inf
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
2.0ms
w
@inf
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
1.0ms
l
@0
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
1.0ms
w
@0
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)

rewrite51.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
456×log-prod_binary64
357×prod-exp_binary64
343×exp-prod_binary64
328×pow-prod-down_binary64
283×prod-diff_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
123328
2264228
Stop Event
node limit
Counts
2 → 96
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
(sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 l (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 2) (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/4) (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3/4) (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 5/6) (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) 3) (pow.f64 l 3)) (+.f64 (pow.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) 2) (-.f64 (*.f64 l l) (*.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) 2) (*.f64 l l)) (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2) (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1) (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2) (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1) (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2) (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1) (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l 1 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (+.f64 (log.f64 l) -1)) w l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 l (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 w) 2) (*.f64 (cbrt.f64 w) (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 l) (pow.f64 (cbrt.f64 l) 2) (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 l) (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 w) (*.f64 (sqrt.f64 w) (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (sqrt.f64 l) (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1)) 1 l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))) 2) (cbrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))) (sqrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (+.f64 (log.f64 l) -1)) l l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (pow.f64 (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) 2)) (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1)))) (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/6) (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/4) (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))) (sqrt.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 l) (sqrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (*.f64 w l) (+.f64 (log.f64 l) -1))) (sqrt.f64 l))))))

simplify37.0ms (0.3%)

Algorithm
egg-herbie
Rules
787×distribute-lft-out_binary64
409×distribute-rgt-out_binary64
387×associate-+l+_binary64
374×associate-*r*_binary64
345×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
051184
1149170
2520158
33244149
45111149
Stop Event
node limit
Counts
104 → 108
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l)) (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l))) (pow.f64 w 2)) (+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l)) (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) l)) (*.f64 1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) l))) (pow.f64 w 3)))))
(sqrt.f64 l)
(+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))))
(+.f64 (sqrt.f64 l) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (pow.f64 w 2)) (sqrt.f64 l)))))
(+.f64 (sqrt.f64 l) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) (pow.f64 w 3)) (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (pow.f64 w 2)) (sqrt.f64 l))))))
Outputs
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(fma.f64 (+.f64 (log.f64 l) -1) (*.f64 l w) l)
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1) w) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l)) (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l))) (pow.f64 w 2)) (+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(fma.f64 (+.f64 (log.f64 l) -1) (*.f64 l w) l)
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1) w) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l)) (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) l)) (*.f64 1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) l))) (pow.f64 w 3)))))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(fma.f64 (+.f64 (log.f64 l) -1) (*.f64 l w) l)
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1) w) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(sqrt.f64 l)
(+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))))
(+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1) (*.f64 w (sqrt.f64 l)))))
(fma.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w (sqrt.f64 l))) (sqrt.f64 l))
(*.f64 (sqrt.f64 l) (fma.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) w) 1))
(*.f64 (sqrt.f64 l) (fma.f64 1/2 (-.f64 (*.f64 (log.f64 l) w) w) 1))
(+.f64 (sqrt.f64 l) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (pow.f64 w 2)) (sqrt.f64 l)))))
(+.f64 (sqrt.f64 l) (fma.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1) (*.f64 w (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (*.f64 (*.f64 w w) (sqrt.f64 l))))))
(+.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) w)) (*.f64 (*.f64 -1/8 (pow.f64 (+.f64 (log.f64 l) -1) 2)) (*.f64 w w)))))
(*.f64 (sqrt.f64 l) (+.f64 (fma.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) w) 1) (*.f64 (*.f64 w w) (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 2) -1/8))))
(fma.f64 (sqrt.f64 l) (*.f64 (-.f64 (*.f64 (log.f64 l) w) w) (+.f64 1/2 (*.f64 -1/8 (-.f64 (*.f64 (log.f64 l) w) w)))) (sqrt.f64 l))
(+.f64 (sqrt.f64 l) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) (pow.f64 w 3)) (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (pow.f64 w 2)) (sqrt.f64 l))))))
(+.f64 (sqrt.f64 l) (fma.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1) (*.f64 w (sqrt.f64 l))) (fma.f64 1/16 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 3) (*.f64 (pow.f64 w 3) (sqrt.f64 l))) (*.f64 -1/8 (*.f64 (pow.f64 (-.f64 (log.f64 l) 1) 2) (*.f64 (*.f64 w w) (sqrt.f64 l)))))))
(+.f64 (fma.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w (sqrt.f64 l))) (sqrt.f64 l)) (*.f64 (sqrt.f64 l) (+.f64 (*.f64 (*.f64 -1/8 (pow.f64 (+.f64 (log.f64 l) -1) 2)) (*.f64 w w)) (*.f64 1/16 (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 3) (pow.f64 w 3))))))
(fma.f64 (sqrt.f64 l) (fma.f64 -1/8 (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 2) (*.f64 w w)) (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 3) (*.f64 (pow.f64 w 3) 1/16))) (*.f64 (sqrt.f64 l) (fma.f64 1/2 (*.f64 (+.f64 (log.f64 l) -1) w) 1)))
(*.f64 (sqrt.f64 l) (+.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 (log.f64 l) w) w) (+.f64 1/2 (*.f64 -1/8 (-.f64 (*.f64 (log.f64 l) w) w))))) (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 3) (*.f64 (pow.f64 w 3) 1/16))))
(*.f64 (sqrt.f64 l) (+.f64 (*.f64 (-.f64 (*.f64 (log.f64 l) w) w) (+.f64 1/2 (*.f64 -1/8 (-.f64 (*.f64 (log.f64 l) w) w)))) (+.f64 (*.f64 (pow.f64 (+.f64 (log.f64 l) -1) 3) (*.f64 (pow.f64 w 3) 1/16)) 1)))

localize12.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
0.0b
(fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))
0.0b
(/.f64 1 (sqrt.f64 (exp.f64 w)))
0.0b
(sqrt.f64 (exp.f64 w))
0.0b
(/.f64 1 (sqrt.f64 (exp.f64 w)))
0.0b
(fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))
0.0b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
4.9b
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))

series20.0ms (0.2%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
12.0ms
l
@0
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
1.0ms
w
@0
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
1.0ms
w
@0
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
1.0ms
l
@-inf
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
1.0ms
l
@inf
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))

rewrite60.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
582×log-prod_binary64
364×pow-prod-down_binary64
319×pow2_binary64
304×pow-pow_binary64
262×pow-unpow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01447
127746
2312644
Stop Event
node limit
Counts
3 → 95
Calls
Call 1
Inputs
(pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
(fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) 2) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) (sqrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 2/3) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (pow.f64 (exp.f64 1/3) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (E.f64) (*.f64 2 (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))) (pow.f64 (exp.f64 1/3) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (E.f64) (*.f64 (*.f64 (exp.f64 w) (log.f64 l)) 1)) (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (E.f64) (exp.f64 (log1p.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))) (E.f64))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (exp.f64 w)) (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) 2) (/.f64 (sqrt.f64 (exp.f64 w)) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) (/.f64 (sqrt.f64 (exp.f64 w)) (sqrt.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) (pow.f64 (exp.f64 w) 1/4)) (pow.f64 (exp.f64 w) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 1) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 w) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) -1) (neg.f64 (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (-.f64 (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 2) w)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 3 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 3) (pow.f64 (exp.f64 w) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 (-.f64 (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 2) w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (exp.f64 (*.f64 3 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))) 3) (pow.f64 (exp.f64 w) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (fma.f64 w -1/2 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 w -1/2) (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 w) (log.f64 l)) (*.f64 w -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1/2) (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))) (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (*.f64 2 (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (exp.f64 w) (log.f64 l)) 1) (*.f64 w -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 1 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (exp.f64 2/3) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))) (log.f64 (pow.f64 (exp.f64 1/3) (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 l (exp.f64 w))) (*.f64 w -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (log.f64 (pow.f64 (E.f64) (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 2) (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (sqrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) (log.f64 (pow.f64 (E.f64) (sqrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 3) (pow.f64 (*.f64 w -1/2) 3)) (+.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 2) (-.f64 (*.f64 (*.f64 w w) 1/4) (*.f64 (*.f64 (exp.f64 w) (log.f64 l)) (*.f64 w -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 w) (log.f64 l)) 2) (*.f64 (*.f64 w w) 1/4)) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 1/2 w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 w) -1/2) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 w -1/2))) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (+.f64 1 (expm1.f64 (*.f64 w -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))))))))

simplify75.0ms (0.6%)

Algorithm
egg-herbie
Rules
717×fma-def_binary64
607×distribute-rgt-out_binary64
402×times-frac_binary64
353×associate-+r+_binary64
350×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011392
13031365
210001335
349331331
470581331
Stop Event
node limit
Counts
167 → 131
Calls
Call 1
Inputs
l
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) l)
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2)))))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2))) (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (-.f64 (log.f64 l) 1/2) 3)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1/2) (log.f64 l))) (*.f64 1/6 (log.f64 l)))) (*.f64 l (pow.f64 w 3))))))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
l
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) l)
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) (+.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/8 l) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l))))))
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) (+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/48 l) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l)) (+.f64 (*.f64 1/8 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 l (+.f64 (*.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1/2) (log.f64 l))) (+.f64 (*.f64 1/6 (pow.f64 (-.f64 (log.f64 l) 1/2) 3)) (*.f64 1/6 (log.f64 l))))))))) (+.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/8 l) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l)))))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(log.f64 l)
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (log.f64 l))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (log.f64 l)))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (log.f64 l))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (log.f64 l))))
(*.f64 -1/2 w)
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(*.f64 -1/2 w)
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
Outputs
l
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) l)
(fma.f64 (+.f64 (log.f64 l) -1/2) (*.f64 l w) l)
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1/2) w) l)
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2)))))
(+.f64 (fma.f64 (+.f64 (log.f64 l) -1/2) (*.f64 l w) l) (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))) (*.f64 l (*.f64 w w))))
(fma.f64 (+.f64 (log.f64 l) -1/2) (*.f64 l w) (fma.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))) (*.f64 l (*.f64 w w)) l))
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1/2) w) (fma.f64 (*.f64 w w) (*.f64 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) (*.f64 l 1/2)) l))
(+.f64 l (*.f64 l (*.f64 w (+.f64 (*.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))) w) (+.f64 (log.f64 l) -1/2)))))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2))) (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (-.f64 (log.f64 l) 1/2) 3)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1/2) (log.f64 l))) (*.f64 1/6 (log.f64 l)))) (*.f64 l (pow.f64 w 3))))))
(+.f64 (fma.f64 (+.f64 (log.f64 l) -1/2) (*.f64 l w) l) (fma.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))) (*.f64 l (*.f64 w w)) (*.f64 (fma.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3) (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) -1/2)) (*.f64 (log.f64 l) 1/6))) (*.f64 l (pow.f64 w 3)))))
(+.f64 (fma.f64 (fma.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3) (*.f64 (log.f64 l) (+.f64 (+.f64 (*.f64 (log.f64 l) 1/2) -1/4) 1/6))) (*.f64 l (pow.f64 w 3)) (*.f64 (*.f64 w w) (*.f64 1/2 (*.f64 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) l)))) (fma.f64 (+.f64 (log.f64 l) -1/2) (*.f64 l w) l))
(fma.f64 l (*.f64 (+.f64 (log.f64 l) -1/2) w) (fma.f64 l (*.f64 1/2 (*.f64 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) (*.f64 w w))) (fma.f64 l (*.f64 (fma.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) -1/12) (*.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3))) (pow.f64 w 3)) l)))
(+.f64 (*.f64 l (*.f64 (*.f64 w w) (+.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) -1/12) (*.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3))) w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)))))) (fma.f64 l (*.f64 (+.f64 (log.f64 l) -1/2) w) l))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
(exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w)))
(exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2)))
(*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2)))
l
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) l)
(fma.f64 (*.f64 l (+.f64 (+.f64 (log.f64 l) -1/2) -1/2)) w l)
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) -1)) l)
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) (+.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/8 l) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l))))))
(+.f64 (fma.f64 (*.f64 l (+.f64 (+.f64 (log.f64 l) -1/2) -1/2)) w l) (*.f64 (*.f64 w w) (fma.f64 1/8 l (fma.f64 -1/2 (*.f64 l (+.f64 (log.f64 l) -1/2)) (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))))))))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 (*.f64 w w) (fma.f64 l 1/8 (*.f64 l (+.f64 (+.f64 (*.f64 (log.f64 l) -1/2) 1/4) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)))))) l))
(fma.f64 (*.f64 w w) (*.f64 l (+.f64 1/8 (fma.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) (fma.f64 (log.f64 l) -1/2 1/4)))) (fma.f64 l (*.f64 w (+.f64 (log.f64 l) -1)) l))
(+.f64 (*.f64 (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) l) (*.f64 -1/2 l)) w) (+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/48 l) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l)) (+.f64 (*.f64 1/8 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 l (+.f64 (*.f64 1/2 (*.f64 (-.f64 (log.f64 l) 1/2) (log.f64 l))) (+.f64 (*.f64 1/6 (pow.f64 (-.f64 (log.f64 l) 1/2) 3)) (*.f64 1/6 (log.f64 l))))))))) (+.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/8 l) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (log.f64 l) 1/2) l)) (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) l)))))))
(fma.f64 (*.f64 l (+.f64 (+.f64 (log.f64 l) -1/2) -1/2)) w (fma.f64 (pow.f64 w 3) (fma.f64 -1/48 l (fma.f64 -1/2 (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)))) (fma.f64 1/8 (*.f64 l (+.f64 (log.f64 l) -1/2)) (*.f64 l (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) -1/2)) (*.f64 1/6 (+.f64 (pow.f64 (+.f64 (log.f64 l) -1/2) 3) (log.f64 l)))))))) (+.f64 l (*.f64 (*.f64 w w) (fma.f64 1/8 l (fma.f64 -1/2 (*.f64 l (+.f64 (log.f64 l) -1/2)) (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))))))))))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 (pow.f64 w 3) (fma.f64 l -1/48 (fma.f64 (*.f64 -1/4 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2))) l (*.f64 l (+.f64 (+.f64 (*.f64 (log.f64 l) 1/8) -1/16) (fma.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3) (*.f64 (log.f64 l) (+.f64 (+.f64 (*.f64 (log.f64 l) 1/2) -1/4) 1/6))))))) (fma.f64 (*.f64 w w) (fma.f64 l 1/8 (*.f64 l (+.f64 (+.f64 (*.f64 (log.f64 l) -1/2) 1/4) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)))))) l)))
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) -1)) (fma.f64 (pow.f64 w 3) (fma.f64 l -1/48 (*.f64 l (+.f64 (fma.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) -1/12) (*.f64 1/6 (pow.f64 (+.f64 (log.f64 l) -1/2) 3))) (fma.f64 -1/4 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) (fma.f64 (log.f64 l) 1/8 -1/16))))) (fma.f64 (*.f64 w w) (*.f64 l (+.f64 1/8 (fma.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (+.f64 (log.f64 l) -1/2) 2)) (fma.f64 (log.f64 l) -1/2 1/4)))) l)))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (sqrt.f64 (/.f64 1 (exp.f64 w))) (exp.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (exp.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))) (sqrt.f64 (/.f64 1 (exp.f64 w))))
(*.f64 (exp.f64 (fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1/2)) (sqrt.f64 (exp.f64 (neg.f64 w))))
(*.f64 (*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w -1/2))) (sqrt.f64 (exp.f64 (neg.f64 w))))
(log.f64 l)
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (log.f64 l))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (log.f64 l))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (log.f64 l)))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (fma.f64 1/2 (*.f64 (log.f64 l) (*.f64 w w)) (log.f64 l)))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (fma.f64 1/2 (*.f64 (*.f64 (log.f64 l) w) w) (log.f64 l)))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 w) w 1)))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 w w) 1)))
(+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) w) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (log.f64 l))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (log.f64 l))) (log.f64 l))))
(fma.f64 (+.f64 (log.f64 l) -1/2) w (fma.f64 1/6 (*.f64 (log.f64 l) (pow.f64 w 3)) (fma.f64 1/2 (*.f64 (log.f64 l) (*.f64 w w)) (log.f64 l))))
(+.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 1/6 (pow.f64 w 3)) (*.f64 1/2 (*.f64 w w)))) (fma.f64 (+.f64 (log.f64 l) -1/2) w (log.f64 l)))
(fma.f64 (log.f64 l) (*.f64 (*.f64 w w) (+.f64 (*.f64 w 1/6) 1/2)) (fma.f64 (+.f64 (log.f64 l) -1/2) w (log.f64 l)))
(fma.f64 (log.f64 l) (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (fma.f64 (+.f64 (log.f64 l) -1/2) w (log.f64 l)))
(*.f64 -1/2 w)
(*.f64 w -1/2)
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(*.f64 -1/2 w)
(*.f64 w -1/2)
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (log.f64 l) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))
(+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)) (*.f64 -1/2 w))
(fma.f64 (log.f64 l) (exp.f64 w) (*.f64 w -1/2))

eval182.0ms (1.5%)

Compiler

Compiled 12306 to 5891 computations (52.1% saved)

prune117.0ms (0.9%)

Pruning

41 alts after pruning (36 fresh and 5 done)

PrunedKeptTotal
New66219681
Fresh51722
Picked101
Done257
Total67041711
Error
0.1b
Counts
711 → 41
Alt Table
Click to see full alt table
StatusErrorProgram
61.2b
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
4.9b
(*.f64 (pow.f64 (pow.f64 (exp.f64 w) -1/4) 2) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
5.1b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (+.f64 w 1)))) (exp.f64 w))
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
6.4b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 3)))
4.6b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
15.4b
(*.f64 (-.f64 1 w) l)
1.3b
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))) (exp.f64 w))
38.2b
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
0.7b
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
6.5b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2)) (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))
4.9b
(/.f64 (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)) (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
8.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) (fma.f64 l (*.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (pow.f64 w 3)) l)) (exp.f64 w))
48.2b
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
7.5b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2))))))
2.1b
(/.f64 l (exp.f64 w))
15.2b
(pow.f64 (*.f64 (sqrt.f64 l) (fma.f64 1/2 (-.f64 (*.f64 (log.f64 l) w) w) 1)) 2)
1.3b
(/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3))
7.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) l) (exp.f64 w))
14.9b
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
15.1b
(pow.f64 (+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l)))) 2)
38.7b
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))) (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
8.3b
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
1.6b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
4.6b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
15.2b
(/.f64 1 (/.f64 1 l))
15.9b
(pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
5.1b
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 3))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
61.3b
(*.f64 w (neg.f64 l))
15.1b
l
4.9b
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
15.8b
(pow.f64 (sqrt.f64 (+.f64 l (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))))) 2)
4.9b
(*.f64 (exp.f64 (*.f64 w -1/2)) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
14.6b
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
0.4b
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
1.7b
(/.f64 1 (/.f64 (exp.f64 w) (+.f64 l (*.f64 l (*.f64 w (log.f64 l))))))
Compiler

Compiled 1205 to 803 computations (33.4% saved)

localize6.0ms (0%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 l (neg.f64 (exp.f64 w)))
0.1b
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
0.0b
(*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w))
0.0b
(*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w))
0.1b
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
0.3b
(pow.f64 l (neg.f64 (exp.f64 w)))

series14.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
w
@0
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
1.0ms
l
@-inf
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
1.0ms
w
@inf
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
1.0ms
w
@-inf
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
1.0ms
l
@0
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))

rewrite48.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
731×pow1_binary64
674×add-log-exp_binary64
673×log1p-expm1-u_binary64
673×expm1-log1p-u_binary64
657×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0937
118328
2235228
Stop Event
node limit
Counts
3 → 65
Calls
Call 1
Inputs
(pow.f64 l (neg.f64 (exp.f64 w)))
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
(*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (exp.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (pow.f64 (sqrt.f64 l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 l (*.f64 2 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (exp.f64 w) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2) -1) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1) (pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) 3) (pow.f64 (pow.f64 l (exp.f64 w)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 w (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))))

simplify44.0ms (0.4%)

Algorithm
egg-herbie
Rules
863×distribute-rgt-in_binary64
853×distribute-lft-in_binary64
852×fma-def_binary64
393×associate-+l+_binary64
115×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01221782
14261518
217501356
Stop Event
node limit
Counts
137 → 99
Calls
Call 1
Inputs
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(/.f64 1 l)
(+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (/.f64 1 l))
(+.f64 (/.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 -1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (/.f64 1 l)))
(+.f64 (/.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 -1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (+.f64 (/.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/6 (log.f64 l)) (+.f64 (*.f64 1/2 (pow.f64 (log.f64 l) 2)) (*.f64 -1/6 (pow.f64 (log.f64 l) 3))))) l) (/.f64 1 l))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
l
(+.f64 l (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w))))
(+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) (pow.f64 w 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l))))) (pow.f64 l 2)) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) l))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 3) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))))) (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 -1/6 (/.f64 (log.f64 l) l)) (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 1/6 (/.f64 1 l))))))))))) (+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) (pow.f64 w 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(/.f64 1 l)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (/.f64 1 l))
(+.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (/.f64 1 l)))
(+.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 l)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 -1/6 (/.f64 (log.f64 l) l)) (/.f64 (pow.f64 (log.f64 l) 2) l))))) (pow.f64 w 3)) (/.f64 1 l))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
Outputs
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 (exp.f64 w))))
(pow.f64 (exp.f64 (exp.f64 w)) (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 (exp.f64 w))))
(pow.f64 (exp.f64 (exp.f64 w)) (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 (exp.f64 w))))
(pow.f64 (exp.f64 (exp.f64 w)) (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))))
(exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 (exp.f64 w))))
(pow.f64 (exp.f64 (exp.f64 w)) (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))))
(/.f64 1 l)
(+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (/.f64 1 l))
(fma.f64 -1 (/.f64 w (/.f64 l (log.f64 l))) (/.f64 1 l))
(-.f64 (/.f64 1 l) (*.f64 (/.f64 w l) (log.f64 l)))
(-.f64 (/.f64 1 l) (*.f64 (/.f64 (log.f64 l) l) w))
(+.f64 (/.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 -1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (/.f64 1 l)))
(+.f64 (fma.f64 -1 (/.f64 w (/.f64 l (log.f64 l))) (/.f64 1 l)) (/.f64 (*.f64 w w) (/.f64 l (fma.f64 -1/2 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))
(+.f64 (-.f64 (/.f64 1 l) (*.f64 (/.f64 w l) (log.f64 l))) (*.f64 (/.f64 (*.f64 w w) l) (fma.f64 (log.f64 l) -1/2 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))))
(-.f64 (fma.f64 (/.f64 (*.f64 w w) l) (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (log.f64 l)))) (/.f64 1 l)) (*.f64 (/.f64 (log.f64 l) l) w))
(+.f64 (/.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 -1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (/.f64 (*.f64 w (log.f64 l)) l)) (+.f64 (/.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1/6 (log.f64 l)) (+.f64 (*.f64 1/2 (pow.f64 (log.f64 l) 2)) (*.f64 -1/6 (pow.f64 (log.f64 l) 3))))) l) (/.f64 1 l))))
(+.f64 (/.f64 (*.f64 w w) (/.f64 l (fma.f64 -1/2 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (fma.f64 -1 (/.f64 w (/.f64 l (log.f64 l))) (+.f64 (/.f64 1 l) (/.f64 (pow.f64 w 3) (/.f64 l (fma.f64 -1/6 (log.f64 l) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) (*.f64 -1/6 (pow.f64 (log.f64 l) 3)))))))))
(+.f64 (*.f64 (/.f64 (*.f64 w w) l) (fma.f64 (log.f64 l) -1/2 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (-.f64 (/.f64 1 l) (*.f64 (/.f64 w l) (log.f64 l))) (*.f64 (/.f64 (pow.f64 w 3) l) (fma.f64 (log.f64 l) -1/6 (fma.f64 -1/6 (pow.f64 (log.f64 l) 3) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))))))
(fma.f64 (/.f64 (*.f64 w w) l) (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (log.f64 l)))) (fma.f64 (/.f64 (pow.f64 w 3) l) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) (*.f64 -1/6 (+.f64 (pow.f64 (log.f64 l) 3) (log.f64 l)))) (-.f64 (/.f64 1 l) (*.f64 (/.f64 (log.f64 l) l) w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))
(exp.f64 (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(pow.f64 (/.f64 1 l) (exp.f64 w))
(pow.f64 l (neg.f64 (exp.f64 w)))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w)))
(exp.f64 (neg.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w)))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w)))
(exp.f64 (neg.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w)))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w)))
(exp.f64 (neg.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w)))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) w))
(/.f64 1 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w)))
(/.f64 1 (exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w)))
(exp.f64 (neg.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w)))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) w))
l
(+.f64 l (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w))))
(+.f64 l (neg.f64 (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) (*.f64 w (*.f64 l l)))))
(-.f64 l (*.f64 w (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l l))))
(fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l (neg.f64 (*.f64 l w))) l)
(+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) (pow.f64 w 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w)))))
(+.f64 l (fma.f64 -1 (*.f64 (*.f64 w w) (fma.f64 (*.f64 l l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 -1/2 (/.f64 (log.f64 l) l) (/.f64 1/2 l)))) (neg.f64 (*.f64 (pow.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) 2) (pow.f64 l 3))))) (neg.f64 (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) (*.f64 w (*.f64 l l))))))
(fma.f64 -1 (fma.f64 (*.f64 w w) (-.f64 (*.f64 (*.f64 l l) (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2)))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) (pow.f64 l 3))) (*.f64 w (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l l)))) l)
(-.f64 l (*.f64 w (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l l)) (*.f64 (*.f64 (*.f64 l l) (-.f64 (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) l))) w))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l))))) (pow.f64 l 2)) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) l))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 3) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))))) (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 -1/6 (/.f64 (log.f64 l) l)) (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 1/6 (/.f64 1 l))))))))))) (+.f64 l (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 (pow.f64 l 2) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (*.f64 -1/2 (/.f64 (log.f64 l) l)) (*.f64 1/2 (/.f64 1 l)))))) (*.f64 -1 (*.f64 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) 2) (pow.f64 l 3)))) (pow.f64 w 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) (*.f64 (pow.f64 l 2) w))))))
(fma.f64 -1 (*.f64 (pow.f64 w 3) (fma.f64 -1 (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) (*.f64 l (fma.f64 (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2))) (*.f64 l l) (neg.f64 (*.f64 (pow.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) 2) (pow.f64 l 3)))))) (fma.f64 -1 (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 -1/2 (/.f64 (log.f64 l) l) (/.f64 1/2 l)))) (pow.f64 l 3))) (*.f64 (*.f64 l l) (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 -1/6 (/.f64 (log.f64 l) l) (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (/.f64 1/6 l))))))))) (+.f64 l (fma.f64 -1 (*.f64 (*.f64 w w) (fma.f64 (*.f64 l l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 -1/2 (/.f64 (log.f64 l) l) (/.f64 1/2 l)))) (neg.f64 (*.f64 (pow.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) 2) (pow.f64 l 3))))) (neg.f64 (*.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) (*.f64 w (*.f64 l l)))))))
(-.f64 (fma.f64 -1 (fma.f64 (*.f64 w w) (-.f64 (*.f64 (*.f64 l l) (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2)))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) (pow.f64 l 3))) (*.f64 w (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l l)))) l) (*.f64 (pow.f64 w 3) (+.f64 (*.f64 l (*.f64 l (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (+.f64 (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (/.f64 1/6 l)) (*.f64 (/.f64 (log.f64 l) l) -7/6))))) (*.f64 (neg.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))) (+.f64 (*.f64 l (-.f64 (*.f64 (*.f64 l l) (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2)))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) (pow.f64 l 3)))) (*.f64 (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2))) (pow.f64 l 3)))))))
(-.f64 (-.f64 l (*.f64 w (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (*.f64 l l)) (*.f64 (*.f64 (*.f64 l l) (-.f64 (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) l))) w)))) (*.f64 (pow.f64 w 3) (-.f64 (*.f64 (*.f64 l l) (+.f64 (fma.f64 (/.f64 (log.f64 l) l) -7/6 (/.f64 (pow.f64 (log.f64 l) 2) l)) (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (/.f64 1/6 l)))) (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 l (*.f64 (*.f64 l l) (-.f64 (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l))) (*.f64 (pow.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 2) l))) (*.f64 (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l))) (pow.f64 l 3)))))))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 1 (*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w))))))
(/.f64 1 (exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w))))))
(exp.f64 (neg.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))) (exp.f64 w))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w))
(exp.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w))
(exp.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w))
(exp.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))) (exp.f64 w))
(exp.f64 (+.f64 (neg.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))) w))
(exp.f64 (fma.f64 (neg.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l)))) (exp.f64 w) w))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(/.f64 1 l)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (/.f64 1 l))
(fma.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) w (/.f64 1 l))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l))
(+.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (/.f64 1 l)))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 1/2 l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (/.f64 (*.f64 (log.f64 l) -1/2) l)))) (fma.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) w (/.f64 1 l)))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l)))
(fma.f64 w (*.f64 w (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l)))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l)))
(+.f64 (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (*.f64 -1/2 (/.f64 (log.f64 l) l)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (/.f64 1 l)) w) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 l)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 -1 (/.f64 (log.f64 l) l)) (+.f64 (*.f64 -1/6 (/.f64 (log.f64 l) l)) (/.f64 (pow.f64 (log.f64 l) 2) l))))) (pow.f64 w 3)) (/.f64 1 l))))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 1/2 l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (/.f64 (*.f64 (log.f64 l) -1/2) l)))) (fma.f64 (fma.f64 -1 (/.f64 (log.f64 l) l) (/.f64 1 l)) w (fma.f64 (+.f64 (/.f64 1/6 l) (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (fma.f64 -1 (/.f64 (log.f64 l) l) (fma.f64 -1/6 (/.f64 (log.f64 l) l) (/.f64 (pow.f64 (log.f64 l) 2) l))))) (pow.f64 w 3) (/.f64 1 l))))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 1/2 l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (/.f64 (log.f64 l) l) -3/2))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (pow.f64 w 3) (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (+.f64 (+.f64 (/.f64 (pow.f64 (log.f64 l) 2) l) (/.f64 1/6 l)) (*.f64 (/.f64 (log.f64 l) l) -7/6))) (/.f64 1 l))))
(fma.f64 w (*.f64 w (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 (/.f64 (log.f64 l) l) -3/2 (/.f64 1/2 l)))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (pow.f64 w 3) (+.f64 (fma.f64 (/.f64 (log.f64 l) l) -7/6 (/.f64 (pow.f64 (log.f64 l) 2) l)) (fma.f64 -1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (/.f64 1/6 l))) (/.f64 1 l))))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(*.f64 (exp.f64 w) (exp.f64 (*.f64 -1 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (+.f64 w (neg.f64 (*.f64 (log.f64 l) (exp.f64 w)))))
(exp.f64 (fma.f64 (exp.f64 w) (neg.f64 (log.f64 l)) w))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))

localize3.0ms (0%)

localize7.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.4b
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.0b
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
0.0b
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.4b
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
l
@-inf
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
1.0ms
l
@inf
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
1.0ms
w
@0
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
1.0ms
w
@inf
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
0.0ms
l
@0
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))

rewrite54.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
517×log-prod_binary64
405×pow-prod-down_binary64
378×exp-prod_binary64
373×fma-def_binary64
269×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0925
120025
2289425
Stop Event
node limit
Counts
2 → 111
Calls
Call 1
Inputs
(*.f64 w (*.f64 l (+.f64 (log.f64 l) -1)))
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 l (log.f64 l)) w) (*.f64 (neg.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 l) (*.f64 w l)) (*.f64 -1 (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (*.f64 w l)) (*.f64 (log.f64 l) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 w (*.f64 l (log.f64 l))) (*.f64 w (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w l) (log.f64 l)) (*.f64 (*.f64 w l) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w l) -1) (*.f64 (*.f64 w l) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w)) 2)) (log.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w))) (log.f64 (sqrt.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w l) (+.f64 -1 (pow.f64 (log.f64 l) 3))) (+.f64 (pow.f64 (log.f64 l) 2) (-.f64 1 (log.f64 (pow.f64 l -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w l) (fma.f64 (log.f64 l) (log.f64 l) -1)) (+.f64 (log.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) 2)) (cbrt.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))) (sqrt.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 l (log.f64 l)) (*.f64 w (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) (*.f64 w l) (*.f64 -1 (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 w l) (*.f64 (log.f64 l) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (log.f64 l)) w (*.f64 (neg.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w l) (log.f64 l) (*.f64 (*.f64 w l) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w l) -1 (*.f64 (*.f64 w l) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l)) (/.f64 (*.f64 l l) (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) (pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2) (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3)) (/.f64 1 (fma.f64 l (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l l)) (/.f64 1 (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 l (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2)) (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l) (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3)) (fma.f64 l (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3)) (fma.f64 l l (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l l)) (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3))) (neg.f64 (fma.f64 l (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l l))) (neg.f64 (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 l l) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2)) (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 l (-.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2)) (+.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 3) (pow.f64 l 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l) (-.f64 (pow.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 2) (*.f64 l l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))) 2)) (cbrt.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))) (sqrt.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 l) (+.f64 1 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) (exp.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 l l) (exp.f64 l)) w) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l 1 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (*.f64 (+.f64 (log.f64 l) -1) w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (log.f64 l) -1) (*.f64 w l) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (+.f64 (log.f64 l) -1)) w l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) 1 l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 2) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) 2) (cbrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 w) 2) (*.f64 (cbrt.f64 w) (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 l) (pow.f64 (cbrt.f64 l) 2) (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 l) (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) 2) (*.f64 (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) (sqrt.f64 (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 w) (*.f64 (sqrt.f64 w) (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (sqrt.f64 l) (*.f64 (+.f64 (log.f64 l) -1) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) (*.f64 (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w l) (+.f64 (log.f64 l) -1) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (+.f64 (log.f64 l) -1)) l l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (pow.f64 (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) 2)) (cbrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1)))) (sqrt.f64 (*.f64 l (+.f64 (log.f64 l) -1))) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l (+.f64 (log.f64 l) -1)) (pow.f64 (cbrt.f64 w) 2)) (cbrt.f64 w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 l (+.f64 (log.f64 l) -1)) (sqrt.f64 w)) (sqrt.f64 w) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w l) 1) (+.f64 (log.f64 l) -1) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w l) (pow.f64 (cbrt.f64 (+.f64 (log.f64 l) -1)) 2)) (cbrt.f64 (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w l) (sqrt.f64 (+.f64 (log.f64 l) -1))) (sqrt.f64 (+.f64 (log.f64 l) -1)) l)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)))))))

simplify108.0ms (0.9%)

Algorithm
egg-herbie
Rules
839×unsub-neg_binary64
507×associate--r-_binary64
409×associate-+l-_binary64
387×associate--l+_binary64
351×associate-+r-_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
033628
185586
2218586
3830586
42903586
54640586
65096586
75241586
85293586
95316586
105320586
117334586
127811586
Stop Event
node limit
Counts
159 → 121
Calls
Call 1
Inputs
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
Outputs
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(*.f64 l (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1)))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
l
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w))
(*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w))
(*.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)))
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(+.f64 l (*.f64 (-.f64 (log.f64 l) 1) (*.f64 l w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 (+.f64 1 (*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) w)) l)
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 w (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))) 1)))
(+.f64 l (*.f64 (+.f64 (log.f64 l) -1) (*.f64 l w)))
(*.f64 l (fma.f64 (+.f64 (log.f64 l) -1) w 1))
(fma.f64 l (fma.f64 (log.f64 l) w (neg.f64 w)) l)
(fma.f64 l (-.f64 (*.f64 (log.f64 l) w) w) l)
(*.f64 l (fma.f64 (log.f64 l) w (-.f64 1 w)))

localize8.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
4.6b
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
4.6b
(exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
w
@0
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
0.0ms
l
@0
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
0.0ms
l
@inf
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
0.0ms
l
@-inf
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
0.0ms
w
@inf
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))

rewrite38.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
726×pow1_binary64
664×add-log-exp_binary64
662×log1p-expm1-u_binary64
662×expm1-log1p-u_binary64
647×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01015
119011
2232511
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (exp.f64 w)) (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (exp.f64 w) 3) (pow.f64 (pow.f64 l (exp.f64 w)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 w (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))))

simplify33.0ms (0.3%)

Algorithm
egg-herbie
Rules
770×distribute-rgt-in_binary64
738×distribute-lft-in_binary64
355×*-commutative_binary64
316×fma-def_binary64
224×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069445
1193437
2570379
32765376
Stop Event
node limit
Counts
38 → 26
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 -1/6 l)))) (pow.f64 w 3)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
Outputs
l
(+.f64 l (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))
(+.f64 l (*.f64 (fma.f64 -1 l (*.f64 l (log.f64 l))) w))
(fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) w l)
(fma.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) w l)
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w)))
(+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l)))) (*.f64 w w) (*.f64 (fma.f64 -1 l (*.f64 l (log.f64 l))) w)))
(+.f64 l (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) w (*.f64 w (*.f64 w (-.f64 (*.f64 l (+.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) 1/2)) (*.f64 l (log.f64 l)))))))
(fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) 1/2) (log.f64 l)))) (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) w l))
(fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) 1/2) (log.f64 l)))) (fma.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) w l))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 -1 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 -1/6 l)))) (pow.f64 w 3)) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))) (pow.f64 w 2)) (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))))
(fma.f64 (fma.f64 1/2 (*.f64 l (log.f64 l)) (fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l (fma.f64 -1 (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 l -1/6)))) (pow.f64 w 3) (+.f64 l (fma.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l)))) (*.f64 w w) (*.f64 (fma.f64 -1 l (*.f64 l (log.f64 l))) w))))
(+.f64 (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) w (*.f64 w (*.f64 w (-.f64 (*.f64 l (+.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) 1/2)) (*.f64 l (log.f64 l)))))) (fma.f64 (fma.f64 (*.f64 l (log.f64 l)) 1/2 (fma.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) (*.f64 (log.f64 l) 1/6))) (-.f64 (*.f64 l -1/6) (*.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (pow.f64 w 3) l))
(fma.f64 (fma.f64 l (*.f64 (log.f64 l) 1/2) (fma.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) 1/2)))) (*.f64 l (-.f64 -1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) (pow.f64 w 3) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) 1/2) (log.f64 l)))) (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) w l)))
(fma.f64 (-.f64 (*.f64 l (+.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2)))) -1/6)) (*.f64 (*.f64 l 1/2) (-.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) (log.f64 l)))) (pow.f64 w 3) (fma.f64 w (*.f64 w (*.f64 l (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) 1/2) (log.f64 l)))) (fma.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) w l)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 -1 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 (neg.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

localize9.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
4.9b
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
0.0b
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(*.f64 (exp.f64 w) (log.f64 l))
0.0b
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
4.9b
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))

series21.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
12.0ms
w
@inf
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
5.0ms
l
@0
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
1.0ms
w
@0
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
1.0ms
l
@inf
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
1.0ms
l
@-inf
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))

rewrite46.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
907×pow1_binary64
837×add-log-exp_binary64
834×log1p-expm1-u_binary64
834×expm1-log1p-u_binary64
820×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01025
119217
2231317
Stop Event
node limit
Counts
2 → 47
Calls
Call 1
Inputs
(pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l)))
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (pow.f64 l (exp.f64 w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 l (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (cbrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 2)) (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 (cbrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 l (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (exp.f64 w) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (*.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (*.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) 1) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) 1) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (/.f64 (sqrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))))

simplify41.0ms (0.3%)

Algorithm
egg-herbie
Rules
713×cancel-sign-sub-inv_binary64
495×fma-def_binary64
481×fma-neg_binary64
395×distribute-rgt-out_binary64
298×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075652
1230634
2800621
34231604
Stop Event
node limit
Counts
95 → 68
Calls
Call 1
Inputs
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
Outputs
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (*.f64 (*.f64 l w) (log.f64 l)))
(fma.f64 l (*.f64 w (log.f64 l)) l)
(fma.f64 (log.f64 l) (*.f64 l w) l)
(fma.f64 w (*.f64 l (log.f64 l)) l)
(+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l)))))
(+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 w (log.f64 l)))))
(fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 w (log.f64 l))) l)
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) (*.f64 w (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) l)
(fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) l)
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3))) (+.f64 l (+.f64 (*.f64 l (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2))))) (*.f64 l (*.f64 w (log.f64 l))))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (+.f64 l (*.f64 l (+.f64 (*.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) (*.f64 w (log.f64 l))))))
(fma.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (fma.f64 (*.f64 w w) (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 w (log.f64 l))) l))
(fma.f64 l (*.f64 w (+.f64 (log.f64 l) (*.f64 w (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) (fma.f64 l (*.f64 (fma.f64 (log.f64 l) 1/6 (*.f64 (pow.f64 (log.f64 l) 2) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2))) (pow.f64 w 3)) l))
(fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) (fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2)))) (*.f64 l (pow.f64 w 3)) l))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (log.f64 l) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w))))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
(exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w)))
(pow.f64 l (exp.f64 w))
l
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 l))))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)))))
(fma.f64 (*.f64 w w) (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (*.f64 l (+.f64 (log.f64 l) 1/2))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (*.f64 w w) (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (log.f64 l) 1/2)))) l))
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (*.f64 w w) (-.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (-.f64 l (*.f64 (*.f64 l 1/2) (+.f64 (log.f64 l) 1))))) l))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l))) (pow.f64 w 2)) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (log.f64 l) 3)) (+.f64 (*.f64 1/6 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) l) (*.f64 1/2 l))) (+.f64 (*.f64 l (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) (+.f64 l (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 l (log.f64 l) (*.f64 l 1/2))) (*.f64 w w) (+.f64 l (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 (pow.f64 w 3) (-.f64 (fma.f64 l (log.f64 l) (*.f64 l (+.f64 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 1/6 (log.f64 l) (*.f64 1/2 (pow.f64 (log.f64 l) 2)))) 1/2))) (+.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (fma.f64 1/6 l (*.f64 1/2 (fma.f64 l (log.f64 l) (neg.f64 l))))))))))
(+.f64 (fma.f64 (*.f64 w w) (-.f64 (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) l) (*.f64 l (+.f64 (log.f64 l) 1/2))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)) (*.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) (+.f64 1/2 (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (fma.f64 (log.f64 l) 1/6 (*.f64 1/2 (pow.f64 (log.f64 l) 2))))))) (fma.f64 l (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (*.f64 1/2 (fma.f64 l (log.f64 l) (neg.f64 l))) (*.f64 7/6 l))))))
(fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (log.f64 l) 1/2))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (pow.f64 w 3) (fma.f64 l (+.f64 (log.f64 l) (fma.f64 1/6 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 3)) (fma.f64 1/2 (pow.f64 (log.f64 l) 2) 1/2))) (neg.f64 (fma.f64 7/6 l (*.f64 1/2 (+.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))))) l)))
(fma.f64 w (*.f64 w (-.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (-.f64 l (*.f64 (*.f64 l 1/2) (+.f64 (log.f64 l) 1)))))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (pow.f64 w 3) (+.f64 (*.f64 l (-.f64 (+.f64 (log.f64 l) (*.f64 (+.f64 (pow.f64 (log.f64 l) 2) 1) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2))) 7/6)) (*.f64 -1/2 (*.f64 l (+.f64 (+.f64 (log.f64 l) -1) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))) l)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (exp.f64 w)))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) (exp.f64 w))) (exp.f64 w))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))

eval112.0ms (0.9%)

Compiler

Compiled 7309 to 3343 computations (54.3% saved)

prune93.0ms (0.7%)

Pruning

44 alts after pruning (34 fresh and 10 done)

PrunedKeptTotal
New41710427
Fresh72431
Picked011
Done099
Total42444468
Error
0.1b
Counts
468 → 44
Alt Table
Click to see full alt table
StatusErrorProgram
61.2b
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
4.9b
(*.f64 (pow.f64 (pow.f64 (exp.f64 w) -1/4) 2) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
5.1b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (+.f64 w 1)))) (exp.f64 w))
8.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) (fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2)))) (*.f64 l (pow.f64 w 3)) l)) (exp.f64 w))
39.5b
(/.f64 (pow.f64 (exp.f64 1) (exp.f64 (+.f64 w (log.f64 (log.f64 l))))) (exp.f64 w))
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
0.4b
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
15.1b
l
7.8b
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) l) (exp.f64 w))
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
6.4b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 3)))
4.6b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
15.4b
(*.f64 (-.f64 1 w) l)
1.3b
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))) (exp.f64 w))
38.2b
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
4.9b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)))
6.5b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2)) (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))
4.9b
(/.f64 (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)) (exp.f64 w))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
48.2b
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
15.6b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
7.5b
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2))))))
2.1b
(/.f64 l (exp.f64 w))
15.2b
(pow.f64 (*.f64 (sqrt.f64 l) (fma.f64 1/2 (-.f64 (*.f64 (log.f64 l) w) w) 1)) 2)
1.3b
(/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3))
14.9b
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
15.1b
(pow.f64 (+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l)))) 2)
38.7b
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))) (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
4.9b
(/.f64 (*.f64 (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l)))) (exp.f64 w))
8.3b
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
1.6b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
4.6b
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
15.2b
(/.f64 1 (/.f64 1 l))
15.9b
(pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
5.1b
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 3))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
61.3b
(*.f64 w (neg.f64 l))
4.9b
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
15.8b
(pow.f64 (sqrt.f64 (+.f64 l (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))))) 2)
4.9b
(*.f64 (exp.f64 (*.f64 w -1/2)) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
14.6b
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
1.7b
(/.f64 1 (/.f64 (exp.f64 w) (+.f64 l (*.f64 l (*.f64 w (log.f64 l))))))
0.7b
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
Compiler

Compiled 677 to 448 computations (33.8% saved)

regimes117.0ms (0.9%)

Counts
71 → 1
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
(/.f64 l (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) l)
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 1 (/.f64 (exp.f64 w) (+.f64 l (*.f64 l (*.f64 w (log.f64 l))))))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)))
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 3))
(pow.f64 (sqrt.f64 (+.f64 l (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))))) 2)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (+.f64 (*.f64 w (*.f64 w (+.f64 (*.f64 w 1/6) 1/2))) (+.f64 w 1)))) (exp.f64 w))
(/.f64 (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (exp.f64 w) (log.f64 l))))
(pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)
(pow.f64 (sqrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 2)
(pow.f64 (cbrt.f64 (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)) 3)
(pow.f64 (*.f64 (sqrt.f64 l) (fma.f64 1/2 (-.f64 (*.f64 (log.f64 l) w) w) 1)) 2)
(pow.f64 (+.f64 (sqrt.f64 l) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (log.f64 l) 1) w) (sqrt.f64 l)))) 2)
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l) (exp.f64 w))
(/.f64 (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)) (exp.f64 w))
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 (exp.f64 (exp.f64 w)) (log.f64 l)))
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2)
(/.f64 (pow.f64 (exp.f64 1) (*.f64 (exp.f64 w) (log.f64 l))) (exp.f64 w))
(/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) 3))
(/.f64 (pow.f64 (exp.f64 1) (exp.f64 (+.f64 w (log.f64 (log.f64 l))))) (exp.f64 w))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))
(*.f64 (exp.f64 (*.f64 w -1/2)) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (+.f64 (*.f64 (-.f64 (log.f64 l) 1/2) (*.f64 l w)) (+.f64 l (*.f64 (+.f64 (*.f64 1/2 (log.f64 l)) (*.f64 1/2 (pow.f64 (-.f64 (log.f64 l) 1/2) 2))) (*.f64 l (pow.f64 w 2))))))
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))) (exp.f64 w))
(*.f64 (pow.f64 (pow.f64 (exp.f64 w) -1/4) 2) (pow.f64 (E.f64) (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))))
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))) (sqrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1/2)) (fma.f64 w (*.f64 w (fma.f64 l 1/8 (*.f64 l (*.f64 (log.f64 l) (+.f64 -1/2 (*.f64 1/2 (+.f64 (log.f64 l) 1))))))) l)))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (E.f64) (pow.f64 (cbrt.f64 (fma.f64 w -1/2 (*.f64 (exp.f64 w) (log.f64 l)))) 3)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) 2)) (cbrt.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) (fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2)))) (*.f64 l (pow.f64 w 3)) l)) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 (*.f64 w w) 1/2) (+.f64 (log.f64 l) 1)))) (fma.f64 l (*.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (pow.f64 w 3)) l)) (exp.f64 w))
(/.f64 (fma.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6))))) (*.f64 l (pow.f64 w 3)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)) (exp.f64 w))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l))) (pow.f64 (sqrt.f64 (E.f64)) (*.f64 (exp.f64 w) (log.f64 l)))) (exp.f64 w))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w))) 2)) (cbrt.f64 (fma.f64 (exp.f64 w) (log.f64 l) (*.f64 -1/2 w)))))
Outputs
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
Calls

3 calls:

36.0ms
l
34.0ms
w
26.0ms
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Results
ErrorSegmentsBranch
0.3b1w
0.3b1l
0.3b1(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Compiler

Compiled 968 to 419 computations (56.7% saved)

regimes26.0ms (0.2%)

Counts
23 → 1
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
(/.f64 l (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) l)
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.f64 1 (/.f64 (exp.f64 w) (+.f64 l (*.f64 l (*.f64 w (log.f64 l))))))
Outputs
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
Calls

2 calls:

11.0ms
l
10.0ms
w
Results
ErrorSegmentsBranch
1.6b1w
1.6b1l
Compiler

Compiled 195 to 85 computations (56.4% saved)

regimes23.0ms (0.2%)

Counts
20 → 1
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
(/.f64 l (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) l)
(*.f64 l (-.f64 (*.f64 (log.f64 l) w) w))
(+.f64 (*.f64 w (*.f64 l (+.f64 (log.f64 l) -1))) l)
(*.f64 l (+.f64 1 (*.f64 (-.f64 (log.f64 l) 1) w)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
(/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) l)
Outputs
(*.f64 (exp.f64 (neg.f64 w)) l)
Calls

2 calls:

10.0ms
w
9.0ms
l
Results
ErrorSegmentsBranch
2.1b1w
2.1b1l
Compiler

Compiled 160 to 80 computations (50% saved)

regimes16.0ms (0.1%)

Counts
12 → 1
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
(/.f64 l (exp.f64 w))
Outputs
(/.f64 l (exp.f64 w))
Calls

2 calls:

7.0ms
l
7.0ms
w
Results
ErrorSegmentsBranch
2.1b1w
2.1b1l
Compiler

Compiled 83 to 42 computations (49.4% saved)

regimes20.0ms (0.2%)

Counts
11 → 2
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
Outputs
l
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
Calls

2 calls:

11.0ms
w
7.0ms
l
Results
ErrorSegmentsBranch
13.8b2w
15.1b1l
Compiler

Compiled 79 to 40 computations (49.4% saved)

bsearch22.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
16942747.28199269
31881442.219250318
Compiler

Compiled 123 to 63 computations (48.8% saved)

regimes13.0ms (0.1%)

Accuracy

Total -46.5b remaining (-307.1%)

Threshold costs -46.5b (-307.1%)

Counts
10 → 1
Calls
Call 1
Inputs
l
l
l
l
(*.f64 w (neg.f64 l))
(*.f64 (-.f64 1 w) l)
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (*.f64 w 1/2)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))
Outputs
l
Calls

2 calls:

6.0ms
w
5.0ms
l
Results
ErrorSegmentsBranch
15.1b1w
15.1b1l
Compiler

Compiled 59 to 33 computations (44.1% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
62×distribute-rgt-neg-in_binary64
62×cancel-sign-sub-inv_binary64
44×distribute-lft-neg-out_binary64
41×distribute-lft-neg-in_binary64
41×neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02581
14575
27575
311175
414575
519475
627475
734475
842775
949075
1052075
1152875
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) l)
(/.f64 l (exp.f64 w))
(if (<=.f64 w 31000000) l (/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w)))))
l
Outputs
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) l)
(*.f64 l (exp.f64 (neg.f64 w)))
(/.f64 l (exp.f64 w))
(if (<=.f64 w 31000000) l (/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w)))))
(if (<=.f64 w 31000000) l (/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l w) (*.f64 l w))) (+.f64 l (*.f64 l w))))
l

end36.0ms (0.3%)

Stop Event
fuel
Compiler

Compiled 114 to 58 computations (49.1% saved)

Profiling

Loading profile data...