Details

Time bar (total: 21.0s)

analyze282.0ms (1.3%)

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
Compiler

Compiled 53 to 41 computations (22.6% saved)

sample7.9s (37.5%)

Results
5.4s3635×body1024valid
1.3s3163×body256valid
1.1s1440×body512valid
34.0ms18×body2048valid

preprocess58.0ms (0.3%)

Algorithm
egg-herbie
Rules
736×distribute-rgt-in_binary64
734×distribute-lft-in_binary64
614×unsub-neg_binary64
578×associate-*l*_binary64
515×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044160
1120148
2353148
31524146
47000146
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 (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 9/2 (/.f64 (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))))
(/.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 9/2 (/.f64 (sqrt.f64 5) 2/3)) (+.f64 3 (/.f64 (*.f64 (cos.f64 y) (+.f64 (sqrt.f64 5) -1)) 2/3))))
Compiler

Compiled 54 to 42 computations (22.2% saved)

simplify25.0ms (0.1%)

Algorithm
egg-herbie
Rules
541×associate-+l+_binary64
444×distribute-rgt-neg-out_binary64
438×distribute-lft-neg-out_binary64
418×distribute-rgt-in_binary64
417×distribute-lft-in_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
03380
18074
221174
380973
4381571
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 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))

eval2.0ms (0%)

Compiler

Compiled 97 to 68 computations (29.9% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.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 99 to 75 computations (24.2% saved)

localize96.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.1b
(-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))
0.0b
(+.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))))
0.0b
(cos.f64 x)
0.3b
(*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 269 to 178 computations (33.8% saved)

series16.0ms (0.1%)

Counts
4 → 56
Calls

18 calls:

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

rewrite83.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
433×expm1-udef_binary64
433×log1p-udef_binary64
310×fma-neg_binary64
248×add-sqr-sqrt_binary64
239×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02159
148459
2659559
Stop Event
node limit
Counts
4 → 114
Calls
Call 1
Inputs
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 3 (sqrt.f64 5))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)))
(*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
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 (cos.f64 x) (*.f64 (neg.f64 (cos.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 (neg.f64 (cos.f64 y)) 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 y))) (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (neg.f64 (cos.f64 y)) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 y)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 2) (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) 1/2)) (sin.f64 (*.f64 (+.f64 x y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 x y) 1/2)) (sin.f64 (*.f64 (+.f64 x y) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (/.f64 1 (+.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 y))) (-.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))) (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 x) (cos.f64 y)) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (+.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2))) (neg.f64 (+.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (neg.f64 (cos.f64 y)) 3)) (+.f64 (pow.f64 (cos.f64 x) 2) (-.f64 (*.f64 (neg.f64 (cos.f64 y)) (neg.f64 (cos.f64 y))) (*.f64 (cos.f64 x) (neg.f64 (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (neg.f64 (cos.f64 y)) (neg.f64 (cos.f64 y)))) (-.f64 (cos.f64 x) (neg.f64 (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 pow.f64 (pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 2))))) (#(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 log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 3))))) (#(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 exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 1))))) (#(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 fma.f64 (cos.f64 x) 1 (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 x) (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 3 (neg.f64 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 3 (*.f64 (neg.f64 (sqrt.f64 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 5)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 3 (sqrt.f64 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 3 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 1 (+.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 3 (sqrt.f64 5))) (pow.f64 (cbrt.f64 (-.f64 3 (sqrt.f64 5))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 3 (sqrt.f64 5))) 2) (cbrt.f64 (-.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 3 (sqrt.f64 5))) (sqrt.f64 (-.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 27 (pow.f64 5 3/2)) (/.f64 1 (+.f64 14 (*.f64 3 (sqrt.f64 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 3 (sqrt.f64 5)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 14 (*.f64 3 (sqrt.f64 5))) (-.f64 27 (pow.f64 5 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 3 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 27 (pow.f64 5 3/2)) (+.f64 14 (*.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -4 (neg.f64 (+.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 27 (pow.f64 5 3/2))) (neg.f64 (+.f64 14 (*.f64 3 (sqrt.f64 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 27 (pow.f64 (neg.f64 (sqrt.f64 5)) 3)) (+.f64 9 (-.f64 (*.f64 (neg.f64 (sqrt.f64 5)) (neg.f64 (sqrt.f64 5))) (*.f64 3 (neg.f64 (sqrt.f64 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 9 (*.f64 (neg.f64 (sqrt.f64 5)) (neg.f64 (sqrt.f64 5)))) (-.f64 3 (neg.f64 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 3 (sqrt.f64 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 3 (sqrt.f64 5)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 3 (sqrt.f64 5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 3 (sqrt.f64 5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 3 (sqrt.f64 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 3 (sqrt.f64 5)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 3 (sqrt.f64 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 3 (sqrt.f64 5))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 3 (sqrt.f64 5))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (sqrt.f64 2)) (*.f64 (*.f64 (sin.f64 y) -1/16) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (sin.f64 y) 3) 1/4096)) (sqrt.f64 2)) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (*.f64 (sin.f64 y) 1/16) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (sin.f64 y) 2) 1/256)) (sqrt.f64 2)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (-.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (sin.f64 y) 3) 1/4096))) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (*.f64 (sin.f64 y) 1/16) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (-.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (sin.f64 y) 2) 1/256))) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (pow.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) (*.f64 (*.f64 (sin.f64 x) -1/16) (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) (sin.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) (*.f64 (sin.f64 x) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096)) (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (sin.f64 x) 1/16) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096))) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (sin.f64 x) 1/16) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) 3) (pow.f64 (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)) 3) (pow.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))))))))

simplify52.0ms (0.2%)

Algorithm
egg-herbie
Rules
810×fma-def_binary64
646×distribute-lft-out_binary64
545×associate-*l*_binary64
468×associate-*r*_binary64
436×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01341332
13851318
211461172
346631127
Stop Event
node limit
Counts
170 → 164
Calls
Call 1
Inputs
(-.f64 1 (cos.f64 y))
(-.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4)))) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6))))) (cos.f64 y))
(-.f64 (cos.f64 x) 1)
(-.f64 (+.f64 (cos.f64 x) (*.f64 1/2 (pow.f64 y 2))) 1)
(-.f64 (+.f64 (cos.f64 x) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))) 1)
(-.f64 (+.f64 (cos.f64 x) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (*.f64 -1/24 (pow.f64 y 4))))) 1)
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x)))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (+.f64 (*.f64 (sqrt.f64 2) x) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 x 5))))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (sin.f64 x))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
Outputs
(-.f64 1 (cos.f64 y))
(-.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))) (cos.f64 y))
(+.f64 1 (-.f64 (*.f64 -1/2 (*.f64 x x)) (cos.f64 y)))
(-.f64 (fma.f64 -1/2 (*.f64 x x) 1) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4)))) (cos.f64 y))
(+.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (cos.f64 y)))
(+.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (-.f64 1 (cos.f64 y)))
(-.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) 1)) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6))))) (cos.f64 y))
(+.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))) (cos.f64 y)))
(+.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) 1)) (-.f64 (*.f64 -1/720 (pow.f64 x 6)) (cos.f64 y)))
(+.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) 1)) (fma.f64 -1/720 (pow.f64 x 6) (neg.f64 (cos.f64 y))))
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (+.f64 (cos.f64 x) (*.f64 1/2 (pow.f64 y 2))) 1)
(+.f64 (cos.f64 x) (-.f64 (*.f64 1/2 (*.f64 y y)) 1))
(+.f64 (cos.f64 x) (fma.f64 1/2 (*.f64 y y) -1))
(+.f64 (cos.f64 x) (fma.f64 y (*.f64 y 1/2) -1))
(-.f64 (+.f64 (cos.f64 x) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))) 1)
(+.f64 (cos.f64 x) (-.f64 (fma.f64 1/2 (*.f64 y y) (*.f64 -1/24 (pow.f64 y 4))) 1))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/24 (pow.f64 y 4)) (fma.f64 1/2 (*.f64 y y) -1)))
(+.f64 (cos.f64 x) (fma.f64 y (*.f64 y 1/2) (fma.f64 -1/24 (pow.f64 y 4) -1)))
(+.f64 (cos.f64 x) (fma.f64 -1/24 (pow.f64 y 4) (fma.f64 y (*.f64 y 1/2) -1)))
(-.f64 (+.f64 (cos.f64 x) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (*.f64 -1/24 (pow.f64 y 4))))) 1)
(+.f64 (cos.f64 x) (-.f64 (fma.f64 1/2 (*.f64 y y) (fma.f64 1/720 (pow.f64 y 6) (*.f64 -1/24 (pow.f64 y 4)))) 1))
(+.f64 (cos.f64 x) (+.f64 (fma.f64 -1/24 (pow.f64 y 4) (*.f64 1/720 (pow.f64 y 6))) (fma.f64 1/2 (*.f64 y y) -1)))
(+.f64 (cos.f64 x) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (fma.f64 y (*.f64 y 1/2) (fma.f64 -1/24 (pow.f64 y 4) -1))))
(+.f64 (fma.f64 y (*.f64 y 1/2) (fma.f64 -1/24 (pow.f64 y 4) (cos.f64 x))) (fma.f64 1/720 (pow.f64 y 6) -1))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (*.f64 x (sqrt.f64 2)))
(fma.f64 (*.f64 -1/16 (sqrt.f64 2)) (sin.f64 y) (*.f64 x (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) x))
(*.f64 (sqrt.f64 2) (+.f64 x (*.f64 -1/16 (sin.f64 y))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (*.f64 x (sqrt.f64 2))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 (*.f64 -1/16 (sqrt.f64 2)) (sin.f64 y) (*.f64 x (sqrt.f64 2))))
(fma.f64 (sqrt.f64 2) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (+.f64 (*.f64 (sqrt.f64 2) x) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 x 5))))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (fma.f64 (sqrt.f64 2) x (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 x 5))))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (fma.f64 x (sqrt.f64 2) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) 1/120)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 1/120 (pow.f64 x 5)))) (*.f64 (sqrt.f64 2) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 x (*.f64 -1/16 (sin.f64 y))) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (sin.f64 x))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(fma.f64 -1/16 (*.f64 y (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(fma.f64 (*.f64 -1/16 (sqrt.f64 2)) y (*.f64 (sqrt.f64 2) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/16)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(fma.f64 -1/16 (*.f64 y (sqrt.f64 2)) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(fma.f64 -1/16 (*.f64 y (sqrt.f64 2)) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) 1/96))))
(fma.f64 y (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 1/96 (pow.f64 y 3)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 y -1/16) (+.f64 (sin.f64 x) (*.f64 1/96 (pow.f64 y 3)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(fma.f64 -1/16 (*.f64 y (sqrt.f64 2)) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(fma.f64 -1/16 (*.f64 y (sqrt.f64 2)) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 5) -1/1920)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/16))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/96 (pow.f64 y 3)) (*.f64 -1/1920 (pow.f64 y 5)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sin.f64 x) (*.f64 -1/1920 (pow.f64 y 5))) (+.f64 (*.f64 y -1/16) (*.f64 1/96 (pow.f64 y 3)))))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 y) 2))
(*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 257/256 (sin.f64 y)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 x (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) 257/256))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)) (*.f64 x (*.f64 (sin.f64 y) 257/256))))
(*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))))
(fma.f64 -1/16 (*.f64 (*.f64 x x) (sqrt.f64 2)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 257/256 (sin.f64 y))))))
(+.f64 (*.f64 x (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) 257/256))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(fma.f64 x (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) 257/256) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 x (*.f64 (sin.f64 y) 257/256)) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))))
(fma.f64 -1/16 (*.f64 (*.f64 x x) (sqrt.f64 2)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 x 3) (*.f64 (sin.f64 y) -257/1536)) (*.f64 x (*.f64 257/256 (sin.f64 y)))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 (pow.f64 x 3) (*.f64 (sin.f64 y) -257/1536) (*.f64 x (*.f64 (sin.f64 y) 257/256)))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (fma.f64 257/256 (*.f64 x (sin.f64 y)) (*.f64 (pow.f64 x 3) (*.f64 (sin.f64 y) -257/1536)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 x (*.f64 (sin.f64 y) (+.f64 (*.f64 -257/1536 (*.f64 x x)) 257/256))) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 x) 2))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))
(fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 x) 2)))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) 257/256))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 (sin.f64 x) 257/256)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))))
(*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 -1/16 (*.f64 (*.f64 y y) (sqrt.f64 2)) (fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 x) 2))))
(fma.f64 -1/16 (*.f64 (*.f64 y y) (sqrt.f64 2)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) 257/256)))))
(fma.f64 y (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) 257/256)) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)) (*.f64 y (+.f64 (*.f64 (sin.f64 x) 257/256) (*.f64 y -1/16)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536)) (fma.f64 -1/16 (*.f64 (*.f64 y y) (sqrt.f64 2)) (fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536)) (fma.f64 -1/16 (*.f64 (*.f64 y y) (sqrt.f64 2)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) 257/256))))))
(fma.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536)) (fma.f64 y (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) 257/256)) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (*.f64 (*.f64 y y) (+.f64 (*.f64 y (*.f64 (sin.f64 x) -257/1536)) -1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))

localize70.0ms (0.3%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))
0.1b
(fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)
0.0b
(fma.f64 (sqrt.f64 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)))) 2)
0.0b
(cos.f64 x)
0.3b
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0b
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
1.0b
(/.f64 (+.f64 (sqrt.f64 5) -1) 2/3)
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 203 to 123 computations (39.4% saved)

series4.0ms (0%)

Counts
3 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0ms
x
@inf
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0ms
x
@-inf
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0ms
y
@0
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
0.0ms
y
@-inf
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))

rewrite73.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
427×expm1-udef_binary64
427×log1p-udef_binary64
288×fma-neg_binary64
248×add-sqr-sqrt_binary64
233×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02139
147934
2645134
Stop Event
node limit
Counts
3 → 92
Calls
Call 1
Inputs
(/.f64 (+.f64 (sqrt.f64 5) -1) 2/3)
(-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3))
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 5) -1)) 2) (*.f64 (cbrt.f64 (+.f64 (sqrt.f64 5) -1)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) 2) (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (sqrt.f64 5) -1)) (*.f64 (sqrt.f64 (+.f64 (sqrt.f64 5) -1)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) (sqrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (neg.f64 (sqrt.f64 5))) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3/2 (+.f64 (sqrt.f64 5) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (+.f64 (sqrt.f64 5) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) -2/3))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (+.f64 (sqrt.f64 5) -1) 2) 9/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 9/2 (neg.f64 (sqrt.f64 45/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 9/2 (*.f64 (neg.f64 (sqrt.f64 45/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 45/4)) 9/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 9/2 (sqrt.f64 45/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 9/2 (sqrt.f64 45/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) (pow.f64 (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) 2) (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) (sqrt.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 729/8 (*.f64 (sqrt.f64 45/4) 45/4)) (/.f64 1 (+.f64 63/2 (*.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 63/2 (*.f64 9/2 (sqrt.f64 45/4))) (-.f64 729/8 (*.f64 (sqrt.f64 45/4) 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 9/2 (sqrt.f64 45/4)) 9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 729/8 (*.f64 (sqrt.f64 45/4) 45/4)) (+.f64 63/2 (*.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 729/8 (*.f64 (sqrt.f64 45/4) 45/4))) (neg.f64 (+.f64 63/2 (*.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -9 (neg.f64 (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 729/8 (pow.f64 (neg.f64 (sqrt.f64 45/4)) 3)) (+.f64 81/4 (-.f64 (*.f64 (neg.f64 (sqrt.f64 45/4)) (neg.f64 (sqrt.f64 45/4))) (*.f64 9/2 (neg.f64 (sqrt.f64 45/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 81/4 (*.f64 (neg.f64 (sqrt.f64 45/4)) (neg.f64 (sqrt.f64 45/4)))) (-.f64 9/2 (neg.f64 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 9/2 (sqrt.f64 45/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 9/2 (sqrt.f64 45/4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 9/2 (sqrt.f64 45/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 9/2 (sqrt.f64 45/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 9/2 (sqrt.f64 45/4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 9/2 (sqrt.f64 45/4))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (*.f64 (neg.f64 (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (-.f64 (cos.f64 x) (cos.f64 y))) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (cos.f64 x) (cos.f64 y))) (*.f64 (sin.f64 y) (-.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (cos.f64 x)) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (neg.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (sin.f64 x))) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096)) (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3))) (*.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))) (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3))) (*.f64 (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096)) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2))) (*.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))) (+.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2))) (*.f64 (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (cos.f64 x) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096))) (*.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096))) (*.f64 (+.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (*.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))) (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (*.f64 (+.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096)) (-.f64 (cos.f64 x) (cos.f64 y))) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (-.f64 (cos.f64 x) (cos.f64 y))) (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (+.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3))) (+.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (cos.f64 y) (+.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2))) (+.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) -1/4096))) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 -1/16 (sin.f64 x)) (-.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (+.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y))) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) 3) (pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 (cos.f64 x) (cos.f64 y)) 3) (pow.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))))))))

simplify54.0ms (0.3%)

Algorithm
egg-herbie
Rules
890×unsub-neg_binary64
600×sub-neg_binary64
501×associate-*l*_binary64
489×associate-+l+_binary64
410×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
053551
1140533
2399504
31597504
44908504
56664504
Stop Event
node limit
Counts
116 → 110
Calls
Call 1
Inputs
(*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1)))
(+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (*.f64 y (-.f64 (cos.f64 x) 1)))
(+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sin.f64 x))) (*.f64 y (-.f64 (cos.f64 x) 1))))
(+.f64 (*.f64 (+.f64 1/2 (*.f64 -1/6 (-.f64 (cos.f64 x) 1))) (pow.f64 y 3)) (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sin.f64 x))) (*.f64 y (-.f64 (cos.f64 x) 1)))))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (+.f64 (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)) (*.f64 -1/2 (*.f64 (sin.f64 y) (pow.f64 x 2)))))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (+.f64 (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 y) (pow.f64 x 2))) (*.f64 (+.f64 1/32 (*.f64 1/96 (-.f64 1 (cos.f64 y)))) (pow.f64 x 3)))))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
Outputs
(*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1)))
(*.f64 -1/16 (*.f64 (sin.f64 x) (+.f64 (cos.f64 x) -1)))
(*.f64 (sin.f64 x) (*.f64 -1/16 (+.f64 (cos.f64 x) -1)))
(*.f64 (+.f64 (cos.f64 x) -1) (*.f64 -1/16 (sin.f64 x)))
(+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (*.f64 y (-.f64 (cos.f64 x) 1)))
(fma.f64 -1/16 (*.f64 (sin.f64 x) (+.f64 (cos.f64 x) -1)) (*.f64 (+.f64 (cos.f64 x) -1) y))
(*.f64 (+.f64 (cos.f64 x) -1) (+.f64 (*.f64 -1/16 (sin.f64 x)) y))
(*.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y))
(+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sin.f64 x))) (*.f64 y (-.f64 (cos.f64 x) 1))))
(fma.f64 -1/16 (*.f64 (sin.f64 x) (+.f64 (cos.f64 x) -1)) (fma.f64 -1/32 (*.f64 (sin.f64 x) (*.f64 y y)) (*.f64 (+.f64 (cos.f64 x) -1) y)))
(+.f64 (*.f64 (*.f64 -1/32 (sin.f64 x)) (*.f64 y y)) (*.f64 (+.f64 (cos.f64 x) -1) (+.f64 (*.f64 -1/16 (sin.f64 x)) y)))
(fma.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y) (*.f64 (*.f64 y -1/32) (*.f64 (sin.f64 x) y)))
(fma.f64 (sin.f64 x) (*.f64 y (*.f64 y -1/32)) (*.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y)))
(fma.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y) (*.f64 (sin.f64 x) (*.f64 y (*.f64 y -1/32))))
(+.f64 (*.f64 (+.f64 1/2 (*.f64 -1/6 (-.f64 (cos.f64 x) 1))) (pow.f64 y 3)) (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 x) (-.f64 (cos.f64 x) 1))) (+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sin.f64 x))) (*.f64 y (-.f64 (cos.f64 x) 1)))))
(fma.f64 (+.f64 1/2 (*.f64 (+.f64 (cos.f64 x) -1) -1/6)) (pow.f64 y 3) (fma.f64 -1/16 (*.f64 (sin.f64 x) (+.f64 (cos.f64 x) -1)) (fma.f64 -1/32 (*.f64 (sin.f64 x) (*.f64 y y)) (*.f64 (+.f64 (cos.f64 x) -1) y))))
(fma.f64 (fma.f64 (+.f64 (cos.f64 x) -1) -1/6 1/2) (pow.f64 y 3) (+.f64 (*.f64 (*.f64 -1/32 (sin.f64 x)) (*.f64 y y)) (*.f64 (+.f64 (cos.f64 x) -1) (+.f64 (*.f64 -1/16 (sin.f64 x)) y))))
(fma.f64 (+.f64 (*.f64 (cos.f64 x) -1/6) 2/3) (pow.f64 y 3) (fma.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y) (*.f64 (*.f64 y -1/32) (*.f64 (sin.f64 x) y))))
(fma.f64 (+.f64 (*.f64 (cos.f64 x) -1/6) 2/3) (pow.f64 y 3) (fma.f64 (sin.f64 x) (*.f64 y (*.f64 y -1/32)) (*.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y))))
(fma.f64 (+.f64 (*.f64 (cos.f64 x) -1/6) 2/3) (pow.f64 y 3) (fma.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y) (*.f64 (sin.f64 x) (*.f64 y (*.f64 y -1/32)))))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y))
(*.f64 (sin.f64 y) (-.f64 1 (cos.f64 y)))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)))
(fma.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y) (*.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y)))))
(fma.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y))) (*.f64 (sin.f64 y) (-.f64 1 (cos.f64 y))))
(*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (sin.f64 y) (*.f64 -1/16 x)))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (+.f64 (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)) (*.f64 -1/2 (*.f64 (sin.f64 y) (pow.f64 x 2)))))
(fma.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y) (fma.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y))) (*.f64 -1/2 (*.f64 (sin.f64 y) (*.f64 x x)))))
(fma.f64 (sin.f64 y) (-.f64 1 (cos.f64 y)) (fma.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y))) (*.f64 (sin.f64 y) (*.f64 (*.f64 x x) -1/2))))
(fma.f64 (sin.f64 y) (*.f64 -1/2 (*.f64 x x)) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (sin.f64 y) (*.f64 -1/16 x))))
(+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)) (+.f64 (*.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 y) (pow.f64 x 2))) (*.f64 (+.f64 1/32 (*.f64 1/96 (-.f64 1 (cos.f64 y)))) (pow.f64 x 3)))))
(fma.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y) (fma.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y))) (fma.f64 -1/2 (*.f64 (sin.f64 y) (*.f64 x x)) (*.f64 (+.f64 1/32 (*.f64 (-.f64 1 (cos.f64 y)) 1/96)) (pow.f64 x 3)))))
(fma.f64 (sin.f64 y) (-.f64 1 (cos.f64 y)) (fma.f64 -1/16 (*.f64 x (-.f64 1 (cos.f64 y))) (fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 y))) (*.f64 (fma.f64 (-.f64 1 (cos.f64 y)) 1/96 1/32) (pow.f64 x 3)))))
(+.f64 (*.f64 (*.f64 x x) (+.f64 (*.f64 (sin.f64 y) -1/2) (*.f64 x (+.f64 1/24 (*.f64 -1/96 (cos.f64 y)))))) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (sin.f64 y) (*.f64 -1/16 x))))
(+.f64 (*.f64 (*.f64 x x) (+.f64 (*.f64 (sin.f64 y) -1/2) (*.f64 x (+.f64 (*.f64 (cos.f64 y) -1/96) 1/24)))) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (sin.f64 y) (*.f64 -1/16 x))))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
(*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))

eval308.0ms (1.5%)

Compiler

Compiled 17886 to 11799 computations (34% saved)

prune133.0ms (0.6%)

Pruning

35 alts after pruning (34 fresh and 1 done)

PrunedKeptTotal
New29734331
Fresh000
Picked101
Done011
Total29835333
Error
0.1b
Counts
333 → 35
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
22.3b
(/.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) -1))) (*.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)))))
23.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.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 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)))) 2) (fma.f64 (cos.f64 x) (expm1.f64 (log1p.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.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.4b
(/.f64 (+.f64 2 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16)))) 3)) (-.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)))))
28.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.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)))))
7.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.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.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
0.4b
(/.f64 (+.f64 2 (*.f64 (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/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.4b
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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.4b
(/.f64 (+.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 x) (sqrt.f64 2)) (*.f64 (*.f64 (sin.f64 y) -1/16) (sqrt.f64 2))) (-.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)))))
23.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (-.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.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))))))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.9b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 5) -1)) 2) (*.f64 (cbrt.f64 (+.f64 (sqrt.f64 5) -1)) 3/2)) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.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))) (fma.f64 (cbrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (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)))))
26.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (-.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.4b
(/.f64 (+.f64 2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))) 3) (-.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.4b
(/.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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
23.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.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)))))
25.3b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (cos.f64 x) -1) (fma.f64 -1/16 (sin.f64 x) y))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.f64 (+.f64 2 (*.f64 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/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)))))
23.1b
(/.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 1 (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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.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.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 3)) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
22.2b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 -1/16 (sin.f64 x)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
10.0b
(/.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))) (expm1.f64 (log1p.f64 (-.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)))))
28.7b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (pow.f64 (*.f64 1/6 (+.f64 (sqrt.f64 5) 1)) -1) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
5.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y))))) 1)) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
0.4b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (-.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)))))
21.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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.4b
(/.f64 (+.f64 2 (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (+.f64 9/2 (neg.f64 (sqrt.f64 45/4))) 3)))
Compiler

Compiled 3488 to 2722 computations (22% saved)

localize162.0ms (0.8%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.1b
(+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))
0.0b
(+.f64 2 (*.f64 (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 (cos.f64 x) (cos.f64 y))))
0.0b
(cos.f64 x)
0.3b
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 301 to 202 computations (32.9% saved)

series10.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
y
@inf
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@-inf
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@inf
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
y
@-inf
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@inf
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))

rewrite90.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
814×log-prod_binary64
488×fma-def_binary64
307×expm1-udef_binary64
307×log1p-udef_binary64
246×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01745
135741
2472039
Stop Event
node limit
Counts
2 → 94
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)))
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) 1) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 2) (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) 3) (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 3)) (fma.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (sin.f64 x))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))) (-.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1/4096 (pow.f64 (sin.f64 y) 3) (pow.f64 (sin.f64 x) 3)) (sqrt.f64 2)) (fma.f64 (*.f64 (sin.f64 y) -1/16) (-.f64 (*.f64 (sin.f64 y) -1/16) (sin.f64 x)) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 x) 2) (*.f64 1/256 (pow.f64 (sin.f64 y) 2))) (sqrt.f64 2)) (+.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/4096 (pow.f64 (sin.f64 y) 3) (pow.f64 (sin.f64 x) 3))) (fma.f64 (*.f64 (sin.f64 y) -1/16) (-.f64 (*.f64 (sin.f64 y) -1/16) (sin.f64 x)) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (-.f64 (pow.f64 (sin.f64 x) 2) (*.f64 1/256 (pow.f64 (sin.f64 y) 2)))) (+.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (pow.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (exp.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (sqrt.f64 2) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 y) (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/16 (*.f64 (sin.f64 y) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 y) -1/16) (sqrt.f64 2) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/256 (pow.f64 (sin.f64 y) 2))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 y) -1/16)) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 (sqrt.f64 2)) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 (*.f64 (sin.f64 y) -1/16)) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 2 1/4) (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 2 1/4) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) 1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 x))) (cbrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)))) (cbrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 x))) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))) (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 x))) (sqrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 x))) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 2 1/4) (sqrt.f64 (sin.f64 x))) (*.f64 (pow.f64 2 1/4) (sqrt.f64 (sin.f64 x))) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 (sin.f64 y) -1/16))) (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 (sin.f64 y) -1/16))) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 x)) (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (sin.f64 x)) (pow.f64 2 1/4)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 y) -1/16)) (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (*.f64 (sin.f64 y) -1/16)) (pow.f64 2 1/4)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) -1/16 (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) -1/16) (sin.f64 y) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/256 (pow.f64 (sin.f64 y) 2)))) (cbrt.f64 (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (sin.f64 y) -1/16))) (sqrt.f64 (*.f64 (sin.f64 y) -1/16)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (cbrt.f64 2)) (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (pow.f64 2 1/4)) (pow.f64 2 1/4) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 y) -1/16) (cbrt.f64 2)) (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 y) -1/16) (pow.f64 2 1/4)) (pow.f64 2 1/4) (*.f64 (sqrt.f64 2) (sin.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) (*.f64 (*.f64 (sin.f64 x) -1/16) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (sin.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (*.f64 (sin.f64 x) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) (sin.f64 x))) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096)) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) (fma.f64 (*.f64 (sin.f64 x) 1/16) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096))) (fma.f64 (*.f64 (sin.f64 x) 1/16) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 2)) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) 3) (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3) (pow.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 y) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (*.f64 (*.f64 (sin.f64 x) -1/16) (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (sin.f64 y) (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) -1/16 (sin.f64 x))) (*.f64 (sin.f64 x) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))

simplify67.0ms (0.3%)

Algorithm
egg-herbie
Rules
652×fma-def_binary64
619×unsub-neg_binary64
593×distribute-lft-out_binary64
508×associate-+l+_binary64
477×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0911124
12901114
29031036
33672993
47522993
Stop Event
node limit
Counts
142 → 129
Calls
Call 1
Inputs
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x)))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (+.f64 (*.f64 (sqrt.f64 2) x) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 x 5))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (sin.f64 x))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
Outputs
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (sin.f64 y)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) x))
(*.f64 (sqrt.f64 2) (+.f64 x (*.f64 -1/16 (sin.f64 y))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (*.f64 (sqrt.f64 2) x)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (*.f64 (sqrt.f64 2) x)))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (+.f64 (*.f64 (sqrt.f64 2) x) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 x 5))))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (fma.f64 (sqrt.f64 2) x (*.f64 (*.f64 1/120 (sqrt.f64 2)) (pow.f64 x 5)))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y)) (fma.f64 (sqrt.f64 2) x (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) 1/120)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) x)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 -1/6 (pow.f64 x 3))) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (sin.f64 x))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) y) (*.f64 (sqrt.f64 2) (sin.f64 x)))
(fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 (sqrt.f64 2) (*.f64 y -1/16)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 -1/16 y)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) y) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (*.f64 (sqrt.f64 2) (sin.f64 x))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) y) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)))))
(fma.f64 (sqrt.f64 2) (*.f64 1/96 (pow.f64 y 3)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 y) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/96 (pow.f64 y 3)) (+.f64 (sin.f64 x) (*.f64 -1/16 y))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) y)) (+.f64 (*.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) y) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 -1/1920 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) y) (fma.f64 1/96 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 (sqrt.f64 2) (sin.f64 x) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 5) -1/1920)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/96 (pow.f64 y 3)) (sin.f64 x))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/1920 (pow.f64 y 5)) (*.f64 -1/16 y))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sin.f64 x) (*.f64 1/96 (pow.f64 y 3))) (+.f64 (*.f64 -1/1920 (pow.f64 y 5)) (*.f64 -1/16 y))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (pow.f64 (sin.f64 y) 2))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 257/256 (sin.f64 y)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 (sin.f64 y) 257/256))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)) (*.f64 (sin.f64 y) (*.f64 x 257/256))))
(*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 257/256 (sin.f64 y))))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 x (*.f64 (sin.f64 y) 257/256))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (fma.f64 x x (pow.f64 (sin.f64 y) 2))) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (*.f64 x 257/256))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 y) (*.f64 x 257/256)) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 x 3) (*.f64 (sin.f64 y) -257/1536)) (*.f64 x (*.f64 257/256 (sin.f64 y)))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 (pow.f64 x 3) (*.f64 (sin.f64 y) -257/1536) (*.f64 x (*.f64 (sin.f64 y) 257/256)))) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(fma.f64 (sqrt.f64 2) (fma.f64 (sin.f64 y) (*.f64 (pow.f64 x 3) -257/1536) (*.f64 (sin.f64 y) (*.f64 x 257/256))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 (pow.f64 x 3) -257/1536))) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))
(fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (sqrt.f64 2) (*.f64 257/256 (*.f64 y (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 (sin.f64 x) 257/256)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))))
(*.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (sqrt.f64 2) (*.f64 257/256 (*.f64 y (sin.f64 x))))))
(fma.f64 y (*.f64 (sin.f64 x) (*.f64 (sqrt.f64 2) 257/256)) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (fma.f64 (sqrt.f64 2) (*.f64 y (*.f64 257/256 (sin.f64 x))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) (*.f64 -257/1536 (pow.f64 y 3))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (sqrt.f64 2) (*.f64 257/256 (*.f64 y (sin.f64 x)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sin.f64 x) (*.f64 (pow.f64 y 3) -257/1536)) (fma.f64 y (*.f64 (sin.f64 x) (*.f64 (sqrt.f64 2) 257/256)) (*.f64 (*.f64 -1/16 (sqrt.f64 2)) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 y y)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y (*.f64 (sin.f64 x) -257/1536)) -1/16)) (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x))))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (-.f64 (sin.f64 y) (*.f64 (sin.f64 x) 1/16))))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))
(*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))))
(*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))))

localize80.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.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.1b
(+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x)))
0.1b
(*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))
0.0b
(cos.f64 x)
0.3b
(*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))
0.3b
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 209 to 155 computations (25.8% saved)

series5.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
1.0ms
x
@inf
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
1.0ms
x
@0
(*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))
1.0ms
x
@0
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
1.0ms
x
@inf
(*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))

rewrite55.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
692×log-prod_binary64
380×pow2_binary64
266×pow1/3_binary64
265×expm1-udef_binary64
265×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01628
134128
2389026
Stop Event
node limit
Counts
2 → 50
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)) -1/16) (sqrt.f64 2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)) -1/16) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)) -1/16) (sqrt.f64 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)) -1/16) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)) 3) (*.f64 2 (sqrt.f64 2))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)) -1/16) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sqrt.f64 2) -1/16))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (fma.f64 (sqrt.f64 5) 1/2 -1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (fma.f64 (sqrt.f64 5) 1/2 -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (fma.f64 (sqrt.f64 5) 1/2 -1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (fma.f64 (sqrt.f64 5) 1/2 -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 5) -1) (/.f64 2 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (sqrt.f64 5)) 1) (cos.f64 x)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 x) (+.f64 (neg.f64 (sqrt.f64 5)) 1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) 3) (pow.f64 (cos.f64 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 x)) (fma.f64 (sqrt.f64 5) 1/2 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) 3) (pow.f64 (cos.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))))))))

simplify46.0ms (0.2%)

Algorithm
egg-herbie
Rules
793×distribute-lft-out_binary64
669×distribute-rgt-in_binary64
491×*-commutative_binary64
473×+-commutative_binary64
309×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
054470
1138470
2400418
31471398
43544398
56138398
Stop Event
node limit
Counts
74 → 70
Calls
Call 1
Inputs
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4))))
(+.f64 (*.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4)))))
(+.f64 (*.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4))) (*.f64 1/5040 (*.f64 (sqrt.f64 2) (pow.f64 x 8))))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 1/2 (-.f64 (sqrt.f64 5) 1))
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1)))
(+.f64 (*.f64 1/48 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))))
(+.f64 (*.f64 1/48 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (+.f64 (*.f64 -1/1440 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1)))))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
Outputs
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)))
(*.f64 x (*.f64 (sqrt.f64 2) (*.f64 -1/16 x)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (*.f64 (*.f64 1/48 (pow.f64 x 4)) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (*.f64 x x)) (*.f64 1/48 (pow.f64 x 4))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 x x) (+.f64 -1/16 (*.f64 (*.f64 x x) 1/48))))
(+.f64 (*.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4)))))
(fma.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4)))))
(fma.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (*.f64 (*.f64 1/48 (pow.f64 x 4)) (sqrt.f64 2))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/360 (pow.f64 x 6)) (*.f64 1/48 (pow.f64 x 4)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) (+.f64 -1/16 (*.f64 (*.f64 x x) 1/48))) (*.f64 -1/360 (pow.f64 x 6))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/360 (pow.f64 x 6)) (*.f64 (*.f64 x x) (+.f64 -1/16 (*.f64 (*.f64 x x) 1/48)))))
(+.f64 (*.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4))) (*.f64 1/5040 (*.f64 (sqrt.f64 2) (pow.f64 x 8))))))
(fma.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (fma.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4)) (*.f64 1/5040 (*.f64 (sqrt.f64 2) (pow.f64 x 8))))))
(fma.f64 -1/360 (*.f64 (sqrt.f64 2) (pow.f64 x 6)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 x x)) (fma.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 x 4)) (*.f64 (pow.f64 x 8) (*.f64 (sqrt.f64 2) 1/5040)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (*.f64 x x)) (*.f64 1/48 (pow.f64 x 4)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/5040 (pow.f64 x 8)) (*.f64 -1/360 (pow.f64 x 6)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 x 6) (+.f64 (*.f64 (*.f64 x x) 1/5040) -1/360)) (*.f64 (*.f64 x x) (+.f64 -1/16 (*.f64 (*.f64 x x) 1/48)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) (+.f64 -1/16 (*.f64 (*.f64 x x) 1/48))) (*.f64 (pow.f64 x 6) (+.f64 -1/360 (*.f64 (*.f64 x x) 1/5040)))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)))
(*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (sqrt.f64 2)))
(*.f64 1/2 (-.f64 (sqrt.f64 5) 1))
(*.f64 1/2 (+.f64 (sqrt.f64 5) -1))
(+.f64 (*.f64 (sqrt.f64 5) 1/2) -1/2)
(fma.f64 1/2 (sqrt.f64 5) -1/2)
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1)))
(fma.f64 -1/4 (*.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) -1)) (*.f64 1/2 (+.f64 (sqrt.f64 5) -1)))
(fma.f64 1/2 (+.f64 (sqrt.f64 5) -1) (*.f64 (*.f64 x x) (*.f64 (+.f64 (sqrt.f64 5) -1) -1/4)))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 1/2 (*.f64 x (*.f64 x -1/4))))
(+.f64 (*.f64 1/48 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))))
(fma.f64 1/48 (*.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) -1)) (fma.f64 -1/4 (*.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) -1)) (*.f64 1/2 (+.f64 (sqrt.f64 5) -1))))
(fma.f64 1/48 (*.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) -1)) (fma.f64 1/2 (+.f64 (sqrt.f64 5) -1) (*.f64 (*.f64 x x) (*.f64 (+.f64 (sqrt.f64 5) -1) -1/4))))
(fma.f64 (pow.f64 x 4) (fma.f64 1/48 (sqrt.f64 5) -1/48) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 1/2 (*.f64 x (*.f64 x -1/4)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 1/48 (pow.f64 x 4)) (+.f64 1/2 (*.f64 x (*.f64 x -1/4)))))
(+.f64 (*.f64 1/48 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))) (+.f64 (*.f64 -1/1440 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (*.f64 1/2 (-.f64 (sqrt.f64 5) 1)))))
(fma.f64 1/48 (*.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) -1)) (fma.f64 -1/4 (*.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) -1)) (fma.f64 -1/1440 (*.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) -1)) (*.f64 1/2 (+.f64 (sqrt.f64 5) -1)))))
(fma.f64 1/48 (*.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) -1)) (fma.f64 -1/4 (*.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) -1)) (fma.f64 -1/1440 (*.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) -1)) (+.f64 (*.f64 (sqrt.f64 5) 1/2) -1/2))))
(+.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 1/2 (*.f64 (pow.f64 x 6) -1/1440))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 x (*.f64 x -1/4)) (*.f64 1/48 (pow.f64 x 4)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (+.f64 1/2 (*.f64 (pow.f64 x 6) -1/1440)) (+.f64 (*.f64 1/48 (pow.f64 x 4)) (*.f64 x (*.f64 x -1/4)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 1/2 (+.f64 (*.f64 1/48 (pow.f64 x 4)) (+.f64 (*.f64 x (*.f64 x -1/4)) (*.f64 (pow.f64 x 6) -1/1440)))))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))
(*.f64 (fma.f64 1/2 (sqrt.f64 5) -1/2) (cos.f64 x))

localize127.0ms (0.6%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.1b
(-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))
0.0b
(+.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) -1)))
0.0b
(cos.f64 x)
0.3b
(*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)))
1.0b
(-.f64 3 (sqrt.f64 5))
1.7b
(+.f64 (cos.f64 x) -1)
Compiler

Compiled 266 to 186 computations (30.1% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(+.f64 (cos.f64 x) -1)
0.0ms
x
@-inf
(+.f64 (cos.f64 x) -1)
0.0ms
x
@inf
(+.f64 (cos.f64 x) -1)

rewrite36.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
544×pow1_binary64
530×add-sqr-sqrt_binary64
505×add-log-exp_binary64
505×log1p-expm1-u_binary64
505×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify84.0ms (0.4%)

Algorithm
egg-herbie
Rules
601×distribute-rgt-out_binary64
532×sqr-pow_binary64
486×associate-+l+_binary64
477×distribute-lft-out_binary64
413×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027118
163118
2135118
3427118
41930118
54333118
64712118
75218118
86208118
97192118
107627118
Stop Event
node limit
Counts
43 → 41
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 x 2))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 x) 1)
Outputs
(*.f64 -1/2 (pow.f64 x 2))
(*.f64 -1/2 (*.f64 x x))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/2 (*.f64 x x)))
(fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) 1/24 -1/2)))
(*.f64 (*.f64 x x) (fma.f64 x (*.f64 x 1/24) -1/2))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/24 (pow.f64 x 4))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 -1/2 (*.f64 x x))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (fma.f64 1/40320 (pow.f64 x 8) (*.f64 -1/2 (*.f64 x x)))))
(fma.f64 (pow.f64 x 4) (fma.f64 (pow.f64 x 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 -1/2 (*.f64 x x))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)

localize122.0ms (0.6%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.1b
(-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))
0.0b
(+.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))))
0.0b
(cos.f64 x)
0.3b
(*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 290 to 199 computations (31.4% saved)

rewrite0.0ms (0%)

Counts
0 → 0

simplify7.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize82.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))
0.1b
(fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)
0.0b
(fma.f64 (sqrt.f64 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)))) 2)
0.0b
(cos.f64 x)
0.2b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
0.3b
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0b
(/.f64 (+.f64 (sqrt.f64 5) -1) 2/3)
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 207 to 127 computations (38.6% saved)

series15.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
3.0ms
x
@inf
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
3.0ms
y
@inf
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
3.0ms
x
@0
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
2.0ms
y
@0
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
2.0ms
y
@-inf
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))

rewrite39.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
381×add-sqr-sqrt_binary64
361×*-un-lft-identity_binary64
361×pow1_binary64
357×add-cbrt-cube_binary64
357×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03471
175967
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 2) (cbrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) (sqrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) 3) (pow.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))))

simplify59.0ms (0.3%)

Algorithm
egg-herbie
Rules
944×distribute-lft-in_binary64
944×distribute-rgt-in_binary64
720×fma-def_binary64
343×associate-/l*_binary64
266×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01662932
15532844
221362679
Stop Event
node limit
Counts
43 → 37
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/32 (pow.f64 (sin.f64 y) 2)) (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (-.f64 (sqrt.f64 5) 1) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) 2)) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (pow.f64 x 2)) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (+.f64 (*.f64 (pow.f64 x 3) (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y)))) (*.f64 -1/2 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sqrt.f64 5) 1) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y))))) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/32 (pow.f64 (sin.f64 y) 2)) (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (-.f64 (sqrt.f64 5) 1) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) 2)) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (pow.f64 x 2)) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/32 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/16 (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))) (pow.f64 y 2)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/32 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/16 (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))) (pow.f64 y 2)) (+.f64 (*.f64 (pow.f64 y 3) (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))) (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Outputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (fma.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) (sqrt.f64 2))) 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))
(fma.f64 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 257/256 (sin.f64 y)) x)))) (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))
(+.f64 (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 x 257/256) (sin.f64 y))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (fma.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) 257/256) x)) (/.f64 2 (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/32 (pow.f64 (sin.f64 y) 2)) (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (-.f64 (sqrt.f64 5) 1) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) 2)) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (pow.f64 x 2)) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))))
(fma.f64 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 257/256 (sin.f64 y)) x)))) (fma.f64 (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 1/32 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (-.f64 1 (cos.f64 y)))))) (*.f64 3/4 (*.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (*.f64 x x) (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))
(+.f64 (fma.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 (pow.f64 (sin.f64 y) 2) 1/32 (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (*.f64 (*.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (/.f64 (fma.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 3/4)) (*.f64 x x) (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))) (fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 x 257/256) (sin.f64 y))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (fma.f64 x (*.f64 x (fma.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 -1/16 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) 1/32)) (*.f64 (*.f64 (/.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) (sqrt.f64 2))) 2)) 3/4))) (fma.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) 257/256) x)) (/.f64 2 (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (+.f64 (*.f64 (pow.f64 x 3) (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y)))) (*.f64 -1/2 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sqrt.f64 5) 1) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y))))) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/32 (pow.f64 (sin.f64 y) 2)) (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 -3/4 (/.f64 (*.f64 (-.f64 (sqrt.f64 5) 1) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) 2)) (*.f64 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 (sqrt.f64 45/4) 9/2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (pow.f64 x 2)) (*.f64 2 (/.f64 1 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))))))
(fma.f64 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))) (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 257/256 (sin.f64 y)) x)))) (fma.f64 (pow.f64 x 3) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (fma.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) -257/1536) (*.f64 (*.f64 257/256 (sin.f64 y)) -1/2))) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (*.f64 3/4 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 257/256 (sin.f64 y)))) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (fma.f64 (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 1/32 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (-.f64 1 (cos.f64 y)))))) (*.f64 3/4 (*.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (*.f64 x x) (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))))
(+.f64 (fma.f64 (pow.f64 x 3) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) -257/1536) (*.f64 -257/512 (sin.f64 y)))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (/.f64 (*.f64 (*.f64 (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 (sqrt.f64 5) -1)) 257/256) (sin.f64 y)) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 3/4)) (fma.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 (pow.f64 (sin.f64 y) 2) 1/32 (*.f64 -1/16 (-.f64 1 (cos.f64 y))))) (*.f64 (*.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (/.f64 (fma.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 3/4)) (*.f64 x x) (/.f64 2 (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))))) (fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 x 257/256) (sin.f64 y))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))) (fma.f64 (pow.f64 x 3) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (-.f64 (fma.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) -257/1536) (*.f64 (sin.f64 y) -257/512)) (/.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) -3/4) (/.f64 (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) 257/256)))))) (fma.f64 x (*.f64 x (fma.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 -1/16 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) 1/32)) (*.f64 (*.f64 (/.f64 (/.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (fma.f64 -1/16 (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) (sqrt.f64 2))) 2)) 3/4))) (fma.f64 (/.f64 (sqrt.f64 2) (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) 257/256) x)) (/.f64 2 (+.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
(/.f64 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) 2) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
(/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (fma.f64 -1/16 (cos.f64 x) 1/16) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 257/256 (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 2 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (*.f64 (sin.f64 x) 257/256) y))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 -1/16 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1)) (/.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (sqrt.f64 2))) (/.f64 2 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))
(+.f64 (/.f64 2 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (/.f64 (sqrt.f64 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (*.f64 (sin.f64 x) 257/256) (*.f64 y (+.f64 (cos.f64 x) -1))) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (cos.f64 x) 1/16)) (pow.f64 (sin.f64 x) 2)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/32 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/16 (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))) (pow.f64 y 2)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 257/256 (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (fma.f64 -1/32 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (+.f64 (cos.f64 x) -1))))) (*.f64 9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))) (*.f64 y y) (fma.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 2 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (*.f64 (sin.f64 x) 257/256) y))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (+.f64 (cos.f64 x) -1) (*.f64 (pow.f64 (sin.f64 x) 2) -1/32))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 (*.f64 9/2 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) 2)) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))) (*.f64 y y) (fma.f64 -1/16 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1)) (/.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (sqrt.f64 2))) (/.f64 2 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))
(fma.f64 y (*.f64 y (fma.f64 9/2 (/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (fma.f64 -1/16 (cos.f64 x) 1/16) 2) (*.f64 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))) (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (pow.f64 (sin.f64 x) 2) -1/32 (fma.f64 -1/16 (cos.f64 x) 1/16))))) (+.f64 (/.f64 2 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (/.f64 (sqrt.f64 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (*.f64 (sin.f64 x) 257/256) (*.f64 y (+.f64 (cos.f64 x) -1))) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (cos.f64 x) 1/16)) (pow.f64 (sin.f64 x) 2)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/32 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/16 (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))) (pow.f64 y 2)) (+.f64 (*.f64 (pow.f64 y 3) (-.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x))) (-.f64 (cos.f64 x) 1)))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (*.f64 -9/2 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) 1) (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x)))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 (sqrt.f64 45/4) 9/2))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))) (*.f64 2 (/.f64 1 (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 y (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 257/256 (sin.f64 x))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (+.f64 (/.f64 (sqrt.f64 2) (/.f64 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (fma.f64 -1/32 (pow.f64 (sin.f64 x) 2) (*.f64 -1/16 (+.f64 (cos.f64 x) -1))))) (*.f64 9/2 (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))) (*.f64 y y) (fma.f64 (pow.f64 y 3) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/2 (*.f64 257/256 (sin.f64 x)) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (sin.f64 x) -257/1536)))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 9/2 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 257/256 (sin.f64 x))) (*.f64 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))))) (fma.f64 -1/16 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 2 (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (*.f64 (sin.f64 x) 257/256) y))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/16 (+.f64 (cos.f64 x) -1) (*.f64 (pow.f64 (sin.f64 x) 2) -1/32))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 (*.f64 9/2 (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))) 2)) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (*.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))) (*.f64 y y) (fma.f64 (pow.f64 y 3) (+.f64 (/.f64 (fma.f64 (+.f64 (cos.f64 x) -1) (*.f64 (sin.f64 x) -257/1536) (*.f64 257/512 (sin.f64 x))) (/.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (sqrt.f64 2))) (/.f64 (*.f64 9/2 (sqrt.f64 2)) (/.f64 (*.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (sin.f64 x) 257/256)) (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 -1/16 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1)) (/.f64 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (sqrt.f64 2))) (/.f64 2 (+.f64 3 (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))))
(fma.f64 (/.f64 (sqrt.f64 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (*.f64 (*.f64 (sin.f64 x) 257/256) (*.f64 y (+.f64 (cos.f64 x) -1))) (fma.f64 y (*.f64 y (fma.f64 9/2 (/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (fma.f64 -1/16 (cos.f64 x) 1/16) 2) (*.f64 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))) (*.f64 (/.f64 (sqrt.f64 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (fma.f64 (pow.f64 (sin.f64 x) 2) -1/32 (fma.f64 -1/16 (cos.f64 x) 1/16))))) (fma.f64 (pow.f64 y 3) (fma.f64 9/2 (*.f64 (/.f64 (+.f64 (cos.f64 x) -1) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (/.f64 (*.f64 (*.f64 (sin.f64 x) 257/256) (sqrt.f64 2)) (*.f64 (+.f64 9/2 (sqrt.f64 45/4)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))))) (/.f64 (fma.f64 (sin.f64 x) (+.f64 257/1536 (*.f64 -257/1536 (cos.f64 x))) (*.f64 (sin.f64 x) 257/512)) (/.f64 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))) (sqrt.f64 2)))) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1)) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))) (sqrt.f64 2)) (/.f64 2 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 x) (sin.f64 y))) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x))) 2) (+.f64 3 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)))) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3)))

eval999.0ms (4.8%)

Compiler

Compiled 48277 to 33824 computations (29.9% saved)

prune574.0ms (2.7%)

Pruning

42 alts after pruning (39 fresh and 3 done)

PrunedKeptTotal
New83029859
Fresh191029
Picked101
Done235
Total85242894
Error
0.0b
Counts
894 → 42
Alt Table
Click to see full alt table
StatusErrorProgram
23.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (sin.f64 y) (-.f64 1 (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
0.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (/.f64 (sqrt.f64 5) 2/3)) 3)))
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))) 3)) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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)))))
29.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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.4b
(*.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))
0.4b
(/.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.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)))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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.4b
(/.f64 (+.f64 2 (*.f64 (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.4b
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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.4b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/16 (sin.f64 x) (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 3)) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
0.4b
(/.f64 (+.f64 2 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
0.3b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (pow.f64 (*.f64 1/6 (+.f64 (sqrt.f64 5) 1)) -1) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
0.4b
(/.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))) (fma.f64 (cbrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (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)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.6b
(log.f64 (exp.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
0.4b
(/.f64 (+.f64 2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))))) 3) (-.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)))))
33.2b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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.4b
(/.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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
33.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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)))))
23.1b
(/.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 1 (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)))))
28.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.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)))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.4b
(pow.f64 (/.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)) -1)
23.5b
(/.f64 (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 x) 2)) (fma.f64 -1/16 (cos.f64 x) 1/16) 2) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (+.f64 3 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
0.5b
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))) 2)
23.4b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
28.7b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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)))))
23.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2))) (-.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.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.4b
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
0.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (+.f64 9/2 (neg.f64 (sqrt.f64 45/4))) 3)))
7.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.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)))))
34.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
21.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 3866 to 3098 computations (19.9% saved)

localize224.0ms (1.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))
0.1b
(+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2)
0.0b
(cos.f64 x)
0.3b
(*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
0.4b
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
0.7b
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 268 to 166 computations (38.1% saved)

series14.0ms (0.1%)

Counts
3 → 20
Calls

15 calls:

TimeVariablePointExpression
6.0ms
y
@inf
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
1.0ms
x
@0
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
1.0ms
y
@0
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
1.0ms
y
@-inf
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
1.0ms
x
@inf
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))

rewrite167.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
310×add-sqr-sqrt_binary64
296×*-un-lft-identity_binary64
296×pow1_binary64
292×add-cbrt-cube_binary64
292×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify88.0ms (0.4%)

Algorithm
egg-herbie
Rules
702×distribute-rgt-in_binary64
656×fma-def_binary64
540×unswap-sqr_binary64
472×distribute-rgt-out_binary64
387×+-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0107668
1304660
2910596
33563570
45865570
Stop Event
node limit
Counts
119 → 137
Calls
Call 1
Inputs
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/480 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))))
(+.f64 (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))) (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 -1/80 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))))
(+.f64 (*.f64 -1/480 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))))
(*.f64 -1/16 (pow.f64 (sin.f64 x) 2))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (+.f64 (*.f64 -1/16 (pow.f64 y 2)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x)))) (+.f64 (*.f64 -1/16 (pow.f64 y 2)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))))
(*.f64 -1/16 (pow.f64 (sin.f64 y) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (+.f64 (*.f64 -1/16 (pow.f64 x 2)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (+.f64 (*.f64 -1/16 (pow.f64 x 2)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))))
Outputs
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
(*.f64 3/2 (+.f64 (sqrt.f64 5) -1))
(+.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2)
(fma.f64 3/2 (sqrt.f64 5) -3/2)
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 (*.f64 x x) -3/4)))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -3/4 (*.f64 x x))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 1/16) -1/16) (pow.f64 x 4) (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 (*.f64 x x) -3/4))))
(fma.f64 (pow.f64 x 4) (fma.f64 (sqrt.f64 5) 1/16 -1/16) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -3/4 (*.f64 x x)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 1/16 (pow.f64 x 3))))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (+.f64 3/2 (*.f64 -3/4 (*.f64 x x))) (*.f64 1/16 (pow.f64 x 4))))
(+.f64 (*.f64 -1/480 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))))
(fma.f64 -1/480 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 6)) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x))))))
(fma.f64 -1/480 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 6)) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 (+.f64 (*.f64 (sqrt.f64 5) 1/16) -1/16) (pow.f64 x 4) (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 (*.f64 x x) -3/4)))))
(+.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 -3/4 (*.f64 x x)) (*.f64 1/16 (pow.f64 x 4)))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -1/480 (pow.f64 x 6)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 1/16 (pow.f64 x 3)))) (+.f64 3/2 (*.f64 -1/480 (pow.f64 x 6)))))
(*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (+.f64 (*.f64 -1/480 (pow.f64 x 6)) (*.f64 -3/4 (*.f64 x x))) (+.f64 3/2 (*.f64 1/16 (pow.f64 x 4)))))
(+.f64 (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))) (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))
(fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))
(fma.f64 -9/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 -9/2 (*.f64 (/.f64 y (+.f64 9/2 (sqrt.f64 45/4))) y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(fma.f64 -9/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (+.f64 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x))))))
(+.f64 (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (/.f64 (*.f64 3/8 (pow.f64 y 4)) (+.f64 9/2 (sqrt.f64 45/4)))) (fma.f64 -9/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 -9/2 (*.f64 (/.f64 y (+.f64 9/2 (sqrt.f64 45/4))) y) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
(+.f64 (*.f64 -9/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 -1/80 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))))
(fma.f64 -9/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (+.f64 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 -1/80 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)))))))
(+.f64 (fma.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 3/2 (*.f64 (+.f64 (sqrt.f64 5) -1) (cos.f64 x)) (/.f64 (*.f64 -1/80 (pow.f64 y 6)) (+.f64 9/2 (sqrt.f64 45/4))))) (fma.f64 -9/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (*.f64 -1/80 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))))) (fma.f64 -9/2 (*.f64 (/.f64 y (+.f64 9/2 (sqrt.f64 45/4))) y) (fma.f64 3/8 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))))))
(+.f64 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 -9/2 (*.f64 (/.f64 y (+.f64 9/2 (sqrt.f64 45/4))) y) (fma.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2) (cos.f64 x) (fma.f64 -1/80 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 (*.f64 3/8 (pow.f64 y 4)) (+.f64 9/2 (sqrt.f64 45/4)))))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (/.f64 (*.f64 9 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4))))
(fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 3/2 (sqrt.f64 5) -3/2))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)) (/.f64 (*.f64 9 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -3/4 (*.f64 x x)))))
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2))))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x))))))
(fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (fma.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)) (/.f64 (*.f64 9 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4))))))
(fma.f64 (pow.f64 x 4) (fma.f64 (sqrt.f64 5) 1/16 -1/16) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -3/4 (*.f64 x x))))))
(+.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 1/16 (pow.f64 x 3)))))) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (+.f64 3/2 (*.f64 -3/4 (*.f64 x x))) (*.f64 1/16 (pow.f64 x 4)))) (*.f64 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) (cos.f64 y)))
(+.f64 (*.f64 -1/480 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 6))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 (*.f64 1/16 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 4))) (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 -3/4 (*.f64 (-.f64 (sqrt.f64 5) 1) (pow.f64 x 2)))))))
(fma.f64 -1/480 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 6)) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)))))))
(fma.f64 -1/480 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 6)) (fma.f64 3/2 (+.f64 (sqrt.f64 5) -1) (fma.f64 1/16 (*.f64 (+.f64 (sqrt.f64 5) -1) (pow.f64 x 4)) (fma.f64 -3/4 (*.f64 (+.f64 (sqrt.f64 5) -1) (*.f64 x x)) (/.f64 (*.f64 9 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4)))))))
(+.f64 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 -3/4 (*.f64 x x)) (*.f64 1/16 (pow.f64 x 4))))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 3/2 (*.f64 -1/480 (pow.f64 x 6)))))
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 1/16 (pow.f64 x 3)))) (+.f64 3/2 (*.f64 -1/480 (pow.f64 x 6))))))
(+.f64 (*.f64 (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) (cos.f64 y)) (*.f64 (+.f64 (sqrt.f64 5) -1) (+.f64 (+.f64 (*.f64 -1/480 (pow.f64 x 6)) (*.f64 -3/4 (*.f64 x x))) (+.f64 3/2 (*.f64 1/16 (pow.f64 x 4))))))
(*.f64 -1/16 (pow.f64 (sin.f64 x) 2))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(fma.f64 y (*.f64 257/256 (sin.f64 x)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(fma.f64 y (*.f64 (sin.f64 x) 257/256) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
(*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256)))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (+.f64 (*.f64 -1/16 (pow.f64 y 2)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))))
(fma.f64 y (*.f64 257/256 (sin.f64 x)) (*.f64 -1/16 (+.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2))))
(fma.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sin.f64 x) 257/256)))
(fma.f64 y (*.f64 (sin.f64 x) 257/256) (*.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2))))
(+.f64 (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/1536 (sin.f64 x)) (*.f64 -1/6 (sin.f64 x)))) (+.f64 (*.f64 -1/16 (pow.f64 y 2)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))))
(fma.f64 y (*.f64 257/256 (sin.f64 x)) (fma.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536) (*.f64 -1/16 (+.f64 (*.f64 y y) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 y (*.f64 (sin.f64 x) 257/256) (fma.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 (sin.f64 x) (*.f64 -257/1536 (pow.f64 y 3)))))
(fma.f64 y (*.f64 (sin.f64 x) 257/256) (fma.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -257/1536) (*.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)))))
(fma.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sin.f64 x) (+.f64 257/256 (*.f64 (*.f64 y y) -257/1536)))))
(fma.f64 -1/16 (fma.f64 y y (pow.f64 (sin.f64 x) 2)) (*.f64 y (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 y y) -257/1536) 257/256))))
(*.f64 -1/16 (pow.f64 (sin.f64 y) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(fma.f64 (*.f64 257/256 (sin.f64 y)) x (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(fma.f64 x (*.f64 (sin.f64 y) 257/256) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(*.f64 (sin.f64 y) (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 x 257/256)))
(+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (+.f64 (*.f64 -1/16 (pow.f64 x 2)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2))))
(fma.f64 (*.f64 257/256 (sin.f64 y)) x (*.f64 -1/16 (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(fma.f64 x (*.f64 (sin.f64 y) 257/256) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2))))
(fma.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 (sin.f64 y) (*.f64 x 257/256)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/1536 (sin.f64 y)) (*.f64 -1/6 (sin.f64 y))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/256 (sin.f64 y)) (sin.f64 y)) x) (+.f64 (*.f64 -1/16 (pow.f64 x 2)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))))
(fma.f64 (*.f64 (sin.f64 y) -257/1536) (pow.f64 x 3) (fma.f64 (*.f64 257/256 (sin.f64 y)) x (*.f64 -1/16 (+.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)))))
(fma.f64 (*.f64 (sin.f64 y) -257/1536) (pow.f64 x 3) (fma.f64 x (*.f64 (sin.f64 y) 257/256) (*.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)))))
(fma.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (fma.f64 x (*.f64 (sin.f64 y) 257/256) (*.f64 (sin.f64 y) (*.f64 (pow.f64 x 3) -257/1536))))
(fma.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 x (*.f64 (sin.f64 y) (+.f64 (*.f64 (*.f64 x x) -257/1536) 257/256))))
(fma.f64 -1/16 (fma.f64 x x (pow.f64 (sin.f64 y) 2)) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 (pow.f64 x 3) -257/1536))))

localize70.0ms (0.3%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))
0.1b
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))
0.0b
(+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))
0.0b
(+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))))
0.2b
(pow.f64 (sin.f64 y) 2)
0.2b
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
1.0b
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
1.8b
(-.f64 1 (cos.f64 y))
Compiler

Compiled 175 to 138 computations (21.1% saved)

series4.0ms (0%)

Counts
4 → 12
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
1.0ms
y
@inf
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
1.0ms
y
@0
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
0.0ms
y
@0
(-.f64 1 (cos.f64 y))
0.0ms
y
@0
(pow.f64 (sin.f64 y) 2)

rewrite64.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
681×log-prod_binary64
384×pow2_binary64
267×pow1/3_binary64
265×expm1-udef_binary64
264×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01640
133940
2391638
Stop Event
node limit
Counts
4 → 117
Calls
Call 1
Inputs
(-.f64 1 (cos.f64 y))
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
(*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))
(pow.f64 (sin.f64 y) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (neg.f64 (cos.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 1 (cos.f64 y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 1 (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 1 (cos.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 1 (cos.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 y) 2) (/.f64 1 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) (cbrt.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 2)) (cbrt.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 1 (cos.f64 y))) (sqrt.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (pow.f64 (cos.f64 y) 3)) (/.f64 1 (fma.f64 (cos.f64 y) (+.f64 1 (cos.f64 y)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 y) (+.f64 1 (cos.f64 y)) 1) (-.f64 1 (pow.f64 (cos.f64 y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sin.f64 y) 2) (+.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (cos.f64 y) 3)) (fma.f64 (cos.f64 y) (+.f64 1 (cos.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (pow.f64 (cos.f64 y) 3))) (neg.f64 (fma.f64 (cos.f64 y) (+.f64 1 (cos.f64 y)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (sin.f64 y) 2)) (neg.f64 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (neg.f64 (cos.f64 y)) 3)) (+.f64 1 (-.f64 (pow.f64 (neg.f64 (cos.f64 y)) 2) (neg.f64 (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (neg.f64 (cos.f64 y)) 2)) (-.f64 1 (neg.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 1 (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 y) (+.f64 1 (cos.f64 y)) 1) (-.f64 1 (pow.f64 (cos.f64 y) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 1 (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (neg.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (neg.f64 (cos.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (neg.f64 (cbrt.f64 (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 y)) (neg.f64 (sqrt.f64 (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 y))) 2) (cbrt.f64 (neg.f64 (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 y))) (sqrt.f64 (neg.f64 (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 3/2 (sqrt.f64 5) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 5) 3/2) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3/2 (sqrt.f64 5)) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 6 (+.f64 1 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 5 3/2) -1) 3/2) (+.f64 6 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3/2 (+.f64 (pow.f64 5 3/2) -1)) (+.f64 6 (sqrt.f64 5)))))) (#(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) 2) 1/2)))) (#(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 log.f64 (+.f64 1 (expm1.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 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)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2)) 1))))) (#(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 fma.f64 3/2 (sqrt.f64 5) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 5) 3/2 -3/2)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (pow.f64 (sin.f64 y) 2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (pow.f64 (sin.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (pow.f64 (sin.f64 y) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (pow.f64 (sin.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 y) 4) (pow.f64 (-.f64 1 (cos.f64 y)) 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 3) (*.f64 2 (sqrt.f64 2))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 y) 4) (pow.f64 (-.f64 1 (cos.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2)) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (pow.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (neg.f64 (cos.f64 y)) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 y) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 y) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (pow.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 y) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 y) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 y) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (pow.f64 (sin.f64 y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (*.f64 (cbrt.f64 (sin.f64 y)) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 y) 4)) (pow.f64 (cbrt.f64 (sin.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 y)) (*.f64 (sqrt.f64 (sin.f64 y)) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 y)) 3) (sqrt.f64 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 y y)) (cos.f64 (+.f64 y y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (pow.f64 (cos.f64 y) 2) 3)) (+.f64 1 (+.f64 (pow.f64 (pow.f64 (cos.f64 y) 2) 2) (pow.f64 (cos.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (pow.f64 (cos.f64 y) 2) 2)) (+.f64 1 (pow.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 y) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 y) 2)))))))

simplify149.0ms (0.7%)

Algorithm
egg-herbie
Rules
988×distribute-lft-out_binary64
802×sqr-pow_binary64
558×*-commutative_binary64
446×pow-sqr_binary64
427×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053250
1135248
2356238
31200230
42080230
53759230
64482230
74798230
85056230
95427230
105839230
116298230
126774230
137320230
Stop Event
node limit
Counts
129 → 141
Calls
Call 1
Inputs
(*.f64 1/2 (pow.f64 y 2))
(+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))
(+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4))))
(+.f64 (*.f64 -1/40320 (pow.f64 y 8)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4))))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (+.f64 (*.f64 3/80 (*.f64 (sqrt.f64 2) (pow.f64 y 8))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (+.f64 (*.f64 3/80 (*.f64 (sqrt.f64 2) (pow.f64 y 8))) (+.f64 (*.f64 -95/24192 (*.f64 (sqrt.f64 2) (pow.f64 y 10))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4))))))
(pow.f64 y 2)
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (pow.f64 y 2))
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (+.f64 (*.f64 2/45 (pow.f64 y 6)) (pow.f64 y 2)))
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (+.f64 (*.f64 2/45 (pow.f64 y 6)) (+.f64 (pow.f64 y 2) (*.f64 -1/315 (pow.f64 y 8)))))
Outputs
(*.f64 1/2 (pow.f64 y 2))
(*.f64 1/2 (*.f64 y y))
(+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))
(fma.f64 1/2 (*.f64 y y) (*.f64 -1/24 (pow.f64 y 4)))
(fma.f64 -1/24 (pow.f64 y 4) (*.f64 1/2 (*.f64 y y)))
(+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4))))
(fma.f64 1/720 (pow.f64 y 6) (fma.f64 1/2 (*.f64 y y) (*.f64 -1/24 (pow.f64 y 4))))
(fma.f64 1/2 (*.f64 y y) (fma.f64 -1/24 (pow.f64 y 4) (*.f64 1/720 (pow.f64 y 6))))
(fma.f64 -1/24 (pow.f64 y 4) (fma.f64 1/720 (pow.f64 y 6) (*.f64 1/2 (*.f64 y y))))
(+.f64 (*.f64 -1/40320 (pow.f64 y 8)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1/24 (pow.f64 y 4)))))
(fma.f64 -1/40320 (pow.f64 y 8) (fma.f64 1/720 (pow.f64 y 6) (fma.f64 1/2 (*.f64 y y) (*.f64 -1/24 (pow.f64 y 4)))))
(fma.f64 1/720 (pow.f64 y 6) (fma.f64 -1/40320 (pow.f64 y 8) (fma.f64 1/2 (*.f64 y y) (*.f64 -1/24 (pow.f64 y 4)))))
(fma.f64 1/720 (pow.f64 y 6) (fma.f64 -1/40320 (pow.f64 y 8) (fma.f64 -1/24 (pow.f64 y 4) (*.f64 1/2 (*.f64 y y)))))
(fma.f64 -1/40320 (pow.f64 y 8) (fma.f64 1/2 (*.f64 y y) (fma.f64 -1/24 (pow.f64 y 4) (*.f64 1/720 (pow.f64 y 6)))))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4))))
(fma.f64 -5/24 (*.f64 (pow.f64 y 6) (sqrt.f64 2)) (*.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2))))
(fma.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2)) (*.f64 (pow.f64 y 6) (*.f64 (sqrt.f64 2) -5/24)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24)))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (+.f64 (*.f64 3/80 (*.f64 (sqrt.f64 2) (pow.f64 y 8))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))))
(fma.f64 -5/24 (*.f64 (pow.f64 y 6) (sqrt.f64 2)) (fma.f64 3/80 (*.f64 (pow.f64 y 8) (sqrt.f64 2)) (*.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2)))))
(fma.f64 -5/24 (*.f64 (pow.f64 y 6) (sqrt.f64 2)) (fma.f64 3/80 (*.f64 (pow.f64 y 8) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))))
(fma.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 (pow.f64 y 8) 3/80))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 (pow.f64 y 4) (+.f64 1/2 (*.f64 (pow.f64 y 4) 3/80)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 (pow.f64 y 8) 3/80))))
(+.f64 (*.f64 -5/24 (*.f64 (sqrt.f64 2) (pow.f64 y 6))) (+.f64 (*.f64 3/80 (*.f64 (sqrt.f64 2) (pow.f64 y 8))) (+.f64 (*.f64 -95/24192 (*.f64 (sqrt.f64 2) (pow.f64 y 10))) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4))))))
(fma.f64 -5/24 (*.f64 (pow.f64 y 6) (sqrt.f64 2)) (fma.f64 3/80 (*.f64 (pow.f64 y 8) (sqrt.f64 2)) (fma.f64 -95/24192 (*.f64 (sqrt.f64 2) (pow.f64 y 10)) (*.f64 1/2 (*.f64 (pow.f64 y 4) (sqrt.f64 2))))))
(fma.f64 -5/24 (*.f64 (pow.f64 y 6) (sqrt.f64 2)) (fma.f64 3/80 (*.f64 (pow.f64 y 8) (sqrt.f64 2)) (fma.f64 -95/24192 (*.f64 (sqrt.f64 2) (pow.f64 y 10)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -95/24192 (pow.f64 y 10)) (*.f64 1/2 (pow.f64 y 4)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 (pow.f64 y 8) 3/80))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 -95/24192 (pow.f64 y 10))) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 (pow.f64 y 8) 3/80))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 8) 3/80)) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 -95/24192 (pow.f64 y 10)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 8) 3/80) (+.f64 (*.f64 (pow.f64 y 6) -5/24) (*.f64 -95/24192 (pow.f64 y 10))))))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (pow.f64 y 2))
(fma.f64 -1/3 (pow.f64 y 4) (*.f64 y y))
(fma.f64 (pow.f64 y 4) -1/3 (*.f64 y y))
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (+.f64 (*.f64 2/45 (pow.f64 y 6)) (pow.f64 y 2)))
(fma.f64 -1/3 (pow.f64 y 4) (fma.f64 2/45 (pow.f64 y 6) (*.f64 y y)))
(fma.f64 (pow.f64 y 4) -1/3 (fma.f64 (pow.f64 y 6) 2/45 (*.f64 y y)))
(fma.f64 y y (fma.f64 (pow.f64 y 4) -1/3 (*.f64 (pow.f64 y 6) 2/45)))
(+.f64 (*.f64 -1/3 (pow.f64 y 4)) (+.f64 (*.f64 2/45 (pow.f64 y 6)) (+.f64 (pow.f64 y 2) (*.f64 -1/315 (pow.f64 y 8)))))
(fma.f64 -1/3 (pow.f64 y 4) (fma.f64 2/45 (pow.f64 y 6) (+.f64 (*.f64 y y) (*.f64 (pow.f64 y 8) -1/315))))
(fma.f64 (pow.f64 y 4) -1/3 (fma.f64 (pow.f64 y 6) 2/45 (fma.f64 y y (*.f64 (pow.f64 y 8) -1/315))))
(fma.f64 (pow.f64 y 4) -1/3 (fma.f64 (pow.f64 y 8) -1/315 (fma.f64 (pow.f64 y 6) 2/45 (*.f64 y y))))

localize94.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))))
0.1b
(+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1))))
0.1b
(*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))
0.0b
(cos.f64 x)
0.3b
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
0.6b
(/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 210 to 156 computations (25.7% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))
1.0ms
x
@0
(/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))
1.0ms
x
@-inf
(/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))

rewrite43.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
455×log-prod_binary64
366×exp-prod_binary64
266×prod-exp_binary64
255×pow2_binary64
230×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01014
121712
2269912
Stop Event
node limit
Counts
1 → 54
Calls
Call 1
Inputs
(/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 x)) (/.f64 1 (*.f64 (+.f64 (sqrt.f64 5) 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 x) 2) (/.f64 1 (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) 1/2) (/.f64 (cbrt.f64 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) 1/2) (/.f64 (sqrt.f64 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1)) (/.f64 (sqrt.f64 (cos.f64 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) 1) (/.f64 (sqrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (sqrt.f64 5) 1)) (*.f64 (cos.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (+.f64 (sqrt.f64 5) 1)) (/.f64 (cbrt.f64 (cos.f64 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) -2) (/.f64 (cos.f64 x) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (/.f64 (sqrt.f64 (cos.f64 x)) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) -1/2) (/.f64 (cos.f64 x) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (/.f64 (cbrt.f64 (cos.f64 x)) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cos.f64 x) 2) (+.f64 1 (pow.f64 5 3/2))) (-.f64 6 (sqrt.f64 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cos.f64 x) 2) 4) (+.f64 (sqrt.f64 5) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 2)) (cbrt.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (sqrt.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (neg.f64 (cos.f64 x)) 3) (pow.f64 (*.f64 (+.f64 (sqrt.f64 5) 1) -1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 x) 2) 3) (pow.f64 (+.f64 (sqrt.f64 5) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))

simplify43.0ms (0.2%)

Algorithm
egg-herbie
Rules
977×fma-neg_binary64
725×distribute-rgt-neg-in_binary64
688×distribute-lft-neg-in_binary64
535×associate-/l*_binary64
508×distribute-neg-frac_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
033238
178235
2163235
3370235
41280229
55309225
Stop Event
node limit
Counts
66 → 62
Calls
Call 1
Inputs
(/.f64 2 (+.f64 (sqrt.f64 5) 1))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1))))))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
Outputs
(/.f64 2 (+.f64 (sqrt.f64 5) 1))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1))))
(fma.f64 -1 (/.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))
(-.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (/.f64 x (/.f64 (+.f64 (sqrt.f64 5) 1) x)))
(-.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (*.f64 (/.f64 x (+.f64 (sqrt.f64 5) 1)) x))
(-.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1)))))
(fma.f64 -1 (/.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) 1)) (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))))
(-.f64 (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))) (/.f64 x (/.f64 (+.f64 (sqrt.f64 5) 1) x)))
(-.f64 (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 x (+.f64 (sqrt.f64 5) 1)) x))
(fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (-.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1)))))
(+.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (*.f64 (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))) (+.f64 -1 (*.f64 x (*.f64 x 1/12)))))
(fma.f64 (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))) (+.f64 -1 (*.f64 x (*.f64 x 1/12))) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1))) (+.f64 (*.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1))) (*.f64 2 (/.f64 1 (+.f64 (sqrt.f64 5) 1))))))
(fma.f64 -1 (/.f64 (*.f64 x x) (+.f64 (sqrt.f64 5) 1)) (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))))
(-.f64 (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (/.f64 x (/.f64 (+.f64 (sqrt.f64 5) 1) x)))
(-.f64 (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 x (+.f64 (sqrt.f64 5) 1)) x))
(-.f64 (fma.f64 1/12 (/.f64 (pow.f64 x 4) (+.f64 (sqrt.f64 5) 1)) (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))))
(+.f64 (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))) (*.f64 (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))) (+.f64 -1 (*.f64 x (*.f64 x 1/12)))))
(fma.f64 (*.f64 x (/.f64 x (+.f64 (sqrt.f64 5) 1))) (+.f64 -1 (*.f64 x (*.f64 x 1/12))) (fma.f64 -1/360 (/.f64 (pow.f64 x 6) (+.f64 (sqrt.f64 5) 1)) (/.f64 2 (+.f64 (sqrt.f64 5) 1))))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))
(*.f64 2 (/.f64 (cos.f64 x) (+.f64 (sqrt.f64 5) 1)))
(/.f64 (*.f64 2 (cos.f64 x)) (+.f64 (sqrt.f64 5) 1))
(*.f64 (/.f64 2 (+.f64 (sqrt.f64 5) 1)) (cos.f64 x))
(/.f64 2 (/.f64 (+.f64 (sqrt.f64 5) 1) (cos.f64 x)))

localize312.0ms (1.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.1b
(+.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 1 (cos.f64 y))))
0.1b
(-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))
0.0b
(cos.f64 x)
0.3b
(*.f64 (*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) 16)))
1.0b
(-.f64 3 (sqrt.f64 5))
1.8b
(-.f64 1 (cos.f64 y))
Compiler

Compiled 265 to 185 computations (30.2% saved)

rewrite0.0ms (0%)

Counts
0 → 0

simplify8.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize96.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y)))
0.1b
(fma.f64 (cos.f64 y) (+.f64 9/2 (neg.f64 (sqrt.f64 45/4))) 3)
0.0b
(fma.f64 (sqrt.f64 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)))) 2)
0.0b
(cos.f64 x)
0.3b
(*.f64 (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))) (-.f64 (cos.f64 x) (cos.f64 y)))
1.0b
(+.f64 9/2 (neg.f64 (sqrt.f64 45/4)))
1.0b
(/.f64 (+.f64 (sqrt.f64 5) -1) 2/3)
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 201 to 121 computations (39.8% saved)

series0.0ms (0%)

Counts
1 → 0

rewrite55.0ms (0.3%)

Algorithm
egg-rewrite-iter-limit
batch-egg-rewrite
Rules
67×add-sqr-sqrt_binary64
64×add-exp-log_binary64
64×add-log-exp_binary64
64×log1p-expm1-u_binary64
64×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066
11376
217186
066
Stop Event
iter limit
unsound
Counts
1 → 12
Calls
Call 1
Inputs
(+.f64 9/2 (neg.f64 (sqrt.f64 45/4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 9/2 (sqrt.f64 45/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 9/2 (sqrt.f64 45/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4)))) (cbrt.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 9/2 (sqrt.f64 45/4))) (sqrt.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 729/8 (pow.f64 (neg.f64 (sqrt.f64 45/4)) 3)) (+.f64 81/4 (-.f64 (*.f64 (neg.f64 (sqrt.f64 45/4)) (neg.f64 (sqrt.f64 45/4))) (*.f64 9/2 (neg.f64 (sqrt.f64 45/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 81/4 (*.f64 (neg.f64 (sqrt.f64 45/4)) (neg.f64 (sqrt.f64 45/4)))) (-.f64 9/2 (neg.f64 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 9/2 (sqrt.f64 45/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (-.f64 9/2 (sqrt.f64 45/4)) (-.f64 9/2 (sqrt.f64 45/4))) (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 9/2 (sqrt.f64 45/4))))))))

simplify7.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

eval743.0ms (3.5%)

Compiler

Compiled 41967 to 29724 computations (29.2% saved)

prune223.0ms (1.1%)

Pruning

62 alts after pruning (58 fresh and 4 done)

PrunedKeptTotal
New78736823
Fresh122234
Picked101
Done347
Total80362865
Error
0.0b
Counts
865 → 62
Alt Table
Click to see full alt table
StatusErrorProgram
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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)))))
33.2b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
23.1b
(/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 -1/16 (sin.f64 y))) (*.f64 (sin.f64 y) (-.f64 1 (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))
22.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 5) 1/2 -1/2) (cos.f64 x))) 3)) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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)))))
29.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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.4b
(*.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))
23.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.4b
(/.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)))))
41.8b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
24.7b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
24.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
23.0b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.4b
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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)))))
33.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.6b
(log.f64 (exp.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
33.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
33.2b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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.4b
(/.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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
0.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (sqrt.f64 45/4)) 3)))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
23.1b
(/.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 1 (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)))))
26.8b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.4b
(pow.f64 (/.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)) -1)
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
23.4b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
23.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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)))))
33.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
28.7b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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.4b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) 3))))
22.1b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.4b
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
23.1b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
26.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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)))))
11.5b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (pow.f64 (sqrt.f64 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))) 2)))
34.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 2 (+.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
21.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
0.4b
(/.f64 (+.f64 2 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
Compiler

Compiled 5511 to 4515 computations (18.1% saved)

localize102.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))
0.1b
(+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x))
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2)
0.0b
(cos.f64 x)
0.3b
(*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y)))
0.4b
(+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))
0.7b
(*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))
2.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
Compiler

Compiled 314 to 184 computations (41.4% saved)

series8.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
2.0ms
x
@-inf
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
2.0ms
x
@0
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
2.0ms
y
@inf
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
1.0ms
y
@0
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))

rewrite38.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
782×pow1_binary64
720×add-log-exp_binary64
719×log1p-expm1-u_binary64
719×expm1-log1p-u_binary64
703×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01010
12028
222698
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 x) (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 y) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 x) (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (cos.f64 x) (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cos.f64 x) 0) (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 x) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 x) (cos.f64 y))) (cbrt.f64 (pow.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 2)) (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 (+.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (cos.f64 x) 2) (-.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 x) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 y) 2)) (+.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 pow.f64 (pow.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 x) (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 2))))) (#(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 (pow.f64 (+.f64 (cos.f64 x) (cos.f64 y)) 3))))) (#(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 expm1.f64 (log1p.f64 (+.f64 (cos.f64 x) (cos.f64 y))))))))

simplify43.0ms (0.2%)

Algorithm
egg-herbie
Rules
884×fma-def_binary64
622×fma-neg_binary64
570×unswap-sqr_binary64
422×cancel-sign-sub-inv_binary64
368×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
052324
1141264
2339262
31083260
43545260
57771260
Stop Event
node limit
Counts
46 → 39
Calls
Call 1
Inputs
(-.f64 1 (cos.f64 y))
(-.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4)))) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6))))) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) 1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 (cos.f64 x) (pow.f64 1 1/3))) 1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (*.f64 -1/24 (pow.f64 y 4)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (*.f64 -1/24 (pow.f64 y 4))))) 1)
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
Outputs
(-.f64 1 (cos.f64 y))
(-.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))) (cos.f64 y))
(+.f64 1 (-.f64 (*.f64 -1/2 (*.f64 x x)) (cos.f64 y)))
(-.f64 (fma.f64 -1/2 (*.f64 x x) 1) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4)))) (cos.f64 y))
(+.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (cos.f64 y)))
(+.f64 (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/2 (*.f64 x x))) (-.f64 1 (cos.f64 y)))
(-.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) 1)) (cos.f64 y))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6))))) (cos.f64 y))
(+.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))) (cos.f64 y)))
(+.f64 (fma.f64 -1/2 (*.f64 x x) 1) (-.f64 (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))) (cos.f64 y)))
(-.f64 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) 1))) (cos.f64 y))
(-.f64 (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 1/24) -1/2) (fma.f64 -1/720 (pow.f64 x 6) 1)) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (pow.f64 1 1/3) (cos.f64 x)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) 1)
(fma.f64 (cos.f64 x) 1 -1)
(+.f64 (cos.f64 x) -1)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 (cos.f64 x) (pow.f64 1 1/3))) 1)
(+.f64 (*.f64 1/2 (*.f64 y y)) (fma.f64 (cos.f64 x) 1 -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)) (+.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (*.f64 -1/24 (pow.f64 y 4)))) 1)
(+.f64 (fma.f64 1/2 (*.f64 y y) (fma.f64 (cos.f64 x) 1 (*.f64 -1/24 (pow.f64 y 4)))) -1)
(+.f64 (fma.f64 1/2 (*.f64 y y) (fma.f64 -1/24 (pow.f64 y 4) (cos.f64 x))) -1)
(+.f64 (fma.f64 y (*.f64 y 1/2) (cos.f64 x)) (fma.f64 -1/24 (pow.f64 y 4) -1))
(+.f64 (cos.f64 x) (fma.f64 1/2 (*.f64 y y) (fma.f64 -1/24 (pow.f64 y 4) -1)))
(+.f64 (cos.f64 x) (fma.f64 y (*.f64 y 1/2) (fma.f64 -1/24 (pow.f64 y 4) -1)))
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 y 2)) (+.f64 (*.f64 1/720 (pow.f64 y 6)) (+.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (*.f64 -1/24 (pow.f64 y 4))))) 1)
(+.f64 (fma.f64 1/2 (*.f64 y y) (fma.f64 1/720 (pow.f64 y 6) (fma.f64 (cos.f64 x) 1 (*.f64 -1/24 (pow.f64 y 4))))) -1)
(fma.f64 1/2 (*.f64 y y) (+.f64 (fma.f64 1/720 (pow.f64 y 6) (fma.f64 -1/24 (pow.f64 y 4) (cos.f64 x))) -1))
(+.f64 (fma.f64 y (*.f64 y 1/2) (fma.f64 -1/24 (pow.f64 y 4) (cos.f64 x))) (fma.f64 1/720 (pow.f64 y 6) -1))
(+.f64 (fma.f64 -1/24 (pow.f64 y 4) (cos.f64 x)) (fma.f64 1/720 (pow.f64 y 6) (fma.f64 y (*.f64 y 1/2) -1)))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 1 1/3)) (cos.f64 y))
(-.f64 (*.f64 1 (cos.f64 x)) (cos.f64 y))
(-.f64 (cos.f64 x) (cos.f64 y))

localize63.0ms (0.3%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))
0.0b
(+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))
0.0b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.0b
(+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))))
0.1b
(/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))
0.1b
(*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))
0.2b
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))
1.0b
(*.f64 3/2 (-.f64 (sqrt.f64 5) 1))
Compiler

Compiled 150 to 132 computations (12% saved)

series4.0ms (0%)

Counts
3 → 28
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@0
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))
1.0ms
y
@inf
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))
0.0ms
y
@0
(/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))
0.0ms
y
@0
(*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))
0.0ms
y
@inf
(*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))

rewrite58.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
748×log-prod_binary64
422×pow2_binary64
294×expm1-udef_binary64
294×log1p-udef_binary64
292×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01738
136638
2415938
Stop Event
node limit
Counts
3 → 79
Calls
Call 1
Inputs
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))
(*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4)))
(/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)) -1/16)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)) -1/16))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)) -1/16))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) 1/2)) (*.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 1/2 (pow.f64 y 4)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 y 4)) 3) (*.f64 2 (sqrt.f64 2))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 y 4))) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 1/2 (pow.f64 y 4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 y 4)) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 y) (*.f64 1/9 (-.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) (*.f64 1/9 (-.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 2)) (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 1/9 (-.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 y)) (/.f64 1 (+.f64 (neg.f64 (sqrt.f64 45/4)) -9/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/9 (-.f64 9/2 (sqrt.f64 45/4))) (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 y)) 1) (/.f64 (sqrt.f64 (cos.f64 y)) (+.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 9/2 (sqrt.f64 45/4)) 2))) (/.f64 (cos.f64 y) (cbrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (pow.f64 (+.f64 9/2 (sqrt.f64 45/4)) 2))) (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 y)) (cbrt.f64 (pow.f64 (+.f64 9/2 (sqrt.f64 45/4)) 2))) (/.f64 (sqrt.f64 (cos.f64 y)) (cbrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 (cos.f64 y) (sqrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (sqrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 (cbrt.f64 (cos.f64 y)) (sqrt.f64 (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 y) (+.f64 729/8 (pow.f64 45/4 3/2))) (-.f64 63/2 (*.f64 9/2 (sqrt.f64 45/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 y) 9) (-.f64 9/2 (sqrt.f64 45/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 9/2 (sqrt.f64 45/4)) (cos.f64 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (+.f64 9/2 (sqrt.f64 45/4)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (+.f64 9/2 (sqrt.f64 45/4)) (cos.f64 y)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 y) (+.f64 (neg.f64 (sqrt.f64 45/4)) -9/2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (+.f64 9/2 (sqrt.f64 45/4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))))

simplify48.0ms (0.2%)

Algorithm
egg-herbie
Rules
784×distribute-lft-out_binary64
536×associate-/l*_binary64
522×distribute-rgt-out_binary64
459×*-commutative_binary64
417×associate-/r*_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
034414
179414
2173414
3431414
41715406
54963406
66561406
Stop Event
node limit
Counts
107 → 90
Calls
Call 1
Inputs
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))
Outputs
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 -1/32 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (pow.f64 y 4) (*.f64 -1/32 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 y 4)))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) 1/2)
(*.f64 (pow.f64 y 4) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 4) 1/2))
(/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))
(fma.f64 -1/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))
(fma.f64 -1/2 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))
(fma.f64 -1/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))
(+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (+.f64 -1/2 (*.f64 y (*.f64 y 1/24)))))
(+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4)))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))
(fma.f64 -1/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))
(fma.f64 -1/2 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 1/24 (/.f64 (pow.f64 y 4) (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))
(+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (fma.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (/.f64 (*.f64 y y) (+.f64 9/2 (sqrt.f64 45/4))) (+.f64 -1/2 (*.f64 y (*.f64 y 1/24))))))
(fma.f64 -1/720 (/.f64 (pow.f64 y 6) (+.f64 9/2 (sqrt.f64 45/4))) (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24)))))

localize82.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(*.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.1b
(+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x)))
0.1b
(*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))
0.0b
(cos.f64 x)
0.3b
(*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))
0.3b
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))
1.0b
(-.f64 3 (sqrt.f64 5))
1.7b
(-.f64 (cos.f64 x) 1)
Compiler

Compiled 205 to 162 computations (21% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(-.f64 (cos.f64 x) 1)
0.0ms
x
@inf
(-.f64 (cos.f64 x) 1)
0.0ms
x
@-inf
(-.f64 (cos.f64 x) 1)

rewrite36.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
498×pow1_binary64
485×add-sqr-sqrt_binary64
464×add-log-exp_binary64
463×log1p-expm1-u_binary64
463×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify82.0ms (0.4%)

Algorithm
egg-herbie
Rules
604×distribute-rgt-out_binary64
532×sqr-pow_binary64
482×associate-+l+_binary64
477×distribute-lft-out_binary64
413×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02470
15670
212970
342270
4187070
5425470
6463270
7513870
8612870
9711270
10754770
Stop Event
node limit
Counts
35 → 39
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 x 2))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
Outputs
(*.f64 -1/2 (pow.f64 x 2))
(*.f64 -1/2 (*.f64 x x))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/2 (*.f64 x x)))
(fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4)))
(*.f64 (*.f64 x x) (fma.f64 x (*.f64 x 1/24) -1/2))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/24 (pow.f64 x 4))))
(fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 1/24) -1/2) (*.f64 -1/720 (pow.f64 x 6)))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))

localize98.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x)))
0.1b
(*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))
0.1b
(-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))
0.0b
(cos.f64 x)
0.3b
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
0.4b
(*.f64 (sqrt.f64 2) (sin.f64 y))
1.0b
(-.f64 3 (sqrt.f64 5))
1.7b
(+.f64 (cos.f64 x) -1)
Compiler

Compiled 246 to 180 computations (26.8% saved)

series7.0ms (0%)

Counts
2 → 28
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@-inf
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
y
@-inf
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@inf
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
1.0ms
x
@0
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))

rewrite58.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
701×log-prod_binary64
538×prod-diff_binary64
264×pow1/3_binary64
262×expm1-udef_binary64
262×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01432
130332
2376030
Stop Event
node limit
Counts
2 → 48
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sin.f64 y))
(*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 2) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (sin.f64 y) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 y) 3) (*.f64 2 (sqrt.f64 2))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 y)) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (sin.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 y) 3) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (sin.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (*.f64 (*.f64 (sin.f64 x) -1/16) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (sin.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sin.f64 x) -1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (fma.f64 (*.f64 (sin.f64 x) 1/16) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256)) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (-.f64 (pow.f64 (sin.f64 y) 3) (*.f64 (pow.f64 (sin.f64 x) 3) 1/4096))) (fma.f64 (*.f64 (sin.f64 x) 1/16) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (pow.f64 (sin.f64 x) 2) 1/256))) (fma.f64 (sin.f64 x) 1/16 (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 3) (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3) (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 (sqrt.f64 2) -1/16)) (sin.f64 y)) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 3) (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) 3) (pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) -1/16) (*.f64 (sqrt.f64 2) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 y) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (*.f64 (sin.f64 x) -1/16) (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (sin.f64 y) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) -1/16)) (*.f64 (sin.f64 x) -1/16)))))))

simplify77.0ms (0.4%)

Algorithm
egg-herbie
Rules
505×distribute-rgt-in_binary64
476×fma-def_binary64
471×distribute-lft-out_binary64
393×unsub-neg_binary64
349×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075767
1214767
2626695
32414648
43896648
55765648
67269648
Stop Event
node limit
Counts
76 → 73
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) y)
(+.f64 (*.f64 (sqrt.f64 2) y) (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))))
(+.f64 (*.f64 (sqrt.f64 2) y) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5)))))
(+.f64 (*.f64 (sqrt.f64 2) y) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 2) (pow.f64 y 7))) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))))
(+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (sin.f64 x)))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x))))))
(+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (sin.f64 x)))) (+.f64 (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 y 4))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3)))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x)))))
(+.f64 (*.f64 1/30720 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 5)))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3)))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x))))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
Outputs
(*.f64 (sqrt.f64 2) y)
(+.f64 (*.f64 (sqrt.f64 2) y) (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))))
(fma.f64 (sqrt.f64 2) y (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))))
(fma.f64 (sqrt.f64 2) y (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) -1/6)))
(*.f64 (sqrt.f64 2) (+.f64 y (*.f64 -1/6 (pow.f64 y 3))))
(+.f64 (*.f64 (sqrt.f64 2) y) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5)))))
(fma.f64 (sqrt.f64 2) y (fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (*.f64 (*.f64 1/120 (sqrt.f64 2)) (pow.f64 y 5))))
(fma.f64 (sqrt.f64 2) y (fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5)))))
(fma.f64 (sqrt.f64 2) y (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/120 (pow.f64 y 5)) (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))))
(+.f64 (*.f64 (sqrt.f64 2) y) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 2) (pow.f64 y 7))) (*.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5))))))
(fma.f64 (sqrt.f64 2) y (fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 -1/5040 (*.f64 (sqrt.f64 2) (pow.f64 y 7)) (*.f64 (*.f64 1/120 (sqrt.f64 2)) (pow.f64 y 5)))))
(fma.f64 (sqrt.f64 2) y (fma.f64 -1/6 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (fma.f64 1/120 (*.f64 (sqrt.f64 2) (pow.f64 y 5)) (*.f64 -1/5040 (*.f64 (sqrt.f64 2) (pow.f64 y 7))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/120 (pow.f64 y 5)) (*.f64 -1/5040 (pow.f64 y 7)))) (*.f64 (sqrt.f64 2) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 y (*.f64 1/120 (pow.f64 y 5))) (+.f64 (*.f64 -1/5040 (pow.f64 y 7)) (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 (sqrt.f64 2) (+.f64 y (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 (*.f64 -1/5040 (pow.f64 y 7)) (*.f64 -1/6 (pow.f64 y 3))))))
(*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x))))
(*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) y) (sin.f64 x)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 y (sin.f64 x)) 1/256))
(*.f64 (sqrt.f64 2) (*.f64 y (*.f64 1/256 (sin.f64 x))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) y) (sin.f64 x))))
(fma.f64 (*.f64 (sqrt.f64 2) 1/256) (*.f64 y (sin.f64 x)) (*.f64 (*.f64 y y) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 y -1/16)) (*.f64 y (*.f64 1/256 (sin.f64 x)))))
(*.f64 (*.f64 (sqrt.f64 2) y) (+.f64 (*.f64 1/256 (sin.f64 x)) (*.f64 -1/16 y)))
(+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (sin.f64 x)))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x))))))
(fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (sin.f64 x)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) y) (sin.f64 x)))))
(fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (sin.f64 x)) (fma.f64 (*.f64 (sqrt.f64 2) 1/256) (*.f64 y (sin.f64 x)) (*.f64 (*.f64 y y) (*.f64 (sqrt.f64 2) -1/16))))
(fma.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -1/1536)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 y -1/16)) (*.f64 y (*.f64 1/256 (sin.f64 x))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 y -1/16)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/1536 (pow.f64 y 3)) (*.f64 1/256 y)))))
(+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 y 3) (sin.f64 x)))) (+.f64 (*.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 y 4))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 y 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))))))
(fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (sin.f64 x)) (fma.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 y y)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) y) (sin.f64 x))))))
(fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 y 3)) (sin.f64 x)) (fma.f64 1/48 (*.f64 (sqrt.f64 2) (pow.f64 y 4)) (fma.f64 (*.f64 (sqrt.f64 2) 1/256) (*.f64 y (sin.f64 x)) (*.f64 (*.f64 y y) (*.f64 (sqrt.f64 2) -1/16)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 y (*.f64 y -1/16)) (*.f64 y (*.f64 1/256 (sin.f64 x))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/48 (pow.f64 y 4)) (*.f64 (pow.f64 y 3) (*.f64 (sin.f64 x) -1/1536)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 y 1/48) (*.f64 (sin.f64 x) -1/1536))) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (*.f64 -1/16 y)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 (sin.f64 x) -1/1536) (*.f64 y 1/48))) (*.f64 y (+.f64 (*.f64 1/256 (sin.f64 x)) (*.f64 -1/16 y)))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 y) 2) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) x)))
(fma.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) x) (sin.f64 y)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 y) 2) -1/16)))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)) (*.f64 1/256 (*.f64 x (sin.f64 y)))))
(*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 1/256 x) (*.f64 -1/16 (sin.f64 y)))))
(+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3)))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (pow.f64 x 3)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) x))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (fma.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) x) (sin.f64 y)) (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3))))))
(fma.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (+.f64 (*.f64 1/256 x) (*.f64 -1/1536 (pow.f64 x 3)))))
(*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (+.f64 (*.f64 -1/16 (sin.f64 y)) (+.f64 (*.f64 1/256 x) (*.f64 -1/1536 (pow.f64 x 3)))))
(+.f64 (*.f64 1/30720 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 5)))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3)))) (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) x))))))
(fma.f64 1/30720 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (pow.f64 x 5)) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (fma.f64 -1/1536 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (pow.f64 x 3)) (*.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) x)))))
(fma.f64 1/30720 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 5))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2)) (fma.f64 1/256 (*.f64 (*.f64 (sqrt.f64 2) x) (sin.f64 y)) (*.f64 -1/1536 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (pow.f64 x 3)))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 y)) (+.f64 (*.f64 1/256 x) (*.f64 -1/1536 (pow.f64 x 3)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)) (*.f64 (sin.f64 y) (*.f64 1/30720 (pow.f64 x 5))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x (sin.f64 y)) (+.f64 1/256 (*.f64 (*.f64 x x) -1/1536))) (*.f64 (sin.f64 y) (+.f64 (*.f64 1/30720 (pow.f64 x 5)) (*.f64 -1/16 (sin.f64 y))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 y) (+.f64 (*.f64 -1/1536 (pow.f64 x 3)) (*.f64 -1/16 (sin.f64 y)))) (*.f64 (sin.f64 y) (+.f64 (*.f64 1/256 x) (*.f64 1/30720 (pow.f64 x 5))))))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))
(*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))) (sin.f64 y))))
(*.f64 (*.f64 -1/16 (sqrt.f64 2)) (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sin.f64 y) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/16))) -1/16))
(*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 -1/16 (sin.f64 y))))
(*.f64 (sqrt.f64 2) (*.f64 -1/16 (*.f64 (sin.f64 y) (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)))))
(*.f64 (sin.f64 y) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (*.f64 (sqrt.f64 2) -1/16)))

localize103.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.1b
(+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))
0.1b
(*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))
0.1b
(exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))
0.0b
(cos.f64 x)
0.4b
(log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))
0.6b
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
1.0b
(-.f64 3 (sqrt.f64 5))
2.6b
(-.f64 (cos.f64 x) (cos.f64 y))
Compiler

Compiled 227 to 169 computations (25.6% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
1.0ms
x
@0
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
1.0ms
x
@-inf
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
0.0ms
x
@0
(log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))
0.0ms
x
@inf
(log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))

rewrite47.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
854×pow1_binary64
793×log1p-expm1-u_binary64
793×expm1-log1p-u_binary64
792×add-log-exp_binary64
776×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
118724
2211624
Stop Event
node limit
Counts
2 → 78
Calls
Call 1
Inputs
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 x) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2) (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 x)) (/.f64 1 (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) 1) (/.f64 (sqrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (/.f64 (cos.f64 x) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (/.f64 (sqrt.f64 (cos.f64 x)) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (/.f64 (cos.f64 x) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (/.f64 (cbrt.f64 (cos.f64 x)) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 x) (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 x) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2) (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 x)) (/.f64 1 (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) 1) (/.f64 (sqrt.f64 (cos.f64 x)) (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (/.f64 (cos.f64 x) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (/.f64 (sqrt.f64 (cos.f64 x)) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (/.f64 (cos.f64 x) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (/.f64 (cbrt.f64 (cos.f64 x)) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cbrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cos.f64 x)) (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 x)) (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (cos.f64 x))) (neg.f64 (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 x) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))) (sqrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 x) 1) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2)) (cbrt.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 x) (neg.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))))))

simplify65.0ms (0.3%)

Algorithm
egg-herbie
Rules
814×fma-def_binary64
675×associate-*l/_binary64
656×associate-/l/_binary64
482×associate-*r/_binary64
482×fma-neg_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
031548
166468
2140464
3395444
41989432
56417428
67227420
77841420
Stop Event
node limit
Counts
102 → 54
Calls
Call 1
Inputs
(/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (*.f64 -1/720 (/.f64 (pow.f64 x 6) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (*.f64 -1/720 (/.f64 (pow.f64 x 6) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
Outputs
(/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 2 (+.f64 1 (sqrt.f64 5)))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))
(fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (/.f64 2 (+.f64 1 (sqrt.f64 5))))
(fma.f64 (*.f64 x x) (/.f64 -1 (+.f64 1 (sqrt.f64 5))) (/.f64 2 (+.f64 1 (sqrt.f64 5))))
(-.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (/.f64 x (/.f64 (+.f64 1 (sqrt.f64 5)) x)))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (fma.f64 (/.f64 (pow.f64 x 4) (+.f64 1 (sqrt.f64 5))) 1/12 (/.f64 2 (+.f64 1 (sqrt.f64 5)))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (*.f64 x (/.f64 x (fma.f64 1/2 (sqrt.f64 5) 1/2))) (+.f64 -1/2 (*.f64 x (*.f64 x 1/24)))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (+.f64 1 (sqrt.f64 5))) (-.f64 (*.f64 1/24 (/.f64 (pow.f64 x 3) 1/2)) x)))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (*.f64 -1/720 (/.f64 (pow.f64 x 6) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (fma.f64 -1/2 (/.f64 (*.f64 x x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/720 (pow.f64 x 6)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(+.f64 (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 -1/720 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (pow.f64 x 6)))) (fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (fma.f64 -1/720 (/.f64 (pow.f64 x 6) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (fma.f64 (/.f64 (pow.f64 x 6) (+.f64 1 (sqrt.f64 5))) -1/360 (fma.f64 (/.f64 (pow.f64 x 4) (+.f64 1 (sqrt.f64 5))) 1/12 (/.f64 2 (+.f64 1 (sqrt.f64 5))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (fma.f64 (pow.f64 x 6) (/.f64 -1/360 (+.f64 1 (sqrt.f64 5))) (*.f64 (*.f64 x (/.f64 x (fma.f64 1/2 (sqrt.f64 5) 1/2))) (+.f64 -1/2 (*.f64 x (*.f64 x 1/24))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (/.f64 (+.f64 1 (sqrt.f64 5)) x)) (+.f64 (+.f64 -1 (/.f64 (*.f64 (pow.f64 x 4) -1/720) 1/2)) (*.f64 1/24 (*.f64 x (/.f64 x 1/2))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (+.f64 1 (sqrt.f64 5))) (-.f64 (+.f64 (/.f64 (*.f64 -1/720 (pow.f64 x 5)) 1/2) (*.f64 1/24 (/.f64 (pow.f64 x 3) 1/2))) x)))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 2 (+.f64 1 (sqrt.f64 5)))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))
(fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (/.f64 2 (+.f64 1 (sqrt.f64 5))))
(fma.f64 (*.f64 x x) (/.f64 -1 (+.f64 1 (sqrt.f64 5))) (/.f64 2 (+.f64 1 (sqrt.f64 5))))
(-.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (/.f64 x (/.f64 (+.f64 1 (sqrt.f64 5)) x)))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (fma.f64 (/.f64 (pow.f64 x 4) (+.f64 1 (sqrt.f64 5))) 1/12 (/.f64 2 (+.f64 1 (sqrt.f64 5)))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (*.f64 x (/.f64 x (fma.f64 1/2 (sqrt.f64 5) 1/2))) (+.f64 -1/2 (*.f64 x (*.f64 x 1/24)))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (+.f64 1 (sqrt.f64 5))) (-.f64 (*.f64 1/24 (/.f64 (pow.f64 x 3) 1/2)) x)))
(+.f64 (*.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))) (*.f64 -1/720 (/.f64 (pow.f64 x 6) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (+.f64 (/.f64 1 (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (fma.f64 -1/2 (/.f64 (*.f64 x x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))) (/.f64 (*.f64 -1/720 (pow.f64 x 6)) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5)))))))
(+.f64 (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (/.f64 -1/720 (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) (pow.f64 x 6)))) (fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2))))
(fma.f64 1/24 (/.f64 (pow.f64 x 4) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (fma.f64 -1/2 (/.f64 x (/.f64 (fma.f64 1/2 (sqrt.f64 5) 1/2) x)) (fma.f64 -1/720 (/.f64 (pow.f64 x 6) (fma.f64 1/2 (sqrt.f64 5) 1/2)) (/.f64 1 (fma.f64 1/2 (sqrt.f64 5) 1/2)))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 5))) -1 (fma.f64 (/.f64 (pow.f64 x 6) (+.f64 1 (sqrt.f64 5))) -1/360 (fma.f64 (/.f64 (pow.f64 x 4) (+.f64 1 (sqrt.f64 5))) 1/12 (/.f64 2 (+.f64 1 (sqrt.f64 5))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (fma.f64 (pow.f64 x 6) (/.f64 -1/360 (+.f64 1 (sqrt.f64 5))) (*.f64 (*.f64 x (/.f64 x (fma.f64 1/2 (sqrt.f64 5) 1/2))) (+.f64 -1/2 (*.f64 x (*.f64 x 1/24))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (/.f64 (+.f64 1 (sqrt.f64 5)) x)) (+.f64 (+.f64 -1 (/.f64 (*.f64 (pow.f64 x 4) -1/720) 1/2)) (*.f64 1/24 (*.f64 x (/.f64 x 1/2))))))
(+.f64 (/.f64 2 (+.f64 1 (sqrt.f64 5))) (*.f64 (/.f64 x (+.f64 1 (sqrt.f64 5))) (-.f64 (+.f64 (/.f64 (*.f64 -1/720 (pow.f64 x 5)) 1/2) (*.f64 1/24 (/.f64 (pow.f64 x 3) 1/2))) x)))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))
(/.f64 (cos.f64 x) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 5))))
(/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))

eval651.0ms (3.1%)

Compiler

Compiled 36080 to 26950 computations (25.3% saved)

prune173.0ms (0.8%)

Pruning

68 alts after pruning (61 fresh and 7 done)

PrunedKeptTotal
New70311714
Fresh35053
Picked101
Done178
Total70868776
Error
0.0b
Counts
776 → 68
Alt Table
Click to see full alt table
StatusErrorProgram
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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)))))
33.2b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
41.8b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
36.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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)))))
29.5b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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.4b
(*.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))
23.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.4b
(/.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)))))
41.7b
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
41.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
24.7b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
24.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
23.0b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.4b
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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.4b
(/.f64 (+.f64 2 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
41.8b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
33.3b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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)))))
33.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
32.9b
(/.f64 (+.f64 2 (*.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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)))))
22.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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.6b
(log.f64 (exp.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
33.0b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
33.2b
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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.4b
(/.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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
0.4b
(/.f64 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (sqrt.f64 45/4)) 3)))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
34.8b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
23.1b
(/.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 1 (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)))))
26.8b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
25.3b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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)))))
41.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
0.4b
(pow.f64 (/.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)) -1)
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
42.1b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
41.7b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
23.4b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
23.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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)))))
33.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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)))))
28.7b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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.4b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) 3))))
22.1b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
24.9b
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
0.3b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
0.4b
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
23.1b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
26.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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)))))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
11.5b
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (pow.f64 (sqrt.f64 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))) 2)))
22.2b
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
21.1b
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 3083 to 2553 computations (17.2% saved)

regimes186.0ms (0.9%)

Counts
68 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.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 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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) 3))))
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (sqrt.f64 45/4)) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (pow.f64 (sqrt.f64 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))) 2)))
(/.f64 (+.f64 2 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
(*.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(pow.f64 (/.f64 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2)) -1)
(log.f64 (exp.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3)))))
Outputs
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Calls

3 calls:

49.0ms
x
31.0ms
(/.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)))))
30.0ms
y
Results
ErrorSegmentsBranch
0.3b1x
0.3b1y
0.3b1(/.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 3007 to 2231 computations (25.8% saved)

regimes184.0ms (0.9%)

Counts
64 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.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 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 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16))))) 1) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2))) 3))))
(/.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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
(/.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))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 x) (cos.f64 y))) 3))) (*.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 (fma.f64 (sqrt.f64 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)))) 2) (fma.f64 (cos.f64 x) (/.f64 (+.f64 (sqrt.f64 5) -1) 2/3) (fma.f64 (cos.f64 y) (-.f64 9/2 (sqrt.f64 45/4)) 3)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (pow.f64 (sqrt.f64 (fma.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2)))) 2)))
(/.f64 (+.f64 2 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 y) -1/16)) (+.f64 (sin.f64 y) (*.f64 (sin.f64 x) -1/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 (log.f64 (exp.f64 (-.f64 3 (sqrt.f64 5)))) 2) (cos.f64 y)))))
(*.f64 (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 -1/16 (sin.f64 y) (sin.f64 x)) (*.f64 (fma.f64 (sin.f64 x) -1/16 (sin.f64 y)) (-.f64 (cos.f64 x) (cos.f64 y)))) 2) (/.f64 1 (fma.f64 (cos.f64 x) (*.f64 (+.f64 (sqrt.f64 5) -1) 3/2) (fma.f64 (cos.f64 y) (/.f64 9 (+.f64 9/2 (sqrt.f64 45/4))) 3))))
Outputs
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Calls

3 calls:

36.0ms
x
28.0ms
y
19.0ms
(/.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)))))
Results
ErrorSegmentsBranch
0.3b1x
0.3b1y
0.3b1(/.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 2817 to 2111 computations (25.1% saved)

regimes237.0ms (1.1%)

Counts
50 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (cos.f64 x) -1) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (sin.f64 x) (*.f64 y -1/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 x) (/.f64 (sin.f64 y) 16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (-.f64 (sin.f64 x) (*.f64 1/16 (sin.f64 y))) (-.f64 (sin.f64 y) (*.f64 1/16 (sin.f64 x))))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (log.f64 (exp.f64 (/.f64 (cos.f64 x) (fma.f64 1/2 (sqrt.f64 5) 1/2))))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (*.f64 (sin.f64 y) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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)))))
Calls

2 calls:

94.0ms
y
62.0ms
x
Results
ErrorSegmentsBranch
11.2b3x
12.2b3y
Compiler

Compiled 2064 to 1606 computations (22.2% saved)

bsearch271.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
129.0ms
2.308301847371468e-12
8.103664163713823e-10
141.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes149.0ms (0.7%)

Counts
42 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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) (sin.f64 x)) (-.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 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (-.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)))))
Calls

2 calls:

57.0ms
x
51.0ms
y
Results
ErrorSegmentsBranch
11.2b3x
12.2b3y
Compiler

Compiled 1694 to 1342 computations (20.8% saved)

bsearch288.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
156.0ms
2.308301847371468e-12
8.103664163713823e-10
131.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes299.0ms (1.4%)

Counts
41 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (sin.f64 y))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 x) (*.f64 y -1/16))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 x y) 1/2))) (sin.f64 (*.f64 (+.f64 x y) 1/2))))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 y 257/256) (*.f64 -1/16 (sin.f64 x)))) (*.f64 y (*.f64 -1/16 y)))) (-.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (expm1.f64 (log1p.f64 (fma.f64 3/2 (sqrt.f64 5) -3/2))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Calls

2 calls:

125.0ms
y
68.0ms
x
Results
ErrorSegmentsBranch
12.2b3x
12.2b3y
Compiler

Compiled 1649 to 1312 computations (20.4% saved)

bsearch419.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
199.0ms
6.643285079246632e-13
1.0426889152371448e-6
219.0ms
-2.337175874611913
-0.23265284820782045
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes154.0ms (0.7%)

Counts
33 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))) (-.f64 1 (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 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Calls

2 calls:

62.0ms
y
43.0ms
x
Results
ErrorSegmentsBranch
12.2b3x
12.2b3y
Compiler

Compiled 1282 to 1040 computations (18.9% saved)

bsearch265.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
127.0ms
2.308301847371468e-12
8.103664163713823e-10
137.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes121.0ms (0.6%)

Counts
26 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 1 (cos.f64 y))) 3) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
Calls

2 calls:

59.0ms
x
38.0ms
y
Results
ErrorSegmentsBranch
12.2b3x
12.3b3y
Compiler

Compiled 994 to 829 computations (16.6% saved)

bsearch309.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
136.0ms
2.308301847371468e-12
8.103664163713823e-10
173.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes86.0ms (0.4%)

Counts
23 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 (sin.f64 y) 2))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 x) 4) 1/256))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y)))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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)))))
Calls

2 calls:

32.0ms
x
30.0ms
y
Results
ErrorSegmentsBranch
12.3b3x
12.3b3y
Compiler

Compiled 866 to 729 computations (15.8% saved)

bsearch262.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
130.0ms
6.643285079246632e-13
1.0426889152371448e-6
131.0ms
-1.2486277545555302e-6
-6.295824758555725e-9
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes60.0ms (0.3%)

Counts
16 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
Outputs
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
Calls

2 calls:

25.0ms
y
21.0ms
x
Results
ErrorSegmentsBranch
12.3b3x
12.8b3y
Compiler

Compiled 584 to 503 computations (13.9% saved)

bsearch299.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
161.0ms
292550.4281132488
3127099.8951671203
138.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes58.0ms (0.3%)

Counts
15 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 1/2 (-.f64 (sqrt.f64 5) 1))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))
(/.f64 (+.f64 2 (*.f64 (*.f64 1/256 (*.f64 (sqrt.f64 2) (*.f64 y (sin.f64 x)))) (+.f64 (cos.f64 x) -1))) (*.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 -1/16 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 (cos.f64 y)) (sqrt.f64 2))) (sin.f64 y)) 2))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
Calls

2 calls:

23.0ms
x
21.0ms
y
Results
ErrorSegmentsBranch
12.7b3x
12.8b3y
Compiler

Compiled 544 to 471 computations (13.4% saved)

bsearch368.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
167.0ms
2.308301847371468e-12
8.103664163713823e-10
200.0ms
-439.8571803332426
-7.548453758583248e-17
Compiler

Compiled 57 to 44 computations (22.8% saved)

regimes26.0ms (0.1%)

Counts
11 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Calls

2 calls:

9.0ms
y
6.0ms
x
Results
ErrorSegmentsBranch
24.9b1x
24.9b1y
Compiler

Compiled 394 to 346 computations (12.2% saved)

regimes49.0ms (0.2%)

Counts
10 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 3)))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (pow.f64 (sqrt.f64 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) 2)))))
Outputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Calls

2 calls:

33.0ms
x
6.0ms
y
Results
ErrorSegmentsBranch
24.9b1x
24.9b1y
Compiler

Compiled 359 to 317 computations (11.7% saved)

regimes36.0ms (0.2%)

Counts
7 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 y y))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (+.f64 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))) (*.f64 (*.f64 y (/.f64 y (+.f64 9/2 (sqrt.f64 45/4)))) (+.f64 -1/2 (*.f64 (*.f64 y y) 1/24))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/2 (*.f64 y y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (pow.f64 y 4)) (*.f64 (pow.f64 y 6) -5/24))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Calls

2 calls:

25.0ms
x
5.0ms
y
Results
ErrorSegmentsBranch
41.7b1x
41.7b1y
Compiler

Compiled 252 to 222 computations (11.9% saved)

regimes8.0ms (0%)

Accuracy

Total -0.1b remaining (-0.2%)

Threshold costs -0.1b (-0.2%)

Counts
2 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
Calls

2 calls:

3.0ms
x
3.0ms
y
Results
ErrorSegmentsBranch
41.8b1x
41.8b1y
Compiler

Compiled 67 to 62 computations (7.5% saved)

simplify105.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01992077
13162077
23382077
33492077
43562077
53582077
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (-.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)))))))
(if (<=.f64 y -2631426099500381/1125899906842624) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))))
(if (<=.f64 y -2948238928846911/2361183241434822606848) (/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))))) (if (<=.f64 x 2512989042354405/8589934592) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))
Outputs
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (neg.f64 (cos.f64 y))) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x))))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))) (-.f64 (cos.f64 x) (cos.f64 y))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (*.f64 -1/16 (sin.f64 x)) (sin.f64 y))))) 2) (+.f64 3 (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (+.f64 (*.f64 -1/16 (sin.f64 y)) (sin.f64 x)) (+.f64 (sin.f64 y) (*.f64 -1/16 (sin.f64 x)))) (-.f64 (cos.f64 x) (cos.f64 y))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (-.f64 (sqrt.f64 5) 1))))) (/.f64 (+.f64 2 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.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))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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) (sin.f64 x)) (-.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)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 x 257/256)))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (/.f64 (+.f64 2 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (*.f64 (sqrt.f64 2) (sin.f64 x)) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) 16))))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)))))))
(if (<=.f64 y -2631426099500381/1125899906842624) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256))))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (/.f64 (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(if (<=.f64 y -2631426099500381/1125899906842624) (/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1)))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 y 257/256)))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1)))))) (/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 y) 2))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2)))) 2) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (cos.f64 x) -1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 x 257/256)))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (/.f64 (-.f64 (sqrt.f64 5) 1) 2) (cos.f64 x))) (*.f64 (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2) (cos.f64 y))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 x 257/256) (*.f64 -1/16 (sin.f64 y))))) (-.f64 1 (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 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (cos.f64 x) -1))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (/.f64 4 (+.f64 3 (sqrt.f64 5))) 2))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sin.f64 y) (+.f64 (*.f64 -1/16 (sin.f64 y)) (*.f64 x 257/256)))) (-.f64 1 (cos.f64 y)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (cos.f64 x) -1))) (*.f64 3 (+.f64 (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)) (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))))))))
(if (<=.f64 y -2948238928846911/2361183241434822606848) (/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 -1/16 (sqrt.f64 2))) (-.f64 1 (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)))))))
(if (<=.f64 y -2948238928846911/2361183241434822606848) (/.f64 (+.f64 2 (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (sqrt.f64 2) -1/16)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2))))) (if (<=.f64 y 6579190873589245/9903520314283042199192993792) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))) (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (-.f64 1 (cos.f64 y)) (*.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (sqrt.f64 2) -1/16)))) (*.f64 3 (+.f64 (+.f64 1 (*.f64 (cos.f64 x) (/.f64 (-.f64 (sqrt.f64 5) 1) 2))) (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y))))) (if (<=.f64 x 2512989042354405/8589934592) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (-.f64 (cos.f64 x) 1))) (*.f64 3 (+.f64 (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))) (*.f64 (/.f64 (-.f64 3 (sqrt.f64 5)) 2) (cos.f64 y)))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (cos.f64 x) -1))) (*.f64 3 (+.f64 (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)) (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1))))))) (if (<=.f64 x 2512989042354405/8589934592) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 -1/16 (pow.f64 (sin.f64 x) 2))) (+.f64 (cos.f64 x) -1))) (*.f64 3 (+.f64 (*.f64 (cos.f64 y) (/.f64 (-.f64 3 (sqrt.f64 5)) 2)) (+.f64 1 (/.f64 (cos.f64 x) (*.f64 1/2 (+.f64 (sqrt.f64 5) 1)))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x)))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (cos.f64 x) 1))))) (+.f64 3 (+.f64 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))) (*.f64 3/2 (*.f64 (-.f64 (sqrt.f64 5) 1) (cos.f64 x))))))))
(if (<=.f64 x -3869024674697321/8796093022208) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))) (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4))))))) (if (<=.f64 x 2857539279617551/1237940039285380274899124224) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4))))))) (/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (cos.f64 x) -1))))) (+.f64 3 (+.f64 (*.f64 3/2 (*.f64 (cos.f64 x) (-.f64 (sqrt.f64 5) 1))) (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 1 (sqrt.f64 5))) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (pow.f64 (sin.f64 y) 2))))) (+.f64 (/.f64 6 (+.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (+.f64 y y)))))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 1 (cos.f64 y)) (+.f64 1/2 (*.f64 (cos.f64 (+.f64 y y)) -1/2)))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (sqrt.f64 (*.f64 1/256 (*.f64 2 (*.f64 (pow.f64 y 8) 1/4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 (sqrt.f64 2) (*.f64 -1/32 (pow.f64 y 4)))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 (cos.f64 y) (+.f64 9/2 (sqrt.f64 45/4)))))))
(/.f64 (+.f64 2 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 1/2 (pow.f64 y 4))))) (+.f64 (*.f64 3/2 (-.f64 (sqrt.f64 5) 1)) (+.f64 3 (*.f64 9 (/.f64 1 (+.f64 9/2 (sqrt.f64 45/4)))))))

end722.0ms (3.4%)

Stop Event
fuel
Compiler

Compiled 2666 to 2097 computations (21.3% saved)

Profiling

Loading profile data...