Details

Time bar (total: 6.4s)

analyze1.4s (21.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
18.7%81.1%0.1%8
26.5%72.9%0.5%9
38.2%60.7%1.1%10
41.7%54.9%3.4%11
47.6%47.4%5%12
53.4%39.4%7.2%13
54.9%34.5%10.6%14
Compiler

Compiled 20 to 15 computations (25% saved)

sample2.8s (43.7%)

Results
1.1s6323×body128valid
600.0ms962×body1024valid
369.0ms1919×body128invalid
299.0ms651×body512valid
124.0ms210×body1024invalid
111.0ms241×body512invalid
103.0ms318×body256valid
50.0ms161×body256invalid
2.0msbody2048valid

preprocess90.0ms (1.4%)

Algorithm
egg-herbie
Rules
820×unswap-sqr_binary64
674×associate-/l/_binary64
369×sqr-pow_binary64
227×*-commutative_binary64
161×associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03096
17696
219496
379096
4167996
5173096
6179796
7187496
8196196
9206796
10401696
11416496
12433996
13452196
14472196
15494796
033
133
Stop Event
unsound
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
1
Call 2
Inputs
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 (pow.f64 x 2) (*.f64 (*.f64 c (pow.f64 s 2)) c)))
(/.f64 (cos.f64 (*.f64 2 s)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 s (pow.f64 x 2)) s)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (*.f64 x (pow.f64 c 2)) x)))
Outputs
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 c c) (*.f64 x (*.f64 x (*.f64 s s)))))
(/.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c c)) (*.f64 x (*.f64 x (*.f64 s s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 c (*.f64 x s)) (*.f64 c (*.f64 x s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 x (*.f64 (*.f64 c c) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 (pow.f64 x 2) (*.f64 (*.f64 c (pow.f64 s 2)) c)))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 (*.f64 x x) (*.f64 c (*.f64 c (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 x (*.f64 (*.f64 c c) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 (*.f64 c c) (*.f64 x (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 c)) (*.f64 (*.f64 c (*.f64 x s)) (*.f64 c (*.f64 x s))))
(/.f64 (cos.f64 (*.f64 2 s)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 s (pow.f64 x 2)) s)))
(/.f64 (cos.f64 (*.f64 2 s)) (*.f64 (*.f64 c c) (*.f64 s (*.f64 s (*.f64 x x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 2 s)) (*.f64 x (*.f64 x (*.f64 s s)))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 s)) (*.f64 (*.f64 c c) (*.f64 x (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 s)) (*.f64 (*.f64 c (*.f64 x s)) (*.f64 c (*.f64 x s))))
(/.f64 (/.f64 (cos.f64 (*.f64 2 s)) (*.f64 c c)) (*.f64 x (*.f64 x (*.f64 s s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (*.f64 x (pow.f64 c 2)) x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 c c) (*.f64 x (*.f64 x (*.f64 s s)))))
(/.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c c)) (*.f64 x (*.f64 x (*.f64 s s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 c (*.f64 x s)) (*.f64 c (*.f64 x s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 x (*.f64 (*.f64 c c) (*.f64 x (*.f64 s s)))))
Symmetry

(sort c s)

Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify64.0ms (1%)

Algorithm
egg-herbie
Rules
750×unswap-sqr_binary64
516×*-commutative_binary64
376×associate-/l/_binary64
309×sqr-pow_binary64
243×fabs-mul_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01324
13024
27224
325424
4114524
5212824
6332024
7339724
8349424
9362824
10381324
11406024
12440124
13479624
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
Outputs
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 c c) (*.f64 x (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 x (*.f64 (*.f64 c c) (*.f64 x (*.f64 s s)))))
(/.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c c)) (*.f64 x (*.f64 x (*.f64 s s))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 x (*.f64 c (*.f64 x (*.f64 s s))))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
3.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
3.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
28.0b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
Compiler

Compiled 111 to 69 computations (37.8% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
0.4b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
6.6b
(*.f64 x (*.f64 c s))

series26.0ms (0.4%)

Counts
3 → 108
Calls

27 calls:

TimeVariablePointExpression
3.0ms
c
@0
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
2.0ms
s
@0
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
2.0ms
x
@inf
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
1.0ms
c
@-inf
(*.f64 x (*.f64 c s))
1.0ms
x
@0
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))

rewrite58.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
699×log-prod_binary64
214×expm1-udef_binary64
214×log1p-udef_binary64
205×prod-diff_binary64
183×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01135
123635
2321635
Stop Event
node limit
Counts
3 → 84
Calls
Call 1
Inputs
(*.f64 x (*.f64 c s))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 c (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 c (*.f64 s x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c (*.f64 s x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 c (*.f64 s x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 c (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 c) s) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 c s) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 c s) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c (*.f64 s x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c (*.f64 s x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))) (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2) (pow.f64 (*.f64 c (*.f64 s x)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2) (pow.f64 (*.f64 c (*.f64 s x)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 (+.f64 x x))) (/.f64 1 (neg.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2) (cos.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) x) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) x) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 c (*.f64 s x))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 c (*.f64 s x))) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) 1) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 1) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 x x)) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c s) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 x x)) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c s) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c s)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) (cos.f64 (+.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 (+.f64 x x)) (neg.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2) (pow.f64 (*.f64 c (*.f64 s x)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 3) (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 c (*.f64 s x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c (*.f64 s x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c (*.f64 s x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 c (*.f64 s x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))))

simplify49.0ms (0.8%)

Algorithm
egg-herbie
Rules
871×associate-/l*_binary64
514×fma-def_binary64
436×associate-/l/_binary64
419×associate-*l/_binary64
334×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0401778
11111774
23171774
315981769
Stop Event
node limit
Counts
192 → 101
Calls
Call 1
Inputs
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(-.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(-.f64 (+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (+.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
Outputs
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 x (*.f64 s c))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (/.f64 (/.f64 1 s) s) (*.f64 (*.f64 c c) (*.f64 x x)))
(/.f64 (/.f64 (/.f64 1 (*.f64 c c)) x) (*.f64 x (*.f64 s s)))
(/.f64 1 (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(-.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(-.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))) (/.f64 2 (*.f64 (*.f64 c c) (*.f64 s s))))
(-.f64 (/.f64 (/.f64 (/.f64 1 s) s) (*.f64 (*.f64 c c) (*.f64 x x))) (/.f64 2 (*.f64 s (*.f64 s (*.f64 c c)))))
(-.f64 (/.f64 (/.f64 (/.f64 1 (*.f64 c c)) x) (*.f64 x (*.f64 s s))) (/.f64 2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(+.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))) (-.f64 (*.f64 2/3 (/.f64 (/.f64 (*.f64 x x) (*.f64 s s)) (*.f64 c c))) (/.f64 2 (*.f64 (*.f64 c c) (*.f64 s s)))))
(+.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 (/.f64 (/.f64 1 s) s) (*.f64 (*.f64 c c) (*.f64 x x)))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 (/.f64 (/.f64 1 (*.f64 c c)) x) (*.f64 x (*.f64 s s)))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))) (fma.f64 (*.f64 (/.f64 x c) x) (/.f64 2/3 (*.f64 c (*.f64 s s))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s))))))
(-.f64 (+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (+.f64 (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))))
(-.f64 (fma.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (*.f64 c c) (*.f64 s s))) (+.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))) (*.f64 2/3 (/.f64 (/.f64 (*.f64 x x) (*.f64 s s)) (*.f64 c c))))) (/.f64 2 (*.f64 (*.f64 c c) (*.f64 s s))))
(+.f64 (fma.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 s (*.f64 s (*.f64 c c)))) (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 (/.f64 (/.f64 1 s) s) (*.f64 (*.f64 c c) (*.f64 x x))))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 (/.f64 (/.f64 1 (*.f64 c c)) x) (*.f64 x (*.f64 s s)))) (fma.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 s (*.f64 s (*.f64 c c)))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c))))))
(+.f64 (+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))) (*.f64 (/.f64 x (*.f64 (/.f64 (*.f64 c c) x) s)) (+.f64 (/.f64 2/3 s) (/.f64 (*.f64 x x) (/.f64 s -4/45))))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))
(*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))
(*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x)))
(*.f64 s (*.f64 s (*.f64 (*.f64 c c) (*.f64 x x))))
(*.f64 s (*.f64 (*.f64 c x) (*.f64 x (*.f64 s c))))
(*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s))))

prune224.0ms (3.5%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New11311124
Fresh101
Picked101
Done000
Total11511126
Error
0.0b
Counts
126 → 11
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))
18.1b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
7.2b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
16.4b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2) (pow.f64 (*.f64 c (*.f64 s x)) 4))))
1.5b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
11.2b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) x) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
1.4b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
32.1b
(*.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)))
1.6b
(-.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))
2.2b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2) 3))
5.1b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
Compiler

Compiled 2961 to 1334 computations (54.9% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (cos.f64 (+.f64 x x)) 2)
0.4b
(cbrt.f64 (cos.f64 (+.f64 x x)))
0.4b
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))
3.5b
(*.f64 c (*.f64 s x))

series19.0ms (0.3%)

Counts
4 → 48
Calls

18 calls:

TimeVariablePointExpression
7.0ms
x
@-inf
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))
2.0ms
x
@inf
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))
2.0ms
x
@inf
(cbrt.f64 (cos.f64 (+.f64 x x)))
2.0ms
x
@-inf
(cbrt.f64 (cos.f64 (+.f64 x x)))
1.0ms
x
@0
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))

rewrite49.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
505×prod-diff_binary64
199×expm1-udef_binary64
199×log1p-udef_binary64
160×fma-def_binary64
124×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01235
125035
2307935
Stop Event
node limit
Counts
4 → 86
Calls
Call 1
Inputs
(*.f64 c (*.f64 s x))
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))
(cbrt.f64 (cos.f64 (+.f64 x x)))
(pow.f64 (cos.f64 (+.f64 x x)) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (*.f64 c s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 c s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (*.f64 c s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 c s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (*.f64 c s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 s) x) c))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 c s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 c 3) (pow.f64 (*.f64 s x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 s x) 3) (pow.f64 c 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 c s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 c s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (*.f64 c s))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 c s))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (/.f64 0 0))) (pow.f64 (cos.f64 (/.f64 0 0)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 1/6) (*.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 1/6) (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)) 1/3) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (/.f64 0 0)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cos.f64 (/.f64 0 0)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2) (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 1/6) (pow.f64 (cos.f64 (/.f64 0 0)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cos.f64 (/.f64 0 0))) 1/3) (pow.f64 (sqrt.f64 (cos.f64 (/.f64 0 0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (/.f64 0 0)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (/.f64 0 0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (/.f64 0 0)) (cos.f64 (/.f64 0 0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 (/.f64 0 0)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)) (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (/.f64 0 0))) (*.f64 (sqrt.f64 (cos.f64 (/.f64 0 0))) (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (/.f64 0 0)) (sqrt.f64 (cos.f64 (/.f64 0 0)))) (sqrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (/.f64 0 0)) (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2)) (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)) 1) (pow.f64 (cbrt.f64 (cos.f64 (/.f64 0 0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 0 0)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4)) (cbrt.f64 (cos.f64 (/.f64 0 0)))) (cbrt.f64 (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (*.f64 2 (/.f64 0 0))) (cos.f64 (-.f64 (/.f64 0 0) (/.f64 0 0)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cos.f64 (/.f64 0 0)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cos.f64 (/.f64 0 0)) 2)))))))

simplify35.0ms (0.6%)

Algorithm
egg-herbie
Rules
644×fma-def_binary64
587×associate-*l*_binary64
449×unswap-sqr_binary64
434×associate-*r*_binary64
406×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
062464
1153458
2323450
3920446
43379446
Stop Event
node limit
Counts
134 → 116
Calls
Call 1
Inputs
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
1
(+.f64 1 (*.f64 -4/3 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -64/405 (pow.f64 x 6)) (*.f64 -4/3 (pow.f64 x 2))))
(+.f64 (*.f64 -256/1701 (pow.f64 x 8)) (+.f64 1 (+.f64 (*.f64 -64/405 (pow.f64 x 6)) (*.f64 -4/3 (pow.f64 x 2)))))
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
1
(+.f64 1 (*.f64 -2/3 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -2/9 (pow.f64 x 4)) (*.f64 -2/3 (pow.f64 x 2))))
(+.f64 1 (+.f64 (*.f64 -2/9 (pow.f64 x 4)) (+.f64 (*.f64 -2/3 (pow.f64 x 2)) (*.f64 -92/405 (pow.f64 x 6)))))
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
1
(+.f64 1 (*.f64 -4 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 16/3 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 16/3 (pow.f64 x 4)) (*.f64 -128/45 (pow.f64 x 6)))))
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
Outputs
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 x s))
(*.f64 x (*.f64 s c))
1
(+.f64 1 (*.f64 -4/3 (pow.f64 x 2)))
(+.f64 1 (*.f64 -4/3 (*.f64 x x)))
(fma.f64 -4/3 (*.f64 x x) 1)
(fma.f64 x (*.f64 x -4/3) 1)
(+.f64 1 (+.f64 (*.f64 -64/405 (pow.f64 x 6)) (*.f64 -4/3 (pow.f64 x 2))))
(+.f64 1 (fma.f64 -64/405 (pow.f64 x 6) (*.f64 -4/3 (*.f64 x x))))
(+.f64 (*.f64 -64/405 (pow.f64 x 6)) (fma.f64 -4/3 (*.f64 x x) 1))
(fma.f64 x (*.f64 x -4/3) (fma.f64 -64/405 (pow.f64 x 6) 1))
(+.f64 (*.f64 -256/1701 (pow.f64 x 8)) (+.f64 1 (+.f64 (*.f64 -64/405 (pow.f64 x 6)) (*.f64 -4/3 (pow.f64 x 2)))))
(fma.f64 -256/1701 (pow.f64 x 8) (+.f64 1 (fma.f64 -64/405 (pow.f64 x 6) (*.f64 -4/3 (*.f64 x x)))))
(+.f64 (fma.f64 -4/3 (*.f64 x x) (*.f64 -64/405 (pow.f64 x 6))) (fma.f64 -256/1701 (pow.f64 x 8) 1))
(fma.f64 -256/1701 (pow.f64 x 8) (fma.f64 x (*.f64 x -4/3) (fma.f64 -64/405 (pow.f64 x 6) 1)))
(fma.f64 x (*.f64 x -4/3) (fma.f64 -64/405 (pow.f64 x 6) (fma.f64 -256/1701 (pow.f64 x 8) 1)))
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
(pow.f64 (pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x 2)) 2))
(cbrt.f64 (pow.f64 (cos.f64 (*.f64 x -2)) 2))
1
(+.f64 1 (*.f64 -2/3 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) -2/3))
(fma.f64 (*.f64 x x) -2/3 1)
(fma.f64 x (*.f64 x -2/3) 1)
(+.f64 1 (+.f64 (*.f64 -2/9 (pow.f64 x 4)) (*.f64 -2/3 (pow.f64 x 2))))
(+.f64 1 (fma.f64 -2/9 (pow.f64 x 4) (*.f64 (*.f64 x x) -2/3)))
(+.f64 1 (fma.f64 -2/9 (pow.f64 x 4) (*.f64 x (*.f64 x -2/3))))
(fma.f64 x (*.f64 x -2/3) (fma.f64 -2/9 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -2/9 (pow.f64 x 4)) (+.f64 (*.f64 -2/3 (pow.f64 x 2)) (*.f64 -92/405 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -2/9 (pow.f64 x 4) (fma.f64 -2/3 (*.f64 x x) (*.f64 (pow.f64 x 6) -92/405))))
(+.f64 1 (fma.f64 -2/9 (pow.f64 x 4) (fma.f64 (*.f64 x x) -2/3 (*.f64 (pow.f64 x 6) -92/405))))
(+.f64 1 (fma.f64 (pow.f64 x 6) -92/405 (fma.f64 x (*.f64 x -2/3) (*.f64 -2/9 (pow.f64 x 4)))))
(fma.f64 x (*.f64 x -2/3) (fma.f64 (pow.f64 x 6) -92/405 (fma.f64 -2/9 (pow.f64 x 4) 1)))
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (*.f64 2 x)) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 1/3)
(cbrt.f64 (cos.f64 (*.f64 x 2)))
(cbrt.f64 (cos.f64 (*.f64 x -2)))
1
(+.f64 1 (*.f64 -4 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) -4))
(fma.f64 (*.f64 x x) -4 1)
(fma.f64 x (*.f64 x -4) 1)
(+.f64 1 (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 16/3 (pow.f64 x 4))))
(+.f64 1 (fma.f64 -4 (*.f64 x x) (*.f64 (pow.f64 x 4) 16/3)))
(+.f64 1 (fma.f64 (pow.f64 x 4) 16/3 (*.f64 x (*.f64 x -4))))
(fma.f64 (pow.f64 x 4) 16/3 (fma.f64 x (*.f64 x -4) 1))
(fma.f64 x (*.f64 x -4) (fma.f64 (pow.f64 x 4) 16/3 1))
(+.f64 1 (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 16/3 (pow.f64 x 4)) (*.f64 -128/45 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -4 (*.f64 x x) (fma.f64 16/3 (pow.f64 x 4) (*.f64 (pow.f64 x 6) -128/45))))
(+.f64 1 (fma.f64 (*.f64 x x) -4 (fma.f64 (pow.f64 x 4) 16/3 (*.f64 (pow.f64 x 6) -128/45))))
(+.f64 1 (fma.f64 x (*.f64 x -4) (fma.f64 (pow.f64 x 6) -128/45 (*.f64 (pow.f64 x 4) 16/3))))
(fma.f64 x (*.f64 x -4) (fma.f64 (pow.f64 x 6) -128/45 (fma.f64 (pow.f64 x 4) 16/3 1)))
(fma.f64 x (*.f64 x -4) (fma.f64 (pow.f64 x 4) 16/3 (fma.f64 (pow.f64 x 6) -128/45 1)))
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (*.f64 2 x)) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)
(pow.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) 2)
(pow.f64 (cos.f64 (*.f64 x 2)) 2)
(pow.f64 (cos.f64 (*.f64 x -2)) 2)

prune138.0ms (2.2%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1151116
Fresh01010
Picked011
Done000
Total11512127
Error
0.0b
Counts
127 → 12
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))
18.1b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
7.2b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
16.4b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2) (pow.f64 (*.f64 c (*.f64 s x)) 4))))
2.4b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 s (*.f64 c x)) -2)))
5.1b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
1.5b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
11.2b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) x) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
1.4b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
32.1b
(*.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 4))) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)))
1.6b
(-.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))
2.2b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2) 3))
Compiler

Compiled 3489 to 2047 computations (41.3% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
0.7b
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))
0.8b
(/.f64 1 (*.f64 c (*.f64 s x)))
3.5b
(*.f64 c (*.f64 s x))

series27.0ms (0.4%)

Counts
3 → 88
Calls

27 calls:

TimeVariablePointExpression
10.0ms
c
@0
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))
1.0ms
x
@-inf
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))
1.0ms
x
@-inf
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
1.0ms
c
@inf
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))
1.0ms
x
@inf
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))

rewrite66.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
541×prod-diff_binary64
221×log1p-udef_binary64
135×add-sqr-sqrt_binary64
131×*-un-lft-identity_binary64
131×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01249
126443
2390543
Stop Event
node limit
Counts
3 → 138
Calls
Call 1
Inputs
(/.f64 1 (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (*.f64 c (*.f64 s x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2)) (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c (*.f64 s x)) -1/2) (pow.f64 (*.f64 c (*.f64 s x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 c) (pow.f64 (*.f64 s x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 c) (/.f64 1 (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 s x) -1) (/.f64 1 c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2) -1) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 c (*.f64 s x))) -1) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 s x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c s) -1) (pow.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c (*.f64 s x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (*.f64 c (*.f64 s x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c (*.f64 s x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 c (*.f64 s x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (*.f64 c (*.f64 s x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (*.f64 c (*.f64 s x))) (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 c (*.f64 s x))) (cos.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x x)) (/.f64 1 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 2) (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 2) (*.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (/.f64 1 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (*.f64 (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c (*.f64 s x)) -1/2) (/.f64 (cos.f64 (+.f64 x x)) (sqrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (/.f64 1 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 (+.f64 x x))) (/.f64 1 (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 c) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) 1) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 1) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) c) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) c) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 s x)) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 s x)) (/.f64 (cos.f64 (+.f64 x x)) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 s x)) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)) (/.f64 (cos.f64 (+.f64 x x)) (cbrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)) (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (cbrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (sqrt.f64 (*.f64 c (*.f64 s x)))) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (sqrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 c s)) (/.f64 (cos.f64 (+.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 c s)) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c s)) (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 x x)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2))) (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -1/2)) (pow.f64 (*.f64 c (*.f64 s x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x x)) 3) (pow.f64 (*.f64 c (*.f64 s x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 x x)) 3) (pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (*.f64 c (*.f64 s x)) (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x))) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 c (*.f64 s x)) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (*.f64 c (*.f64 s x))) (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 x x)) (/.f64 (*.f64 c (*.f64 s x)) (/.f64 1 (*.f64 c (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 x x)) (/.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 c (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) 2) (/.f64 (*.f64 c (*.f64 s x)) (cbrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (/.f64 (*.f64 c (*.f64 s x)) (sqrt.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x))) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (+.f64 x x))) (neg.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (+.f64 x x))) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (+.f64 x x))) (*.f64 (*.f64 c (*.f64 s x)) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (*.f64 (*.f64 c (*.f64 s x)) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 c) (*.f64 (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x))) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (*.f64 (*.f64 s x) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 c) 1) (*.f64 (*.f64 s x) (/.f64 c (/.f64 (cos.f64 (+.f64 x x)) (*.f64 s x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 c) (cos.f64 (+.f64 x x))) (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 c) (neg.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 s x) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (cos.f64 (+.f64 x x)) c)) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 c) (/.f64 (cos.f64 (+.f64 x x)) c)) (pow.f64 (*.f64 s x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 x x))) 1) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) 1) (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 x x)) -1) (*.f64 (*.f64 c (*.f64 s x)) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 x x))) -1) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) -1) (*.f64 (*.f64 s x) (*.f64 (*.f64 s x) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 x x))) (/.f64 1 c)) (*.f64 (*.f64 (*.f64 s x) (neg.f64 c)) (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 c)) (pow.f64 (*.f64 s x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 s x)) c)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) c) (*.f64 s x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (sqrt.f64 (*.f64 c (*.f64 s x)))) (sqrt.f64 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 1) (*.f64 c (*.f64 s x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 2)) (cbrt.f64 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 c s)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (*.f64 (*.f64 s x) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 c) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x)))) (*.f64 s x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 x x))) (/.f64 1 (*.f64 c (*.f64 s x)))) (*.f64 (*.f64 s x) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 c (*.f64 s x)))) (*.f64 s x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (*.f64 c (*.f64 s x))) (neg.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 s x) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (*.f64 c (*.f64 s x))) (/.f64 (cos.f64 (+.f64 x x)) c)) (*.f64 s x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) -1) (*.f64 (*.f64 s x) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 c)) (*.f64 s x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (*.f64 c (*.f64 s x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 3) (pow.f64 (*.f64 c (*.f64 s x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 3) (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) 3) (pow.f64 (/.f64 1 (*.f64 c (*.f64 s x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))

simplify57.0ms (0.9%)

Algorithm
egg-herbie
Rules
941×fma-def_binary64
794×associate-*l/_binary64
368×unswap-sqr_binary64
309×associate-/r*_binary64
259×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0691699
12021697
25681695
323911690
Stop Event
node limit
Counts
226 → 163
Calls
Call 1
Inputs
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 c (*.f64 s x)))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (/.f64 1 (*.f64 s (*.f64 c x))))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c))) (/.f64 1 (*.f64 s (*.f64 c x)))))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c))) (+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 c s))) (/.f64 1 (*.f64 s (*.f64 c x))))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(-.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 c 2) (pow.f64 s 2))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
Outputs
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 c (*.f64 s x)))
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 c) (*.f64 s x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (/.f64 1 (*.f64 s (*.f64 c x))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (/.f64 1 (*.f64 s (*.f64 c x))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (/.f64 (/.f64 1 c) (*.f64 s x)))
(fma.f64 (/.f64 x s) (/.f64 -2 c) (/.f64 (/.f64 (/.f64 1 x) s) c))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c))) (/.f64 1 (*.f64 s (*.f64 c x)))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (/.f64 1 (*.f64 s (*.f64 c x)))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (/.f64 (/.f64 1 c) (*.f64 s x))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (fma.f64 2/3 (/.f64 (/.f64 (pow.f64 x 3) s) c) (/.f64 (/.f64 (/.f64 1 x) s) c)))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 c s))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c))) (+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 c s))) (/.f64 1 (*.f64 s (*.f64 c x))))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (fma.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c)) (/.f64 1 (*.f64 s (*.f64 c x))))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (fma.f64 -4/45 (/.f64 (/.f64 (pow.f64 x 5) c) s) (/.f64 (/.f64 1 c) (*.f64 s x)))))
(fma.f64 2/3 (/.f64 (/.f64 (pow.f64 x 3) s) c) (fma.f64 -4/45 (/.f64 (/.f64 (pow.f64 x 5) c) s) (fma.f64 (/.f64 x s) (/.f64 -2 c) (/.f64 (/.f64 (/.f64 1 x) s) c))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 c x))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (/.f64 1 (*.f64 s s)) (*.f64 (*.f64 c x) (*.f64 c x)))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c x) (*.f64 s (*.f64 c x)))))
(-.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(-.f64 (/.f64 1 (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x)))) (/.f64 2 (*.f64 (*.f64 s s) (*.f64 c c))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (/.f64 (/.f64 1 (*.f64 s s)) (*.f64 (*.f64 c x) (*.f64 c x))) (/.f64 (/.f64 -2 (*.f64 s s)) (*.f64 c c)))
(+.f64 (/.f64 1 (*.f64 s (*.f64 (*.f64 c x) (*.f64 s (*.f64 c x))))) (/.f64 (/.f64 -2 c) (*.f64 c (*.f64 s s))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 c 2) (pow.f64 s 2))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(+.f64 (/.f64 1 (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x)))) (-.f64 (*.f64 2/3 (/.f64 (*.f64 x x) (*.f64 (*.f64 s s) (*.f64 c c)))) (/.f64 2 (*.f64 (*.f64 s s) (*.f64 c c)))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))) (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 s s)) (/.f64 x (*.f64 c c))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c))))))
(+.f64 (/.f64 (/.f64 1 (*.f64 s s)) (*.f64 (*.f64 c x) (*.f64 c x))) (fma.f64 2/3 (*.f64 (/.f64 (/.f64 x s) c) (/.f64 (/.f64 x s) c)) (/.f64 (/.f64 -2 (*.f64 s s)) (*.f64 c c))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 (*.f64 c x) (*.f64 s (*.f64 c x))))) (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 s s)) (/.f64 x (*.f64 c c))) (/.f64 (/.f64 -2 c) (*.f64 c (*.f64 s s)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2)))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))) (*.f64 2 (/.f64 1 (*.f64 (pow.f64 s 2) (pow.f64 c 2)))))
(+.f64 (/.f64 1 (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x)))) (-.f64 (fma.f64 2/3 (/.f64 (*.f64 x x) (*.f64 (*.f64 s s) (*.f64 c c))) (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 (*.f64 s s) (*.f64 c c))))) (/.f64 2 (*.f64 (*.f64 s s) (*.f64 c c)))))
(+.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 s s)) (/.f64 x (*.f64 c c))) (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))) (-.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 s (*.f64 s (*.f64 c c))))) (/.f64 2 (*.f64 s (*.f64 s (*.f64 c c))))))
(+.f64 (fma.f64 2/3 (*.f64 (/.f64 (/.f64 x s) c) (/.f64 (/.f64 x s) c)) (/.f64 (/.f64 1 (*.f64 s s)) (*.f64 (*.f64 c x) (*.f64 c x)))) (fma.f64 -4/45 (/.f64 (pow.f64 x 4) (*.f64 c (*.f64 c (*.f64 s s)))) (/.f64 (/.f64 -2 (*.f64 s s)) (*.f64 c c))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 (*.f64 c x) (*.f64 s (*.f64 c x))))) (+.f64 (*.f64 (*.f64 (/.f64 x (*.f64 s c)) (/.f64 x c)) (+.f64 (/.f64 2/3 s) (/.f64 (*.f64 x -4/45) (/.f64 s x)))) (/.f64 (/.f64 -2 c) (*.f64 c (*.f64 s s)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s s) (*.f64 (*.f64 c c) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 s (*.f64 (*.f64 c x) (*.f64 c x)))))
(/.f64 (/.f64 (/.f64 (cos.f64 (*.f64 x 2)) s) (*.f64 s (*.f64 x x))) (*.f64 c c))

prune520.0ms (8.2%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1925197
Fresh4610
Picked101
Done011
Total19712209
Error
0.0b
Counts
209 → 12
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))
18.1b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
3.3b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 s (*.f64 c x))))
1.3b
(/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 c (*.f64 s x)))
3.9b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 (pow.f64 (*.f64 c s) -1) (pow.f64 x -1)))
5.1b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
1.5b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
11.2b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) x) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
1.5b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2))))
1.3b
(*.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
7.2b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
1.6b
(-.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))
Compiler

Compiled 4782 to 1598 computations (66.6% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 1 (*.f64 s x))
0.8b
(/.f64 1 (*.f64 c (*.f64 s x)))
3.4b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
3.5b
(*.f64 c (*.f64 s x))

series8.0ms (0.1%)

Counts
2 → 36
Calls

15 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
1.0ms
x
@-inf
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
1.0ms
c
@inf
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
1.0ms
x
@inf
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
0.0ms
s
@0
(/.f64 1 (*.f64 s x))

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
532×prod-diff_binary64
207×log1p-udef_binary64
127×add-sqr-sqrt_binary64
123×*-un-lft-identity_binary64
123×pow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
124522
2361622
Stop Event
node limit
Counts
2 → 87
Calls
Call 1
Inputs
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x)))
(/.f64 1 (*.f64 s x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (/.f64 0 0)) (/.f64 (*.f64 x s) (pow.f64 c -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (/.f64 0 0)) (/.f64 (*.f64 (*.f64 c x) s) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (/.f64 0 0)) (/.f64 c (/.f64 (pow.f64 s -1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) (*.f64 x s))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 c (cos.f64 (/.f64 0 0))) (*.f64 x s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (*.f64 x s) (/.f64 c (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x s) (/.f64 (cos.f64 (/.f64 0 0)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (*.f64 c x) s) (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 c (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 s -1) x) (/.f64 c (cos.f64 (/.f64 0 0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) c)) 2) (/.f64 (*.f64 x s) (cbrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) c)) (/.f64 (*.f64 x s) (sqrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 c (cos.f64 (/.f64 0 0))) (*.f64 x (neg.f64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (*.f64 x (neg.f64 s)) (/.f64 c (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (/.f64 0 0))) (neg.f64 (*.f64 (*.f64 c x) s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (/.f64 0 0))) (*.f64 (*.f64 x (neg.f64 s)) c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (/.f64 0 0))) (*.f64 (*.f64 x s) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 s -1) (*.f64 (/.f64 c (cos.f64 (/.f64 0 0))) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s)) c)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (cos.f64 (/.f64 0 0)) c)) (*.f64 x (neg.f64 s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s))) (neg.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (/.f64 0 0))) 1) (*.f64 (neg.f64 c) (*.f64 x s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 s -1) 1) (*.f64 x (/.f64 c (cos.f64 (/.f64 0 0)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (/.f64 0 0)) -1) (*.f64 c (*.f64 x (neg.f64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (/.f64 0 0))) -1) (*.f64 (neg.f64 c) (*.f64 x (neg.f64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (/.f64 0 0)) (pow.f64 s -1)) (*.f64 c x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (/.f64 0 0))) (pow.f64 s -1)) (*.f64 (neg.f64 c) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 s -1) (cos.f64 (/.f64 0 0))) (*.f64 x c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 (cos.f64 (/.f64 0 0)))) (*.f64 (*.f64 x (neg.f64 s)) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 s -1) (neg.f64 (cos.f64 (/.f64 0 0)))) (*.f64 x (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) s) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) x) s)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) (sqrt.f64 (*.f64 x s))) (sqrt.f64 (*.f64 x s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) 1) (*.f64 x s))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) (pow.f64 (cbrt.f64 (*.f64 x s)) 2)) (cbrt.f64 (*.f64 x s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s)) 1) c)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 x s)) (sqrt.f64 c)) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (/.f64 0 0))) (/.f64 (pow.f64 s -1) x)) (neg.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (cos.f64 (/.f64 0 0)) c)) (*.f64 x (neg.f64 s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 s -1) (/.f64 (cos.f64 (/.f64 0 0)) c)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) -1) (*.f64 x (neg.f64 s)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) (pow.f64 s -1)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 s -1) x) (neg.f64 (cos.f64 (/.f64 0 0)))) (neg.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) 3) (pow.f64 (*.f64 x s) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) 3) (pow.f64 (/.f64 (pow.f64 s -1) x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 s -1) x) 3) (pow.f64 (/.f64 (cos.f64 (/.f64 0 0)) c) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 (/.f64 0 0)) (*.f64 (*.f64 c x) s))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 s -1) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 s -1) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 s -1) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 s -1) x)) (cbrt.f64 (pow.f64 (*.f64 x s) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 x s) -2)) (cbrt.f64 (/.f64 (pow.f64 s -1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x s) -1/2) (pow.f64 (*.f64 x s) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 x (neg.f64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 s -1) (pow.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 s -1) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1) (pow.f64 s -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 x s)) 2) -1) (pow.f64 (cbrt.f64 (*.f64 x s)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 x s)) -1) (pow.f64 (sqrt.f64 (*.f64 x s)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x s) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 s -1) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 s -1) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 s -1) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x s) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x s) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 s -1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 s -1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 s -1) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 s -1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (*.f64 x s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x s)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 x s))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 s -1) x)))))))

simplify31.0ms (0.5%)

Algorithm
egg-herbie
Rules
738×fma-def_binary64
553×times-frac_binary64
441×associate-/r/_binary64
406×associate-/r*_binary64
396×associate-/l/_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
039589
1105589
2272589
3657589
42015583
Stop Event
node limit
Counts
123 → 99
Calls
Call 1
Inputs
(/.f64 1 (*.f64 s (*.f64 c x)))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (/.f64 1 (*.f64 c (*.f64 s x))))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 c s))) (/.f64 1 (*.f64 c (*.f64 s x)))))
(+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c))) (+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 c s))) (/.f64 1 (*.f64 c (*.f64 s x))))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
Outputs
(/.f64 1 (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 1 s) (*.f64 c x))
(/.f64 (/.f64 (/.f64 1 x) s) c)
(/.f64 1 (*.f64 c (*.f64 s x)))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (/.f64 1 (*.f64 c (*.f64 s x))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (/.f64 1 (*.f64 s (*.f64 c x))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (/.f64 (/.f64 1 s) (*.f64 c x)))
(fma.f64 (/.f64 x s) (/.f64 -2 c) (/.f64 (/.f64 (/.f64 1 x) s) c))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (/.f64 1 (*.f64 s (*.f64 c x))))
(fma.f64 x (/.f64 (/.f64 -2 s) c) (/.f64 1 (*.f64 c (*.f64 s x))))
(+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 c s))) (/.f64 1 (*.f64 c (*.f64 s x)))))
(fma.f64 -2 (/.f64 x (*.f64 s c)) (fma.f64 2/3 (/.f64 (/.f64 (pow.f64 x 3) c) s) (/.f64 1 (*.f64 s (*.f64 c x)))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (/.f64 (/.f64 1 s) (*.f64 c x))))
(fma.f64 (/.f64 2/3 s) (/.f64 (pow.f64 x 3) c) (fma.f64 (/.f64 x s) (/.f64 -2 c) (/.f64 (/.f64 (/.f64 1 x) s) c)))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (/.f64 1 (*.f64 s (*.f64 c x)))))
(fma.f64 (/.f64 x c) (fma.f64 2/3 (*.f64 x (/.f64 x s)) (/.f64 -2 s)) (/.f64 1 (*.f64 c (*.f64 s x))))
(+.f64 (*.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c))) (+.f64 (*.f64 -2 (/.f64 x (*.f64 s c))) (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 c s))) (/.f64 1 (*.f64 c (*.f64 s x))))))
(fma.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c)) (fma.f64 -2 (/.f64 x (*.f64 s c)) (fma.f64 2/3 (/.f64 (/.f64 (pow.f64 x 3) c) s) (/.f64 1 (*.f64 s (*.f64 c x))))))
(fma.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c)) (fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (/.f64 (/.f64 1 s) (*.f64 c x)))))
(fma.f64 -4/45 (/.f64 (pow.f64 x 5) (*.f64 s c)) (fma.f64 (/.f64 2/3 s) (/.f64 (pow.f64 x 3) c) (fma.f64 (/.f64 x s) (/.f64 -2 c) (/.f64 (/.f64 (/.f64 1 x) s) c))))
(fma.f64 -2 (/.f64 (/.f64 x s) c) (fma.f64 2/3 (/.f64 (pow.f64 x 3) (*.f64 s c)) (fma.f64 -4/45 (/.f64 (/.f64 (pow.f64 x 5) s) c) (/.f64 1 (*.f64 s (*.f64 c x))))))
(fma.f64 (/.f64 x c) (fma.f64 2/3 (*.f64 x (/.f64 x s)) (/.f64 -2 s)) (fma.f64 (pow.f64 x 5) (/.f64 (/.f64 -4/45 s) c) (/.f64 1 (*.f64 c (*.f64 s x)))))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (neg.f64 (*.f64 -2 x))) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 s (*.f64 c x)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 c x)))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) c) (*.f64 s x))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 s x)))

prune206.0ms (3.2%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New1441145
Fresh1910
Picked011
Done011
Total14512157
Error
0.0b
Counts
157 → 12
Alt Table
StatusErrorProgram
11.2b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) x) (/.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
1.3b
(*.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x))) (/.f64 (/.f64 (/.f64 1 x) s) c))
1.4b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (*.f64 c (*.f64 s x)) -2)))
18.1b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 c x) (*.f64 x (*.f64 s s)))))
3.9b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 (pow.f64 (*.f64 c s) -1) (pow.f64 x -1)))
5.1b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
1.5b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
1.5b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 (/.f64 1 (cbrt.f64 (*.f64 c (*.f64 s x)))) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) -2))))
1.3b
(*.f64 (*.f64 (/.f64 (cos.f64 (+.f64 x x)) c) (/.f64 1 (*.f64 s x))) (/.f64 1 (*.f64 c (*.f64 s x))))
7.2b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
1.6b
(-.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))
1.3b
(/.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (*.f64 c (*.f64 s x)))
Compiler

Compiled 3531 to 1647 computations (53.4% saved)

regimes275.0ms (4.3%)

Accuracy

Total -24.0b remaining (-823.1%)

Threshold costs -24.0b (-823.1%)

Counts
75 → 1
Compiler

Compiled 1413 to 564 computations (60.1% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01427
11927
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 (/.f64 (/.f64 1 x) s) c))
Outputs
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 s x))) (/.f64 (/.f64 (/.f64 1 x) s) c))
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c (*.f64 x s))) (/.f64 (/.f64 (/.f64 1 x) s) c))

end142.0ms (2.2%)

Stop Event
fuel
Compiler

Compiled 319 to 143 computations (55.2% saved)

Profiling

Loading profile data...