Details

Time bar (total: 11.7s)

analyze1.1s (9.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
50%50%0.1%4
74.9%25%0.1%5
74.9%25%0.1%6
74.9%25%0.1%7
74.9%25%0.1%8
74.9%25%0.1%9
74.9%25%0.1%10
74.9%25%0.1%11
74.9%25%0.1%12
74.9%25%0.1%13
74.9%25%0.1%14
Compiler

Compiled 53 to 41 computations (22.6% saved)

sample8.5s (72.1%)

Results
5.7s3631×body1024valid
1.4s1469×body512valid
856.0ms2555×body128valid
391.0ms586×body256valid
46.0ms15×body2048valid
Compiler

Compiled 106 to 82 computations (22.6% saved)

preprocess28.0ms (0.2%)

Algorithm
egg-herbie
Rules
736×distribute-rgt-in_binary64
734×distribute-lft-in_binary64
515×fma-def_binary64
127×distribute-lft-neg-out_binary64
127×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044160
1120148
2353148
31524146
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (cos.f64 y) (cos.f64 x)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 y))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 x)))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))) (*.f64 3 (+.f64 1 (+.f64 (*.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2)) (*.f64 (cos.f64 y) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)))))))
(/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (-.f64 (cos.f64 x) (cos.f64 y))) 2) (*.f64 3 (fma.f64 (cos.f64 y) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)) (fma.f64 (cos.f64 x) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) 1))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 3 (fma.f64 (cos.f64 x) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) 1) (/.f64 (*.f64 (cos.f64 y) (-.f64 3 (sqrt.f64 5))) 2/3)))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2/3) (+.f64 3 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (cos.f64 y) (cos.f64 x)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 y))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 x)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 y) (cos.f64 x))))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 y) (/.f64 (+.f64 (sqrt.f64 5) -1) 2))) (*.f64 (cos.f64 x) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2))))))
(/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))) (-.f64 (cos.f64 y) (cos.f64 x)) 2) (*.f64 3 (fma.f64 (cos.f64 x) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)) (fma.f64 (cos.f64 y) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) 1))))
(/.f64 (/.f64 (fma.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (cos.f64 y) (cos.f64 x))) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) 2) 3) (fma.f64 (cos.f64 x) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)) (fma.f64 (cos.f64 y) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) 1)))
(/.f64 (fma.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (-.f64 (cos.f64 y) (cos.f64 x)))) 2) (fma.f64 (cos.f64 x) (/.f64 (-.f64 3 (sqrt.f64 5)) 2/3) (+.f64 3 (/.f64 (*.f64 (cos.f64 y) (+.f64 (sqrt.f64 5) -1)) 2/3))))
Compiler

Compiled 52 to 40 computations (23.1% saved)

simplify23.0ms (0.2%)

Algorithm
egg-herbie
Rules
444×distribute-rgt-neg-out_binary64
418×distribute-rgt-in_binary64
417×distribute-lft-in_binary64
350×unsub-neg_binary64
270×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03380
18074
221174
380973
4381573
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))) (*.f64 3 (+.f64 1 (+.f64 (*.f64 (cos.f64 x) (-.f64 (/.f64 (sqrt.f64 5) 2) 1/2)) (*.f64 (cos.f64 y) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)))))))
(/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (-.f64 (cos.f64 x) (cos.f64 y))) 2) (*.f64 3 (fma.f64 (cos.f64 y) (-.f64 3/2 (/.f64 (sqrt.f64 5) 2)) (fma.f64 (cos.f64 x) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) 1))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (*.f64 3 (fma.f64 (cos.f64 x) (+.f64 (/.f64 (sqrt.f64 5) 2) -1/2) (fma.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2) 1))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2/3) 3)))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))

prune6.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
Compiler

Compiled 298 to 221 computations (25.8% saved)

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
0.7b
(/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3)
1.0b
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
2.7b
(-.f64 (cos.f64 x) (cos.f64 y))

series19.0ms (0.2%)

Counts
4 → 44
Calls

15 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3)
2.0ms
x
@0
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
2.0ms
y
@inf
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
2.0ms
x
@inf
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
1.0ms
y
@0
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))

rewrite35.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
306×add-sqr-sqrt_binary64
292×pow1_binary64
290×add-cbrt-cube_binary64
290×add-exp-log_binary64
290×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02565
159365
Stop Event
node limit
Counts
4 → 41
Calls
Call 1
Inputs
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
(/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3)
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 x) (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (sqrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 x y) 2)) (sin.f64 (/.f64 (+.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (+.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (+.f64 (*.f64 (cos.f64 y) (cos.f64 y)) (*.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (cos.f64 y) (cos.f64 y))) (+.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 x) (cos.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 9/2 (neg.f64 (*.f64 (sqrt.f64 5) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))) (cbrt.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)))) (cbrt.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))) (sqrt.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 729/8 (pow.f64 (*.f64 (sqrt.f64 5) 3/2) 3)) (+.f64 81/4 (+.f64 (*.f64 (*.f64 (sqrt.f64 5) 3/2) (*.f64 (sqrt.f64 5) 3/2)) (*.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 81/4 (*.f64 (*.f64 (sqrt.f64 5) 3/2) (*.f64 (sqrt.f64 5) 3/2))) (+.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2)) (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))) (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 9/2 (*.f64 (sqrt.f64 5) 3/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (sqrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))) (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y)))))))))

simplify41.0ms (0.3%)

Algorithm
egg-herbie
Rules
607×associate-*l*_binary64
568×cancel-sign-sub-inv_binary64
566×associate-*r*_binary64
236×fma-neg_binary64
233×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01611468
15191416
219571362
Stop Event
node limit
Counts
85 → 84
Calls
Call 1
Inputs
(-.f64 1 (cos.f64 y))
(-.f64 1 (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (+.f64 (*.f64 1/720 (pow.f64 x 6)) (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2)))))
(-.f64 (cos.f64 x) 1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (cos.f64 x)) 1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (cos.f64 x)) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (cos.f64 x) (*.f64 1/720 (pow.f64 y 6)))) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
(-.f64 (+.f64 (*.f64 3/4 (pow.f64 x 2)) (*.f64 3/2 (sqrt.f64 5))) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5)))))
(-.f64 (+.f64 (*.f64 3/4 (pow.f64 x 2)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5))) (*.f64 3/2 (sqrt.f64 5)))) (+.f64 (*.f64 1/16 (pow.f64 x 4)) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5))))))
(-.f64 (+.f64 (*.f64 1/480 (pow.f64 x 6)) (+.f64 (*.f64 3/4 (pow.f64 x 2)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5))) (*.f64 3/2 (sqrt.f64 5))))) (+.f64 (*.f64 1/16 (pow.f64 x 4)) (+.f64 (*.f64 1/480 (*.f64 (pow.f64 x 6) (sqrt.f64 5))) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5)))))))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 -1/16 (*.f64 (-.f64 (cos.f64 x) 1) (pow.f64 (sin.f64 x) 2)))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (*.f64 257/256 (*.f64 y (sin.f64 x)))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 1/16 (pow.f64 y 2)) (*.f64 1/16 (pow.f64 (sin.f64 x) 2)))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 y 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 257/256 (*.f64 y (sin.f64 x))) (*.f64 1/16 (*.f64 (pow.f64 y 2) (cos.f64 x)))))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 257/384 (*.f64 (pow.f64 y 3) (sin.f64 x))) (+.f64 (*.f64 1/16 (pow.f64 (sin.f64 x) 2)) (*.f64 1/16 (pow.f64 y 2))))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 y 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 257/1536 (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 y 2) (cos.f64 x))) (*.f64 257/256 (*.f64 y (sin.f64 x))))))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 -1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (-.f64 1 (cos.f64 y))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y)))) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 x 2))) (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y)))))) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (+.f64 (*.f64 1/16 (pow.f64 x 2)) (*.f64 1/16 (pow.f64 (sin.f64 y) 2)))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y))) (*.f64 257/1536 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) (pow.f64 x 3)))))))) (+.f64 (*.f64 257/384 (*.f64 (sin.f64 y) (pow.f64 x 3))) (+.f64 (*.f64 1/16 (pow.f64 x 2)) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
Outputs
(-.f64 1 (cos.f64 y))
(-.f64 1 (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2))))
(-.f64 1 (+.f64 (cos.f64 y) (*.f64 1/2 (*.f64 x x))))
(-.f64 1 (fma.f64 1/2 (*.f64 x x) (cos.f64 y)))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2))))
(-.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (+.f64 (cos.f64 y) (*.f64 1/2 (*.f64 x x))))
(-.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (fma.f64 1/2 (*.f64 x x) (cos.f64 y)))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (+.f64 (*.f64 1/720 (pow.f64 x 6)) (+.f64 (cos.f64 y) (*.f64 1/2 (pow.f64 x 2)))))
(-.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (fma.f64 1/720 (pow.f64 x 6) (+.f64 (cos.f64 y) (*.f64 1/2 (*.f64 x x)))))
(-.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (fma.f64 1/720 (pow.f64 x 6) (fma.f64 1/2 (*.f64 x x) (cos.f64 y))))
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (cos.f64 x)) 1)
(+.f64 (fma.f64 1/2 (*.f64 y y) (cos.f64 x)) -1)
(+.f64 (cos.f64 x) (fma.f64 y (*.f64 y 1/2) -1))
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (cos.f64 x)) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(-.f64 (fma.f64 1/2 (*.f64 y y) (cos.f64 x)) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(-.f64 (fma.f64 1/2 (*.f64 y y) (cos.f64 x)) (fma.f64 1/24 (pow.f64 y 4) 1))
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (cos.f64 x) (*.f64 1/720 (pow.f64 y 6)))) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(-.f64 (fma.f64 1/2 (*.f64 y y) (+.f64 (cos.f64 x) (*.f64 1/720 (pow.f64 y 6)))) (+.f64 1 (*.f64 1/24 (pow.f64 y 4))))
(-.f64 (fma.f64 1/2 (*.f64 y y) (fma.f64 1/720 (pow.f64 y 6) (cos.f64 x))) (fma.f64 1/24 (pow.f64 y 4) 1))
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
(*.f64 3/2 (+.f64 (sqrt.f64 5) -1))
(+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2)
(fma.f64 3/2 (sqrt.f64 5) -3/2)
(-.f64 (+.f64 (*.f64 3/4 (pow.f64 x 2)) (*.f64 3/2 (sqrt.f64 5))) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5)))))
(-.f64 (fma.f64 3/4 (*.f64 x x) (*.f64 3/2 (sqrt.f64 5))) (+.f64 3/2 (*.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5)))))
(-.f64 (fma.f64 (*.f64 x x) 3/4 (*.f64 3/2 (sqrt.f64 5))) (fma.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5)) 3/2))
(fma.f64 (*.f64 x x) 3/4 (+.f64 (*.f64 (sqrt.f64 5) (-.f64 3/2 (*.f64 (*.f64 3/4 x) x))) -3/2))
(-.f64 (+.f64 (*.f64 3/4 (pow.f64 x 2)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5))) (*.f64 3/2 (sqrt.f64 5)))) (+.f64 (*.f64 1/16 (pow.f64 x 4)) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5))))))
(-.f64 (fma.f64 3/4 (*.f64 x x) (fma.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5)) (*.f64 3/2 (sqrt.f64 5)))) (fma.f64 1/16 (pow.f64 x 4) (+.f64 3/2 (*.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5))))))
(-.f64 (fma.f64 (*.f64 x x) 3/4 (*.f64 (sqrt.f64 5) (fma.f64 (pow.f64 x 4) 1/16 3/2))) (fma.f64 (pow.f64 x 4) 1/16 (fma.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5)) 3/2)))
(-.f64 (fma.f64 (*.f64 x x) 3/4 (*.f64 (sqrt.f64 5) (fma.f64 (pow.f64 x 4) 1/16 3/2))) (fma.f64 (pow.f64 x 4) 1/16 (fma.f64 3/4 (*.f64 (*.f64 (sqrt.f64 5) x) x) 3/2)))
(-.f64 (+.f64 (*.f64 1/480 (pow.f64 x 6)) (+.f64 (*.f64 3/4 (pow.f64 x 2)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5))) (*.f64 3/2 (sqrt.f64 5))))) (+.f64 (*.f64 1/16 (pow.f64 x 4)) (+.f64 (*.f64 1/480 (*.f64 (pow.f64 x 6) (sqrt.f64 5))) (+.f64 3/2 (*.f64 3/4 (*.f64 (pow.f64 x 2) (sqrt.f64 5)))))))
(-.f64 (fma.f64 1/480 (pow.f64 x 6) (fma.f64 3/4 (*.f64 x x) (fma.f64 1/16 (*.f64 (pow.f64 x 4) (sqrt.f64 5)) (*.f64 3/2 (sqrt.f64 5))))) (fma.f64 1/16 (pow.f64 x 4) (fma.f64 1/480 (*.f64 (pow.f64 x 6) (sqrt.f64 5)) (+.f64 3/2 (*.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5)))))))
(-.f64 (fma.f64 (pow.f64 x 6) 1/480 (fma.f64 (*.f64 x x) 3/4 (*.f64 (sqrt.f64 5) (fma.f64 (pow.f64 x 4) 1/16 3/2)))) (fma.f64 (pow.f64 x 4) 1/16 (fma.f64 1/480 (*.f64 (pow.f64 x 6) (sqrt.f64 5)) (fma.f64 3/4 (*.f64 (*.f64 x x) (sqrt.f64 5)) 3/2))))
(-.f64 (fma.f64 (pow.f64 x 6) 1/480 (fma.f64 (*.f64 x x) 3/4 (*.f64 (sqrt.f64 5) (fma.f64 (pow.f64 x 4) 1/16 3/2)))) (fma.f64 (pow.f64 x 4) 1/16 (+.f64 3/2 (*.f64 (sqrt.f64 5) (fma.f64 (pow.f64 x 6) 1/480 (*.f64 (*.f64 3/4 x) x))))))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 (*.f64 3/2 (+.f64 (sqrt.f64 5) -1)) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))
(*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(*.f64 -1/16 (*.f64 (-.f64 (cos.f64 x) 1) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (+.f64 (cos.f64 x) -1) (pow.f64 (sin.f64 x) 2)))
(*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (pow.f64 (sin.f64 x) 2) -1/16))
(*.f64 (+.f64 (cos.f64 x) -1) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (*.f64 257/256 (*.f64 y (sin.f64 x)))))
(-.f64 (fma.f64 257/256 (*.f64 y (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/16 (pow.f64 (sin.f64 x) 2))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 257/256 (*.f64 y (sin.f64 x)))))
(-.f64 (fma.f64 1/16 (pow.f64 (sin.f64 x) 2) (*.f64 y (*.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 257/256))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 (sin.f64 x) (*.f64 y 257/256))))
(fma.f64 257/256 (*.f64 y (*.f64 (cos.f64 x) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 1/16 (*.f64 1/16 (cos.f64 x)))) (*.f64 (sin.f64 x) (*.f64 y -257/256))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 1/16 (pow.f64 y 2)) (*.f64 1/16 (pow.f64 (sin.f64 x) 2)))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 y 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 257/256 (*.f64 y (sin.f64 x))) (*.f64 1/16 (*.f64 (pow.f64 y 2) (cos.f64 x)))))))
(-.f64 (fma.f64 257/256 (*.f64 y (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/16 (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y)))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/32 (*.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/16 (*.f64 (cos.f64 x) (*.f64 y y)) (*.f64 257/256 (*.f64 y (sin.f64 x)))))))
(-.f64 (fma.f64 1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 257/256))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/32 (*.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/16 (*.f64 (cos.f64 x) (*.f64 y y)) (*.f64 (sin.f64 x) (*.f64 y 257/256))))))
(-.f64 (fma.f64 1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 (cos.f64 x) (*.f64 y (*.f64 257/256 (sin.f64 x))))) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 (*.f64 y y) (*.f64 1/32 (sin.f64 x))))) (*.f64 (*.f64 1/16 (cos.f64 x)) (fma.f64 y y (pow.f64 (sin.f64 x) 2)))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 y (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 257/384 (*.f64 (pow.f64 y 3) (sin.f64 x))) (+.f64 (*.f64 1/16 (pow.f64 (sin.f64 x) 2)) (*.f64 1/16 (pow.f64 y 2))))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 y 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 257/1536 (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) (cos.f64 x)))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 y 2) (cos.f64 x))) (*.f64 257/256 (*.f64 y (sin.f64 x))))))))
(-.f64 (fma.f64 257/256 (*.f64 y (*.f64 (cos.f64 x) (sin.f64 x))) (fma.f64 257/384 (*.f64 (sin.f64 x) (pow.f64 y 3)) (*.f64 1/16 (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y))))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/32 (*.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2)) (fma.f64 257/1536 (*.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 y 3)) (fma.f64 1/16 (*.f64 (cos.f64 x) (*.f64 y y)) (*.f64 257/256 (*.f64 y (sin.f64 x))))))))
(-.f64 (fma.f64 257/256 (*.f64 y (*.f64 (cos.f64 x) (sin.f64 x))) (fma.f64 1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 (sin.f64 x) (*.f64 257/384 (pow.f64 y 3))))) (fma.f64 1/16 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/32 (*.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2)) (fma.f64 (*.f64 (pow.f64 y 3) 257/1536) (*.f64 (cos.f64 x) (sin.f64 x)) (fma.f64 1/16 (*.f64 (cos.f64 x) (*.f64 y y)) (*.f64 (sin.f64 x) (*.f64 y 257/256)))))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y (*.f64 257/256 (cos.f64 x))) (*.f64 257/384 (pow.f64 y 3)))) (-.f64 (*.f64 1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2))) (+.f64 (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 (*.f64 y y) (*.f64 1/32 (sin.f64 x))))) (*.f64 (*.f64 1/16 (cos.f64 x)) (fma.f64 y y (pow.f64 (sin.f64 x) 2)))) (*.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 (pow.f64 y 3) 257/1536))))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 -1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (-.f64 1 (cos.f64 y))))
(*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
(*.f64 (-.f64 1 (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y)))) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))
(-.f64 (fma.f64 257/256 (*.f64 x (sin.f64 y)) (*.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 (sin.f64 y) 2)))) (fma.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x)) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))
(-.f64 (fma.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 (sin.f64 y) 2)) (*.f64 x (*.f64 257/256 (sin.f64 y)))) (fma.f64 1/16 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (cos.f64 y) x) (*.f64 257/256 (sin.f64 y)))))
(fma.f64 257/256 (*.f64 x (sin.f64 y)) (+.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (*.f64 (cos.f64 y) 1/16) 1/16)) (*.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) -257/256))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 x 2))) (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y)))))) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (+.f64 (*.f64 1/16 (pow.f64 x 2)) (*.f64 1/16 (pow.f64 (sin.f64 y) 2)))))
(-.f64 (fma.f64 257/256 (*.f64 x (sin.f64 y)) (fma.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (*.f64 1/16 (+.f64 (*.f64 (cos.f64 y) (*.f64 x x)) (*.f64 (cos.f64 y) (pow.f64 (sin.f64 y) 2)))))) (fma.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x)) (*.f64 1/16 (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)))))
(fma.f64 257/256 (*.f64 x (sin.f64 y)) (-.f64 (fma.f64 1/16 (*.f64 (cos.f64 y) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 (*.f64 x x) (*.f64 1/32 (pow.f64 (sin.f64 y) 2)))) (fma.f64 1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 (*.f64 (cos.f64 y) x) (*.f64 257/256 (sin.f64 y))))))
(+.f64 (+.f64 (fma.f64 1/16 (*.f64 (cos.f64 y) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 x (*.f64 x (*.f64 1/32 (pow.f64 (sin.f64 y) 2))))) (*.f64 (*.f64 257/256 (sin.f64 y)) (-.f64 x (*.f64 (cos.f64 y) x)))) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2))))
(-.f64 (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) x)) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (sin.f64 y) 2) (cos.f64 y))) (*.f64 257/1536 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) (pow.f64 x 3)))))))) (+.f64 (*.f64 257/384 (*.f64 (sin.f64 y) (pow.f64 x 3))) (+.f64 (*.f64 1/16 (pow.f64 x 2)) (+.f64 (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x))) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))))
(-.f64 (fma.f64 257/256 (*.f64 x (sin.f64 y)) (fma.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (fma.f64 1/16 (*.f64 (cos.f64 y) (*.f64 x x)) (fma.f64 1/16 (*.f64 (cos.f64 y) (pow.f64 (sin.f64 y) 2)) (*.f64 257/1536 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) (pow.f64 x 3)))))))) (fma.f64 257/384 (*.f64 (sin.f64 y) (pow.f64 x 3)) (fma.f64 1/16 (*.f64 x x) (fma.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x)) (*.f64 1/16 (pow.f64 (sin.f64 y) 2))))))
(-.f64 (fma.f64 257/256 (*.f64 x (sin.f64 y)) (fma.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (fma.f64 1/16 (*.f64 (cos.f64 y) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 257/1536 (*.f64 (cos.f64 y) (*.f64 (sin.f64 y) (pow.f64 x 3))))))) (fma.f64 257/384 (*.f64 (sin.f64 y) (pow.f64 x 3)) (fma.f64 1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 (*.f64 (cos.f64 y) x) (*.f64 257/256 (sin.f64 y))))))
(-.f64 (+.f64 (fma.f64 1/32 (*.f64 x (*.f64 (pow.f64 (sin.f64 y) 2) x)) (fma.f64 1/16 (*.f64 (cos.f64 y) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 (cos.f64 y) (*.f64 (pow.f64 x 3) (*.f64 257/1536 (sin.f64 y)))))) (*.f64 (sin.f64 y) (-.f64 (*.f64 257/256 x) (*.f64 257/384 (pow.f64 x 3))))) (fma.f64 1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 257/256 (*.f64 (sin.f64 y) (*.f64 (cos.f64 y) x)))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))
(*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y))))

prune219.0ms (1.9%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New75984
Fresh011
Picked101
Done000
Total761086
Error
0.2b
Counts
86 → 10
Alt Table
StatusErrorProgram
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (cbrt.f64 (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
17.0b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (sqrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.6b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (cbrt.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
10.8b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (log.f64 (exp.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (*.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (/.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
Compiler

Compiled 5892 to 4001 computations (32.1% saved)

localize40.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y))))
1.0b
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
1.0b
(fma.f64 3/2 (sqrt.f64 5) -3/2)
2.7b
(-.f64 (cos.f64 x) (cos.f64 y))

series0.0ms (0%)

Counts
1 → 0

rewrite31.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
472×pow1_binary64
446×add-log-exp_binary64
446×log1p-expm1-u_binary64
446×expm1-log1p-u_binary64
440×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11237
212107
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 3/2 (sqrt.f64 5) -3/2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -3/2 (*.f64 3/2 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 3/2 (sqrt.f64 5)) 1) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 3/2 (sqrt.f64 5) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2) (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) (sqrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 3/2 (sqrt.f64 5)) 3) -27/8) (+.f64 (*.f64 (*.f64 3/2 (sqrt.f64 5)) (*.f64 3/2 (sqrt.f64 5))) (-.f64 9/4 (*.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 3/2 (sqrt.f64 5)) (*.f64 3/2 (sqrt.f64 5))) 9/4) (-.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))))

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

prune330.0ms (2.8%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New78785
Fresh729
Picked101
Done000
Total86995
Error
0.2b
Counts
95 → 9
Alt Table
StatusErrorProgram
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2)) (*.f64 (*.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) -1)) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (log.f64 (exp.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (*.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (*.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
Compiler

Compiled 5581 to 3756 computations (32.7% saved)

localize40.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
1.0b
(cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))
1.0b
(fma.f64 3/2 (sqrt.f64 5) -3/2)
2.7b
(-.f64 (cos.f64 x) (cos.f64 y))

series0.0ms (0%)

Counts
1 → 0

rewrite39.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
542×pow1_binary64
513×add-log-exp_binary64
513×log1p-expm1-u_binary64
513×expm1-log1p-u_binary64
504×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

prune224.0ms (1.9%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New77279
Fresh358
Picked011
Done000
Total80888
Error
0.2b
Counts
88 → 8
Alt Table
StatusErrorProgram
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (*.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (*.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (log.f64 (exp.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
1.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 1/6) 2) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
1.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (-.f64 (+.f64 1 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) 1) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
Compiler

Compiled 5081 to 3505 computations (31% saved)

localize34.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))
1.0b
(fma.f64 3/2 (sqrt.f64 5) -3/2)
1.0b
(pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2)
2.7b
(-.f64 (cos.f64 x) (cos.f64 y))

series0.0ms (0%)

Counts
1 → 0

rewrite42.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
669×pow1_binary64
631×add-log-exp_binary64
631×log1p-expm1-u_binary64
631×expm1-log1p-u_binary64
83×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

prune369.0ms (3.1%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1212123
Fresh156
Picked011
Done011
Total1229131
Error
0.2b
Counts
131 → 9
Alt Table
StatusErrorProgram
1.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) 1/6) 2) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (*.f64 (-.f64 (+.f64 1 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) 1) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (log.f64 (exp.f64 (*.f64 (*.f64 (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16))) (-.f64 (cos.f64 x) (cos.f64 y))))) 2) (+.f64 (*.f64 (cos.f64 x) (fma.f64 3/2 (sqrt.f64 5) -3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (*.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.8b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
1.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (-.f64 (+.f64 1 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) 1) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
Compiler

Compiled 7938 to 5710 computations (28.1% saved)

regimes208.0ms (1.8%)

Accuracy

Total 0.3b remaining (68.4%)

Threshold costs 0.3b (68.4%)

Counts
76 → 1
Compiler

Compiled 3780 to 2492 computations (34.1% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03680
14880
26880
38280
49280
59580
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
Outputs
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)) (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))) 2) (+.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 3)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))

end355.0ms (3%)

Stop Event
fuel
Compiler

Compiled 589 to 457 computations (22.4% saved)

Profiling

Loading profile data...