Details

Time bar (total: 6.7s)

analyze1.3s (20%)

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

Compiled 20 to 15 computations (25% saved)

sample2.8s (42.1%)

Results
1.1s6253×body128valid
702.0ms1027×body1024valid
314.0ms1843×body128invalid
284.0ms635×body512valid
163.0ms251×body1024invalid
107.0ms237×body512invalid
101.0ms339×body256valid
48.0ms156×body256invalid
3.0msbody2048valid
Compiler

Compiled 40 to 30 computations (25% saved)

preprocess92.0ms (1.4%)

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

Useful iterations: 0 (0.0ms)

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

(sort c s)

Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify76.0ms (1.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))))

prune5.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 111 to 69 computations (37.8% saved)

localize9.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)))
3.5b
(*.f64 x (*.f64 c s))

series29.0ms (0.4%)

Counts
4 → 112
Calls

30 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
(/.f64 (cos.f64 (*.f64 2 x)) (*.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 x (*.f64 c s))
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))))

rewrite72.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 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 log1p.f64 (expm1.f64 (*.f64 c (*.f64 s x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c (*.f64 s x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (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 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 log1p.f64 (expm1.f64 (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(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 +.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 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 log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 x x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))) (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 c (*.f64 s x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) (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 exp.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x 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 expm1.f64 (log1p.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))))))))

simplify52.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)))))

prune291.0ms (4.3%)

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
14.7b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
2.0b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
32.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
2.1b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
2.3b
(/.f64 (*.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x x))) 2)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
20.6b
(*.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))
2.4b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
10.0b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3))))
5.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
4.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 3)))
4.7b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
3.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
2.7b
(*.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))
2.4b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
Compiler

Compiled 4750 to 1959 computations (58.8% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (sin.f64 x) 2)
0.4b
(pow.f64 (cos.f64 x) 2)
0.5b
(fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2)))
3.5b
(*.f64 x (*.f64 c s))

series5.0ms (0.1%)

Counts
3 → 20
Calls

9 calls:

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

rewrite48.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
705×pow1_binary64
646×add-log-exp_binary64
646×log1p-expm1-u_binary64
646×expm1-log1p-u_binary64
92×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify23.0ms (0.3%)

Algorithm
egg-herbie
Rules
674×associate-*l*_binary64
636×fma-def_binary64
499×cancel-sign-sub-inv_binary64
279×fma-neg_binary64
133×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
041271
1118267
2341261
31149259
Stop Event
node limit
Counts
94 → 95
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))))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
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)))
(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))))
Outputs
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -2 (*.f64 x x)))
(+.f64 1 (*.f64 (*.f64 -2 x) x))
(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 (*.f64 -2 x) x))
(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 2 (*.f64 x x) (*.f64 4/45 (pow.f64 x 6))))
(+.f64 (*.f64 (pow.f64 x 6) -4/45) (fma.f64 (*.f64 x x) -2 (fma.f64 2/3 (pow.f64 x 4) 1)))
(fma.f64 x (*.f64 x -2) (fma.f64 (pow.f64 x 6) -4/45 (fma.f64 2/3 (pow.f64 x 4) 1)))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
(-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))
1
(-.f64 1 (pow.f64 x 2))
(-.f64 1 (*.f64 x x))
(-.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 (-.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 1 (fma.f64 (pow.f64 x 4) -1/3 (fma.f64 (pow.f64 x 6) 2/45 (*.f64 x x))))
(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 (pow.f64 x 4) -1/3 (fma.f64 (pow.f64 x 6) 2/45 (*.f64 x x)))
(-.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 (fma.f64 x x (*.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 (pow.f64 x 8) -1/315 (fma.f64 (pow.f64 x 6) 2/45 (*.f64 x x))))

prune227.0ms (3.4%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1381139
Fresh21113
Picked011
Done000
Total14013153
Error
0.0b
Counts
153 → 13
Alt Table
StatusErrorProgram
14.7b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
2.0b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
32.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
20.6b
(*.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))
2.4b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
10.0b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3))))
5.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
4.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 3)))
3.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
4.5b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
2.7b
(*.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))
2.4b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
2.1b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
Compiler

Compiled 4228 to 1809 computations (57.2% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(cos.f64 (+.f64 x x))
0.3b
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
0.4b
(expm1.f64 (cos.f64 (+.f64 x x)))
3.5b
(*.f64 x (*.f64 c s))

series3.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite36.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
548×pow1_binary64
512×add-log-exp_binary64
511×log1p-expm1-u_binary64
511×expm1-log1p-u_binary64
502×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify23.0ms (0.3%)

Algorithm
egg-herbie
Rules
632×fma-def_binary64
600×associate-*l*_binary64
571×cancel-sign-sub-inv_binary64
458×associate-*r*_binary64
320×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040256
1112248
2311242
31148231
Stop Event
node limit
Counts
66 → 60
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)
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))))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
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 (E.f64) (*.f64 x x)) -2))
(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 (E.f64) (*.f64 x x)) -2))
(fma.f64 (E.f64) (*.f64 x (*.f64 x -2)) (fma.f64 (fma.f64 8/3 (pow.f64 x 4) 1) (E.f64) -1))
(-.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 (fma.f64 8/3 (*.f64 (E.f64) (pow.f64 x 4)) (E.f64)) (+.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 (E.f64) (*.f64 (pow.f64 x 6) 124/45)))))
(-.f64 (fma.f64 (E.f64) (*.f64 8/3 (pow.f64 x 4)) (expm1.f64 1)) (*.f64 (E.f64) (+.f64 (*.f64 x (*.f64 2 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 (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)))
1
(-.f64 1 (*.f64 2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -2 (*.f64 x x)))
(-.f64 1 (*.f64 x (*.f64 2 x)))
(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 (pow.f64 x 4) 2/3 1) (*.f64 (*.f64 x x) -2))
(fma.f64 (*.f64 x x) -2 (fma.f64 (pow.f64 x 4) 2/3 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 (pow.f64 x 4) 2/3 1) (fma.f64 (pow.f64 x 6) 4/45 (*.f64 x (*.f64 2 x))))
(fma.f64 x (*.f64 x -2) (fma.f64 (pow.f64 x 6) -4/45 (fma.f64 (pow.f64 x 4) 2/3 1)))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))
(cos.f64 (*.f64 2 x))

prune141.0ms (2.1%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1240124
Fresh01111
Picked011
Done011
Total12413137
Error
0.0b
Counts
137 → 13
Alt Table
StatusErrorProgram
14.7b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
2.0b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
32.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
20.6b
(*.f64 (/.f64 1 (*.f64 x x)) (/.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c s) 2)))
2.4b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) 2))
10.0b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3))))
5.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
4.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 3)))
3.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
4.5b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
2.7b
(*.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))
2.4b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
2.1b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
Compiler

Compiled 3299 to 1358 computations (58.8% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
0.2b
(cos.f64 (+.f64 x x))
0.3b
(pow.f64 (*.f64 c (*.f64 s x)) -2)
4.7b
(*.f64 c (*.f64 s x))

series21.0ms (0.3%)

Counts
3 → 88
Calls

27 calls:

TimeVariablePointExpression
4.0ms
c
@0
(*.f64 c (*.f64 s x))
2.0ms
s
@0
(pow.f64 (*.f64 c (*.f64 s x)) -2)
1.0ms
x
@-inf
(pow.f64 (*.f64 c (*.f64 s x)) -2)
1.0ms
c
@-inf
(pow.f64 (*.f64 c (*.f64 s x)) -2)
1.0ms
x
@-inf
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))

rewrite47.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
505×prod-diff_binary64
208×expm1-udef_binary64
208×log1p-udef_binary64
147×fma-def_binary64
125×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify48.0ms (0.7%)

Algorithm
egg-herbie
Rules
870×associate-/l*_binary64
435×associate-/l/_binary64
361×cancel-sign-sub-inv_binary64
339×unswap-sqr_binary64
271×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0381744
11051742
23301742
317061737
Stop Event
node limit
Counts
137 → 62
Calls
Call 1
Inputs
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(*.f64 s (*.f64 c x))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 2) (pow.f64 x 2))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 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 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.f64 1 (*.f64 (pow.f64 s 2) (*.f64 (pow.f64 c 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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c))))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x))))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s)))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))) (/.f64 -2 (*.f64 s (*.f64 c (*.f64 s c)))))
(-.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 (*.f64 x x) (*.f64 s s)) (*.f64 c c)) (/.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 x (/.f64 (*.f64 s (*.f64 s (*.f64 c c))) x)) (/.f64 1 (*.f64 (*.f64 x x) (*.f64 s (*.f64 s (*.f64 c c)))))) (/.f64 -2 (*.f64 s (*.f64 s (*.f64 c c)))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x))))) (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 -2 (*.f64 c (*.f64 c (*.f64 s s))))))
(+.f64 (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))) (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 s c)) (/.f64 x (*.f64 s c))) (/.f64 -2 (*.f64 s (*.f64 c (*.f64 s c))))))
(-.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 (*.f64 x x) (*.f64 s s)) (*.f64 c c)) (/.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 x (/.f64 (*.f64 s (*.f64 s (*.f64 c c))) x)) (/.f64 1 (*.f64 (*.f64 x x) (*.f64 s (*.f64 s (*.f64 c c)))))) (fma.f64 4/45 (/.f64 (pow.f64 x 4) (*.f64 s (*.f64 s (*.f64 c c)))) (/.f64 2 (*.f64 s (*.f64 s (*.f64 c c))))))
(-.f64 (fma.f64 2/3 (*.f64 (/.f64 x (*.f64 c c)) (/.f64 x (*.f64 s s))) (/.f64 1 (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 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 -2 (*.f64 s (*.f64 c (*.f64 s c)))) (+.f64 (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))) (*.f64 (/.f64 x (/.f64 (*.f64 s c) (/.f64 x c))) (-.f64 (/.f64 2/3 s) (/.f64 (*.f64 x x) (/.f64 s 4/45))))))
(/.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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x 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 s (*.f64 s (*.f64 c c)))))
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s (*.f64 (*.f64 c c) (*.f64 x (*.f64 s x)))))
(/.f64 (/.f64 (cos.f64 (*.f64 x 2)) (*.f64 s s)) (*.f64 c (*.f64 c (*.f64 x x))))

prune144.0ms (2.1%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New90494
Fresh3710
Picked101
Done022
Total9413107
Error
0.0b
Counts
107 → 13
Alt Table
StatusErrorProgram
14.7b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
2.0b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
2.4b
(*.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
5.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 (*.f64 s x) (*.f64 c (*.f64 s x)))))
20.5b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) -2) (pow.f64 x -2)))
4.2b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 s x))) 3)))
24.4b
(*.f64 (cos.f64 (+.f64 x x)) (/.f64 1 (*.f64 s (*.f64 s (*.f64 c (*.f64 c (*.f64 x x)))))))
3.8b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
3.2b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2))
4.5b
(/.f64 (fma.f64 1 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 s (*.f64 c x))))
10.0b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 s x)) 3))))
2.7b
(*.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))
2.1b
(/.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x x)))) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
Compiler

Compiled 1974 to 1029 computations (47.9% saved)

regimes748.0ms (11.2%)

Accuracy

Total 1.7b remaining (97%)

Threshold costs 0b (0%)

Counts
139 → 3
Compiler

Compiled 2668 to 901 computations (66.2% saved)

bsearch122.0ms (1.8%)

Algorithm
binary-search
Calls

2 calls:

102.0ms
s
19.0ms
s
Steps
ItersPointRange
2.55e+185
∈ [
1.773000231468769e+185
,
4.327451747910559e+185
]
1.85e-243
∈ [
8.094271015838822e-246
,
2.094231038228478e-243
]
Compiler

Compiled 4 to 3 computations (25% saved)

simplify13.0ms (0.2%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
unsub-neg_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03574
15274
25474
35574
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 s 1777779985060953/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (pow.f64 (*.f64 c (*.f64 s x)) -2)) (if (<=.f64 s 254999999999999997821516202889430450425561675016659734010783166667301698671283123255723048671870057863945020546992554923489995013088852886503785872819454265993246159156361027528589049856) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2)) (pow.f64 (*.f64 (pow.f64 (*.f64 x (*.f64 c s)) -2) (cos.f64 (+.f64 x x))) 1)))
Outputs
(if (<=.f64 s 1777779985060953/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (neg.f64 (pow.f64 (sin.f64 x) 2))) (pow.f64 (*.f64 c (*.f64 s x)) -2)) (if (<=.f64 s 254999999999999997821516202889430450425561675016659734010783166667301698671283123255723048671870057863945020546992554923489995013088852886503785872819454265993246159156361027528589049856) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2)) (pow.f64 (*.f64 (pow.f64 (*.f64 x (*.f64 c s)) -2) (cos.f64 (+.f64 x x))) 1)))
(if (<=.f64 s 1777779985060953/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (pow.f64 (*.f64 c (*.f64 s x)) -2)) (if (<=.f64 s 254999999999999997821516202889430450425561675016659734010783166667301698671283123255723048671870057863945020546992554923489995013088852886503785872819454265993246159156361027528589049856) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 x c)) -2)) (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 s c)) -2))))

end233.0ms (3.5%)

Stop Event
fuel
Compiler

Compiled 482 to 307 computations (36.3% saved)

Profiling

Loading profile data...