Details

Time bar (total: 14.9s)

analyze1.5s (9.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
0%75%25%3
0%62.5%37.5%4
0%56.2%43.8%5
3.1%46.9%50%6
3.1%45.3%51.6%7
3.1%44.5%52.4%8
3.5%44.1%52.4%9
3.7%43.9%52.4%10
3.8%43.8%52.4%11
3.8%43.8%52.4%12
3.8%43.8%52.4%13
3.8%43.7%52.4%14
Compiler

Compiled 39 to 31 computations (20.5% saved)

sample11.1s (74.8%)

Results
3.5s3995×body1024valid
3.2s3932×body1024invalid
1.3s2060×body512invalid
1.2s1979×body512valid
764.0ms516×body2048valid
457.0ms1067×body256invalid
453.0ms1069×body256valid
157.0ms697×body128valid
2.0msbody2048invalid
1.0msbody128invalid

preprocess30.0ms (0.2%)

Algorithm
egg-herbie
Rules
569×fma-def_binary64
323×fma-neg_binary64
202×distribute-rgt-in_binary64
192×cancel-sign-sub-inv_binary64
175×distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01764
14961
212259
332655
497555
5255355
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
Outputs
(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
(*.f64 (neg.f64 (*.f64 (/.f64 1 (PI.f64)) 4)) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (exp.f64 (*.f64 (/.f64 (PI.f64) 4) (neg.f64 f)))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (exp.f64 (*.f64 (/.f64 (PI.f64) 4) (neg.f64 f)))))))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))))) (neg.f64 (/.f64 4 (PI.f64))))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 f) (/.f64 (PI.f64) 4)) (exp.f64 (*.f64 -1/4 (*.f64 (PI.f64) f)))) (-.f64 (pow.f64 (exp.f64 f) (/.f64 (PI.f64) 4)) (exp.f64 (*.f64 -1/4 (*.f64 (PI.f64) f)))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (*.f64 -1/4 (PI.f64))) f)) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (*.f64 -1/4 (PI.f64))) f)))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
Compiler

Compiled 38 to 30 computations (21.1% saved)

simplify24.0ms (0.2%)

Algorithm
egg-herbie
Rules
569×fma-def_binary64
323×fma-neg_binary64
202×distribute-rgt-in_binary64
192×cancel-sign-sub-inv_binary64
175×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01764
14961
212259
332655
497555
5255355
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
Outputs
(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
(*.f64 (neg.f64 (*.f64 (/.f64 1 (PI.f64)) 4)) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (exp.f64 (*.f64 (/.f64 (PI.f64) 4) (neg.f64 f)))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (exp.f64 (*.f64 (/.f64 (PI.f64) 4) (neg.f64 f)))))))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))))) (neg.f64 (/.f64 4 (PI.f64))))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) (neg.f64 f))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 f) (/.f64 (PI.f64) 4)) (exp.f64 (*.f64 -1/4 (*.f64 (PI.f64) f)))) (-.f64 (pow.f64 (exp.f64 f) (/.f64 (PI.f64) 4)) (exp.f64 (*.f64 -1/4 (*.f64 (PI.f64) f)))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (*.f64 -1/4 (PI.f64))) f)) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 (*.f64 -1/4 (PI.f64))) f)))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
62.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
62.1b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
Compiler

Compiled 136 to 100 computations (26.5% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
0.3b
(*.f64 (PI.f64) f)
1.0b
(/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
5.4b
(-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))

series100.0ms (0.7%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
47.0ms
f
@-inf
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
39.0ms
f
@inf
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
4.0ms
f
@0
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
4.0ms
f
@0
(-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
1.0ms
f
@0
(/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))

rewrite56.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
195×add-sqr-sqrt_binary64
191×pow1_binary64
189×*-un-lft-identity_binary64
188×add-log-exp_binary64
185×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify51.0ms (0.3%)

Algorithm
egg-herbie
Rules
740×times-frac_binary64
610×fma-def_binary64
311×distribute-rgt-in_binary64
297×distribute-lft-in_binary64
167×distribute-rgt-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01351691
14261557
216231463
Stop Event
node limit
Counts
168 → 151
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f)
(+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))))
(+.f64 (*.f64 (pow.f64 f 5) (-.f64 (*.f64 1/122880 (pow.f64 (PI.f64) 5)) (*.f64 -1/122880 (pow.f64 (PI.f64) 5)))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))))))
(+.f64 (*.f64 (pow.f64 f 5) (-.f64 (*.f64 1/122880 (pow.f64 (PI.f64) 5)) (*.f64 -1/122880 (pow.f64 (PI.f64) 5)))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (+.f64 (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (*.f64 (pow.f64 f 7) (-.f64 (*.f64 1/82575360 (pow.f64 (PI.f64) 7)) (*.f64 -1/82575360 (pow.f64 (PI.f64) 7)))))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(/.f64 2 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (+.f64 (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 f (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2))))))))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 (pow.f64 f 2) (-.f64 (+.f64 (*.f64 1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (+.f64 (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 f (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 f (PI.f64))
(*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64)))
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64))))
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 2))) (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))) (pow.f64 f 2)) (PI.f64))) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64)))))
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 2))) (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))) (pow.f64 f 2)) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64))) (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 f 3) (+.f64 (*.f64 -3/2 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))) (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 3) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 3))) (*.f64 3 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (+.f64 (*.f64 1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))))) (PI.f64))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
Outputs
(*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f)
(*.f64 (*.f64 (PI.f64) 1/2) f)
(*.f64 (PI.f64) (*.f64 1/2 f))
(*.f64 (PI.f64) (*.f64 f 1/2))
(+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))))
(fma.f64 (*.f64 (PI.f64) 1/2) f (*.f64 (pow.f64 f 3) (*.f64 (pow.f64 (PI.f64) 3) 1/192)))
(fma.f64 (*.f64 (PI.f64) 1/2) f (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3))))
(fma.f64 (PI.f64) (*.f64 f 1/2) (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3))))
(+.f64 (*.f64 (pow.f64 f 5) (-.f64 (*.f64 1/122880 (pow.f64 (PI.f64) 5)) (*.f64 -1/122880 (pow.f64 (PI.f64) 5)))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))))))
(fma.f64 (pow.f64 f 5) (*.f64 (pow.f64 (PI.f64) 5) 1/61440) (fma.f64 (*.f64 (PI.f64) 1/2) f (*.f64 (pow.f64 f 3) (*.f64 (pow.f64 (PI.f64) 3) 1/192))))
(fma.f64 (pow.f64 f 5) (*.f64 (pow.f64 (PI.f64) 5) 1/61440) (fma.f64 (*.f64 (PI.f64) 1/2) f (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)))))
(fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5)))))
(+.f64 (*.f64 (pow.f64 f 5) (-.f64 (*.f64 1/122880 (pow.f64 (PI.f64) 5)) (*.f64 -1/122880 (pow.f64 (PI.f64) 5)))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f) (+.f64 (*.f64 (pow.f64 f 3) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (*.f64 (pow.f64 f 7) (-.f64 (*.f64 1/82575360 (pow.f64 (PI.f64) 7)) (*.f64 -1/82575360 (pow.f64 (PI.f64) 7)))))))
(fma.f64 (pow.f64 f 5) (*.f64 (pow.f64 (PI.f64) 5) 1/61440) (fma.f64 (*.f64 (PI.f64) 1/2) f (fma.f64 (pow.f64 f 3) (*.f64 (pow.f64 (PI.f64) 3) 1/192) (*.f64 (pow.f64 f 7) (*.f64 (pow.f64 (PI.f64) 7) 1/41287680)))))
(fma.f64 (pow.f64 f 5) (*.f64 (pow.f64 (PI.f64) 5) 1/61440) (fma.f64 (*.f64 (PI.f64) 1/2) f (fma.f64 (pow.f64 f 7) (*.f64 (pow.f64 (PI.f64) 7) 1/41287680) (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3))))))
(fma.f64 (pow.f64 f 5) (*.f64 (pow.f64 (PI.f64) 5) 1/61440) (fma.f64 (pow.f64 f 3) (*.f64 (pow.f64 (PI.f64) 3) 1/192) (fma.f64 (PI.f64) (*.f64 f 1/2) (*.f64 (pow.f64 f 7) (*.f64 (pow.f64 (PI.f64) 7) 1/41287680)))))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))))
(-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))
(/.f64 2 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))
(/.f64 2 (*.f64 (*.f64 (PI.f64) 1/2) f))
(/.f64 2 (*.f64 (PI.f64) (*.f64 1/2 f)))
(/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))
(/.f64 2 (*.f64 (*.f64 (PI.f64) 1/2) f))
(/.f64 2 (*.f64 (PI.f64) (*.f64 1/2 f)))
(/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (+.f64 (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 f (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2))))))))
(fma.f64 -1/4 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) (+.f64 (/.f64 2 (*.f64 (*.f64 (PI.f64) 1/2) f)) (fma.f64 1/4 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) (*.f64 f (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/192) (pow.f64 (*.f64 (PI.f64) 1/2) 2))))))))
(+.f64 (+.f64 (/.f64 2 (*.f64 (PI.f64) (*.f64 1/2 f))) 0) (*.f64 f (fma.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 1/192)) -2))))
(+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))))
(+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (+.f64 (*.f64 (pow.f64 f 2) (-.f64 (+.f64 (*.f64 1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) f))) (+.f64 (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 f (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))))))
(fma.f64 -1/4 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) (+.f64 (/.f64 2 (*.f64 (*.f64 (PI.f64) 1/2) f)) (fma.f64 1/4 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) (*.f64 f (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/192) (pow.f64 (*.f64 (PI.f64) 1/2) 2))))))))
(+.f64 (+.f64 (/.f64 2 (*.f64 (PI.f64) (*.f64 1/2 f))) 0) (*.f64 f (fma.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 1/192)) -2))))
(+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 f (PI.f64))
(*.f64 (PI.f64) f)
(*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64)))
(*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (neg.f64 (log.f64 f))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64))))
(fma.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (neg.f64 (log.f64 f))) (PI.f64)) (*.f64 -2 (/.f64 (*.f64 (PI.f64) 1/2) (/.f64 (PI.f64) (*.f64 f (*.f64 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) 0))))))
(fma.f64 -2 (/.f64 (*.f64 f (*.f64 (PI.f64) 0)) (PI.f64)) (/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)))))
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) 0)
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 2))) (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))) (pow.f64 f 2)) (PI.f64))) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64)))))
(fma.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (neg.f64 (log.f64 f))) (PI.f64)) (*.f64 -2 (+.f64 (/.f64 (fma.f64 -1/4 (*.f64 (pow.f64 (*.f64 (PI.f64) 1/2) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) 0) 2)) (*.f64 (*.f64 (PI.f64) 1/2) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/192) (pow.f64 (*.f64 (PI.f64) 1/2) 2)))))) (/.f64 (PI.f64) (*.f64 f f))) (/.f64 (*.f64 (PI.f64) 1/2) (/.f64 (PI.f64) (*.f64 f (*.f64 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) 0)))))))
(fma.f64 -2 (+.f64 (/.f64 (*.f64 f (*.f64 (PI.f64) 0)) (PI.f64)) (/.f64 (*.f64 f f) (/.f64 (PI.f64) (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 1/192)) -2)) (*.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 0))))) (/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)))))
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
(+.f64 (*.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1 (log.f64 f))) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 2))) (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))))) (pow.f64 f 2)) (PI.f64))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (*.f64 f (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))) (PI.f64))) (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 f 3) (+.f64 (*.f64 -3/2 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 2 (/.f64 (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3))) (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 2)))) (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) 3) (pow.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) 3))) (*.f64 3 (*.f64 (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))) (-.f64 (+.f64 (*.f64 1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 -1/384 (/.f64 (pow.f64 (PI.f64) 3) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64))))) (*.f64 1/4 (/.f64 (PI.f64) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))) (-.f64 (*.f64 1/384 (pow.f64 (PI.f64) 3)) (*.f64 -1/384 (pow.f64 (PI.f64) 3)))) (-.f64 (*.f64 1/4 (PI.f64)) (*.f64 -1/4 (PI.f64)))))))))) (PI.f64))))))
(fma.f64 -4 (/.f64 (+.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (neg.f64 (log.f64 f))) (PI.f64)) (*.f64 -2 (+.f64 (/.f64 (fma.f64 -1/4 (*.f64 (pow.f64 (*.f64 (PI.f64) 1/2) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) 0) 2)) (*.f64 (*.f64 (PI.f64) 1/2) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/192) (pow.f64 (*.f64 (PI.f64) 1/2) 2)))))) (/.f64 (PI.f64) (*.f64 f f))) (/.f64 (*.f64 (PI.f64) 1/2) (/.f64 (PI.f64) (*.f64 f (*.f64 (/.f64 (PI.f64) (*.f64 (PI.f64) 1/2)) 0)))))))
(fma.f64 -2 (+.f64 (/.f64 (*.f64 f (*.f64 (PI.f64) 0)) (PI.f64)) (/.f64 (*.f64 f f) (/.f64 (PI.f64) (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) 1/2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 1/192)) -2)) (*.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4) 0))))) (/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)))))
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))) (-.f64 (exp.f64 (*.f64 1/4 (*.f64 f (PI.f64)))) (exp.f64 (*.f64 -1/4 (*.f64 f (PI.f64))))))) (PI.f64)))
(*.f64 -4 (/.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (PI.f64)))
(/.f64 -4 (/.f64 (PI.f64) (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 1/4) (*.f64 (PI.f64) f)) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f)))))))

prune222.0ms (1.5%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1644168
Fresh000
Picked101
Done000
Total1654169
Error
1.2b
Counts
169 → 4
Alt Table
StatusErrorProgram
1.5b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5))))))) (/.f64 -4 (PI.f64)))
1.4b
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))))) (/.f64 -4 (PI.f64)))
1.3b
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
1.7b
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
Compiler

Compiled 7679 to 5086 computations (33.8% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0)
1.0b
(pow.f64 (PI.f64) 3)
1.0b
(*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48)
2.0b
(log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2)))

series0.0ms (0%)

Counts
4 → 0

rewrite75.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
263×prod-diff_binary64
192×add-sqr-sqrt_binary64
184×add-log-exp_binary64
182×add-cbrt-cube_binary64
182×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02241
147137
2485737
Stop Event
node limit
Counts
4 → 127
Calls
Call 1
Inputs
(log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2)))
(*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48)
(pow.f64 (PI.f64) 3)
(fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (/.f64 4 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 2) (log.f64 (/.f64 2 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 2) (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 4 (PI.f64)))) (log.f64 (sqrt.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 4 (PI.f64))) 2)) (log.f64 (cbrt.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (log.f64 2) (neg.f64 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1))) (fma.f64 (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2))) 1 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (log.f64 2)) (cbrt.f64 (log.f64 2))) (cbrt.f64 (log.f64 2)) (neg.f64 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1))) (fma.f64 (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2))) 1 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (log.f64 2)) (sqrt.f64 (log.f64 2)) (neg.f64 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1))) (fma.f64 (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2))) 1 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (log.f64 2) (neg.f64 (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))))))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (log.f64 2)) (cbrt.f64 (log.f64 2))) (cbrt.f64 (log.f64 2)) (neg.f64 (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))))))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (log.f64 2)) (sqrt.f64 (log.f64 2)) (neg.f64 (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))))))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (cbrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (log.f64 2) (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (log.f64 (*.f64 (PI.f64) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (log.f64 2)) (cbrt.f64 (log.f64 2))) (cbrt.f64 (log.f64 2)) (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (log.f64 (*.f64 (PI.f64) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (log.f64 2)) (sqrt.f64 (log.f64 2)) (neg.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (PI.f64) 1/2))) (log.f64 (*.f64 (PI.f64) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (PI.f64) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 -2) (log.f64 (*.f64 (PI.f64) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 2) (log.f64 (*.f64 (PI.f64) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log.f64 (/.f64 4 (PI.f64))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 2 (PI.f64))) (log.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 4 (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (/.f64 4 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (/.f64 4 (PI.f64)))) (pow.f64 (cbrt.f64 (log.f64 (/.f64 4 (PI.f64)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 4 (PI.f64)))) 2) (cbrt.f64 (log.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (/.f64 4 (PI.f64)))) (sqrt.f64 (log.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (log.f64 2) 3) (pow.f64 (log.f64 (*.f64 (PI.f64) 1/2)) 3)) (+.f64 (*.f64 (log.f64 2) (log.f64 2)) (+.f64 (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) (log.f64 (*.f64 (PI.f64) 1/2))) (*.f64 (log.f64 2) (log.f64 (*.f64 (PI.f64) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (log.f64 2) (log.f64 2)) (*.f64 (log.f64 (*.f64 (PI.f64) 1/2)) (log.f64 (*.f64 (PI.f64) 1/2)))) (+.f64 (log.f64 2) (log.f64 (*.f64 (PI.f64) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (/.f64 4 (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (/.f64 4 (PI.f64))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (/.f64 4 (PI.f64)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (/.f64 4 (PI.f64)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (PI.f64) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (/.f64 4 (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (/.f64 4 (PI.f64))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (/.f64 4 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 (/.f64 4 (PI.f64)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (/.f64 4 (PI.f64)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) 1/48))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (PI.f64) 3) (/.f64 (pow.f64 (PI.f64) 2) 1/48))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/48 (/.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 (pow.f64 (PI.f64) 3) 1/48)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/48) (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/48)) (neg.f64 (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/48) (PI.f64)) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/48) 1) (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/48) (cbrt.f64 (pow.f64 (PI.f64) 4))) (pow.f64 (cbrt.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (PI.f64) 3)) 1/48) (neg.f64 (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/48 (neg.f64 (pow.f64 (PI.f64) 3))) (neg.f64 (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) 1/48) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) 1/48) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) 1/48)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) 1/48)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/2304))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) 1/48))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) 1/48) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) 1/48)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) 1/48)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (PI.f64) 1/48)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) 1/48)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (PI.f64) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 (PI.f64) -2) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 2) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (PI.f64) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (PI.f64) 3) 3) (pow.f64 (pow.f64 (PI.f64) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (PI.f64) 4)) (*.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 3/2) (pow.f64 (PI.f64) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (PI.f64)) 3) (pow.f64 (sqrt.f64 (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 (PI.f64) 3)) (pow.f64 (PI.f64) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (cbrt.f64 (pow.f64 (PI.f64) 4))) (pow.f64 (cbrt.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (PI.f64) 2) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (PI.f64) 2) (/.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (/.f64 1 (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (PI.f64) 3) 3) (pow.f64 (PI.f64) 6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (neg.f64 (pow.f64 (PI.f64) 3)) 3) (pow.f64 (neg.f64 (pow.f64 (PI.f64) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (PI.f64) 3)) (pow.f64 (PI.f64) 2)) (neg.f64 (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 (PI.f64) 3)) (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (PI.f64) 2) (neg.f64 (pow.f64 (PI.f64) 3))) (neg.f64 (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (PI.f64) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (PI.f64) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (PI.f64) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (PI.f64))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (PI.f64) 3)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/16 (*.f64 2 (PI.f64))) (*.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (PI.f64) -1/24) (*.f64 (PI.f64) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (PI.f64) 1/2) (*.f64 1/16 (*.f64 2 (PI.f64)))) (*.f64 (*.f64 (PI.f64) 1/2) (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (PI.f64) (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)) (*.f64 (PI.f64) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/4)) (*.f64 (cbrt.f64 (*.f64 (PI.f64) 1/2)) (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) 2) (cbrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) 1/2)) (*.f64 (sqrt.f64 (*.f64 (PI.f64) 1/2)) (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) (sqrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 1/2)) (sqrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) (*.f64 (sqrt.f64 (*.f64 (PI.f64) 1/2)) (sqrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (PI.f64) 1/2) (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))) 2)) (cbrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (PI.f64) 1/2) (sqrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) (sqrt.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 3) 0) (+.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 2) (-.f64 0 (*.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 2) 0) (-.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (PI.f64) 1/2) 3) (pow.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 (PI.f64) 1/2)) (log.f64 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) (*.f64 1/2 (fma.f64 1/16 (*.f64 2 (PI.f64)) (*.f64 (PI.f64) -1/24))))))))))

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

prune557.0ms (3.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1270127
Fresh033
Picked011
Done000
Total1274131
Error
1.2b
Counts
131 → 4
Alt Table
StatusErrorProgram
1.5b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5))))))) (/.f64 -4 (PI.f64)))
1.4b
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))))) (/.f64 -4 (PI.f64)))
1.3b
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
1.7b
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
Compiler

Compiled 6319 to 4678 computations (26% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2))
1.0b
(fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))
1.0b
(pow.f64 (PI.f64) 3)
1.0b
(*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48)

series0.0ms (0%)

Counts
2 → 0

rewrite53.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
253×prod-diff_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
145×add-sqr-sqrt_binary64
140×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01715
137115
2359915
Stop Event
node limit
Counts
2 → 62
Calls
Call 1
Inputs
(fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))
(/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) -1/24) (*.f64 (*.f64 1/16 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) (*.f64 (PI.f64) -1/24))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))) (cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 2)) (cbrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))) (sqrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) 3) (pow.f64 (*.f64 (PI.f64) -1/24) 3)) (fma.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) (*.f64 (*.f64 1/16 (PI.f64)) 2) (-.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/576) (*.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) (*.f64 (*.f64 1/16 (PI.f64)) 2)) (*.f64 (pow.f64 (PI.f64) 2) 1/576)) (-.f64 (*.f64 (*.f64 1/16 (PI.f64)) 2) (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/16 (*.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/24))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) (pow.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (PI.f64) 3)) (/.f64 1 (neg.f64 (pow.f64 (PI.f64) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (PI.f64)) (/.f64 (pow.f64 (PI.f64) 3) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) -2) (pow.f64 (PI.f64) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 3/2) (*.f64 (pow.f64 (PI.f64) 3/2) (pow.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (PI.f64) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) 1) (/.f64 (pow.f64 (PI.f64) 2) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) (PI.f64)) (/.f64 (pow.f64 (PI.f64) 2) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (PI.f64) 2) (PI.f64)) (/.f64 (PI.f64) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (PI.f64) 2) 1) (/.f64 (PI.f64) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (PI.f64) 3/2) 1) (/.f64 (pow.f64 (PI.f64) 3/2) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (PI.f64) 4))) (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (cbrt.f64 (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) (cbrt.f64 (pow.f64 (PI.f64) 4))) (/.f64 (pow.f64 (PI.f64) 2) (pow.f64 (cbrt.f64 (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (PI.f64) 2) (cbrt.f64 (pow.f64 (PI.f64) 4))) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (PI.f64) 3/2) (cbrt.f64 (pow.f64 (PI.f64) 4))) (/.f64 (pow.f64 (PI.f64) 3/2) (pow.f64 (cbrt.f64 (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (PI.f64) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (PI.f64) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (PI.f64) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (PI.f64)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (PI.f64)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (PI.f64)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (PI.f64) 3) (neg.f64 (pow.f64 (PI.f64) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (PI.f64) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (PI.f64)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x PI.f64)))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (PI.f64)))))))

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

prune413.0ms (2.8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1161117
Fresh022
Picked101
Done011
Total1174121
Error
1.2b
Counts
121 → 4
Alt Table
StatusErrorProgram
1.5b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5))))))) (/.f64 -4 (PI.f64)))
1.4b
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2))))) (/.f64 -4 (PI.f64)))
1.3b
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
1.7b
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
Compiler

Compiled 4139 to 3238 computations (21.8% saved)

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2)))
1.0b
(fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2))
1.0b
(pow.f64 (exp.f64 1/48) (PI.f64))
2.8b
(log.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))

series78.0ms (0.5%)

Counts
4 → 12
Calls

3 calls:

TimeVariablePointExpression
77.0ms
f
@0
(*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2)))
1.0ms
f
@inf
(*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2)))
1.0ms
f
@-inf
(*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2)))

rewrite63.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
600×log-prod_binary64
246×expm1-udef_binary64
246×log1p-udef_binary64
201×log-pow_binary64
152×prod-diff_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01647
132341
2329941
Stop Event
node limit
Counts
4 → 107
Calls
Call 1
Inputs
(log.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))
(pow.f64 (exp.f64 1/48) (PI.f64))
(fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2))
(*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/48 (PI.f64)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/48 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/24) (PI.f64)))) (*.f64 1/3 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/3 (*.f64 1/48 (PI.f64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/24) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 1/48 (PI.f64))) (*.f64 1/2 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 1 (PI.f64))) (*.f64 1/48 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (exp.f64 1/72) (PI.f64))) (log.f64 (pow.f64 (exp.f64 1/144) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (exp.f64 1/96) (PI.f64))) (log.f64 (pow.f64 (exp.f64 1/96) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/48 (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/48 (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) 1/48)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/48 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/48 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/48 (PI.f64))) (pow.f64 (cbrt.f64 (*.f64 1/48 (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 1/48 (PI.f64))) 2) (cbrt.f64 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (PI.f64)) (log.f64 (pow.f64 (exp.f64 1/48) (pow.f64 (cbrt.f64 (PI.f64)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) 1/48))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/48 (PI.f64))) (sqrt.f64 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) 1/48))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (log.f64 (pow.f64 (exp.f64 1/48) (sqrt.f64 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) 1/2) 1/24)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (PI.f64) 1/2 (*.f64 (PI.f64) 1/2)) 1/48)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (PI.f64) 1/2)) 1/48)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/48 (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/48 (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/48 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/48 (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/48 (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/48 (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (PI.f64) 2) 1/2304))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/48 (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/48 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/48 (PI.f64))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/48 (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (exp.f64 1/48) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))) (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1/48) (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 1/48) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) (cbrt.f64 (pow.f64 (exp.f64 1/24) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 1/24) (PI.f64))) (cbrt.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) (sqrt.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (PI.f64)) (pow.f64 (exp.f64 1/48) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1/72) (PI.f64)) (pow.f64 (exp.f64 1/144) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1/96) (PI.f64)) (pow.f64 (exp.f64 1/96) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 1/24) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (exp.f64 1/48) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/48) (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/48 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 1/48) (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) -1/24) (/.f64 1/16 (/.f64 1/2 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) (*.f64 (PI.f64) -1/24))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))) (cbrt.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))) (cbrt.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 2)) (cbrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))) (sqrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) 3) (pow.f64 (*.f64 (PI.f64) -1/24) 3)) (fma.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) (/.f64 1/16 (/.f64 1/2 (PI.f64))) (-.f64 (pow.f64 (*.f64 (PI.f64) -1/24) 2) (*.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) (/.f64 1/16 (/.f64 1/2 (PI.f64)))) (pow.f64 (*.f64 (PI.f64) -1/24) 2)) (-.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (PI.f64) -1/24)) (exp.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) -1/24))) (exp.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) (+.f64 1 (expm1.f64 (*.f64 (PI.f64) -1/24)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) f) (*.f64 (*.f64 (PI.f64) -1/24) f))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 f (/.f64 1/16 (/.f64 1/2 (PI.f64)))) (*.f64 f (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))) (cbrt.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 f) (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 3) (pow.f64 f 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 f 3) (pow.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 f (/.f64 1/16 (/.f64 1/2 (PI.f64))) (*.f64 f (*.f64 (PI.f64) -1/24)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1/16 (/.f64 1/2 (PI.f64))) f (*.f64 (*.f64 (PI.f64) -1/24) f))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 (PI.f64) -1/24 (/.f64 1/16 (/.f64 1/2 (PI.f64)))) f)))))))

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
20×fma-def_binary64
18×*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
distribute-rgt-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0996
12396
25096
38696
49096
Stop Event
saturated
Counts
119 → 109
Calls
Call 1
Inputs
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
Outputs
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))
(*.f64 f (+.f64 (*.f64 -1/24 (PI.f64)) (*.f64 1/8 (PI.f64))))
(*.f64 f (*.f64 (PI.f64) 1/12))
(*.f64 (PI.f64) (*.f64 f 1/12))

prune362.0ms (2.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1081109
Fresh022
Picked101
Done011
Total1094113
Error
1.2b
Counts
113 → 4
Alt Table
StatusErrorProgram
1.5b
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5))))))) (/.f64 -4 (PI.f64)))
1.3b
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
1.7b
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
1.4b
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (sqrt.f64 (PI.f64)) (log.f64 (pow.f64 (exp.f64 1/48) (sqrt.f64 (PI.f64))))) -2))))) (/.f64 -4 (PI.f64)))
Compiler

Compiled 3457 to 2704 computations (21.8% saved)

regimes33.0ms (0.2%)

Accuracy

Total -60.9b remaining (-4546.2%)

Threshold costs -60.9b (-4546.2%)

Counts
8 → 1
Calls
Call 1
Inputs
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (sqrt.f64 (PI.f64)) (log.f64 (pow.f64 (exp.f64 1/48) (sqrt.f64 (PI.f64))))) -2))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (log.f64 (pow.f64 (exp.f64 1/48) (PI.f64))) -2))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (fma.f64 (PI.f64) (*.f64 f 1/2) (fma.f64 (pow.f64 (PI.f64) 3) (*.f64 1/192 (pow.f64 f 3)) (*.f64 (pow.f64 (PI.f64) 5) (*.f64 1/61440 (pow.f64 f 5))))))) (/.f64 -4 (PI.f64)))
(*.f64 (log.f64 (+.f64 (/.f64 (/.f64 2 f) (*.f64 (PI.f64) 1/2)) (*.f64 f (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2))))) (/.f64 -4 (PI.f64)))
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
(/.f64 -4 (/.f64 (PI.f64) (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f))))
(*.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))) (-.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) 4)) f) (pow.f64 (exp.f64 -1/4) (*.f64 (PI.f64) f))))) (/.f64 -4 (PI.f64)))
(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
Outputs
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
Results
6.0ms1.3bf
3.0ms1.3b(neg.f64 (*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))))
3.0ms1.3b(*.f64 (/.f64 1 (/.f64 (PI.f64) 4)) (log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))))))
4.0ms1.3b(log.f64 (/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f))))))
3.0ms1.3b(/.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))) (-.f64 (exp.f64 (*.f64 (/.f64 (PI.f64) 4) f)) (exp.f64 (neg.f64 (*.f64 (/.f64 (PI.f64) 4) f)))))
6.0ms1.3b(*.f64 (/.f64 (PI.f64) 4) f)
Compiler

Compiled 409 to 312 computations (23.7% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
*-lft-identity_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03270
14170
24570
34770
44870
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
Outputs
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (*.f64 1 (/.f64 (PI.f64) 1/2)) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48) -2)) 0) (PI.f64)) (*.f64 f f) 0)))
(fma.f64 -4 (/.f64 (-.f64 (log.f64 (/.f64 2 (*.f64 (PI.f64) 1/2))) (log.f64 f)) (PI.f64)) (*.f64 -2 (fma.f64 (/.f64 (fma.f64 (*.f64 (PI.f64) 1/2) (fma.f64 1/16 (/.f64 (PI.f64) 1/2) (*.f64 -2 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (PI.f64) 2)) 1/48))) 0) (PI.f64)) (*.f64 f f) 0)))

end36.0ms (0.2%)

Stop Event
fuel
Compiler

Compiled 88 to 70 computations (20.5% saved)

Profiling

Loading profile data...