Details

Time bar (total: 13.9s)

analyze251.0ms (1.8%)

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)

sample9.8s (70.7%)

Results
5.5s1609×body8192exit
1.9s3248×body1024invalid
1.5s8256×body256valid
482.0ms1641×body512invalid
324.0ms1989×body256invalid
8.0msbody8192invalid
4.0msbody2048invalid

preprocess94.0ms (0.7%)

Algorithm
egg-herbie
Rules
606×sqr-pow_binary64
408×associate-*l*_binary64
400×pow-sqr_binary64
386×associate-/l*_binary64
354×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01326
13126
26722
315622
450422
5219222
6400722
7416422
8439622
9484622
10569222
11723522
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)

simplify77.0ms (0.6%)

Algorithm
egg-herbie
Rules
957×associate-*l/_binary64
656×unswap-sqr_binary64
607×times-frac_binary64
531×sqr-pow_binary64
386×pow-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
23811
38511
426111
5111911
6407111
7417011
8429411
9453111
10497411
11579111
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 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
Compiler

Compiled 19 to 12 computations (36.8% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 23 to 7 computations (69.6% saved)

series109.0ms (0.8%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
62.0ms
w
@inf
(pow.f64 l (exp.f64 w))
19.0ms
l
@0
(pow.f64 l (exp.f64 w))
16.0ms
l
@-inf
(pow.f64 l (exp.f64 w))
6.0ms
l
@inf
(pow.f64 l (exp.f64 w))
1.0ms
w
@0
(pow.f64 l (exp.f64 w))

rewrite46.0ms (0.3%)

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
2200317
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 (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 expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))))) (#(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 -.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 expm1.f64 (log1p.f64 (*.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(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))))))))

simplify49.0ms (0.4%)

Algorithm
egg-herbie
Rules
492×fma-def_binary64
441×distribute-lft-out_binary64
432×distribute-rgt-out_binary64
422×+-commutative_binary64
295×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079631
1232613
2775552
33860544
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 (*.f64 w (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))) (log.f64 l))) 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 (*.f64 w (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))) (log.f64 l))) (fma.f64 (pow.f64 w 3) (*.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 1/6)))) l))
(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)) (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 (*.f64 w 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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) 1/2) (log.f64 l)))) l))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) 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 (*.f64 w 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 l (*.f64 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 1/6 (pow.f64 (log.f64 l) 3) (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) 1/2) (log.f64 l)))) l)))
(fma.f64 (pow.f64 w 3) (*.f64 l (+.f64 (+.f64 -1/6 (*.f64 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) -1/2)) (+.f64 (*.f64 (log.f64 l) 1/2) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/6)))))))) (fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) 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))

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

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

Compiled 17 to 5 computations (70.6% saved)

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))

rewrite42.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 (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 (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 expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(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))))))

simplify60.0ms (0.4%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
063330
1187322
2596312
33124294
47964294
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)
(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 (-.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))) (*.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 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 1/2)) (+.f64 (log.f64 l) 1/2))))) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 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 (-.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))) (*.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 (*.f64 (log.f64 l) 1/2) 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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (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 (-.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) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 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 (-.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 (fma.f64 l (log.f64 l) (neg.f64 l)) -1/2)) (pow.f64 w 3) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) l)))

eval52.0ms (0.4%)

Compiler

Compiled 1923 to 767 computations (60.1% saved)

prune29.0ms (0.2%)

Pruning

18 alts after pruning (17 fresh and 1 done)

PrunedKeptTotal
New10017117
Fresh000
Picked011
Done101
Total10118119
Error
0.1b
Counts
119 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
1.6b
(/.f64 l (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
2.3b
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
1.3b
(*.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))))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
1.3b
(*.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))))
1.3b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
13.0b
l
0.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
1.6b
(*.f64 (exp.f64 (neg.f64 w)) l)
0.4b
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
4.6b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
1.3b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
13.5b
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) l))
6.3b
(/.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))
6.3b
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
12.9b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
Compiler

Compiled 500 to 309 computations (38.2% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 35 to 12 computations (65.7% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite47.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
760×pow1_binary64
702×add-log-exp_binary64
701×log1p-expm1-u_binary64
701×expm1-log1p-u_binary64
685×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
120516
2271116
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (neg.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 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (exp.f64 w)) (/.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 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 (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 -1 (/.f64 (exp.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 (exp.f64 w) (sqrt.f64 (pow.f64 l (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 l (exp.f64 w)) 1) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 (+.f64 w w)))) (cbrt.f64 (exp.f64 w)))))) (#(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 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 neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (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 cbrt.f64 (*.f64 (pow.f64 (pow.f64 l (exp.f64 w)) 3) (pow.f64 (exp.f64 (neg.f64 w)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (exp.f64 (neg.f64 w)) 3) (pow.f64 (pow.f64 l (exp.f64 w)) 3)))))) (#(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 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 -.f64 (+.f64 1 (exp.f64 (neg.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (neg.f64 w))) (cbrt.f64 (pow.f64 (exp.f64 w) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 w) -2)) (cbrt.f64 (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/2) (pow.f64 (exp.f64 w) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 w w))) -1) (pow.f64 (cbrt.f64 (exp.f64 w)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 w)) -1) (pow.f64 (sqrt.f64 (exp.f64 w)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 w) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (neg.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (neg.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (neg.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 w) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (neg.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 w))))))

simplify51.0ms (0.4%)

Algorithm
egg-herbie
Rules
729×cancel-sign-sub-inv_binary64
529×+-commutative_binary64
509×fma-neg_binary64
376×fma-def_binary64
362×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
074500
1214492
2676482
33384463
Stop Event
node limit
Counts
82 → 64
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))
-1
(-.f64 w 1)
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w) 1)
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 w 3)) (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w)) 1)
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (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)))
(+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 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 (fma.f64 l (log.f64 l) (neg.f64 l)))))
(fma.f64 (-.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))) (*.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 (fma.f64 l (log.f64 l) (neg.f64 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 (fma.f64 l (log.f64 l) (neg.f64 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 (fma.f64 l (log.f64 l) (neg.f64 l)) 1/2)))) (pow.f64 w 3)))))
(+.f64 (fma.f64 (-.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))) (*.f64 w w) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)) (*.f64 (-.f64 (*.f64 l (+.f64 (+.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))))) (log.f64 l))) (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)))
(+.f64 l (*.f64 w (+.f64 (*.f64 w (+.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 (-.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) 1) (*.f64 (log.f64 l) -1/2))) 1/6)) (*.f64 1/2 (-.f64 l (*.f64 l (log.f64 l)))))))) (fma.f64 l (log.f64 l) (neg.f64 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))
-1
(-.f64 w 1)
(+.f64 w -1)
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w) 1)
(+.f64 (fma.f64 -1/2 (*.f64 w w) w) -1)
(+.f64 -1 (fma.f64 (*.f64 w w) -1/2 w))
(+.f64 -1 (fma.f64 w (*.f64 w -1/2) w))
(+.f64 w (fma.f64 w (*.f64 w -1/2) -1))
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 w 3)) (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w)) 1)
(+.f64 (fma.f64 1/6 (pow.f64 w 3) (fma.f64 -1/2 (*.f64 w w) w)) -1)
(+.f64 -1 (fma.f64 1/6 (pow.f64 w 3) (fma.f64 (*.f64 w w) -1/2 w)))
(+.f64 -1 (fma.f64 w (*.f64 w -1/2) (fma.f64 1/6 (pow.f64 w 3) w)))
(+.f64 w (fma.f64 (*.f64 w w) (+.f64 -1/2 (*.f64 w 1/6)) -1))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))
(/.f64 -1 (exp.f64 w))

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 10 to 4 computations (60% saved)

series4.0ms (0%)

Counts
1 → 4
Calls

6 calls:

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

rewrite57.0ms (0.4%)

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 expm1.f64 (log1p.f64 (/.f64 l (exp.f64 w))))))) (#(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))))))

simplify54.0ms (0.4%)

Algorithm
egg-herbie
Rules
653×unsub-neg_binary64
409×associate--r+_binary64
381×associate-+l-_binary64
355×associate--l+_binary64
300×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03173
110558
242553
3254649
4713549
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 (fma.f64 (*.f64 w (*.f64 l 1/2)) w l) (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 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 l w)) (*.f64 (*.f64 w w) (+.f64 (*.f64 w (*.f64 l 1/6)) (*.f64 l -1/2))))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (+.f64 (*.f64 l 1/2) (*.f64 w (*.f64 l -1/6)))) l)))

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))))
0.0b
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
0.3b
(*.f64 w (log.f64 l))
0.5b
(*.f64 l (*.f64 w (log.f64 l)))
Compiler

Compiled 41 to 9 computations (78% saved)

series40.0ms (0.3%)

Counts
4 → 55
Calls

24 calls:

TimeVariablePointExpression
23.0ms
w
@0
(*.f64 l (*.f64 w (log.f64 l)))
6.0ms
l
@0
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
l
@-inf
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
l
@inf
(*.f64 l (*.f64 w (log.f64 l)))
1.0ms
w
@inf
(*.f64 l (*.f64 w (log.f64 l)))

rewrite89.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
564×log-prod_binary64
449×pow-prod-down_binary64
399×fma-def_binary64
261×pow2_binary64
232×pow-unpow_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify69.0ms (0.5%)

Algorithm
egg-herbie
Rules
461×associate-+l+_binary64
460×distribute-rgt-in_binary64
421×distribute-lft-in_binary64
362×times-frac_binary64
357×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
070833
1220728
2731645
32840645
47606645
Stop Event
node limit
Counts
246 → 131
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 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)))
l
(+.f64 l (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w))
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w) (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l)))))))
(+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (*.f64 -1/6 l))) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w) (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 (*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(+.f64 (*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(+.f64 (*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l))))
(+.f64 (*.f64 l (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(+.f64 (*.f64 l (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(+.f64 (*.f64 l (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 -1 (*.f64 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 -1 (*.f64 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 -1 (*.f64 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 -1 (*.f64 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 l (*.f64 w (log.f64 l)))
(*.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))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.f64 w (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w))
(neg.f64 (*.f64 (neg.f64 (log.f64 l)) w))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.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))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.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))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.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))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.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))
(neg.f64 (neg.f64 (*.f64 w (log.f64 l))))
(*.f64 w (log.f64 l))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.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 (*.f64 w (log.f64 l))) (neg.f64 l))
(*.f64 (*.f64 l w) (log.f64 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 (fma.f64 l (log.f64 l) (neg.f64 l)) l)
(+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w) (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l)))))))
(+.f64 l (fma.f64 (fma.f64 -1 l (*.f64 l (log.f64 l))) w (*.f64 (*.f64 w w) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l))))))
(+.f64 l (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 (*.f64 w w) (fma.f64 l 1/2 (*.f64 (log.f64 l) (neg.f64 l))))))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (*.f64 w w) (*.f64 l (-.f64 1/2 (log.f64 l))) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 w (*.f64 (*.f64 l w) (-.f64 1/2 (log.f64 l))) l))
(+.f64 (*.f64 (pow.f64 w 3) (+.f64 (*.f64 1/2 (*.f64 l (log.f64 l))) (*.f64 -1/6 l))) (+.f64 l (+.f64 (*.f64 (+.f64 (*.f64 -1 l) (*.f64 l (log.f64 l))) w) (*.f64 (pow.f64 w 2) (+.f64 (*.f64 1/2 l) (*.f64 -1 (*.f64 l (log.f64 l))))))))
(fma.f64 (pow.f64 w 3) (fma.f64 1/2 (*.f64 l (log.f64 l)) (*.f64 l -1/6)) (+.f64 l (fma.f64 (fma.f64 -1 l (*.f64 l (log.f64 l))) w (*.f64 (*.f64 w w) (fma.f64 1/2 l (*.f64 (neg.f64 l) (log.f64 l)))))))
(+.f64 (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 (*.f64 w w) (fma.f64 l 1/2 (*.f64 (log.f64 l) (neg.f64 l))))) (fma.f64 (pow.f64 w 3) (fma.f64 (*.f64 l 1/2) (log.f64 l) (*.f64 l -1/6)) l))
(fma.f64 (pow.f64 w 3) (*.f64 l (+.f64 (*.f64 (log.f64 l) 1/2) -1/6)) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (*.f64 w w) (*.f64 l (-.f64 1/2 (log.f64 l))) l)))
(fma.f64 (pow.f64 w 3) (*.f64 l (+.f64 -1/6 (*.f64 (log.f64 l) 1/2))) (fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 w (*.f64 (*.f64 l w) (-.f64 1/2 (log.f64 l))) l)))
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l))))
(*.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 (neg.f64 w)))
(*.f64 (*.f64 w (log.f64 l)) (/.f64 l (exp.f64 w)))
(*.f64 l (*.f64 (log.f64 l) (/.f64 w (exp.f64 w))))
(*.f64 l (*.f64 w (/.f64 (log.f64 l) (exp.f64 w))))
(+.f64 (*.f64 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (*.f64 w (log.f64 l)))) (*.f64 (exp.f64 (neg.f64 w)) l))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l))))
(*.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 (neg.f64 w)))
(*.f64 (*.f64 w (log.f64 l)) (/.f64 l (exp.f64 w)))
(*.f64 l (*.f64 (log.f64 l) (/.f64 w (exp.f64 w))))
(*.f64 l (*.f64 w (/.f64 (log.f64 l) (exp.f64 w))))
(+.f64 (*.f64 l (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (*.f64 -1 w))) (*.f64 l (*.f64 w (*.f64 (exp.f64 (*.f64 -1 w)) (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 (exp.f64 (neg.f64 w)) (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) w)))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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 l (*.f64 (exp.f64 (neg.f64 w)) (-.f64 (*.f64 -1 (*.f64 w (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1))))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 (*.f64 l (*.f64 w (log.f64 l))) l))
(*.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)))

localize35.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1))))
0.3b
(*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1))
2.5b
(/.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))
2.9b
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
Compiler

Compiled 98 to 53 computations (45.9% saved)

series16.0ms (0.1%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
l
@0
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
2.0ms
l
@-inf
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
1.0ms
l
@inf
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
1.0ms
l
@-inf
(/.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))
1.0ms
w
@inf
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)

rewrite100.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
874×log-prod_binary64
600×fma-def_binary64
300×fma-neg_binary64
283×log1p-udef_binary64
282×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01597
132791
2473091
Stop Event
node limit
Counts
4 → 199
Calls
Call 1
Inputs
(fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l)
(/.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 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1))
(*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 l (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) l)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))) (cbrt.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2) (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 3) (pow.f64 l 3)) (fma.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) (-.f64 (*.f64 l l) (*.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) (neg.f64 (*.f64 l l))) (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 l) (exp.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 l)) (exp.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))) (+.f64 1 (expm1.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))) (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) 2) (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) (sqrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (exp.f64 (neg.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (/.f64 1 (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 1) (/.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (exp.f64 w) 2))) (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2) (cbrt.f64 (pow.f64 (exp.f64 w) 2))) (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (cbrt.f64 (pow.f64 (exp.f64 w) 2))) (/.f64 (sqrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 w))) (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) 2) (sqrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 w) (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (neg.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) 3) (pow.f64 (exp.f64 w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (fma.f64 (*.f64 l (log.f64 l)) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) l)) w) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 w (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) 1) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2)))) (cbrt.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2)))))) (log.f64 (cbrt.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))))) (log.f64 (sqrt.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) 3) (pow.f64 (*.f64 w (*.f64 w 1/2)) 3)) (fma.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (-.f64 (pow.f64 (*.f64 w (*.f64 w 1/2)) 2) (*.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 w (*.f64 w 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (pow.f64 (*.f64 w (*.f64 w 1/2)) 2)) (-.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 w (*.f64 w 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 (log.f64 l) 3)) (*.f64 w (*.f64 w 1/2))) (-.f64 (fma.f64 (log.f64 l) (log.f64 l) 1) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (log.f64 l) (log.f64 l) -1) (*.f64 w (*.f64 w 1/2))) (+.f64 (log.f64 l) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 1 (pow.f64 (log.f64 l) 3))) (-.f64 (fma.f64 (log.f64 l) (log.f64 l) 1) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (fma.f64 (log.f64 l) (log.f64 l) -1)) (+.f64 (log.f64 l) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 w)) w) (exp.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 w (*.f64 w 1/2)))) (exp.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (+.f64 1 (expm1.f64 (*.f64 w (*.f64 w 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 (*.f64 l (E.f64)) (*.f64 w (*.f64 w 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log1p.f64 (log.f64 l)) (log.f64 (*.f64 w (*.f64 w 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 (log1p.f64 (log.f64 l)) (log.f64 (*.f64 w (*.f64 w 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) (*.f64 w (*.f64 w 1/2)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 w 1/2) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 (*.f64 w 1/2) (log.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (*.f64 w w) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w 1/2) w (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w 1/2) (*.f64 (log.f64 l) w) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (*.f64 w 1/2)) (log.f64 l) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (*.f64 w 1/2)) 1 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 w (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w w) 1/2 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w 1/2)) 2) (*.f64 (cbrt.f64 (*.f64 w 1/2)) w) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 l)) 2) (*.f64 (cbrt.f64 (log.f64 l)) (*.f64 w (*.f64 w 1/2))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) (pow.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 2) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 2) (cbrt.f64 (*.f64 w (*.f64 w 1/2))) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 2) (*.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) (log.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 2) (*.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 w) 2) (*.f64 (cbrt.f64 w) (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 w 1/2)) (*.f64 (sqrt.f64 (*.f64 w 1/2)) w) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 l)) (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 w (*.f64 w 1/2))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 1/2)) (*.f64 w (sqrt.f64 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 1/2)) (*.f64 (*.f64 w (sqrt.f64 1/2)) (log.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 1/2)) (*.f64 (*.f64 w (sqrt.f64 1/2)) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 w) (*.f64 (sqrt.f64 w) (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) 1 (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) w) (*.f64 w 1/2) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (cbrt.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (cbrt.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (sqrt.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (sqrt.f64 1/2)) (sqrt.f64 (log.f64 l))) (*.f64 (*.f64 w (sqrt.f64 1/2)) (sqrt.f64 (log.f64 l))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 w (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 w (sqrt.f64 1/2))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (*.f64 w 1/2)) w (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (pow.f64 (cbrt.f64 (log.f64 l)) 2)) (cbrt.f64 (log.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (sqrt.f64 (log.f64 l))) (sqrt.f64 (log.f64 l)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (*.f64 w w)) 1/2 (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (pow.f64 (cbrt.f64 (*.f64 w (*.f64 w 1/2))) 2)) (cbrt.f64 (*.f64 w (*.f64 w 1/2))) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (*.f64 w (sqrt.f64 1/2))) (*.f64 w (sqrt.f64 1/2)) (*.f64 w (*.f64 w 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (pow.f64 (cbrt.f64 (*.f64 w 1/2)) 2)) (cbrt.f64 (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 (*.f64 w 1/2))) (sqrt.f64 (*.f64 w 1/2)) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w 1/2) (pow.f64 (cbrt.f64 w) 2)) (cbrt.f64 w) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w 1/2) (sqrt.f64 w)) (sqrt.f64 w) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 l) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (log.f64 l) w) 1) (*.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))) (cbrt.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))))) (log.f64 (cbrt.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))) (log.f64 (sqrt.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (log.f64 l) w) 3) (pow.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) 3)) (fma.f64 (*.f64 (log.f64 l) w) (*.f64 (log.f64 l) w) (-.f64 (*.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (*.f64 (*.f64 (log.f64 l) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (log.f64 l) w) (*.f64 (log.f64 l) w)) (*.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))) (-.f64 (*.f64 (log.f64 l) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 w 3) (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 3)) (log.f64 l)) (fma.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (-.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) w) (*.f64 w w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 w w) (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 2)) (log.f64 l)) (-.f64 w (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 l) (+.f64 (pow.f64 w 3) (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 3))) (fma.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (-.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) w) (*.f64 w w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 l) (-.f64 (*.f64 w w) (pow.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) 2))) (-.f64 w (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (exp.f64 (*.f64 (log.f64 l) w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 l) 3) (pow.f64 (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w) 3) (pow.f64 (log.f64 l) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 l (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (log.f64 l) (fma.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) w))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) w (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (log.f64 l) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 w (*.f64 (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (*.f64 w 1/2)) (*.f64 (+.f64 (log.f64 l) 1) (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (log.f64 l) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (log.f64 l) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 l)) 2) (*.f64 (cbrt.f64 (log.f64 l)) (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 l)) 2) (*.f64 (cbrt.f64 (log.f64 l)) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) 2) (*.f64 (cbrt.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 w) 2) (*.f64 (cbrt.f64 w) (log.f64 l)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 l)) (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 l)) (*.f64 (sqrt.f64 (log.f64 l)) w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) (*.f64 (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 w) (*.f64 (sqrt.f64 w) (log.f64 l)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))) (+.f64 (log.f64 l) 1) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) w) 1 (*.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) w) (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (log.f64 l) w)) (cbrt.f64 (*.f64 (log.f64 l) w))) (cbrt.f64 (*.f64 (log.f64 l) w)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (cbrt.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))) (cbrt.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (log.f64 l) w)) (sqrt.f64 (*.f64 (log.f64 l) w)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (sqrt.f64 (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l))))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 w) (sqrt.f64 (log.f64 l))) (*.f64 (sqrt.f64 w) (sqrt.f64 (log.f64 l))) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 (log.f64 l)) (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2)))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) (sqrt.f64 (log.f64 l))) (*.f64 (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) (sqrt.f64 (log.f64 l))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (log.f64 l)) (sqrt.f64 w)) (*.f64 (sqrt.f64 (log.f64 l)) (sqrt.f64 w)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 l) 1)) (*.f64 w (*.f64 w 1/2)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (pow.f64 (cbrt.f64 (log.f64 l)) 2)) (cbrt.f64 (log.f64 l)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 w (sqrt.f64 (log.f64 l))) (sqrt.f64 (log.f64 l)) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (pow.f64 (cbrt.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) 2)) (cbrt.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1))))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2)))) (*.f64 (hypot.f64 1 (sqrt.f64 (log.f64 l))) (*.f64 w (sqrt.f64 1/2))) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (pow.f64 (cbrt.f64 (log.f64 l)) 2)) (cbrt.f64 (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 w (*.f64 1/2 (*.f64 w (+.f64 (log.f64 l) 1)))) (sqrt.f64 (log.f64 l))) (sqrt.f64 (log.f64 l)) (*.f64 (log.f64 l) w))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (pow.f64 (cbrt.f64 w) 2)) (cbrt.f64 w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 l) (sqrt.f64 w)) (sqrt.f64 w) (*.f64 (+.f64 (log.f64 l) 1) (*.f64 (*.f64 w w) (log.f64 (sqrt.f64 l)))))))))

simplify79.0ms (0.6%)

Algorithm
egg-herbie
Rules
674×fma-neg_binary64
513×fma-def_binary64
445×associate-*l*_binary64
440×associate-*r*_binary64
425×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0952308
12962267
210552064
354942059
Stop Event
node limit
Counts
295 → 240
Calls
Call 1
Inputs
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
l
(+.f64 l (*.f64 l (*.f64 w (log.f64 l))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) 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 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) 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 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) 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 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) 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 (pow.f64 w 2) (-.f64 (+.f64 l (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l))))) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(+.f64 (*.f64 (pow.f64 w 2) (-.f64 (+.f64 l (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l))))) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)))) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)) (+.f64 l (+.f64 (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l)))) (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 w (log.f64 l))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
Outputs
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 l (+.f64 1 (*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))) l)
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 -1 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
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 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w))))
(*.f64 l (*.f64 (log.f64 l) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))))
(*.f64 l (*.f64 (*.f64 (log.f64 l) (*.f64 w w)) (fma.f64 (log.f64 l) 1/2 1/2)))
(+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))))
(fma.f64 l (*.f64 (log.f64 l) w) (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))))
(*.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w)))
(*.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w))))
(*.f64 l (*.f64 (log.f64 l) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))))
(*.f64 l (*.f64 (*.f64 (log.f64 l) (*.f64 w w)) (fma.f64 (log.f64 l) 1/2 1/2)))
(+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))))
(fma.f64 l (*.f64 (log.f64 l) w) (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))))
(*.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w)))
(*.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)))
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(+.f64 l (+.f64 (*.f64 l (*.f64 w (log.f64 l))) (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))))
(*.f64 l (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l)
(fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l)
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))))))) (exp.f64 w))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (exp.f64 w))
(*.f64 -1 (/.f64 (*.f64 l (-.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) 1)) (exp.f64 w)))
(/.f64 l (/.f64 (exp.f64 w) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w) (log.f64 l) 1)))
(*.f64 (/.f64 l (exp.f64 w)) (fma.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w) 1))
(/.f64 (fma.f64 (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w) (*.f64 l (log.f64 l)) l) (exp.f64 w))
(/.f64 (fma.f64 l (*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w)) l) (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 (pow.f64 w 2) (-.f64 (+.f64 l (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l))))) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (*.f64 w w) (+.f64 l (-.f64 (*.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (+.f64 1 (log.f64 l)))) (fma.f64 l (log.f64 l) (*.f64 l 1/2)))) (+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l))))
(fma.f64 (*.f64 w w) (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 l (*.f64 l (log.f64 l)))) l) (*.f64 l (+.f64 (log.f64 l) 1/2))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (*.f64 w (-.f64 (*.f64 (log.f64 l) (-.f64 (*.f64 l (fma.f64 (log.f64 l) 1/2 1/2)) l)) (*.f64 l -1/2))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(fma.f64 w (*.f64 w (fma.f64 (log.f64 l) (fma.f64 l (fma.f64 (log.f64 l) 1/2 1/2) (neg.f64 l)) (*.f64 l 1/2))) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l))
(+.f64 (*.f64 (pow.f64 w 2) (-.f64 (+.f64 l (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l))))) (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)))) (+.f64 l (+.f64 (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)) (*.f64 (-.f64 (+.f64 (*.f64 l (log.f64 l)) (*.f64 1/2 l)) (+.f64 l (+.f64 (*.f64 1/2 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (log.f64 l)))) (+.f64 (*.f64 1/6 l) (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3)))))
(fma.f64 (*.f64 w w) (+.f64 l (-.f64 (*.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (+.f64 1 (log.f64 l)))) (fma.f64 l (log.f64 l) (*.f64 l 1/2)))) (+.f64 l (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (-.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l 1/2)) l) (fma.f64 1/2 (*.f64 l (*.f64 (log.f64 l) (+.f64 1 (log.f64 l)))) (fma.f64 1/6 l (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l))))) (pow.f64 w 3)))))
(fma.f64 (*.f64 w w) (-.f64 (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 l (*.f64 l (log.f64 l)))) l) (*.f64 l (+.f64 (log.f64 l) 1/2))) (+.f64 l (fma.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) 1/2)) (+.f64 l (fma.f64 1/2 (*.f64 (log.f64 l) (+.f64 l (*.f64 l (log.f64 l)))) (fma.f64 l 1/6 (*.f64 1/2 (-.f64 (*.f64 l (log.f64 l)) l)))))) (pow.f64 w 3) (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))))
(fma.f64 w (*.f64 w (-.f64 (*.f64 (log.f64 l) (-.f64 (*.f64 l (fma.f64 (log.f64 l) 1/2 1/2)) l)) (*.f64 l -1/2))) (fma.f64 (-.f64 (fma.f64 l (log.f64 l) (*.f64 l -1/2)) (fma.f64 l 1/6 (*.f64 1/2 (+.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 (log.f64 l) (fma.f64 l (log.f64 l) l)))))) (pow.f64 w 3) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)))
(fma.f64 w (*.f64 w (fma.f64 (log.f64 l) (fma.f64 l (fma.f64 (log.f64 l) 1/2 1/2) (neg.f64 l)) (*.f64 l 1/2))) (fma.f64 (-.f64 (*.f64 l (+.f64 (log.f64 l) 1/2)) (+.f64 (*.f64 l (+.f64 (*.f64 (log.f64 l) (fma.f64 (log.f64 l) 1/2 1/2)) 1/6)) (*.f64 l (fma.f64 (log.f64 l) 1/2 1/2)))) (pow.f64 w 3) (fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)))
(*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))
(/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w))
(*.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))))
(*.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w))))
(+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))))
(fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (*.f64 (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))) (+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (exp.f64 w))))
(+.f64 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)) (fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (/.f64 l (exp.f64 w))))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (fma.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))) (+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (exp.f64 w))))
(+.f64 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)) (fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (/.f64 l (exp.f64 w))))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (fma.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))
(/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w))
(*.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))))
(*.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w))))
(+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))))
(fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (*.f64 (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))) (+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (exp.f64 w))))
(+.f64 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)) (fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (/.f64 l (exp.f64 w))))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (fma.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(+.f64 (/.f64 (*.f64 l (*.f64 w (log.f64 l))) (exp.f64 w)) (+.f64 (/.f64 l (exp.f64 w)) (*.f64 1/2 (/.f64 (*.f64 l (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))) (exp.f64 w)))))
(+.f64 (/.f64 l (/.f64 (exp.f64 w) (*.f64 (log.f64 l) w))) (+.f64 (/.f64 (*.f64 (*.f64 l 1/2) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (exp.f64 w)) (/.f64 l (exp.f64 w))))
(+.f64 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w)) (fma.f64 1/2 (*.f64 (/.f64 l (exp.f64 w)) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (log.f64 l) (*.f64 w w)))) (/.f64 l (exp.f64 w))))
(fma.f64 1/2 (*.f64 (/.f64 (fma.f64 l (log.f64 l) l) (exp.f64 w)) (*.f64 (log.f64 l) (*.f64 w w))) (fma.f64 (/.f64 l (exp.f64 w)) (*.f64 (log.f64 l) w) (/.f64 l (exp.f64 w))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)))
(*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w)))
(*.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (log.f64 l) (+.f64 w (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (+.f64 w (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (*.f64 -1 (log.f64 (/.f64 1 l)))))))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 w 2) (+.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))))) w) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 w (log.f64 l))
(*.f64 (log.f64 l) w)
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))
(*.f64 (*.f64 1/2 (+.f64 1 (log.f64 l))) (*.f64 (log.f64 l) (*.f64 w w)))
(*.f64 (log.f64 l) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w))))
(*.f64 (*.f64 (log.f64 l) (*.f64 w w)) (fma.f64 (log.f64 l) 1/2 1/2))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l))))
(*.f64 (*.f64 1/2 (+.f64 1 (log.f64 l))) (*.f64 (log.f64 l) (*.f64 w w)))
(*.f64 (log.f64 l) (*.f64 (+.f64 1 (log.f64 l)) (*.f64 1/2 (*.f64 w w))))
(*.f64 (*.f64 (log.f64 l) (*.f64 w w)) (fma.f64 (log.f64 l) 1/2 1/2))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))
(+.f64 (*.f64 w (log.f64 l)) (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 (pow.f64 w 2) (log.f64 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (*.f64 w w)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 1/2 (*.f64 w w)) (+.f64 1 (log.f64 l)) w))
(*.f64 (log.f64 l) (fma.f64 (*.f64 w w) (fma.f64 (log.f64 l) 1/2 1/2) w))

localize48.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))
0.3b
(*.f64 l (+.f64 (log.f64 l) -1))
0.5b
(*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))
1.1b
(*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))))))
Compiler

Compiled 140 to 87 computations (37.9% saved)

series12.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

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

rewrite88.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
877×prod-diff_binary64
315×expm1-udef_binary64
315×log1p-udef_binary64
186×add-sqr-sqrt_binary64
181×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01566
135459
2532859
Stop Event
node limit
Counts
4 → 101
Calls
Call 1
Inputs
(*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2)))))))
(*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))
(*.f64 l (+.f64 (log.f64 l) -1))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 l 1/2) w) (*.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 w l)) (*.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) (*.f64 w l)) (*.f64 1/2 (*.f64 w l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 w (*.f64 l 1/2)) (*.f64 w (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w l) 1/2) (*.f64 (*.f64 w l) (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 w l) (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))) (*.f64 (*.f64 w l) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w l) (+.f64 1/8 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 3))) (+.f64 1/4 (*.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) (-.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 w l) (-.f64 1/4 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 2))) (-.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 w l)) (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 w 3) (pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 3) (pow.f64 w 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) (*.f64 w l))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (log.f64 l)) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)) (neg.f64 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (log.f64 l)) (*.f64 (log.f64 (sqrt.f64 l)) (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (log.f64 l)) 1) (*.f64 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 l) -1/2) (*.f64 (log.f64 l) (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (neg.f64 (log.f64 l)) 3) (pow.f64 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)) 3)) (+.f64 (*.f64 (neg.f64 (log.f64 l)) (neg.f64 (log.f64 l))) (-.f64 (*.f64 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2))) (*.f64 (neg.f64 (log.f64 l)) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (neg.f64 (log.f64 l)) (neg.f64 (log.f64 l))) (*.f64 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)))) (-.f64 (neg.f64 (log.f64 l)) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 3)) (log.f64 l)) (+.f64 1 (+.f64 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 2) (fma.f64 1/2 (log.f64 l) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 2)) (log.f64 l)) (-.f64 -3/2 (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 l) (+.f64 -1 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 3))) (+.f64 1 (+.f64 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 2) (fma.f64 1/2 (log.f64 l) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 l) (-.f64 1 (pow.f64 (fma.f64 1/2 (log.f64 l) 1/2) 2))) (-.f64 -3/2 (log.f64 (sqrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 l (+.f64 (log.f64 (sqrt.f64 l)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 l (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 l (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 l) -1 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (log.f64 l) (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) 1/2)))))))
((#(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 (exp.f64 (log1p.f64 (fma.f64 l (log.f64 l) (neg.f64 l)))) 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 (+.f64 (pow.f64 (log.f64 l) 2) 1) (neg.f64 (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (log.f64 l) (log.f64 l) -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 (+.f64 (pow.f64 (log.f64 l) 2) 1) (neg.f64 (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (fma.f64 (log.f64 l) (log.f64 l) -1)) (+.f64 (log.f64 l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 l (log.f64 l) (neg.f64 l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 l (log.f64 l) (neg.f64 l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 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 log.f64 (+.f64 1 (expm1.f64 (fma.f64 l (log.f64 l) (neg.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 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 expm1.f64 (log1p.f64 (fma.f64 l (log.f64 l) (neg.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 l (log.f64 l) (neg.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 l (log.f64 l) (neg.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 l (log.f64 l) (neg.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 +.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) (*.f64 l 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 l 1/2) 1) (*.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 l 1/2) 3) (pow.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) 3)) (+.f64 (*.f64 (*.f64 l 1/2) (*.f64 l 1/2)) (-.f64 (*.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l))) (*.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 l 1/2) (*.f64 l 1/2)) (*.f64 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)) (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)))) (-.f64 (*.f64 l 1/2) (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/8 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 3)) l) (+.f64 1/4 (*.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) (-.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1/4 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 2)) l) (-.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (+.f64 1/8 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 3))) (+.f64 1/4 (*.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) (-.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (-.f64 1/4 (pow.f64 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2)) 2))) (-.f64 1/2 (*.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 l 3) (pow.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (fma.f64 (log.f64 l) (+.f64 (log.f64 (sqrt.f64 l)) -1/2) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l 1/2 (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 l (*.f64 (log.f64 l) (*.f64 (+.f64 (log.f64 (sqrt.f64 l)) -1/2) l)))))))

simplify62.0ms (0.4%)

Algorithm
egg-herbie
Rules
737×unsub-neg_binary64
602×distribute-rgt-in_binary64
580×distribute-lft-in_binary64
547×associate-*r*_binary64
515×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046972
1130900
2411900
31466900
45909900
Stop Event
node limit
Counts
161 → 117
Calls
Call 1
Inputs
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -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 (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))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
Outputs
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l)))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))) w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2))))))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) (*.f64 l w))
(*.f64 l (*.f64 w (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2)))))
(*.f64 (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2) (*.f64 l w))
(*.f64 l (*.f64 w (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2)))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))
(*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (log.f64 l) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 (-.f64 (*.f64 -1 (log.f64 (/.f64 1 l))) 1) l)
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 l (-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))) 1))
(*.f64 l (+.f64 (log.f64 l) -1))
(fma.f64 l (log.f64 l) (neg.f64 l))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (log.f64 l)) 1/2) (log.f64 l))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 l (+.f64 1/2 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 l)) (-.f64 (*.f64 -1/2 (log.f64 (/.f64 1 l))) 1/2)))))
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))
(*.f64 (+.f64 1/2 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l))))) 1/2) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 l)))))) l)
(*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2))))
(*.f64 l (fma.f64 (log.f64 l) (fma.f64 1/2 (log.f64 l) -1/2) 1/2))

eval282.0ms (2%)

Compiler

Compiled 14032 to 6491 computations (53.7% saved)

prune134.0ms (1%)

Pruning

21 alts after pruning (18 fresh and 3 done)

PrunedKeptTotal
New60411615
Fresh5712
Picked101
Done235
Total61221633
Error
0.1b
Counts
633 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
4.6b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
0.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
1.6b
(/.f64 l (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
2.3b
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
13.3b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) l)))
13.2b
(-.f64 l (*.f64 l w))
0.8b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
1.3b
(*.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))))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
1.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
6.3b
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.6b
(*.f64 (exp.f64 (neg.f64 w)) l)
12.9b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
1.3b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
6.3b
(/.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))
6.3b
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
1.3b
(*.f64 (neg.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w)))) (/.f64 1 (neg.f64 (exp.f64 w))))
13.0b
l
Compiler

Compiled 507 to 327 computations (35.5% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 30 to 11 computations (63.3% saved)

series3.0ms (0%)

Counts
2 → 28
Calls

9 calls:

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

rewrite48.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
781×pow1_binary64
719×add-log-exp_binary64
717×log1p-expm1-u_binary64
717×expm1-log1p-u_binary64
702×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0922
118617
2236917
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(/.f64 -1 (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 (+.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 w))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (neg.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 l (exp.f64 w)) (*.f64 (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 (/.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 /.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 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 neg.f64 (/.f64 (pow.f64 l (exp.f64 w)) (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 (/.f64 -1 (exp.f64 w)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1 (exp.f64 w)) 3) (pow.f64 (pow.f64 l (exp.f64 w)) 3)))))) (#(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 log1p.f64 (expm1.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (pow.f64 l (exp.f64 w))) w))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 -1 (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 -1 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 2) (/.f64 -1 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 -1 (exp.f64 w))) (sqrt.f64 (/.f64 -1 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 w)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1 (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 -1 (exp.f64 w))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (exp.f64 w)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 w) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (pow.f64 (exp.f64 w) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 -1 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 -1 (exp.f64 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 -1 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 -1 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 -1) w))))))

simplify46.0ms (0.3%)

Algorithm
egg-herbie
Rules
729×cancel-sign-sub-inv_binary64
528×+-commutative_binary64
509×fma-neg_binary64
377×fma-def_binary64
366×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
073452
1213444
2670434
33369415
Stop Event
node limit
Counts
71 → 60
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))
-1
(-.f64 w 1)
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w) 1)
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 w 3)) (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w)) 1)
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)))
(+.f64 l (*.f64 w (fma.f64 l (log.f64 l) (neg.f64 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 (fma.f64 l (log.f64 l) (neg.f64 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 1/2 (*.f64 (log.f64 l) 1/2))) (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 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)))) 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 (-.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 (fma.f64 l (log.f64 l) (neg.f64 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 (+.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))))) (log.f64 l))) (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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) (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 -1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))) 1/6)) (*.f64 1/2 (-.f64 l (*.f64 l (log.f64 l))))) (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))
-1
(-.f64 w 1)
(+.f64 w -1)
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w) 1)
(+.f64 (fma.f64 -1/2 (*.f64 w w) w) -1)
(+.f64 -1 (fma.f64 (*.f64 w w) -1/2 w))
(+.f64 w (fma.f64 w (*.f64 w -1/2) -1))
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 w 3)) (+.f64 (*.f64 -1/2 (pow.f64 w 2)) w)) 1)
(+.f64 (fma.f64 1/6 (pow.f64 w 3) (fma.f64 -1/2 (*.f64 w w) w)) -1)
(+.f64 -1 (fma.f64 1/6 (pow.f64 w 3) (fma.f64 (*.f64 w w) -1/2 w)))
(+.f64 (fma.f64 w (*.f64 w -1/2) w) (fma.f64 1/6 (pow.f64 w 3) -1))
(+.f64 w (fma.f64 (*.f64 w w) (+.f64 -1/2 (*.f64 w 1/6)) -1))

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 12 to 4 computations (66.7% saved)

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
l
@-inf
(-.f64 l (*.f64 l w))
0.0ms
w
@-inf
(-.f64 l (*.f64 l w))
0.0ms
w
@inf
(-.f64 l (*.f64 l w))

rewrite42.0ms (0.3%)

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
216507
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 expm1.f64 (log1p.f64 (-.f64 l (*.f64 l w))))))) (#(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)))))))

simplify21.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
013160
134160
251160
388160
4122160
5201160
6340160
7418160
8488160
9494160
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 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 (-.f64 1 w) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(*.f64 l (+.f64 1 (*.f64 -1 w)))
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.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 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.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 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(*.f64 l (-.f64 1 w))
(-.f64 l (*.f64 w l))
(fma.f64 l (neg.f64 w) l)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 l (exp.f64 w))
Compiler

Compiled 23 to 8 computations (65.2% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

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
l
@0
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))

rewrite50.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
2211722
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 expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(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 -.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 expm1.f64 (log1p.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(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))))))))

simplify60.0ms (0.4%)

Algorithm
egg-herbie
Rules
678×fma-neg_binary64
513×fma-def_binary64
446×sub-neg_binary64
364×associate-+l+_binary64
342×distribute-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
098833
1305825
21027801
35369799
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 (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 (-.f64 (*.f64 l (log.f64 l)) l) (fma.f64 (+.f64 l (*.f64 l (-.f64 (*.f64 1/2 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (+.f64 (log.f64 l) 1/2)))) (*.f64 w w) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 (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)) (*.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 (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 (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) (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 (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 (*.f64 l -7/6) (*.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 1/2))) (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 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 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)))))) (/.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 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) 1/2) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)))))))) (/.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))))
(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))))
(/.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)))

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 30 to 7 computations (76.7% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite54.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
114517
2184617
Stop Event
node limit
Counts
2 → 59
Calls
Call 1
Inputs
(expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w))))
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) 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))) (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 l l) (exp.f64 w))) (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 (-.f64 (pow.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) 3) 1) (+.f64 (*.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) (+.f64 (pow.f64 l (exp.f64 w)) 1)) (+.f64 1 (*.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) (+.f64 (pow.f64 l (exp.f64 w)) 1)) 1) (+.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l (+.f64 (*.f64 (exp.f64 w) 1/2) (*.f64 (exp.f64 w) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l (*.f64 2 (*.f64 (exp.f64 w) 1/2)))))) (#(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 (pow.f64 (pow.f64 l (exp.f64 w)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l l) (*.f64 (exp.f64 w) 1/2))))) (#(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 (pow.f64 l (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l (sqrt.f64 (exp.f64 w))) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l l) (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 -.f64 (+.f64 1 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (pow.f64 l (exp.f64 w)) 1) (exp.f64 w)) (exp.f64 (neg.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 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 expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(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))))))

simplify53.0ms (0.4%)

Algorithm
egg-herbie
Rules
711×cancel-sign-sub-inv_binary64
498×fma-def_binary64
481×fma-neg_binary64
395×distribute-rgt-out_binary64
301×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075652
1230634
2795621
34198604
Stop Event
node limit
Counts
107 → 79
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))))))
(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))
(/.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
(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)
(fma.f64 (log.f64 l) (*.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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) (*.f64 1/2 w)))) 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 (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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2)) (*.f64 1/2 w)))) (fma.f64 (pow.f64 w 3) (*.f64 l (fma.f64 1/6 (pow.f64 (log.f64 l) 3) (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/2) 1/6)))) l))
(fma.f64 l (*.f64 (log.f64 l) (+.f64 (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)) w)) (fma.f64 l (*.f64 (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) (+.f64 (*.f64 (log.f64 l) 1/6) 1/2)))) (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))
(/.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)))
(+.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 w (-.f64 (*.f64 l (log.f64 l)) l) (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))))) 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 (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 (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) (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)) (*.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 (log.f64 l) (+.f64 1/2 (*.f64 (log.f64 l) 1/2))) (+.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 (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))))))) 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 (fma.f64 l (log.f64 l) (neg.f64 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))

eval84.0ms (0.6%)

Compiler

Compiled 6124 to 2467 computations (59.7% saved)

prune71.0ms (0.5%)

Pruning

29 alts after pruning (21 fresh and 8 done)

PrunedKeptTotal
New36512377
Fresh4913
Picked011
Done077
Total36929398
Error
0.1b
Counts
398 → 29
Alt Table
Click to see full alt table
StatusErrorProgram
4.6b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
0.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
1.6b
(/.f64 l (exp.f64 w))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
1.3b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
13.3b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) l)))
61.2b
(*.f64 w (neg.f64 l))
2.3b
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
0.8b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
0.4b
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
13.2b
(-.f64 l (*.f64 l w))
7.2b
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
1.3b
(*.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))))
13.0b
l
1.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
13.1b
(/.f64 1 (/.f64 1 l))
0.3b
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
4.7b
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
32.6b
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
6.3b
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.6b
(*.f64 (exp.f64 (neg.f64 w)) l)
12.9b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
0.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
6.3b
(/.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))
6.3b
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
1.3b
(*.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))))
Compiler

Compiled 681 to 432 computations (36.6% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 43 to 15 computations (65.1% saved)

series8.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
w
@inf
(cbrt.f64 (exp.f64 w))
1.0ms
w
@-inf
(cbrt.f64 (exp.f64 w))
1.0ms
w
@inf
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
1.0ms
w
@inf
(pow.f64 (cbrt.f64 (exp.f64 w)) 2)
0.0ms
w
@-inf
(pow.f64 (cbrt.f64 (exp.f64 w)) 2)

rewrite68.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
519×log-prod_binary64
393×exp-prod_binary64
302×pow-prod-down_binary64
270×pow-unpow_binary64
263×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01036
121424
2277922
Stop Event
node limit
Counts
3 → 123
Calls
Call 1
Inputs
(cbrt.f64 (exp.f64 w))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
(pow.f64 (cbrt.f64 (exp.f64 w)) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (exp.f64 w)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (exp.f64 w))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (exp.f64 w))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (exp.f64 w)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) (cbrt.f64 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) (cbrt.f64 (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 1/6 w)) (exp.f64 (*.f64 1/6 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) 4)) (sqrt.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 w) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 w)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 w 2/3)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (+.f64 w w)) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 w) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 w)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 1/6 w)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) w)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 w)) (*.f64 (sqrt.f64 w) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 1/3 w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 w 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 w) 2)) (*.f64 (cbrt.f64 w) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (expm1.f64 w)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 1/3 w)) 2)) (cbrt.f64 (*.f64 1/3 w)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 1/3 w))) (sqrt.f64 (*.f64 1/3 w)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 (*.f64 w 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/3 w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 w 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 w) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 1/3 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 w) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 w 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/3 w) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 w) 1) 1/2))))))
((#(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 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 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 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) 2)) (*.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3)))) (exp.f64 (*.f64 -1/3 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 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (*.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (exp.f64 (*.f64 -1/3 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 (/.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (*.f64 w 2/3))) (/.f64 1 (neg.f64 (cbrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 -1/3 w)) (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 l (*.f64 2 (exp.f64 w)))) (cbrt.f64 (exp.f64 w))) (/.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (cbrt.f64 (exp.f64 (*.f64 w 2/3)))) (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) -2) (cbrt.f64 (cbrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) 1) (/.f64 1 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) 2)) 1) (/.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3)))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) 1) (/.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) -2) (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (cbrt.f64 (cbrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) 2)) (cbrt.f64 (exp.f64 (*.f64 w 2/3)))) (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (cbrt.f64 (exp.f64 (*.f64 w 2/3)))) (/.f64 (/.f64 (pow.f64 (sqrt.f64 l) (exp.f64 w)) (cbrt.f64 (exp.f64 w))) (cbrt.f64 (cbrt.f64 (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 1/6 w))) (pow.f64 (cbrt.f64 (exp.f64 w)) -5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 w) -1/6) (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 1/6 w))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) 2)) (exp.f64 (*.f64 1/6 w))) (/.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3)))) (exp.f64 (*.f64 1/6 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)) 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 (neg.f64 (exp.f64 w))) (exp.f64 w)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 (exp.f64 (*.f64 w 2/3)) (pow.f64 l (exp.f64 w))) -3) (exp.f64 w)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (exp.f64 (*.f64 w 2/3)) (pow.f64 l (exp.f64 w))) (cbrt.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 (*.f64 (pow.f64 l (neg.f64 (exp.f64 w))) (exp.f64 w)) 1) -1)))) (#(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 neg.f64 (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (neg.f64 (cbrt.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 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 (/.f64 (exp.f64 (*.f64 w 2/3)) (pow.f64 l (exp.f64 w))) -3) (exp.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 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 (neg.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w)) -1))))) (#(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 +.f64 0 (exp.f64 (*.f64 w 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 (*.f64 w 2/3)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 (*.f64 w 2/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (*.f64 w 2/3))))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (*.f64 w 2/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (exp.f64 (*.f64 w 2/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 w)) (cbrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 w 2/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (*.f64 w 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) (pow.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (exp.f64 w))) 4) (cbrt.f64 (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 w)) (exp.f64 (*.f64 1/6 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 1/6 w)) (sqrt.f64 (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 (*.f64 w 2/3)) 5/6) (cbrt.f64 (cbrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (exp.f64 (*.f64 w 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (exp.f64 (+.f64 w w)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (*.f64 w 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 w))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 w) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 w 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 w w) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 2/3 w)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 w 1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/3 w) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 w) 1) 1))))))

simplify48.0ms (0.3%)

Algorithm
egg-herbie
Rules
717×cancel-sign-sub-inv_binary64
493×fma-neg_binary64
462×fma-def_binary64
323×associate-+l-_binary64
290×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
091608
1258596
2778579
33746562
Stop Event
node limit
Counts
171 → 150
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 1/3 w))
(+.f64 1 (+.f64 (*.f64 1/3 w) (*.f64 1/18 (pow.f64 w 2))))
(+.f64 1 (+.f64 (*.f64 1/162 (pow.f64 w 3)) (+.f64 (*.f64 1/3 w) (*.f64 1/18 (pow.f64 w 2)))))
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(pow.f64 (exp.f64 w) 1/3)
(/.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))
1
(+.f64 1 (*.f64 2/3 w))
(+.f64 1 (+.f64 (*.f64 2/9 (pow.f64 w 2)) (*.f64 2/3 w)))
(+.f64 1 (+.f64 (*.f64 2/9 (pow.f64 w 2)) (+.f64 (*.f64 2/3 w) (*.f64 4/81 (pow.f64 w 3)))))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
Outputs
1
(+.f64 1 (*.f64 1/3 w))
(fma.f64 1/3 w 1)
(+.f64 1 (+.f64 (*.f64 1/3 w) (*.f64 1/18 (pow.f64 w 2))))
(+.f64 1 (fma.f64 1/3 w (*.f64 1/18 (*.f64 w w))))
(+.f64 1 (fma.f64 1/3 w (*.f64 w (*.f64 w 1/18))))
(fma.f64 1/3 w (fma.f64 w (*.f64 w 1/18) 1))
(fma.f64 1/3 w (fma.f64 1/18 (*.f64 w w) 1))
(+.f64 1 (+.f64 (*.f64 1/162 (pow.f64 w 3)) (+.f64 (*.f64 1/3 w) (*.f64 1/18 (pow.f64 w 2)))))
(+.f64 1 (fma.f64 1/162 (pow.f64 w 3) (fma.f64 1/3 w (*.f64 1/18 (*.f64 w w)))))
(+.f64 1 (fma.f64 1/162 (pow.f64 w 3) (fma.f64 1/3 w (*.f64 w (*.f64 w 1/18)))))
(fma.f64 1/162 (pow.f64 w 3) (fma.f64 1/3 w (fma.f64 w (*.f64 w 1/18) 1)))
(+.f64 1 (*.f64 w (+.f64 1/3 (*.f64 w (+.f64 (*.f64 w 1/162) 1/18)))))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (exp.f64 w))
(pow.f64 (exp.f64 w) 1/3)
(cbrt.f64 (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))
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 (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 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 (*.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 (-.f64 (*.f64 l (log.f64 l)) 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))))) (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 (*.f64 l (+.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 (-.f64 (*.f64 l (log.f64 l)) 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 (-.f64 (*.f64 l (log.f64 l)) l) 1/2))))))))
(+.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 (-.f64 (*.f64 l (log.f64 l)) 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 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))))))
(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) (-.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))))))) 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 l (+.f64 (log.f64 l) -1)) (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))
1
(+.f64 1 (*.f64 2/3 w))
(+.f64 1 (*.f64 w 2/3))
(fma.f64 w 2/3 1)
(+.f64 1 (+.f64 (*.f64 2/9 (pow.f64 w 2)) (*.f64 2/3 w)))
(+.f64 1 (fma.f64 2/9 (*.f64 w w) (*.f64 w 2/3)))
(+.f64 1 (fma.f64 w 2/3 (*.f64 (*.f64 w w) 2/9)))
(fma.f64 w (*.f64 w 2/9) (fma.f64 w 2/3 1))
(fma.f64 w 2/3 (fma.f64 w (*.f64 w 2/9) 1))
(+.f64 1 (+.f64 (*.f64 2/9 (pow.f64 w 2)) (+.f64 (*.f64 2/3 w) (*.f64 4/81 (pow.f64 w 3)))))
(+.f64 1 (fma.f64 2/9 (*.f64 w w) (fma.f64 2/3 w (*.f64 (pow.f64 w 3) 4/81))))
(+.f64 1 (fma.f64 (*.f64 w w) 2/9 (fma.f64 w 2/3 (*.f64 (pow.f64 w 3) 4/81))))
(+.f64 (fma.f64 w 2/3 1) (*.f64 (*.f64 w w) (+.f64 (*.f64 w 4/81) 2/9)))
(+.f64 1 (*.f64 w (+.f64 2/3 (*.f64 w (+.f64 2/9 (*.f64 w 4/81))))))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))
(pow.f64 (pow.f64 (exp.f64 w) 2) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 w) 2))
(cbrt.f64 (pow.f64 (exp.f64 2) w))

localize5.0ms (0%)

Compiler

Compiled 10 to 4 computations (60% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 5 computations (64.3% saved)

series3.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite39.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
467×pow1_binary64
447×add-sqr-sqrt_binary64
441×*-un-lft-identity_binary64
428×add-log-exp_binary64
427×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify47.0ms (0.3%)

Algorithm
egg-herbie
Rules
741×distribute-rgt-neg-in_binary64
633×distribute-lft-neg-in_binary64
483×cancel-sign-sub-inv_binary64
432×fma-def_binary64
391×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02589
17084
216984
352468
4201768
5541168
Stop Event
node limit
Counts
20 → 20
Calls
Call 1
Inputs
l
(+.f64 (*.f64 -1 (*.f64 l w)) l)
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 (*.f64 1/2 (*.f64 l (pow.f64 w 2))) l))
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 (*.f64 1/2 (*.f64 l (pow.f64 w 2))) (+.f64 l (*.f64 -1/6 (*.f64 l (pow.f64 w 3))))))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (*.f64 -1 w)))
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 (*.f64 1/2 (*.f64 l (pow.f64 w 2))) l))
(fma.f64 -1 (*.f64 l w) (fma.f64 1/2 (*.f64 l (*.f64 w w)) l))
(-.f64 (fma.f64 1/2 (*.f64 l (*.f64 w w)) l) (*.f64 l w))
(fma.f64 l (*.f64 1/2 (*.f64 w w)) (-.f64 l (*.f64 l w)))
(fma.f64 l (fma.f64 w (*.f64 w 1/2) (neg.f64 w)) l)
(*.f64 l (-.f64 (fma.f64 w (*.f64 w 1/2) 1) w))
(+.f64 (*.f64 -1 (*.f64 l w)) (+.f64 (*.f64 1/2 (*.f64 l (pow.f64 w 2))) (+.f64 l (*.f64 -1/6 (*.f64 l (pow.f64 w 3))))))
(fma.f64 -1 (*.f64 l w) (fma.f64 1/2 (*.f64 l (*.f64 w w)) (+.f64 l (*.f64 -1/6 (*.f64 l (pow.f64 w 3))))))
(-.f64 (fma.f64 1/2 (*.f64 l (*.f64 w w)) (fma.f64 -1/6 (*.f64 l (pow.f64 w 3)) l)) (*.f64 l w))
(-.f64 (fma.f64 l (*.f64 1/2 (*.f64 w w)) (fma.f64 -1/6 (*.f64 l (pow.f64 w 3)) l)) (*.f64 l w))
(+.f64 l (*.f64 l (-.f64 (*.f64 (*.f64 w w) (+.f64 (*.f64 w -1/6) 1/2)) w)))
(+.f64 l (*.f64 w (-.f64 (*.f64 (*.f64 l w) (+.f64 1/2 (*.f64 w -1/6))) l)))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (neg.f64 w)))
(/.f64 l (exp.f64 w))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (neg.f64 w)))
(/.f64 l (exp.f64 w))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (neg.f64 w)))
(/.f64 l (exp.f64 w))
(*.f64 l (exp.f64 (*.f64 -1 w)))
(*.f64 l (exp.f64 (neg.f64 w)))
(/.f64 l (exp.f64 w))

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
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.5b
(*.f64 l (*.f64 w (log.f64 l)))
Compiler

Compiled 37 to 8 computations (78.4% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite52.0ms (0.4%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0917
119015
2274615
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
Outputs
((#(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 expm1.f64 (log1p.f64 (/.f64 (*.f64 l (fma.f64 w (log.f64 l) 1)) (exp.f64 w))))))) (#(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))))))

simplify37.0ms (0.3%)

Algorithm
egg-herbie
Rules
594×associate-+l+_binary64
559×distribute-rgt-in_binary64
533×distribute-lft-in_binary64
482×associate-+r+_binary64
312×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056455
1166410
2479407
31996397
Stop Event
node limit
Counts
63 → 53
Calls
Call 1
Inputs
(/.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)))
Outputs
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (exp.f64 w))
(/.f64 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (*.f64 l (+.f64 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (*.f64 l (log.f64 l)) 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 w (-.f64 (*.f64 l 1/2) (*.f64 l (log.f64 l)))) (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 1/2 (log.f64 l))) (*.f64 w w) 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 (*.f64 l (log.f64 l)) l) (fma.f64 (pow.f64 w 3) (-.f64 (*.f64 l (+.f64 (log.f64 l) 1/2)) (fma.f64 (-.f64 (*.f64 l (log.f64 l)) l) 1/2 (*.f64 l 7/6))) l)))
(fma.f64 w (*.f64 w (*.f64 l (-.f64 1/2 (log.f64 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 (fma.f64 l (log.f64 l) (neg.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 (/.f64 l (exp.f64 w)) (*.f64 w (log.f64 l)))
(*.f64 (*.f64 (/.f64 l (exp.f64 w)) w) (log.f64 l))
(*.f64 (log.f64 l) (*.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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (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 (/.f64 l (exp.f64 w)) (*.f64 w (log.f64 l)))
(*.f64 (*.f64 (/.f64 l (exp.f64 w)) w) (log.f64 l))
(*.f64 (log.f64 l) (*.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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) 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 1 (*.f64 w (log.f64 l)))) (exp.f64 w))
(/.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 (fma.f64 l (*.f64 w (log.f64 l)) l) (exp.f64 w))

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1)
0.0b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.2b
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
0.3b
(pow.f64 l (exp.f64 w))
Compiler

Compiled 39 to 13 computations (66.7% saved)

series7.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite55.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
862×pow1_binary64
801×add-log-exp_binary64
799×log1p-expm1-u_binary64
799×expm1-log1p-u_binary64
780×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01025
120722
2229422
Stop Event
node limit
Counts
2 → 78
Calls
Call 1
Inputs
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
(pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1)
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 -1 (/.f64 1 (neg.f64 (/.f64 (exp.f64 w) (pow.f64 l (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 (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 (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)) (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 (/.f64 (exp.f64 w) (pow.f64 l (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 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 expm1.f64 (log1p.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))))))) (#(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 -.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) (/.f64 1 (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 (/.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 (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 (pow.f64 (pow.f64 l (exp.f64 w)) -1) (pow.f64 (exp.f64 (neg.f64 w)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) -1) (pow.f64 (sqrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) -1))))) (#(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)) (/.f64 (cbrt.f64 (exp.f64 w)) (cbrt.f64 (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 *.f64 (/.f64 (sqrt.f64 (exp.f64 w)) (sqrt.f64 (pow.f64 l (exp.f64 w)))) (/.f64 (sqrt.f64 (exp.f64 w)) (sqrt.f64 (pow.f64 l (exp.f64 w)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 w))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (pow.f64 l (exp.f64 w)))) (neg.f64 (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 1 (/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (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 -1 (neg.f64 (/.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 (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 (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 (exp.f64 w)) (/.f64 (pow.f64 l (exp.f64 w)) (sqrt.f64 (exp.f64 w))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (exp.f64 w)) (neg.f64 (pow.f64 l (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 /.f64 (/.f64 (exp.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 /.f64 (/.f64 (exp.f64 w) 1) (pow.f64 l (exp.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (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 (/.f64 (exp.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 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 (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 expm1.f64 (log1p.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))))))) (#(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))))))))

simplify64.0ms (0.5%)

Algorithm
egg-herbie
Rules
680×sub-neg_binary64
533×fma-def_binary64
404×times-frac_binary64
364×associate-+l+_binary64
296×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081129
13271096
211171059
362901031
Stop Event
node limit
Counts
126 → 101
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))
(/.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))))
(/.f64 1 l)
(+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l))
(+.f64 (*.f64 (-.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (pow.f64 w 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
(+.f64 (*.f64 (-.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (pow.f64 w 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (pow.f64 l 2))) (+.f64 (*.f64 2/3 (/.f64 1 l)) (*.f64 1/2 (/.f64 (log.f64 l) l)))) (+.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 1/6 (/.f64 (log.f64 l) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.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)))) l) (/.f64 (*.f64 (-.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (-.f64 (*.f64 l (log.f64 l)) l)) l))))))) (/.f64 1 l))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l))))) w))
(exp.f64 (fma.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 w)))
(/.f64 (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 (/.f64 -1 (/.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l))))) w))
(exp.f64 (fma.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 w)))
(/.f64 (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 (/.f64 -1 (/.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l))))) w))
(exp.f64 (fma.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 w)))
(/.f64 (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 (/.f64 -1 (/.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l))))) w))
(exp.f64 (fma.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))) (neg.f64 w)))
(/.f64 (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)) (exp.f64 w))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 l)) (exp.f64 w)) (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 (-.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 (fma.f64 l (log.f64 l) (neg.f64 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 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))))) l))
(fma.f64 w (fma.f64 l (log.f64 l) (neg.f64 l)) (fma.f64 w (*.f64 w (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 1/2 (log.f64 (sqrt.f64 l)))) (+.f64 (log.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 (fma.f64 l (log.f64 l) (neg.f64 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 (fma.f64 l (log.f64 l) (neg.f64 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 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 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 (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 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 1/2 (log.f64 (sqrt.f64 l)))) (+.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 (log.f64 l) (+.f64 1/2 (log.f64 (sqrt.f64 l)))))) (fma.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) 1/2 (*.f64 l 7/6))) (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 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))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(/.f64 (exp.f64 w) (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 (/.f64 -1 (/.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))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(/.f64 (exp.f64 w) (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 (/.f64 -1 (/.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))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(/.f64 (exp.f64 w) (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 (/.f64 -1 (/.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))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 l)))))))
(exp.f64 (-.f64 w (*.f64 (exp.f64 w) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 l))))))
(/.f64 (exp.f64 w) (pow.f64 (*.f64 -1 (pow.f64 (/.f64 -1 l) -1)) (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 (/.f64 -1 (/.f64 -1 l)) (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 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (pow.f64 w 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
(fma.f64 (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (+.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 l (fma.f64 l (log.f64 l) (neg.f64 l)))) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (*.f64 w w) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w (/.f64 1 l)))
(fma.f64 (*.f64 w w) (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (/.f64 l (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l)))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (-.f64 (/.f64 (log.f64 l) 1) 1) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l)))
(fma.f64 (*.f64 w w) (+.f64 (/.f64 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (+.f64 (/.f64 (log.f64 l) 1) -1) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 1 l)))
(+.f64 (*.f64 (-.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (pow.f64 w 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (+.f64 (*.f64 (pow.f64 w 3) (-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (pow.f64 l 2))) (+.f64 (*.f64 2/3 (/.f64 1 l)) (*.f64 1/2 (/.f64 (log.f64 l) l)))) (+.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l)) (+.f64 (*.f64 1/6 (/.f64 (log.f64 l) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.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)))) l) (/.f64 (*.f64 (-.f64 (/.f64 (log.f64 l) l) (+.f64 (*.f64 1/2 (/.f64 1 l)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l)) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (-.f64 (*.f64 l (log.f64 l)) l)) l) (*.f64 1/2 (/.f64 (log.f64 l) l)))))) (-.f64 (*.f64 l (log.f64 l)) l)) l))))))) (/.f64 1 l))))
(fma.f64 (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (+.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 l (fma.f64 l (log.f64 l) (neg.f64 l)))) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (*.f64 w w) (fma.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w (fma.f64 (pow.f64 w 3) (-.f64 (-.f64 (fma.f64 1/2 (/.f64 (fma.f64 l (log.f64 l) (neg.f64 l)) (*.f64 l l)) (+.f64 (*.f64 1/2 (/.f64 (log.f64 l) l)) (/.f64 2/3 l))) (/.f64 (log.f64 l) l)) (fma.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (fma.f64 1/6 (/.f64 (log.f64 l) l) (+.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 l (-.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 (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (+.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (/.f64 l (fma.f64 l (log.f64 l) (neg.f64 l)))) (*.f64 1/2 (/.f64 (log.f64 l) l))))) (/.f64 l (fma.f64 l (log.f64 l) (neg.f64 l)))))))) (/.f64 1 l))))
(fma.f64 (*.f64 w w) (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (/.f64 l (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))) (fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 (pow.f64 w 3) (-.f64 (-.f64 (fma.f64 1/2 (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (*.f64 l l)) (fma.f64 1/2 (/.f64 (log.f64 l) l) (/.f64 2/3 l))) (/.f64 (log.f64 l) l)) (fma.f64 1/6 (/.f64 (pow.f64 (log.f64 l) 3) l) (+.f64 (/.f64 (-.f64 (-.f64 (/.f64 (log.f64 l) l) (/.f64 1/2 l)) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (/.f64 (-.f64 (*.f64 l (log.f64 l)) l) (/.f64 l (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))) (/.f64 l (-.f64 (*.f64 l (log.f64 l)) l))) (fma.f64 1/6 (/.f64 (log.f64 l) l) (*.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) l) (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 1 l))))
(fma.f64 w (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) (fma.f64 w (*.f64 w (+.f64 (/.f64 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (-.f64 (/.f64 (log.f64 l) 1) 1) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)))))))) (fma.f64 (pow.f64 w 3) (-.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (+.f64 (/.f64 (log.f64 l) l) (/.f64 -1 l)) (/.f64 2/3 l))) (/.f64 (log.f64 l) l)) (fma.f64 1/6 (+.f64 (/.f64 (log.f64 l) l) (/.f64 (pow.f64 (log.f64 l) 3) l)) (fma.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) l) (+.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 (-.f64 (/.f64 (log.f64 l) 1) 1) (+.f64 (/.f64 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (-.f64 (/.f64 (log.f64 l) 1) 1) (-.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 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (+.f64 (/.f64 (log.f64 l) 1) -1) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)))))))) (fma.f64 (pow.f64 w 3) (-.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (+.f64 (/.f64 (log.f64 l) l) (/.f64 -1 l)) (/.f64 2/3 l))) (/.f64 (log.f64 l) l)) (fma.f64 1/6 (+.f64 (/.f64 (log.f64 l) l) (/.f64 (pow.f64 (log.f64 l) 3) l)) (fma.f64 (/.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) l) (+.f64 l (*.f64 l (-.f64 (*.f64 (log.f64 l) (+.f64 1/2 (log.f64 (sqrt.f64 l)))) (+.f64 (log.f64 l) 1/2)))) (*.f64 (+.f64 (/.f64 (log.f64 l) 1) -1) (+.f64 (/.f64 (log.f64 l) l) (-.f64 (/.f64 -1/2 l) (fma.f64 1/2 (/.f64 (log.f64 l) l) (fma.f64 1/2 (/.f64 (pow.f64 (log.f64 l) 2) l) (*.f64 (+.f64 (/.f64 (log.f64 l) 1) -1) (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l))))))))))) (/.f64 1 l))))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))
(/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w)))

eval151.0ms (1.1%)

Compiler

Compiled 9772 to 4304 computations (56% saved)

prune89.0ms (0.6%)

Pruning

32 alts after pruning (21 fresh and 11 done)

PrunedKeptTotal
New56611577
Fresh61016
Picked101
Done11112
Total57432606
Error
0.1b
Counts
606 → 32
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(/.f64 1 (pow.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w)))) -1))
0.3b
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
4.6b
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
1.6b
(/.f64 l (exp.f64 w))
12.9b
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
38.7b
(-.f64 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
0.3b
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
1.3b
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
4.7b
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
4.7b
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
13.3b
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) l)))
61.2b
(*.f64 w (neg.f64 l))
4.8b
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
2.3b
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
0.8b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
7.2b
(/.f64 1 (+.f64 (*.f64 (-.f64 (/.f64 1 l) (/.f64 (log.f64 l) l)) w) (/.f64 1 l)))
13.0b
l
1.3b
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
13.1b
(/.f64 1 (/.f64 1 l))
0.3b
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
32.6b
(/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l (neg.f64 w)) (*.f64 l (neg.f64 w)))) (-.f64 l (*.f64 l (neg.f64 w))))
0.4b
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
0.4b
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
6.3b
(/.f64 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
1.3b
(/.f64 1 (*.f64 (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (/.f64 (cbrt.f64 (exp.f64 w)) (cbrt.f64 (pow.f64 l (exp.f64 w))))))
0.3b
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (log.f64 (exp.f64 (cbrt.f64 (exp.f64 w)))) 2)) (cbrt.f64 (exp.f64 w)))
6.3b
(/.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))
13.2b
(-.f64 l (*.f64 l w))
6.3b
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
0.3b
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2) 2)) (cbrt.f64 (exp.f64 w)))
1.6b
(*.f64 (exp.f64 (neg.f64 w)) l)
Compiler

Compiled 430 to 283 computations (34.2% saved)

regimes78.0ms (0.6%)

Counts
53 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(/.f64 1 (pow.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w)))) -1))
(/.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 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) l))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2) 2)) (cbrt.f64 (exp.f64 w)))
(*.f64 (neg.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w)))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (log.f64 (exp.f64 (cbrt.f64 (exp.f64 w)))) 2)) (cbrt.f64 (exp.f64 w)))
(*.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))))
(*.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))))
(*.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))))
(/.f64 1 (*.f64 (/.f64 (pow.f64 (cbrt.f64 (exp.f64 w)) 2) (pow.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) 2)) (/.f64 (cbrt.f64 (exp.f64 w)) (cbrt.f64 (pow.f64 l (exp.f64 w))))))
Outputs
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2) 2)) (cbrt.f64 (exp.f64 w)))
Calls

3 calls:

24.0ms
l
23.0ms
w
18.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 639 to 249 computations (61% saved)

regimes67.0ms (0.5%)

Counts
46 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(/.f64 1 (pow.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w)))) -1))
(/.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 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) l))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
Outputs
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
Calls

3 calls:

21.0ms
l
19.0ms
w
15.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 494 to 194 computations (60.7% saved)

regimes64.0ms (0.5%)

Counts
45 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(/.f64 1 (pow.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w)))) -1))
(/.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 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
(fma.f64 w (*.f64 l (+.f64 (log.f64 l) -1)) (fma.f64 w (*.f64 w (*.f64 l (+.f64 1/2 (*.f64 (log.f64 l) (+.f64 -1 (+.f64 1/2 (*.f64 (log.f64 l) 1/2))))))) l))
Outputs
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
Calls

3 calls:

21.0ms
l
19.0ms
w
13.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 480 to 190 computations (60.4% saved)

regimes61.0ms (0.4%)

Counts
43 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(/.f64 1 (pow.f64 (*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w)))) -1))
(/.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 (*.f64 l (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (log.f64 l)) (pow.f64 w 2))) w) (log.f64 l)) 1)) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (fma.f64 l (*.f64 (log.f64 l) (+.f64 w (*.f64 (*.f64 w (*.f64 w 1/2)) (+.f64 (log.f64 l) 1)))) l))
(/.f64 (expm1.f64 (log1p.f64 (pow.f64 l (exp.f64 w)))) (exp.f64 w))
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))) 3)
Outputs
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
Calls

3 calls:

19.0ms
l
17.0ms
w
15.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 439 to 168 computations (61.7% saved)

regimes51.0ms (0.4%)

Counts
36 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.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))
(exp.f64 (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
(*.f64 (pow.f64 l (exp.f64 w)) (/.f64 1 (exp.f64 w)))
(/.f64 1 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(/.f64 1 (exp.f64 (-.f64 w (*.f64 (exp.f64 w) (log.f64 l)))))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 -1 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (/.f64 1 (neg.f64 (exp.f64 w))))
(/.f64 1 (/.f64 (/.f64 1 (pow.f64 l (exp.f64 w))) (exp.f64 (neg.f64 w))))
(pow.f64 (/.f64 (exp.f64 w) (pow.f64 l (exp.f64 w))) -1)
(/.f64 (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))) (exp.f64 w))
(pow.f64 (exp.f64 1) (-.f64 (*.f64 (exp.f64 w) (log.f64 l)) w))
(/.f64 1 (pow.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w)) -1))
Outputs
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
Calls

3 calls:

17.0ms
l
14.0ms
w
12.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 326 to 114 computations (65% saved)

regimes23.0ms (0.2%)

Counts
20 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(/.f64 (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))) (exp.f64 w))
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (*.f64 l (*.f64 w (log.f64 l)))))
Outputs
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
Calls

2 calls:

10.0ms
l
10.0ms
w
Results
ErrorSegmentsBranch
0.8b1w
0.8b1l
Compiler

Compiled 167 to 66 computations (60.5% saved)

regimes20.0ms (0.1%)

Counts
16 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
Outputs
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
Calls

2 calls:

9.0ms
l
8.0ms
w
Results
ErrorSegmentsBranch
1.3b1w
1.3b1l
Compiler

Compiled 126 to 55 computations (56.3% saved)

regimes19.0ms (0.1%)

Counts
15 → 1
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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 (+.f64 1 (*.f64 (exp.f64 w) l)) 1)
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.f64 l (*.f64 w (-.f64 (*.f64 l (log.f64 l)) l)))
(+.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)))
Outputs
(/.f64 l (exp.f64 w))
Calls

2 calls:

8.0ms
w
8.0ms
l
Results
ErrorSegmentsBranch
1.6b1w
1.6b1l
Compiler

Compiled 119 to 51 computations (57.1% saved)

regimes17.0ms (0.1%)

Counts
8 → 2
Calls
Call 1
Inputs
l
l
l
(*.f64 w (neg.f64 l))
(/.f64 1 (/.f64 1 l))
(-.f64 l (*.f64 l w))
(+.f64 l (*.f64 w (-.f64 (*.f64 w (*.f64 l 1/2)) 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:

10.0ms
w
5.0ms
l
Results
ErrorSegmentsBranch
11.8b2w
13.0b1l
Compiler

Compiled 56 to 27 computations (51.8% saved)

bsearch27.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
8.933743444365022e-9
0.1758877407848416
Compiler

Compiled 15 to 11 computations (26.7% saved)

regimes12.0ms (0.1%)

Accuracy

Total -48.4b remaining (-372.1%)

Threshold costs -48.4b (-372.1%)

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

2 calls:

5.0ms
w
5.0ms
l
Results
ErrorSegmentsBranch
13.0b1w
13.0b1l
Compiler

Compiled 36 to 20 computations (44.4% saved)

simplify24.0ms (0.2%)

Algorithm
egg-herbie
Rules
92×distribute-rgt-neg-in_binary64
82×cancel-sign-sub-inv_binary64
61×distribute-lft-neg-in_binary64
60×distribute-lft-neg-out_binary64
58×neg-sub0_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047176
179168
2129165
3182163
4251163
5349163
6454163
7570163
8663163
9711163
10728163
11732163
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2) 2)) (cbrt.f64 (exp.f64 w)))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(/.f64 l (exp.f64 w))
(if (<=.f64 w 2700058278926451/302231454903657293676544) 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 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 w 2/3))) 3/2) 2)) (cbrt.f64 (exp.f64 w)))
(/.f64 (/.f64 (pow.f64 l (exp.f64 w)) (pow.f64 (cbrt.f64 (exp.f64 w)) 2)) (cbrt.f64 (exp.f64 w)))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (pow.f64 (/.f64 -1 (cbrt.f64 (exp.f64 w))) 3))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 -1/3 w)))
(*.f64 (/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 (*.f64 w 2/3))) (exp.f64 (*.f64 w -1/3)))
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (-.f64 w 1))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) (+.f64 w -1))
(*.f64 (pow.f64 l (exp.f64 w)) (-.f64 1 w))
(*.f64 (neg.f64 (pow.f64 l (exp.f64 w))) -1)
(*.f64 (pow.f64 l (exp.f64 w)) 1)
(pow.f64 l (exp.f64 w))
(/.f64 l (exp.f64 w))
(if (<=.f64 w 2700058278926451/302231454903657293676544) 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 2700058278926451/302231454903657293676544) l (/.f64 (-.f64 (*.f64 l l) (*.f64 (*.f64 l w) (*.f64 l w))) (+.f64 l (*.f64 l w))))
l
Compiler

Compiled 125 to 80 computations (36% saved)

soundness109.0ms (0.8%)

Algorithm
egg-herbie
Rules
957×associate-*l/_binary64
656×unswap-sqr_binary64
607×times-frac_binary64
531×sqr-pow_binary64
386×pow-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
23811
38511
426111
5111911
6407111
7417011
8429411
9453111
10497411
11579111
Stop Event
node limit
Compiler

Compiled 41 to 26 computations (36.6% saved)

end59.0ms (0.4%)

Compiler

Compiled 107 to 47 computations (56.1% saved)

Profiling

Loading profile data...