Details

Time bar (total: 6.3s)

analyze1.3s (19.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.7s (42.9%)

Results
1.0s6320×body128valid
674.0ms1011×body1024valid
324.0ms1886×body128invalid
278.0ms613×body512valid
138.0ms206×body1024invalid
101.0ms230×body512invalid
97.0ms308×body256valid
48.0ms159×body256invalid
5.0msbody2048valid
2.0msbody2048invalid
Compiler

Compiled 40 to 30 computations (25% saved)

preprocess95.0ms (1.5%)

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)

simplify66.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
2.9b
Counts
3 → 2
Alt Table
StatusErrorProgram
25.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
2.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
Compiler

Compiled 111 to 69 computations (37.8% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series29.0ms (0.5%)

Counts
4 → 112
Calls

30 calls:

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

rewrite67.0ms (1.1%)

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
01141
123641
2321641
Stop Event
node limit
Counts
4 → 136
Calls
Call 1
Inputs
(*.f64 x (*.f64 c s))
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
(cos.f64 (*.f64 2 x))
(/.f64 (cos.f64 (*.f64 2 x)) (*.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 expm1.f64 (log1p.f64 (*.f64 c (*.f64 s x))))))) (#(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 +.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 expm1.f64 (log1p.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(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 +.f64 (cos.f64 (+.f64 x x)) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x x)) (fma.f64 (neg.f64 (sqrt.f64 (pow.f64 (sin.f64 x) 2))) (sqrt.f64 (pow.f64 (sin.f64 x) 2)) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 1))) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1 (*.f64 (pow.f64 (sin.f64 x) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (cos.f64 x) (neg.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 1))) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1 (*.f64 (pow.f64 (sin.f64 x) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 1))) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1 (*.f64 (pow.f64 (sin.f64 x) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 1))) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1 (*.f64 (pow.f64 (sin.f64 x) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (cos.f64 x) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 x x)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 x x)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x x)))) (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x x)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x x))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (cbrt.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (sqrt.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 x) (sin.f64 x)) (-.f64 (cos.f64 x) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (cos.f64 x) 2) 3) (pow.f64 (pow.f64 (sin.f64 x) 2) 3)) (fma.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 x) 2) (fma.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (sin.f64 x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x x)) 1 (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x x)) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (cos.f64 x) 2) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2) (cbrt.f64 (cos.f64 (+.f64 x x))) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) (sqrt.f64 (cos.f64 (+.f64 x x))) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 x) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 x) (sin.f64 x)) (-.f64 (cos.f64 x) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x x))) 1))))))
((#(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))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(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))) (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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 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 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))))))

simplify51.0ms (0.8%)

Algorithm
egg-herbie
Rules
527×cancel-sign-sub-inv_binary64
480×fma-def_binary64
443×associate-/l/_binary64
344×unswap-sqr_binary64
253×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0501828
11451826
24311822
320211815
Stop Event
node limit
Counts
248 → 159
Calls
Call 1
Inputs
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s 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 (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)))
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (*.f64 2 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 4/45 (pow.f64 x 6)) (*.f64 2 (pow.f64 x 2))))
(/.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 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))) (/.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 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))) (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (*.f64 4/45 (/.f64 (pow.f64 x 4) (*.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))))
Outputs
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s x))
(*.f64 s (*.f64 c x))
(*.f64 c (*.f64 s 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 c (*.f64 s x))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
(*.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))
(*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))
(*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -2 (*.f64 x x)))
(-.f64 1 (*.f64 x (*.f64 x 2)))
(fma.f64 (*.f64 x x) -2 1)
(fma.f64 x (*.f64 x -2) 1)
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (*.f64 2 (pow.f64 x 2)))
(+.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (*.f64 -2 (*.f64 x x)))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (*.f64 x (*.f64 x 2)))
(fma.f64 (*.f64 x x) -2 (fma.f64 2/3 (pow.f64 x 4) 1))
(fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 2/3) -2) 1)
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 4/45 (pow.f64 x 6)) (*.f64 2 (pow.f64 x 2))))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (fma.f64 4/45 (pow.f64 x 6) (*.f64 2 (*.f64 x x))))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (fma.f64 4/45 (pow.f64 x 6) (*.f64 x (*.f64 x 2))))
(+.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (fma.f64 (*.f64 x x) -2 (*.f64 (pow.f64 x 6) -4/45)))
(fma.f64 (pow.f64 x 6) -4/45 (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 2/3) -2) 1))
(/.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 1 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 1 (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 1 (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(-.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 1 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c))) (/.f64 -2 (*.f64 (*.f64 (*.f64 s s) c) c)))
(+.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s)))))
(+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s)))))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))) (/.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 (fma.f64 2/3 (/.f64 (*.f64 x x) (*.f64 (*.f64 c c) (*.f64 s s))) (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))) (/.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 1 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))) (/.f64 -2 (*.f64 (*.f64 (*.f64 s s) c) c)))
(+.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x)))) (fma.f64 2/3 (*.f64 (/.f64 x c) (/.f64 x (*.f64 c (*.f64 s s)))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s))))))
(+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))) (fma.f64 2/3 (*.f64 (/.f64 x s) (/.f64 x (*.f64 c (*.f64 c s)))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s))))))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 (pow.f64 x 2) (*.f64 (pow.f64 s 2) (pow.f64 c 2)))) (/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 s 2)))) (*.f64 4/45 (/.f64 (pow.f64 x 4) (*.f64 (pow.f64 c 2) (pow.f64 s 2))))))
(-.f64 (fma.f64 2/3 (/.f64 (*.f64 x x) (*.f64 (*.f64 c c) (*.f64 s s))) (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 s s) (*.f64 x x))))) (+.f64 (/.f64 2 (*.f64 (*.f64 c c) (*.f64 s s))) (*.f64 4/45 (/.f64 (pow.f64 x 4) (*.f64 (*.f64 c c) (*.f64 s s))))))
(-.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 1 (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))) (fma.f64 4/45 (/.f64 (pow.f64 x 4) (*.f64 (*.f64 (*.f64 s s) c) c)) (/.f64 2 (*.f64 (*.f64 (*.f64 s s) c) c))))
(-.f64 (fma.f64 2/3 (*.f64 (/.f64 x c) (/.f64 x (*.f64 c (*.f64 s s)))) (/.f64 1 (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))) (fma.f64 4/45 (/.f64 (pow.f64 x 4) (*.f64 c (*.f64 c (*.f64 s s)))) (/.f64 2 (*.f64 c (*.f64 c (*.f64 s s))))))
(+.f64 (+.f64 (/.f64 1 (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x))))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s))))) (*.f64 (/.f64 x (*.f64 c (/.f64 s (/.f64 x s)))) (-.f64 (/.f64 2/3 c) (/.f64 (*.f64 (*.f64 x x) 4/45) 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 c c) (*.f64 (*.f64 s s) (*.f64 x x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
(/.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 (*.f64 x x) (*.f64 (*.f64 (*.f64 s s) c) c)))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 x (*.f64 c (*.f64 (*.f64 c (*.f64 s s)) x))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))

prune236.0ms (3.7%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New16714181
Fresh101
Picked101
Done000
Total16914183
Error
0.0b
Counts
183 → 14
Alt Table
StatusErrorProgram
3.0b
(/.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x x))))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
2.7b
(/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
22.8b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3)))
31.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
5.3b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
14.4b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
5.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
9.7b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
22.5b
(*.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))
3.8b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2))
3.5b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
19.0b
(/.f64 (pow.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
5.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
Compiler

Compiled 4728 to 1951 computations (58.7% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (cos.f64 x) 2)
0.3b
(pow.f64 (sin.f64 x) 2)
0.4b
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
6.6b
(*.f64 x (*.f64 c s))

series5.0ms (0.1%)

Counts
3 → 12
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
1.0ms
x
@inf
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
1.0ms
x
@0
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
0.0ms
x
@0
(pow.f64 (sin.f64 x) 2)
0.0ms
x
@0
(pow.f64 (cos.f64 x) 2)

rewrite45.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
781×pow1_binary64
725×log1p-expm1-u_binary64
725×expm1-log1p-u_binary64
87×add-sqr-sqrt_binary64
84×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0826
117518
2216218
Stop Event
node limit
Counts
3 → 88
Calls
Call 1
Inputs
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(pow.f64 (sin.f64 x) 2)
(pow.f64 (cos.f64 x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 2 x)) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) (pow.f64 (sin.f64 x) 2) (pow.f64 (sin.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 2 x)) (fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 x) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 2 x)) (fma.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 1 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 2 x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (pow.f64 (sin.f64 x) 4)) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 4) (neg.f64 (pow.f64 (sin.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 x) 4) (*.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) (pow.f64 (cos.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (*.f64 2 x))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 2 x))) 2) (cbrt.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 2 x))) (sqrt.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 x) 6) (pow.f64 (sin.f64 x) 6)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 x) (sin.f64 x)) (-.f64 (cos.f64 x) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (*.f64 2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 4)) (-.f64 (pow.f64 (cos.f64 x) 6) (pow.f64 (sin.f64 x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 6) (pow.f64 (sin.f64 x) 6)) (+.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 x) 6) (pow.f64 (sin.f64 x) 6))) (neg.f64 (+.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (*.f64 2 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (cos.f64 x) 4) 3) (pow.f64 (pow.f64 (sin.f64 x) 4) 3)) (+.f64 (*.f64 (pow.f64 (cos.f64 x) 4) (pow.f64 (cos.f64 x) 4)) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (sin.f64 x) 4)) (*.f64 (pow.f64 (cos.f64 x) 4) (pow.f64 (sin.f64 x) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 6) (pow.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) 3)) (+.f64 (pow.f64 (cos.f64 x) 4) (-.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 x) 4) (pow.f64 (cos.f64 x) 4)) (*.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (sin.f64 x) 4))) (+.f64 (pow.f64 (cos.f64 x) 4) (pow.f64 (sin.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 x) 4) (*.f64 (neg.f64 (pow.f64 (sin.f64 x) 2)) (neg.f64 (pow.f64 (sin.f64 x) 2)))) (-.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (*.f64 2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (*.f64 2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (*.f64 2 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 x) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 4)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (*.f64 2 x))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (*.f64 2 x))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2) (pow.f64 (sin.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 x) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (cbrt.f64 (pow.f64 (sin.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 4)) (pow.f64 (cbrt.f64 (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 x) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 x) (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 x x)) (cos.f64 (+.f64 x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 3) (pow.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2) 3)) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (sin.f64 x) 4)) (-.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2)) (*.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (sin.f64 x) 4)) (*.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2))) (-.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 x))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cos.f64 x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 x) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (pow.f64 (cos.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 4)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 x x)) (cos.f64 (-.f64 x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cos.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cos.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cos.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cos.f64 x))) 1))))))

simplify32.0ms (0.5%)

Algorithm
egg-herbie
Rules
649×associate-*l*_binary64
626×fma-def_binary64
489×cancel-sign-sub-inv_binary64
296×sub-neg_binary64
270×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
036159
1105155
2312149
31080147
44771147
Stop Event
node limit
Counts
100 → 109
Calls
Call 1
Inputs
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (*.f64 2 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 4/45 (pow.f64 x 6)) (*.f64 2 (pow.f64 x 2))))
(pow.f64 x 2)
(-.f64 (pow.f64 x 2) (*.f64 1/3 (pow.f64 x 4)))
(-.f64 (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)) (*.f64 1/3 (pow.f64 x 4)))
(-.f64 (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (pow.f64 x 4)) (*.f64 1/315 (pow.f64 x 8))))
1
(-.f64 1 (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 1/3 (pow.f64 x 4)) 1) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 1/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)))
Outputs
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -2 (*.f64 x x)))
(+.f64 1 (*.f64 (*.f64 x x) -2))
(fma.f64 (*.f64 x x) -2 1)
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (*.f64 2 (pow.f64 x 2)))
(+.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (*.f64 -2 (*.f64 x x)))
(+.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (*.f64 (*.f64 x x) -2))
(fma.f64 2/3 (pow.f64 x 4) (fma.f64 (*.f64 x x) -2 1))
(fma.f64 (*.f64 x x) (fma.f64 (*.f64 x x) 2/3 -2) 1)
(-.f64 (+.f64 (*.f64 2/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 4/45 (pow.f64 x 6)) (*.f64 2 (pow.f64 x 2))))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (fma.f64 4/45 (pow.f64 x 6) (*.f64 2 (*.f64 x x))))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) 1) (fma.f64 2 (*.f64 x x) (*.f64 4/45 (pow.f64 x 6))))
(-.f64 (fma.f64 2/3 (pow.f64 x 4) (fma.f64 (*.f64 x x) -2 1)) (*.f64 4/45 (pow.f64 x 6)))
(fma.f64 x (*.f64 x -2) (fma.f64 (pow.f64 x 6) -4/45 (fma.f64 2/3 (pow.f64 x 4) 1)))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (pow.f64 x 2) (*.f64 1/3 (pow.f64 x 4)))
(+.f64 (*.f64 x x) (*.f64 -1/3 (pow.f64 x 4)))
(fma.f64 x x (*.f64 (pow.f64 x 4) -1/3))
(-.f64 (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)) (*.f64 1/3 (pow.f64 x 4)))
(+.f64 (fma.f64 2/45 (pow.f64 x 6) (*.f64 x x)) (*.f64 -1/3 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 6) 2/45 (fma.f64 x x (*.f64 (pow.f64 x 4) -1/3)))
(fma.f64 (pow.f64 x 4) -1/3 (fma.f64 x x (*.f64 (pow.f64 x 6) 2/45)))
(fma.f64 x x (fma.f64 (pow.f64 x 4) -1/3 (*.f64 (pow.f64 x 6) 2/45)))
(-.f64 (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (pow.f64 x 4)) (*.f64 1/315 (pow.f64 x 8))))
(-.f64 (fma.f64 2/45 (pow.f64 x 6) (*.f64 x x)) (fma.f64 1/3 (pow.f64 x 4) (*.f64 1/315 (pow.f64 x 8))))
(-.f64 (fma.f64 (pow.f64 x 6) 2/45 (*.f64 x x)) (fma.f64 (pow.f64 x 4) 1/3 (*.f64 1/315 (pow.f64 x 8))))
(fma.f64 x x (fma.f64 (pow.f64 x 6) 2/45 (fma.f64 (pow.f64 x 4) -1/3 (*.f64 (pow.f64 x 8) -1/315))))
(fma.f64 (pow.f64 x 4) -1/3 (fma.f64 x x (fma.f64 (pow.f64 x 6) 2/45 (*.f64 (pow.f64 x 8) -1/315))))
1
(-.f64 1 (pow.f64 x 2))
(-.f64 1 (*.f64 x x))
(fma.f64 x (neg.f64 x) 1)
(-.f64 (+.f64 (*.f64 1/3 (pow.f64 x 4)) 1) (pow.f64 x 2))
(-.f64 (fma.f64 1/3 (pow.f64 x 4) 1) (*.f64 x x))
(-.f64 (fma.f64 (pow.f64 x 4) 1/3 1) (*.f64 x x))
(fma.f64 (pow.f64 x 4) 1/3 (fma.f64 x (neg.f64 x) 1))
(fma.f64 (pow.f64 x 4) 1/3 (-.f64 1 (*.f64 x x)))
(-.f64 (+.f64 (*.f64 1/3 (pow.f64 x 4)) 1) (+.f64 (*.f64 2/45 (pow.f64 x 6)) (pow.f64 x 2)))
(-.f64 (fma.f64 1/3 (pow.f64 x 4) 1) (fma.f64 2/45 (pow.f64 x 6) (*.f64 x x)))
(-.f64 (fma.f64 (pow.f64 x 4) 1/3 1) (fma.f64 (pow.f64 x 6) 2/45 (*.f64 x x)))
(-.f64 1 (fma.f64 (pow.f64 x 4) -1/3 (fma.f64 x x (*.f64 (pow.f64 x 6) 2/45))))
(-.f64 (fma.f64 (pow.f64 x 4) 1/3 1) (fma.f64 x x (*.f64 (pow.f64 x 6) 2/45)))

prune282.0ms (4.4%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New1521153
Fresh11213
Picked011
Done000
Total15314167
Error
0.0b
Counts
167 → 14
Alt Table
StatusErrorProgram
22.8b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3)))
31.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
2.9b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
5.3b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
14.4b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
5.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
9.7b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
2.7b
(/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
22.5b
(*.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))
3.8b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2))
3.5b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
19.0b
(/.f64 (pow.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
5.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
Compiler

Compiled 4490 to 1838 computations (59.1% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(cos.f64 (*.f64 2 x))
0.3b
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
0.6b
(expm1.f64 (cos.f64 (*.f64 2 x)))
6.6b
(*.f64 x (*.f64 c s))

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
(expm1.f64 (cos.f64 (*.f64 2 x)))
0.0ms
x
@inf
(expm1.f64 (cos.f64 (*.f64 2 x)))
0.0ms
x
@-inf
(expm1.f64 (cos.f64 (*.f64 2 x)))

rewrite32.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
572×pow1_binary64
527×add-log-exp_binary64
527×log1p-expm1-u_binary64
527×expm1-log1p-u_binary64
517×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify32.0ms (0.5%)

Algorithm
egg-herbie
Rules
788×distribute-rgt-neg-in_binary64
440×associate-*l*_binary64
430×fma-def_binary64
394×cancel-sign-sub-inv_binary64
324×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
030156
180148
2218146
3820137
43891137
Stop Event
node limit
Counts
30 → 27
Calls
Call 1
Inputs
(-.f64 (E.f64) 1)
(-.f64 (E.f64) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4))) (E.f64)) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4))) (E.f64)) (+.f64 1 (+.f64 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2))) (*.f64 124/45 (*.f64 (E.f64) (pow.f64 x 6))))))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
Outputs
(-.f64 (E.f64) 1)
(+.f64 (E.f64) -1)
(expm1.f64 1)
(-.f64 (E.f64) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2)))))
(-.f64 (E.f64) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (*.f64 x x)))))
(+.f64 (expm1.f64 1) (*.f64 -2 (*.f64 (E.f64) (*.f64 x x))))
(+.f64 (expm1.f64 1) (*.f64 (*.f64 x (*.f64 (E.f64) x)) -2))
(fma.f64 (E.f64) (*.f64 (*.f64 x x) -2) (expm1.f64 1))
(fma.f64 (E.f64) (*.f64 x (*.f64 x -2)) (expm1.f64 1))
(-.f64 (+.f64 (*.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4))) (E.f64)) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2)))))
(-.f64 (fma.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4)) (E.f64)) (+.f64 1 (*.f64 2 (*.f64 (E.f64) (*.f64 x x)))))
(-.f64 (fma.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4)) (E.f64)) (fma.f64 2 (*.f64 (E.f64) (*.f64 x x)) 1))
(+.f64 (fma.f64 (E.f64) (*.f64 8/3 (pow.f64 x 4)) (expm1.f64 1)) (*.f64 (*.f64 x (*.f64 (E.f64) x)) -2))
(+.f64 -1 (*.f64 (E.f64) (-.f64 (fma.f64 8/3 (pow.f64 x 4) 1) (*.f64 2 (*.f64 x x)))))
(+.f64 -1 (*.f64 (E.f64) (+.f64 (fma.f64 8/3 (pow.f64 x 4) 1) (*.f64 x (*.f64 x -2)))))
(-.f64 (+.f64 (*.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4))) (E.f64)) (+.f64 1 (+.f64 (*.f64 2 (*.f64 (E.f64) (pow.f64 x 2))) (*.f64 124/45 (*.f64 (E.f64) (pow.f64 x 6))))))
(-.f64 (-.f64 (fma.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4)) (E.f64)) 1) (fma.f64 2 (*.f64 (E.f64) (*.f64 x x)) (*.f64 124/45 (*.f64 (E.f64) (pow.f64 x 6)))))
(fma.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4)) (-.f64 (expm1.f64 1) (fma.f64 2 (*.f64 (E.f64) (*.f64 x x)) (*.f64 124/45 (*.f64 (E.f64) (pow.f64 x 6))))))
(-.f64 (fma.f64 (E.f64) (*.f64 8/3 (pow.f64 x 4)) (expm1.f64 1)) (*.f64 (E.f64) (+.f64 (*.f64 2 (*.f64 x x)) (*.f64 124/45 (pow.f64 x 6)))))
(-.f64 (expm1.f64 1) (*.f64 (E.f64) (-.f64 (fma.f64 2 (*.f64 x x) (*.f64 124/45 (pow.f64 x 6))) (*.f64 8/3 (pow.f64 x 4)))))
(+.f64 (expm1.f64 1) (*.f64 (E.f64) (-.f64 (*.f64 8/3 (pow.f64 x 4)) (fma.f64 2 (*.f64 x x) (*.f64 124/45 (pow.f64 x 6))))))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))

prune229.0ms (3.6%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1482150
Fresh4812
Picked101
Done011
Total15311164
Error
0.0b
Counts
164 → 11
Alt Table
StatusErrorProgram
22.8b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3)))
31.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
14.4b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
5.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
9.7b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
2.7b
(/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.8b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2))
3.5b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
19.0b
(/.f64 (pow.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.2b
(/.f64 (log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.6b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) (pow.f64 (*.f64 c (*.f64 s x)) 2))
Compiler

Compiled 4287 to 1953 computations (54.4% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(expm1.f64 (cos.f64 (*.f64 2 x)))
0.7b
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
0.8b
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)
6.6b
(*.f64 x (*.f64 c s))

series21.0ms (0.3%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
12.0ms
x
@0
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)
4.0ms
x
@inf
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)
2.0ms
x
@-inf
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)
2.0ms
x
@0
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
0.0ms
x
@inf
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))

rewrite43.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
724×pow1_binary64
678×add-log-exp_binary64
677×log1p-expm1-u_binary64
677×expm1-log1p-u_binary64
81×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0918
118918
2188218
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (cos.f64 (*.f64 2 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (cos.f64 (*.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) (sqrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) (*.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 2) 3) (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) 3) (pow.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) 1) (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 2)) (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6)) (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 3) 1) (+.f64 (*.f64 (exp.f64 (cos.f64 (*.f64 2 x))) (exp.f64 (cos.f64 (*.f64 2 x)))) (+.f64 1 (*.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (cos.f64 (*.f64 2 x))) (exp.f64 (cos.f64 (*.f64 2 x)))) 1) (+.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (cos.f64 (*.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) (pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) (pow.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 2) (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 1/3) (pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (cos.f64 (*.f64 2 x))) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))))))))

simplify38.0ms (0.6%)

Algorithm
egg-herbie
Rules
310×cancel-sign-sub-inv_binary64
283×times-frac_binary64
254×associate-/l*_binary64
240×associate-*r*_binary64
214×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01791187
16311018
22471871
Stop Event
node limit
Counts
67 → 61
Calls
Call 1
Inputs
(pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3)
(-.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3)))))
(-.f64 (+.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 4/9 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 16/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4))) (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 4))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))))))) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (+.f64 (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 8/9 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (-.f64 (exp.f64 1) 1))) (*.f64 4/9 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3)))))))
(-.f64 (+.f64 (*.f64 16/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 64/27 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)) (-.f64 (exp.f64 1) 1))) (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 4))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))) (+.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 32/27 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 6)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3))) (+.f64 (*.f64 4/9 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 16/27 (*.f64 (*.f64 (exp.f64 1) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3))) (+.f64 (*.f64 56/81 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 3) (pow.f64 x 6)) (pow.f64 (-.f64 (E.f64) 1) 2))) (+.f64 (*.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4))) (*.f64 64/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 5))) 1/3) (*.f64 (pow.f64 (E.f64) 3) (pow.f64 x 6))))))))))))) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (+.f64 (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 32/27 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 6)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 8/9 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (-.f64 (exp.f64 1) 1))) (+.f64 (*.f64 64/27 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))) (+.f64 (*.f64 4/9 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3))) (+.f64 (*.f64 40/27 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (*.f64 (E.f64) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 4) (pow.f64 (-.f64 (exp.f64 1) 1) 2))) 1/3))) (+.f64 (*.f64 248/135 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 6)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 16/27 (/.f64 (*.f64 (exp.f64 1) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (*.f64 (-.f64 (E.f64) 1) (-.f64 (exp.f64 1) 1)))) (*.f64 124/135 (*.f64 (E.f64) (pow.f64 x 6)))))))))))))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(pow.f64 (-.f64 (exp.f64 1) 1) 1/3)
(-.f64 (pow.f64 (-.f64 (exp.f64 1) 1) 1/3) (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))))
(-.f64 (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (pow.f64 (-.f64 (exp.f64 1) 1) 1/3)) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (*.f64 4/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4))))))
(-.f64 (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (+.f64 (*.f64 32/27 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)))) (+.f64 (pow.f64 (-.f64 (exp.f64 1) 1) 1/3) (*.f64 8/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3) (/.f64 (*.f64 (pow.f64 (E.f64) 3) (pow.f64 x 6)) (pow.f64 (-.f64 (exp.f64 1) 1) 2))))))) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (+.f64 (*.f64 4/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)))) (+.f64 (*.f64 16/27 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (*.f64 (E.f64) (pow.f64 x 6))) (-.f64 (exp.f64 1) 1)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 5)) 1/3))) (*.f64 124/135 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 6)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3)))))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
Outputs
(pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3)
(cbrt.f64 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2)))
(cbrt.f64 (pow.f64 (expm1.f64 1) 3))
(expm1.f64 1)
(-.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3)))))
(-.f64 (cbrt.f64 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2))) (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (*.f64 4/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1)))))))
(-.f64 (cbrt.f64 (pow.f64 (expm1.f64 1) 3)) (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (*.f64 4/3 (*.f64 (E.f64) (*.f64 x x)))))
(-.f64 (expm1.f64 1) (*.f64 (*.f64 (E.f64) (*.f64 x x)) 2))
(-.f64 (+.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 4/9 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 16/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4))) (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 4))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))))))) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (+.f64 (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 8/9 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (-.f64 (exp.f64 1) 1))) (*.f64 4/9 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3)))))))
(+.f64 (cbrt.f64 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2))) (-.f64 (fma.f64 4/9 (/.f64 (pow.f64 (E.f64) 2) (/.f64 (expm1.f64 1) (pow.f64 x 4))) (fma.f64 16/9 (*.f64 (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1))) (*.f64 (E.f64) (pow.f64 x 4))) (*.f64 8/9 (+.f64 (*.f64 (E.f64) (pow.f64 x 4)) (*.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2))))))))) (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (fma.f64 4/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1)))) (fma.f64 8/9 (/.f64 (pow.f64 (E.f64) 2) (/.f64 (expm1.f64 1) (pow.f64 x 4))) (*.f64 4/9 (*.f64 (pow.f64 (E.f64) 2) (*.f64 (pow.f64 x 4) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4)))))))))))
(+.f64 (cbrt.f64 (pow.f64 (expm1.f64 1) 3)) (-.f64 (fma.f64 4/9 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) (fma.f64 8/9 (fma.f64 (E.f64) (pow.f64 x 4) (*.f64 (*.f64 (exp.f64 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3))))) (*.f64 (*.f64 16/9 (E.f64)) (pow.f64 x 4)))) (+.f64 (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (*.f64 4/3 (*.f64 (E.f64) (*.f64 x x)))) (fma.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) 8/9 (*.f64 4/9 (*.f64 (pow.f64 x 4) (*.f64 (exp.f64 2) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))))))))
(+.f64 (expm1.f64 1) (-.f64 (fma.f64 4/9 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3))) (*.f64 (*.f64 (exp.f64 2) (pow.f64 x 4)) 8/9)) (*.f64 (*.f64 (E.f64) (pow.f64 x 4)) 8/3))) (+.f64 (*.f64 (*.f64 (E.f64) (*.f64 x x)) 2) (fma.f64 4/9 (*.f64 (pow.f64 x 4) (*.f64 (exp.f64 2) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (*.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) 8/9)))))
(-.f64 (+.f64 (*.f64 16/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 64/27 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)) (-.f64 (exp.f64 1) 1))) (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 4))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))) (+.f64 (pow.f64 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 2)) 1/3) (+.f64 (*.f64 32/27 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 6)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3))) (+.f64 (*.f64 4/9 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 16/27 (*.f64 (*.f64 (exp.f64 1) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3))) (+.f64 (*.f64 56/81 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 3) (pow.f64 x 6)) (pow.f64 (-.f64 (E.f64) 1) 2))) (+.f64 (*.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4))) (*.f64 64/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 5))) 1/3) (*.f64 (pow.f64 (E.f64) 3) (pow.f64 x 6))))))))))))) (+.f64 (*.f64 2/3 (*.f64 (E.f64) (pow.f64 x 2))) (+.f64 (*.f64 4/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 32/27 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 6)) (-.f64 (E.f64) 1))) (+.f64 (*.f64 8/9 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (-.f64 (exp.f64 1) 1))) (+.f64 (*.f64 64/27 (*.f64 (*.f64 (exp.f64 1) (*.f64 (E.f64) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 2) (-.f64 (exp.f64 1) 1))) 1/3))) (+.f64 (*.f64 4/9 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (pow.f64 x 4)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (pow.f64 (-.f64 (E.f64) 1) 4)) 1/3))) (+.f64 (*.f64 40/27 (*.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (*.f64 (E.f64) (pow.f64 x 6))) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (-.f64 (E.f64) 1) 4) (pow.f64 (-.f64 (exp.f64 1) 1) 2))) 1/3))) (+.f64 (*.f64 248/135 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 6)) (pow.f64 (/.f64 (-.f64 (exp.f64 1) 1) (-.f64 (E.f64) 1)) 1/3))) (+.f64 (*.f64 16/27 (/.f64 (*.f64 (exp.f64 1) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (*.f64 (-.f64 (E.f64) 1) (-.f64 (exp.f64 1) 1)))) (*.f64 124/135 (*.f64 (E.f64) (pow.f64 x 6)))))))))))))
(-.f64 (fma.f64 16/9 (*.f64 (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1))) (*.f64 (E.f64) (pow.f64 x 4))) (fma.f64 64/27 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)) (expm1.f64 1)) (fma.f64 8/9 (*.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2))))) (+.f64 (cbrt.f64 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2))) (fma.f64 32/27 (*.f64 (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (fma.f64 4/9 (/.f64 (pow.f64 (E.f64) 2) (/.f64 (expm1.f64 1) (pow.f64 x 4))) (fma.f64 16/27 (*.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (expm1.f64 1) 2) (pow.f64 (expm1.f64 1) 4))))) (fma.f64 56/81 (/.f64 (pow.f64 (E.f64) 3) (/.f64 (pow.f64 (expm1.f64 1) 2) (pow.f64 x 6))) (fma.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4)) (*.f64 64/81 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 5)))) (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3))))))))))))) (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (fma.f64 4/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1)))) (fma.f64 32/27 (/.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)) (expm1.f64 1)) (fma.f64 8/9 (/.f64 (pow.f64 (E.f64) 2) (/.f64 (expm1.f64 1) (pow.f64 x 4))) (fma.f64 64/27 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 2)))) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6))) (fma.f64 4/9 (*.f64 (pow.f64 (E.f64) 2) (*.f64 (pow.f64 x 4) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (fma.f64 40/27 (*.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (expm1.f64 1) 2) (pow.f64 (expm1.f64 1) 4))))) (fma.f64 248/135 (*.f64 (E.f64) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 (expm1.f64 1) (expm1.f64 1))))) (fma.f64 16/27 (/.f64 (pow.f64 (E.f64) 3) (/.f64 (pow.f64 (expm1.f64 1) 2) (pow.f64 x 6))) (*.f64 (*.f64 (E.f64) (pow.f64 x 6)) 124/135)))))))))))
(+.f64 (*.f64 (*.f64 16/9 (E.f64)) (pow.f64 x 4)) (-.f64 (fma.f64 64/27 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 6)) (+.f64 (fma.f64 32/27 (*.f64 (exp.f64 2) (*.f64 (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))) (pow.f64 x 6))) (fma.f64 4/9 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) (fma.f64 16/27 (*.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 6)))) (fma.f64 56/81 (*.f64 (/.f64 (pow.f64 (E.f64) 3) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6)) (fma.f64 8/9 (*.f64 (E.f64) (pow.f64 x 4)) (*.f64 (*.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 6)))) 64/81)))))) (fma.f64 8/9 (*.f64 (*.f64 (exp.f64 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3)))) (cbrt.f64 (pow.f64 (expm1.f64 1) 3))))) (+.f64 (fma.f64 2/3 (*.f64 (E.f64) (*.f64 x x)) (*.f64 4/3 (*.f64 (E.f64) (*.f64 x x)))) (fma.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 6)) 32/27 (fma.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) 8/9 (fma.f64 64/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3))) (*.f64 (exp.f64 2) (pow.f64 x 6))) (fma.f64 4/9 (*.f64 (pow.f64 x 4) (*.f64 (exp.f64 2) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (+.f64 (fma.f64 16/27 (*.f64 (/.f64 (pow.f64 (E.f64) 3) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6)) (*.f64 (pow.f64 x 6) (*.f64 (E.f64) 124/135))) (fma.f64 (*.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 6)))) 40/27 (*.f64 (*.f64 248/135 (E.f64)) (pow.f64 x 6)))))))))))
(-.f64 (fma.f64 16/9 (*.f64 (E.f64) (pow.f64 x 4)) (fma.f64 64/27 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 6)) (+.f64 (fma.f64 32/27 (*.f64 (exp.f64 2) (*.f64 (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))) (pow.f64 x 6))) (fma.f64 4/9 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) (+.f64 (fma.f64 56/81 (*.f64 (/.f64 (exp.f64 3) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6)) (*.f64 (E.f64) (*.f64 (pow.f64 x 4) 8/9))) (*.f64 (*.f64 (exp.f64 3) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 6))))) 112/81)))) (fma.f64 (*.f64 (*.f64 (exp.f64 2) (pow.f64 x 4)) 8/9) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3))) (expm1.f64 1))))) (+.f64 (*.f64 (*.f64 (E.f64) (*.f64 x x)) 2) (fma.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 6)) 32/27 (fma.f64 (*.f64 (/.f64 (exp.f64 2) (expm1.f64 1)) (pow.f64 x 4)) 8/9 (fma.f64 64/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 3))) (*.f64 (exp.f64 2) (pow.f64 x 6))) (fma.f64 4/9 (*.f64 (pow.f64 x 4) (*.f64 (exp.f64 2) (cbrt.f64 (/.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (fma.f64 (*.f64 (exp.f64 3) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 6))))) 40/27 (+.f64 (*.f64 (/.f64 (*.f64 (exp.f64 3) 16/27) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6)) (*.f64 (*.f64 (E.f64) (pow.f64 x 6)) 124/45)))))))))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1)
(expm1.f64 (cos.f64 (*.f64 2 x)))
(pow.f64 (-.f64 (exp.f64 1) 1) 1/3)
(cbrt.f64 (expm1.f64 1))
(-.f64 (pow.f64 (-.f64 (exp.f64 1) 1) 1/3) (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))))
(+.f64 (cbrt.f64 (expm1.f64 1)) (*.f64 -2/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))))))
(+.f64 (cbrt.f64 (expm1.f64 1)) (*.f64 (*.f64 -2/3 (*.f64 (E.f64) (*.f64 x x))) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))))
(+.f64 (cbrt.f64 (expm1.f64 1)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))) (*.f64 (*.f64 x x) (*.f64 (E.f64) -2/3))))
(-.f64 (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (pow.f64 (-.f64 (exp.f64 1) 1) 1/3)) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (*.f64 4/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4))))))
(-.f64 (fma.f64 8/9 (*.f64 (*.f64 (E.f64) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (cbrt.f64 (expm1.f64 1))) (fma.f64 2/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (*.f64 4/9 (*.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))))))
(-.f64 (fma.f64 (*.f64 (pow.f64 x 4) (*.f64 (E.f64) 8/9)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))) (cbrt.f64 (expm1.f64 1))) (fma.f64 2/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (*.f64 4/9 (*.f64 (exp.f64 2) (*.f64 (pow.f64 x 4) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))))))))
(-.f64 (+.f64 (cbrt.f64 (expm1.f64 1)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))) (-.f64 (*.f64 (E.f64) (*.f64 (pow.f64 x 4) 8/9)) (*.f64 (E.f64) (*.f64 (*.f64 x x) 2/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))) (*.f64 (*.f64 4/9 (exp.f64 2)) (pow.f64 x 4))))
(-.f64 (+.f64 (*.f64 8/9 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 4)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (+.f64 (*.f64 32/27 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)))) (+.f64 (pow.f64 (-.f64 (exp.f64 1) 1) 1/3) (*.f64 8/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3) (/.f64 (*.f64 (pow.f64 (E.f64) 3) (pow.f64 x 6)) (pow.f64 (-.f64 (exp.f64 1) 1) 2))))))) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3))) (+.f64 (*.f64 4/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (-.f64 (E.f64) 1) (pow.f64 (-.f64 (exp.f64 1) 1) 4))) 1/3) (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)))) (+.f64 (*.f64 16/27 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 1) 2) (*.f64 (E.f64) (pow.f64 x 6))) (-.f64 (exp.f64 1) 1)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 5)) 1/3))) (*.f64 124/135 (*.f64 (*.f64 (exp.f64 1) (pow.f64 x 6)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (E.f64) 1) 2)) 1/3)))))))
(-.f64 (fma.f64 8/9 (*.f64 (*.f64 (E.f64) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (fma.f64 32/27 (*.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 6)) (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (+.f64 (cbrt.f64 (expm1.f64 1)) (*.f64 8/81 (*.f64 (/.f64 (pow.f64 (E.f64) 3) (/.f64 (pow.f64 (expm1.f64 1) 2) (pow.f64 x 6))) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))))))) (fma.f64 2/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (fma.f64 4/9 (*.f64 (*.f64 (pow.f64 (E.f64) 2) (pow.f64 x 4)) (cbrt.f64 (/.f64 1 (*.f64 (expm1.f64 1) (pow.f64 (expm1.f64 1) 4))))) (fma.f64 16/27 (*.f64 (/.f64 (*.f64 (pow.f64 x 6) (pow.f64 (E.f64) 3)) (expm1.f64 1)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5)))) (*.f64 124/135 (*.f64 (E.f64) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))))))))))
(-.f64 (fma.f64 8/9 (*.f64 (E.f64) (*.f64 (pow.f64 x 4) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))))) (fma.f64 32/27 (*.f64 (exp.f64 2) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))))) (fma.f64 8/81 (*.f64 (*.f64 (/.f64 (pow.f64 (E.f64) 3) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (cbrt.f64 (expm1.f64 1))))) (fma.f64 2/3 (*.f64 (*.f64 (E.f64) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))) (fma.f64 4/9 (*.f64 (exp.f64 2) (*.f64 (pow.f64 x 4) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))))) (fma.f64 16/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))) (/.f64 (pow.f64 x 6) (/.f64 (expm1.f64 1) (pow.f64 (E.f64) 3)))) (*.f64 (*.f64 (E.f64) (pow.f64 x 6)) (*.f64 124/135 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2)))))))))
(-.f64 (+.f64 (fma.f64 32/27 (*.f64 (exp.f64 2) (*.f64 (pow.f64 x 6) (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))))) (cbrt.f64 (expm1.f64 1))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))) (+.f64 (*.f64 8/81 (*.f64 (/.f64 (exp.f64 3) (pow.f64 (expm1.f64 1) 2)) (pow.f64 x 6))) (*.f64 (E.f64) (*.f64 (pow.f64 x 4) 8/9))))) (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 5))) (+.f64 (*.f64 (*.f64 4/9 (exp.f64 2)) (pow.f64 x 4)) (*.f64 16/27 (/.f64 (pow.f64 x 6) (/.f64 (expm1.f64 1) (exp.f64 3)))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (expm1.f64 1) 2))) (+.f64 (*.f64 (E.f64) (*.f64 (pow.f64 x 6) 124/135)) (*.f64 (E.f64) (*.f64 (*.f64 x x) 2/3))))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))
(pow.f64 (-.f64 (exp.f64 (cos.f64 (*.f64 2 x))) 1) 1/3)
(cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x))))

prune217.0ms (3.4%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New1320132
Fresh099
Picked011
Done011
Total13211143
Error
0.0b
Counts
143 → 11
Alt Table
StatusErrorProgram
22.8b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2) 3)))
31.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
14.4b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
5.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
9.7b
(*.f64 (/.f64 1 (*.f64 x (*.f64 c (*.f64 s x)))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
2.7b
(/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.8b
(*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 2))
3.5b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
19.0b
(/.f64 (pow.f64 (sqrt.f64 (cos.f64 (+.f64 x x))) 2) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.2b
(/.f64 (log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) 3)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.6b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (*.f64 2 x)))) (pow.f64 (*.f64 c (*.f64 s x)) 2))
Compiler

Compiled 4792 to 2917 computations (39.1% saved)

regimes447.0ms (7.1%)

Accuracy

Total 0.8b remaining (91.2%)

Threshold costs 0.8b (91.2%)

Counts
95 → 2
Compiler

Compiled 1787 to 626 computations (65% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Calls

1 calls:

0.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
Steps
ItersPointRange
#hash((type . real) (value . +inf))
∈ [
#hash((type . real) (value . +inf))
,
#hash((type . real) (value . NaN))
]
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03379
14479
24979
35179
45279
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x))) +inf.0) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) (/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))))
Outputs
(if (<=.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x))) +inf.0) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) (/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))))
(if (<=.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 x (*.f64 x (pow.f64 s 2))))) +inf.0) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 x s)) -2)) (/.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))))

end337.0ms (5.3%)

Stop Event
fuel
Compiler

Compiled 450 to 289 computations (35.8% saved)

Profiling

Loading profile data...