Details

Time bar (total: 11.8s)

analyze475.0ms (4%)

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
18.7%81.2%0.1%7
18.7%81.2%0.1%8
29.7%69.5%0.9%9
30.4%67.9%1.7%10
36.3%61.1%2.6%11
36.9%59.5%3.6%12
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample3.2s (27.4%)

Results
1.3s1136×body2048valid
765.0ms1889×body1024valid
680.0ms4484×body256valid
252.0ms692×body512valid
189.0ms55×body4096valid
39.0ms286×body256invalid
7.0ms10×body2048invalid
2.0msbody8192exit

preprocess168.0ms (1.4%)

Algorithm
egg-herbie
Rules
1036×fma-neg_binary64
1024×fma-def_binary64
528×div-sub_binary64
432×times-frac_binary64
309×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01746
14340
210540
326740
445640
573740
6100540
7141840
8257340
9424540
10484840
11489840
12492840
13494240
14517040
15526640
16595440
17595440
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
(-.f64 (*.f64 (PI.f64) F) (*.f64 (/.f64 1 (*.f64 l l)) (tan.f64 (*.f64 (PI.f64) F))))
Outputs
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(-.f64 (*.f64 (PI.f64) F) (*.f64 (/.f64 1 (*.f64 l l)) (tan.f64 (*.f64 (PI.f64) F))))
(-.f64 (*.f64 (PI.f64) F) (/.f64 (tan.f64 (*.f64 (PI.f64) F)) (*.f64 l l)))
Compiler

Compiled 18 to 12 computations (33.3% saved)

simplify27.0ms (0.2%)

Algorithm
egg-herbie
Rules
297×fma-def_binary64
157×fma-neg_binary64
49×cancel-sign-sub-inv_binary64
38×associate-/l*_binary64
33×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01123
12520
25720
313920
423620
537520
650120
764120
883320
9110320
10115720
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
Outputs
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))

eval1.0ms (0%)

Compiler

Compiled 28 to 12 computations (57.1% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
15.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
15.0b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
15.3b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
Compiler

Compiled 30 to 18 computations (40% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (PI.f64) l)
1.0b
(/.f64 1 (*.f64 F F))
4.2b
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))
30.7b
(tan.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 45 to 16 computations (64.4% saved)

series14.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
3.0ms
l
@0
(tan.f64 (*.f64 (PI.f64) l))
3.0ms
F
@0
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))
1.0ms
l
@0
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))
1.0ms
F
@inf
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))
1.0ms
l
@inf
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))

rewrite73.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
932×pow1_binary64
857×add-log-exp_binary64
856×log1p-expm1-u_binary64
856×expm1-log1p-u_binary64
836×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01032
120129
2245429
Stop Event
node limit
Counts
4 → 87
Calls
Call 1
Inputs
(tan.f64 (*.f64 (PI.f64) l))
(*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l)))
(/.f64 1 (*.f64 F F))
(*.f64 (PI.f64) l)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (tan.f64 (*.f64 (PI.f64) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2)) (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 (PI.f64) l)) (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (*.f64 (PI.f64) l)) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 (*.f64 (PI.f64) l))) (neg.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (tan.f64 (*.f64 (PI.f64) l))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 F F) (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2)) (/.f64 (*.f64 F F) (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 (*.f64 F F) (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (*.f64 (PI.f64) l)) (*.f64 (*.f64 F F) (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) 1) (*.f64 (cos.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) -1) (*.f64 (cos.f64 (*.f64 (PI.f64) l)) (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) (/.f64 1 F)) (*.f64 (cos.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (sin.f64 (*.f64 (PI.f64) l))) (*.f64 (*.f64 F (neg.f64 F)) (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 F) (sin.f64 (*.f64 (PI.f64) l))) (*.f64 F (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) 1) (*.f64 F F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (cbrt.f64 (pow.f64 F 4))) (pow.f64 (cbrt.f64 F) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 F) (tan.f64 (*.f64 (PI.f64) l))) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) -1) (*.f64 F (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (/.f64 1 F)) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 F -2) (sin.f64 (*.f64 (PI.f64) l))) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2) (pow.f64 F 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 (*.f64 F F) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 (pow.f64 F -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 F -2) 3) (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 F -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 F -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 F -2)) (cbrt.f64 (pow.f64 (*.f64 F F) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 F F) -2)) (cbrt.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 F 4)) -1) (pow.f64 (pow.f64 (cbrt.f64 F) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 F -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 F F) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 F -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 F -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 F -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 F F) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 F -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 F -2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) l)))))))

simplify68.0ms (0.6%)

Algorithm
egg-herbie
Rules
607×fma-neg_binary64
413×fma-def_binary64
406×associate-*r*_binary64
404×associate-*l*_binary64
385×distribute-neg-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0891282
12591208
29431154
358891124
Stop Event
node limit
Counts
147 → 108
Calls
Call 1
Inputs
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3)))))
(+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)))))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))))))
(+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2))) (*.f64 -1/720 (pow.f64 (PI.f64) 7))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)))))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3)))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
Outputs
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3)))))
(fma.f64 l (PI.f64) (*.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3)))
(fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 l (PI.f64)))
(+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)))))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))))))
(fma.f64 l (PI.f64) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2)))) (*.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3))))
(fma.f64 l (PI.f64) (fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2)))))))
(fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 l (PI.f64))))
(fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 l (PI.f64))))
(+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2))) (*.f64 -1/720 (pow.f64 (PI.f64) 7))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)))))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3)))))))
(fma.f64 l (PI.f64) (fma.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (fma.f64 1/24 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 4)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2))))) (*.f64 (pow.f64 (PI.f64) 7) -1/720)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2)))) (*.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3)))))
(fma.f64 l (PI.f64) (fma.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (fma.f64 1/24 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 4))) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))) (*.f64 (pow.f64 (PI.f64) 7) -1/720)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))))))
(fma.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (fma.f64 (pow.f64 (PI.f64) 2) (*.f64 -1/2 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) (fma.f64 (pow.f64 (PI.f64) 4) (*.f64 (pow.f64 (PI.f64) 3) 1/72) (*.f64 (pow.f64 (PI.f64) 7) -1/720)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 l (PI.f64)))))
(fma.f64 (-.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (fma.f64 (pow.f64 (PI.f64) 2) (*.f64 -1/2 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5)))) (fma.f64 (pow.f64 (PI.f64) 7) -1/720 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (pow.f64 (PI.f64) 3) 1/3) (fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 (PI.f64) F) (/.f64 l F))
(/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))
(fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64)))))
(fma.f64 (pow.f64 l 5) (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (pow.f64 (PI.f64) 2)))) (fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (pow.f64 l 5) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (pow.f64 l 5) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F)) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F))) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2)))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4))))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))))
(fma.f64 (pow.f64 l 5) (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (pow.f64 (PI.f64) 2)))) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2)))) F)) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 4))) (/.f64 (*.f64 F F) 1/24)))) (fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))
(fma.f64 (pow.f64 l 5) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 F F)) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) F) (/.f64 (pow.f64 (PI.f64) 4) F)))) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))))
(fma.f64 (pow.f64 l 5) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (/.f64 F -1/2)) (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) (*.f64 F F)))) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
0.2b
(*.f64 (PI.f64) l)
4.3b
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
30.7b
(tan.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 35 to 8 computations (77.1% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
l
@0
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
1.0ms
l
@0
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
1.0ms
l
@inf
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
0.0ms
F
@0
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
0.0ms
l
@-inf
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))

rewrite96.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
532×log-prod_binary64
397×exp-prod_binary64
352×pow-prod-down_binary64
276×pow2_binary64
276×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0933
120033
2289033
Stop Event
node limit
Counts
2 → 172
Calls
Call 1
Inputs
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 1 (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) 1) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 1) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) F) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (cbrt.f64 F) F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 F) F)) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 (cbrt.f64 F) F)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 F F) (tan.f64 (*.f64 (PI.f64) l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (*.f64 F F) (tan.f64 (*.f64 (PI.f64) l))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))) (sqrt.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 F F) (tan.f64 (*.f64 (PI.f64) l)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 3) 1/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (/.f64 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (/.f64 1 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6))) (neg.f64 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))) (neg.f64 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 3)) (+.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (-.f64 (pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 2) (*.f64 (*.f64 (PI.f64) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 2)) (-.f64 (*.f64 (PI.f64) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))) 2)) (cbrt.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (sqrt.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (PI.f64)) l) (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (neg.f64 (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (neg.f64 (pow.f64 F -2))) (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) l (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (PI.f64) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (PI.f64) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) l) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) l) 1 (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1 (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 1 (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (PI.f64) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (PI.f64) l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) 2) (cbrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (cbrt.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (cbrt.f64 (*.f64 (PI.f64) l)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (neg.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (sqrt.f64 (fma.f64 (PI.f64) l (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (PI.f64) l)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (/.f64 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (/.f64 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (/.f64 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6)) (/.f64 1 (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (/.f64 1 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (/.f64 1 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (/.f64 1 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (/.f64 1 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l))) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) 2) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (sqrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (fma.f64 (neg.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (fma.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)) (+.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)) (*.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))) 1))))))

simplify80.0ms (0.7%)

Algorithm
egg-herbie
Rules
538×fma-neg_binary64
452×distribute-neg-frac_binary64
388×fma-def_binary64
380×associate-*r*_binary64
359×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0881607
12771545
210021447
360271415
Stop Event
node limit
Counts
220 → 196
Calls
Call 1
Inputs
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (*.f64 (pow.f64 l 5) (-.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2)))) (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (+.f64 (*.f64 (pow.f64 l 7) (-.f64 (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2))))) (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (*.f64 (pow.f64 l 5) (-.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2)))) (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))))))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
Outputs
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (*.f64 F F))
(*.f64 (PI.f64) (/.f64 l (*.f64 F F)))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(fma.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F))) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4))))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))))
(fma.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)))) (pow.f64 l 5) (fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (+.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 1/2 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))))) F)) (*.f64 1/24 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 4))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))))
(fma.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 7) 1/840) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F))) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) (*.f64 (/.f64 F (pow.f64 (PI.f64) 4)) F)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))))
(fma.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 7) 1/840) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F))) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) (*.f64 F F)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))) (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3)))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)) (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3)))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (*.f64 (pow.f64 l 5) (-.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2)))) (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (+.f64 (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))))) (*.f64 -1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (fma.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) 1/24 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/120))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (-.f64 0 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (neg.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F))))))
(+.f64 (*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2)))) (+.f64 (*.f64 (pow.f64 l 7) (-.f64 (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2))))) (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (*.f64 (pow.f64 l 5) (-.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2)))) (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))) (fma.f64 (pow.f64 l 7) (+.f64 (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4)))))) (*.f64 1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (+.f64 (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))))) (*.f64 -1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))) (fma.f64 (pow.f64 l 7) (+.f64 (fma.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) -1/720 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (+.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 1/2 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))))) F)) (*.f64 1/24 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 4))))) (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/5040)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (fma.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) 1/24 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/120)))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (fma.f64 (pow.f64 l 5) (-.f64 0 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F))) (*.f64 (pow.f64 l 7) (+.f64 (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/6))) (*.f64 F F))) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) (*.f64 (/.f64 F (pow.f64 (PI.f64) 4)) F))) (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) -1/840))))))
(fma.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)) (fma.f64 (pow.f64 l 7) (+.f64 (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F))) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) (*.f64 F F))) (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) -1/840)) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (*.f64 (pow.f64 l 5) (neg.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (pow.f64 (PI.f64) 5))) (*.f64 F F)))))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))))
(fma.f64 l (PI.f64) (neg.f64 (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))))
(-.f64 (*.f64 l (PI.f64)) (/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64)))))

eval145.0ms (1.2%)

Compiler

Compiled 9014 to 4137 computations (54.1% saved)

prune121.0ms (1%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New35516371
Fresh000
Picked101
Done101
Total35716373
Error
0.1b
Counts
373 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
11.3b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) F) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)))
53.6b
(/.f64 1 (/.f64 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))))
12.2b
(*.f64 l (PI.f64))
40.1b
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
15.0b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F)))
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
19.8b
(*.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)))
11.1b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F))
44.4b
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
37.2b
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
12.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 (cbrt.f64 F) F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2))))
15.3b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l))))
11.1b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F)))
15.7b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
53.7b
(-.f64 (log.f64 (pow.f64 (exp.f64 (PI.f64)) l)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
44.3b
(-.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
Compiler

Compiled 560 to 354 computations (36.8% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)
0.2b
(*.f64 (PI.f64) l)
0.3b
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
30.7b
(tan.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 38 to 8 computations (78.9% saved)

series10.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
l
@0
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
2.0ms
l
@-inf
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
1.0ms
F
@inf
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
1.0ms
l
@inf
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
1.0ms
F
@-inf
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)

rewrite73.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
950×pow1_binary64
876×add-log-exp_binary64
876×log1p-expm1-u_binary64
876×expm1-log1p-u_binary64
857×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0823
117023
2234023
Stop Event
node limit
Counts
2 → 68
Calls
Call 1
Inputs
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
(/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2) (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 1 (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (tan.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 F) 2)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) 1) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 1) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (sqrt.f64 F)) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 F (tan.f64 (*.f64 (PI.f64) l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 F 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 (/.f64 1 F) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) (/.f64 1 (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 2) (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2) (*.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (*.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (/.f64 1 (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) F) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) 1) (/.f64 (/.f64 1 F) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2) 1) (/.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 1) (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (/.f64 1 F) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 F) 2)) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (sqrt.f64 F)) (/.f64 (/.f64 1 F) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 F)) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 2) (sqrt.f64 F)) (/.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 F (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 3) (pow.f64 F 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))))))

simplify66.0ms (0.6%)

Algorithm
egg-herbie
Rules
676×fma-neg_binary64
454×distribute-neg-frac_binary64
406×associate-/l*_binary64
364×fma-def_binary64
358×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01051447
13081385
210441307
359901271
Stop Event
node limit
Counts
116 → 90
Calls
Call 1
Inputs
(/.f64 (*.f64 l (PI.f64)) F)
(+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) F)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) F)))) (pow.f64 l 5)) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) F)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) F)))) (pow.f64 l 5)) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3)) (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) F)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) F)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) F)) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) F))))) (pow.f64 l 7)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
Outputs
(/.f64 (*.f64 l (PI.f64)) F)
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3)))
(+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3)))
(fma.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3) (*.f64 (/.f64 l F) (PI.f64)))
(fma.f64 (/.f64 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) F) 1/3 (*.f64 (PI.f64) (/.f64 l F)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) F)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) F)))) (pow.f64 l 5)) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 F (pow.f64 (PI.f64) 2))) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) 1/24))) (pow.f64 l 5) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) 1/24))) (pow.f64 l 5) (fma.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3) (*.f64 (/.f64 l F) (PI.f64))))
(fma.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (*.f64 (pow.f64 l 3) 1/3) (fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) -1/30) (/.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))) F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l F))))
(fma.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (*.f64 (pow.f64 l 3) 1/3) (fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5)))) F) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l F))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) F)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) F)))) (pow.f64 l 5)) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) F)) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) F))) (pow.f64 l 3)) (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) F)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) F)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) F)) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) F))))) (pow.f64 l 7)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 F (pow.f64 (PI.f64) 2))) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) 1/24))) (pow.f64 l 5) (+.f64 (/.f64 (*.f64 l (PI.f64)) F) (fma.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3) (*.f64 (-.f64 (/.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) F) (fma.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 F (pow.f64 (PI.f64) 4))) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) F) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2)))) (/.f64 F (pow.f64 (PI.f64) 2))))))) (pow.f64 l 7)))))
(+.f64 (fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) F)) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) 1/24))) (pow.f64 l 5) (fma.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 l 3) (*.f64 (/.f64 l F) (PI.f64)))) (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) F)) (fma.f64 1/24 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) 1/3) (pow.f64 (PI.f64) 4)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 1/2 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))))) F) (pow.f64 (PI.f64) 2)) (*.f64 (/.f64 (pow.f64 (PI.f64) 7) F) -1/720)))) (pow.f64 l 7)))
(fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) F) -1/30) (/.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))) F)) (pow.f64 l 5) (fma.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (*.f64 (pow.f64 l 3) 1/3) (fma.f64 (-.f64 (*.f64 (/.f64 -1/5040 F) (pow.f64 (PI.f64) 7)) (fma.f64 (/.f64 (pow.f64 (PI.f64) 7) F) -1/720 (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) F)) (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) F) (pow.f64 (PI.f64) 4))))) (pow.f64 l 7) (*.f64 (PI.f64) (/.f64 l F)))))
(fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5)))) F) (pow.f64 l 5) (fma.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (*.f64 (pow.f64 l 3) 1/3) (fma.f64 (-.f64 (fma.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) F) (/.f64 1/720 (/.f64 F (pow.f64 (PI.f64) 7)))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5))))) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) F))) (pow.f64 l 7) (*.f64 (PI.f64) (/.f64 l F)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) F))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) F) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (*.f64 F F))
(/.f64 (PI.f64) (/.f64 (*.f64 F F) l))
(*.f64 (PI.f64) (/.f64 l (*.f64 F F)))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))
(fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (/.f64 (PI.f64) (/.f64 (*.f64 F F) l)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 F F))))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(fma.f64 (pow.f64 l 5) (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (/.f64 (PI.f64) (/.f64 (*.f64 F F) l))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (pow.f64 l 5) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) (*.f64 F F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (fma.f64 (pow.f64 l 5) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5)))) (*.f64 F F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2)) (*.f64 F F))))) (pow.f64 l 5) (fma.f64 (-.f64 (/.f64 (*.f64 -1/5040 (pow.f64 (PI.f64) 7)) (*.f64 F F)) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (pow.f64 (PI.f64) 2)))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4))))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))))
(fma.f64 (pow.f64 l 5) (+.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))) (*.f64 F F)))) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (+.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 1/2 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 1/3 (pow.f64 (PI.f64) 2))))) F)) (*.f64 1/24 (/.f64 (*.f64 (*.f64 (pow.f64 (PI.f64) 4) (pow.f64 (PI.f64) 3)) 1/3) (*.f64 F F))))) (fma.f64 (pow.f64 l 3) (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 F F)) (/.f64 (PI.f64) (/.f64 (*.f64 F F) l)))))
(fma.f64 (pow.f64 l 5) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) (*.f64 F F)) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) F) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) F)) (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) F) (/.f64 (pow.f64 (PI.f64) 4) F)))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))))
(fma.f64 (pow.f64 l 5) (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5)))) (*.f64 F F)) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 F F)) (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (neg.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 5))))) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) F) (/.f64 1/3 F)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))

localize42.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 l (PI.f64))
Compiler

Compiled 7 to 4 computations (42.9% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
0.0ms
l
@0
(*.f64 l (PI.f64))
0.0ms
l
@inf
(*.f64 l (PI.f64))
0.0ms
l
@-inf
(*.f64 l (PI.f64))

rewrite40.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
367×pow1_binary64
350×add-sqr-sqrt_binary64
345×*-un-lft-identity_binary64
336×add-log-exp_binary64
336×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045
1785
29225
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 l (PI.f64))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 l (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) l))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (PI.f64)) 2) l))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (PI.f64)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 l (PI.f64)))) 2)) (cbrt.f64 (log.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 l (PI.f64))))) (sqrt.f64 (log.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 l (PI.f64)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 l (PI.f64)))) 2))))))

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (PI.f64) l)
0.3b
(*.f64 (/.f64 1 F) (/.f64 1 F))
4.2b
(*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l)))
30.7b
(tan.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 51 to 26 computations (49% saved)

series18.0ms (0.2%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
15.0ms
F
@0
(*.f64 (/.f64 1 F) (/.f64 1 F))
0.0ms
l
@0
(*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l)))
0.0ms
F
@0
(*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l)))
0.0ms
F
@inf
(*.f64 (/.f64 1 F) (/.f64 1 F))
0.0ms
F
@-inf
(*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l)))

rewrite180.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
942×pow1_binary64
866×add-log-exp_binary64
865×log1p-expm1-u_binary64
865×expm1-log1p-u_binary64
845×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
120417
2251017
Stop Event
node limit
Counts
2 → 52
Calls
Call 1
Inputs
(*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l)))
(*.f64 (/.f64 1 F) (/.f64 1 F))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (*.f64 (PI.f64) l)) (*.f64 (*.f64 F F) (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 F) (sin.f64 (*.f64 (PI.f64) l))) (*.f64 F (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) 1) (*.f64 (cos.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) (/.f64 1 F)) (*.f64 (cos.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 F -2) (sin.f64 (*.f64 (PI.f64) l))) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 F -2) 3) (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 (pow.f64 F -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 F F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (neg.f64 F) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 F F) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 F (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 F) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 F -2)) (/.f64 F (/.f64 1 (cbrt.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 F -1/2) (/.f64 F (pow.f64 F -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 F (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 F) F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1 F)) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 F) -1) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 F) (sqrt.f64 F)) (sqrt.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 F) 1) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 F) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 1 F)) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 F -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 F -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 F -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 F F) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 F -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 1 F) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 F -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (/.f64 1 (pow.f64 F 3)) (pow.f64 F 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 F -2)))))))

simplify56.0ms (0.5%)

Algorithm
egg-herbie
Rules
812×cancel-sign-sub-inv_binary64
541×distribute-rgt-neg-in_binary64
524×distribute-lft-neg-in_binary64
429×fma-neg_binary64
338×distribute-neg-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
073860
1210810
2736777
34451756
Stop Event
node limit
Counts
88 → 64
Calls
Call 1
Inputs
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (pow.f64 F 2))
Outputs
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(/.f64 (*.f64 l (PI.f64)) (*.f64 F F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (*.f64 (PI.f64) (/.f64 (/.f64 l F) F)))
(fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)))) (pow.f64 l 5) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 (/.f64 l F) F))))
(fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6)) (*.f64 F F)) (pow.f64 l 5) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2)))))) (pow.f64 l 5) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F))) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4))))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))))
(fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 2)))) (pow.f64 l 5) (fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (*.f64 (pow.f64 (PI.f64) 2) -1/2))) (*.f64 F F)) (pow.f64 (PI.f64) 2)) (*.f64 1/24 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 4))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F))) (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) F) (/.f64 (pow.f64 (PI.f64) 4) F)))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 (/.f64 l F) F)))))
(fma.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840 (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) -1/72) (*.f64 F F))) (*.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6)) (*.f64 F F)) (*.f64 (pow.f64 (PI.f64) 2) 1/2))) (pow.f64 l 7) (fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6)) (*.f64 F F)) (pow.f64 l 5) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))
(/.f64 1 (pow.f64 F 2))
(/.f64 1 (*.f64 F F))

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))
4.3b
(/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F))
30.2b
(sin.f64 (*.f64 (PI.f64) l))
30.4b
(cos.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 74 to 18 computations (75.7% saved)

series11.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
2.0ms
l
@0
(/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F))
1.0ms
l
@0
(/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))
1.0ms
l
@-inf
(/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))
1.0ms
l
@inf
(/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F))
1.0ms
l
@-inf
(/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F))

rewrite88.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
661×log-prod_binary64
323×pow2_binary64
287×prod-diff_binary64
227×pow1/3_binary64
220×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01255
125237
2343137
Stop Event
node limit
Counts
4 → 136
Calls
Call 1
Inputs
(cos.f64 (*.f64 (PI.f64) l))
(sin.f64 (*.f64 (PI.f64) l))
(/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F))
(/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (*.f64 (PI.f64) l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (*.f64 (PI.f64) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (*.f64 (PI.f64) l))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (*.f64 (PI.f64) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (PI.f64) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2) (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (*.f64 (PI.f64) l))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 (PI.f64) l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 (PI.f64) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 (PI.f64) l))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 (PI.f64) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 (PI.f64) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 2) (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l))) (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 (*.f64 (PI.f64) l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 (PI.f64) l))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4)) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (tan.f64 (*.f64 (PI.f64) l))) (/.f64 1 (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 F -2) (tan.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))) (*.f64 (sin.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) 1) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 1) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))) 1) (/.f64 (sin.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) F) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))) F) (/.f64 (sin.f64 (*.f64 (PI.f64) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 F 4))) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (cbrt.f64 (pow.f64 F 4))) (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (cbrt.f64 (pow.f64 F 4))) (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (cos.f64 (*.f64 (PI.f64) l))) (cbrt.f64 (pow.f64 F 4))) (/.f64 (sin.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 F (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 F 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 F (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 F 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 (PI.f64) l)) (/.f64 1 (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l)))) (cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -2)) (/.f64 1 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (/.f64 1 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -1/2) (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (*.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (/.f64 1 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 (*.f64 (PI.f64) l))) (/.f64 1 (neg.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 (*.f64 (PI.f64) l))) (cos.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2) 1) (/.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 1) (/.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (sin.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) -2) (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 2)) (/.f64 1 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l))) 2)) (/.f64 (sqrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (cbrt.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) -1/2) (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) 2) (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l)))) (/.f64 (cbrt.f64 (cos.f64 (*.f64 (PI.f64) l))) (sqrt.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (neg.f64 (sin.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 (PI.f64) l)) 3) (pow.f64 (sin.f64 (*.f64 (PI.f64) l)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (tan.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (tan.f64 (*.f64 (PI.f64) l)))) 1))))))

simplify85.0ms (0.7%)

Algorithm
egg-herbie
Rules
766×associate-*l*_binary64
760×associate-*r*_binary64
609×fma-def_binary64
586×fma-neg_binary64
274×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01161444
13511426
212631306
370241306
Stop Event
node limit
Counts
196 → 172
Calls
Call 1
Inputs
1
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) 1)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 1 (*.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 1 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 l 6) (pow.f64 (PI.f64) 6))) (*.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4))))))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(*.f64 l (PI.f64))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (*.f64 l (PI.f64)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (+.f64 (*.f64 l (PI.f64)) (*.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 l 7) (pow.f64 (PI.f64) 7))) (*.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5))))))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))))))) (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 1 (*.f64 l (PI.f64)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (/.f64 1 (*.f64 l (PI.f64))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (+.f64 (/.f64 1 (*.f64 l (PI.f64))) (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 l 3))))
(+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 -1/720 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/120 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 (PI.f64) 2))) (*.f64 -1/5040 (pow.f64 (PI.f64) 5)))))) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (+.f64 (/.f64 1 (*.f64 l (PI.f64))) (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 l 3)))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
Outputs
1
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) 1)
(fma.f64 -1/2 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 2)) 1)
(fma.f64 -1/2 (*.f64 l (*.f64 l (pow.f64 (PI.f64) 2))) 1)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 1 (*.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 2)) 1) (*.f64 (*.f64 1/24 (pow.f64 l 4)) (pow.f64 (PI.f64) 4)))
(fma.f64 -1/2 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 2)) (fma.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)) 1))
(fma.f64 -1/2 (*.f64 l (*.f64 l (pow.f64 (PI.f64) 2))) (fma.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 1 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 l 6) (pow.f64 (PI.f64) 6))) (*.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 2)) 1) (fma.f64 -1/720 (*.f64 (pow.f64 l 6) (pow.f64 (PI.f64) 6)) (*.f64 (*.f64 1/24 (pow.f64 l 4)) (pow.f64 (PI.f64) 4))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 2)) 1) (fma.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)) (*.f64 -1/720 (*.f64 (pow.f64 l 6) (pow.f64 (PI.f64) 6)))))
(fma.f64 -1/2 (*.f64 l (*.f64 l (pow.f64 (PI.f64) 2))) (fma.f64 1/24 (*.f64 (pow.f64 l 4) (pow.f64 (PI.f64) 4)) (fma.f64 -1/720 (*.f64 (pow.f64 l 6) (pow.f64 (PI.f64) 6)) 1)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(cos.f64 (*.f64 l (PI.f64)))
(*.f64 l (PI.f64))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (*.f64 l (PI.f64)))
(fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (*.f64 l (PI.f64)))
(fma.f64 l (PI.f64) (*.f64 (pow.f64 (PI.f64) 3) (*.f64 -1/6 (pow.f64 l 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (+.f64 (*.f64 l (PI.f64)) (*.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5)))))
(fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (fma.f64 l (PI.f64) (*.f64 (*.f64 1/120 (pow.f64 l 5)) (pow.f64 (PI.f64) 5))))
(fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (fma.f64 l (PI.f64) (*.f64 (pow.f64 l 5) (*.f64 1/120 (pow.f64 (PI.f64) 5)))))
(fma.f64 l (PI.f64) (fma.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5)) (*.f64 (pow.f64 (PI.f64) 3) (*.f64 -1/6 (pow.f64 l 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))) (+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 l 7) (pow.f64 (PI.f64) 7))) (*.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5))))))
(fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (fma.f64 l (PI.f64) (fma.f64 -1/5040 (*.f64 (pow.f64 l 7) (pow.f64 (PI.f64) 7)) (*.f64 (*.f64 1/120 (pow.f64 l 5)) (pow.f64 (PI.f64) 5)))))
(fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (fma.f64 l (PI.f64) (fma.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5)) (*.f64 -1/5040 (*.f64 (pow.f64 l 7) (pow.f64 (PI.f64) 7))))))
(fma.f64 l (PI.f64) (fma.f64 -1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)) (fma.f64 1/120 (*.f64 (pow.f64 l 5) (pow.f64 (PI.f64) 5)) (*.f64 (pow.f64 l 7) (*.f64 -1/5040 (pow.f64 (PI.f64) 7))))))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(sin.f64 (*.f64 l (PI.f64)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 (PI.f64) F) (/.f64 l F))
(+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))
(fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))
(+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 (pow.f64 l 5) (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (/.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64)))))
(fma.f64 (pow.f64 l 5) (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))
(fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (/.f64 l (/.f64 (*.f64 F F) (PI.f64)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))))))) (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2)))))) (pow.f64 l 7)) (+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2)))))) (+.f64 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))))) (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))))
(fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F))) (fma.f64 1/24 (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (/.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 F F))))) (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)))))) (pow.f64 l 7) (fma.f64 (pow.f64 l 5) (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (/.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 F F)))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))))
(fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 -1/5040 F) (/.f64 (pow.f64 (PI.f64) 7) F)) (fma.f64 1/24 (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (*.f64 (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))))) (*.f64 -1/2 (pow.f64 (PI.f64) 2)))))) (fma.f64 (pow.f64 l 5) (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 -1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F))))) (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))
(fma.f64 (pow.f64 l 5) (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)))) (fma.f64 (pow.f64 l 7) (-.f64 (*.f64 (/.f64 -1/5040 (*.f64 F F)) (pow.f64 (PI.f64) 7)) (fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)))) (*.f64 -1/2 (pow.f64 (PI.f64) 2)) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (*.f64 (/.f64 (pow.f64 (PI.f64) 6) (/.f64 (*.f64 F F) (PI.f64))) 1/72)))) (fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2)))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (pow.f64 F 2) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 F F)) (cos.f64 (*.f64 l (PI.f64))))
(/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (*.f64 F F)))
(/.f64 1 (*.f64 l (PI.f64)))
(/.f64 (/.f64 1 l) (PI.f64))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (/.f64 1 (*.f64 l (PI.f64))))
(fma.f64 (*.f64 (PI.f64) -1/3) l (/.f64 (/.f64 1 l) (PI.f64)))
(fma.f64 l (*.f64 (PI.f64) -1/3) (/.f64 1 (*.f64 l (PI.f64))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (+.f64 (/.f64 1 (*.f64 l (PI.f64))) (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 l 3))))
(+.f64 (fma.f64 (*.f64 (PI.f64) -1/3) l (/.f64 (/.f64 1 l) (PI.f64))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/3)) (*.f64 (pow.f64 (PI.f64) 3) 1/120)))))
(fma.f64 l (*.f64 (PI.f64) -1/3) (fma.f64 (pow.f64 l 3) (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 3) -1/3) (*.f64 (pow.f64 (PI.f64) 3) 1/120))) (/.f64 1 (*.f64 l (PI.f64)))))
(fma.f64 l (*.f64 (PI.f64) -1/3) (fma.f64 (pow.f64 l 3) (-.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/30) (*.f64 (pow.f64 (PI.f64) 3) 1/18)) (/.f64 1 (*.f64 l (PI.f64)))))
(+.f64 (*.f64 (pow.f64 l 5) (-.f64 (*.f64 -1/720 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/120 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 4))) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 (PI.f64) 2))) (*.f64 -1/5040 (pow.f64 (PI.f64) 5)))))) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) l) (+.f64 (/.f64 1 (*.f64 l (PI.f64))) (*.f64 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 -1/2 (PI.f64)) (*.f64 -1/6 (PI.f64))) (pow.f64 (PI.f64) 2))) (*.f64 1/120 (pow.f64 (PI.f64) 3)))) (pow.f64 l 3)))))
(fma.f64 (pow.f64 l 5) (-.f64 (*.f64 -1/720 (pow.f64 (PI.f64) 5)) (fma.f64 1/120 (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 2) (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/3)) (*.f64 (pow.f64 (PI.f64) 3) 1/120)))) (*.f64 (pow.f64 (PI.f64) 5) -1/5040)))) (+.f64 (fma.f64 (*.f64 (PI.f64) -1/3) l (/.f64 (/.f64 1 l) (PI.f64))) (*.f64 (pow.f64 l 3) (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 (PI.f64) -1/3)) (*.f64 (pow.f64 (PI.f64) 3) 1/120))))))
(fma.f64 (pow.f64 l 5) (-.f64 (*.f64 -1/720 (pow.f64 (PI.f64) 5)) (fma.f64 1/120 (*.f64 (pow.f64 (PI.f64) 4) (*.f64 (PI.f64) -1/3)) (fma.f64 (pow.f64 (PI.f64) 5) -1/5040 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 -1/6 (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 3) -1/3) (*.f64 (pow.f64 (PI.f64) 3) 1/120)))))))) (fma.f64 l (*.f64 (PI.f64) -1/3) (fma.f64 (pow.f64 l 3) (-.f64 (*.f64 1/24 (pow.f64 (PI.f64) 3)) (fma.f64 -1/6 (*.f64 (pow.f64 (PI.f64) 3) -1/3) (*.f64 (pow.f64 (PI.f64) 3) 1/120))) (/.f64 1 (*.f64 l (PI.f64))))))
(fma.f64 (pow.f64 l 5) (-.f64 (*.f64 -1/720 (pow.f64 (PI.f64) 5)) (fma.f64 (pow.f64 (PI.f64) 2) (*.f64 -1/6 (-.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/30) (*.f64 (pow.f64 (PI.f64) 3) 1/18))) (fma.f64 (pow.f64 (PI.f64) 5) -1/5040 (*.f64 (pow.f64 (PI.f64) 5) -1/360)))) (fma.f64 l (*.f64 (PI.f64) -1/3) (fma.f64 (pow.f64 l 3) (-.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/30) (*.f64 (pow.f64 (PI.f64) 3) 1/18)) (/.f64 1 (*.f64 l (PI.f64))))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))
(/.f64 (cos.f64 (*.f64 l (PI.f64))) (sin.f64 (*.f64 l (PI.f64))))

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 l)
4.2b
(*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))
30.7b
(tan.f64 (*.f64 (PI.f64) l))
32.4b
(cbrt.f64 (*.f64 l l))
Compiler

Compiled 60 to 24 computations (60% saved)

series7.0ms (0.1%)

Counts
3 → 24
Calls

12 calls:

TimeVariablePointExpression
1.0ms
l
@0
(*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))
1.0ms
l
@0
(cbrt.f64 (*.f64 l l))
1.0ms
l
@-inf
(cbrt.f64 l)
1.0ms
l
@inf
(cbrt.f64 (*.f64 l l))
1.0ms
l
@-inf
(*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))

rewrite85.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
542×log-prod_binary64
410×exp-prod_binary64
343×pow-prod-down_binary64
292×pow2_binary64
242×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01324
126522
2308422
Stop Event
node limit
Counts
3 → 119
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 l l))
(*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))
(cbrt.f64 l)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 l) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 4) (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (pow.f64 l 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l 1/6) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 5) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l l) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 l) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 l) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 3) 2/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 4) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 6) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (cbrt.f64 l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 l)) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 l) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 1/6) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (*.f64 2 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 2/3 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2/3 (log.f64 l))) 2)) (cbrt.f64 (*.f64 2/3 (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 2/3 (log.f64 l)))) (sqrt.f64 (*.f64 2/3 (log.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 l (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 (log.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 l)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 l) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 2/3 (log.f64 l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 1) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 l)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 l)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 l)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 l)) 1) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 l (PI.f64))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 l (PI.f64)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 l (PI.f64)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 l (PI.f64)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)) (cos.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 F -2) (sin.f64 (*.f64 l (PI.f64)))) (cos.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 F -4) (pow.f64 (tan.f64 (*.f64 l (PI.f64))) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 F -6) (pow.f64 (tan.f64 (*.f64 l (PI.f64))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 F) (sqrt.f64 (tan.f64 (*.f64 l (PI.f64))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64)))))) 2)) (cbrt.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64))))))) (sqrt.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64)))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 F -4) (pow.f64 (tan.f64 (*.f64 l (PI.f64))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 F -2)) (tan.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 F -6) (pow.f64 (tan.f64 (*.f64 l (PI.f64))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (tan.f64 (*.f64 l (PI.f64))) (pow.f64 F -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 1 F) (sqrt.f64 (tan.f64 (*.f64 l (PI.f64)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (fma.f64 -2 (log.f64 F) (log.f64 (tan.f64 (*.f64 l (PI.f64))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 l))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 l)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 l)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 l)) (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l 1/6) (pow.f64 l 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 4)) (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l l) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 l) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 6) 1/18)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 l) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 l 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 l))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 l)))) (sqrt.f64 (log.f64 (cbrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 l) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 l)) 1) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 l)) 1/3) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 l)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 l) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 l)) 1) 1))))))

simplify65.0ms (0.6%)

Algorithm
egg-herbie
Rules
748×distribute-rgt-neg-in_binary64
463×distribute-neg-frac_binary64
371×associate-*r*_binary64
358×associate-*l*_binary64
298×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
077842
1240779
2926741
35631720
Stop Event
node limit
Counts
143 → 129
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))) (*.f64 -1 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7))) (*.f64 -1 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
Outputs
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(neg.f64 (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))
(*.f64 (/.f64 (PI.f64) F) (neg.f64 (/.f64 l F)))
(*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(fma.f64 -1 (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (neg.f64 (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(neg.f64 (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))))
(neg.f64 (fma.f64 (pow.f64 l 3) (/.f64 (pow.f64 (PI.f64) 3) (/.f64 (*.f64 F F) 1/3)) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))) (*.f64 -1 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5)))))
(fma.f64 -1 (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (*.f64 -1 (+.f64 (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)) (*.f64 (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (/.f64 (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))) (*.f64 F F)))) (pow.f64 l 5)))))
(-.f64 (neg.f64 (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)))) (*.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (/.f64 (*.f64 (*.f64 -1/2 (pow.f64 (PI.f64) 2)) (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (*.f64 F F))) (pow.f64 l 5)))
(-.f64 (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3)) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(-.f64 (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3)) (fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6)) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 l 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (pow.f64 F 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (+.f64 (*.f64 1/24 (pow.f64 (PI.f64) 5)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2))))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))) (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 4)) (pow.f64 F 2)))))) (pow.f64 l 7))) (*.f64 -1 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (pow.f64 F 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 (PI.f64) 3)) (*.f64 -1/2 (pow.f64 (PI.f64) 3))) (pow.f64 (PI.f64) 2)) (pow.f64 F 2))))) (pow.f64 l 5))))))
(fma.f64 -1 (*.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3)) (fma.f64 -1 (/.f64 (*.f64 l (PI.f64)) (*.f64 F F)) (fma.f64 -1 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F))) (fma.f64 -1/720 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (fma.f64 1/24 (pow.f64 (PI.f64) 5) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))))) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (/.f64 (*.f64 F F) (pow.f64 (PI.f64) 4))))))) (pow.f64 l 7)) (neg.f64 (*.f64 (-.f64 (/.f64 (*.f64 1/120 (pow.f64 (PI.f64) 5)) (*.f64 F F)) (fma.f64 1/24 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) (/.f64 (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/3) (pow.f64 (PI.f64) 2))) (*.f64 F F)))) (pow.f64 l 5))))))
(*.f64 -1 (+.f64 (fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (/.f64 (*.f64 l (PI.f64)) (*.f64 F F))) (fma.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (/.f64 (pow.f64 (PI.f64) 2) (/.f64 (*.f64 F F) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 (*.f64 -1/2 (pow.f64 (PI.f64) 2)) (*.f64 (pow.f64 (PI.f64) 3) 1/3))))) (*.f64 1/24 (*.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) 1/3) (pow.f64 (PI.f64) 4))))) (pow.f64 l 7) (*.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 5) (*.f64 F F)) -1/30) (/.f64 (*.f64 (*.f64 -1/2 (pow.f64 (PI.f64) 2)) (*.f64 (pow.f64 (PI.f64) 3) 1/3)) (*.f64 F F))) (pow.f64 l 5)))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (neg.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (fma.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4)))) (*.f64 F F)) (pow.f64 l 5) (*.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) 1/840) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 F F)) (-.f64 (*.f64 (pow.f64 (PI.f64) 5) -1/30) (*.f64 -1/6 (*.f64 (PI.f64) (pow.f64 (PI.f64) 4))))) (*.f64 (/.f64 (*.f64 (pow.f64 (PI.f64) 3) 1/72) F) (/.f64 (pow.f64 (PI.f64) 4) F)))) (pow.f64 l 7))))))
(fma.f64 (pow.f64 l 3) (*.f64 (/.f64 (pow.f64 (PI.f64) 3) (*.f64 F F)) -1/3) (fma.f64 (pow.f64 l 7) (+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (PI.f64) 2) (*.f64 F F)) (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6))) (/.f64 (*.f64 (*.f64 (PI.f64) (pow.f64 (PI.f64) 6)) 1/72) (*.f64 F F))) (*.f64 (/.f64 (pow.f64 (PI.f64) 7) (*.f64 F F)) -1/840)) (neg.f64 (fma.f64 (/.f64 (fma.f64 (pow.f64 (PI.f64) 5) -1/30 (*.f64 (pow.f64 (PI.f64) 5) 1/6)) (*.f64 F F)) (pow.f64 l 5) (*.f64 (PI.f64) (/.f64 l (*.f64 F F)))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (cos.f64 (*.f64 l (PI.f64))) (pow.f64 F 2))))
(neg.f64 (/.f64 (sin.f64 (*.f64 l (PI.f64))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64))))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 (*.f64 F F) (cos.f64 (*.f64 l (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 (*.f64 l (PI.f64)))) (*.f64 F (*.f64 F (cos.f64 (*.f64 l (PI.f64))))))

eval391.0ms (3.3%)

Compiler

Compiled 14479 to 6627 computations (54.2% saved)

prune134.0ms (1.1%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New59517612
Fresh9211
Picked101
Done314
Total60820628
Error
0.0b
Counts
628 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
16.6b
(fma.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 6) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
36.9b
(pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 2)
13.1b
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
16.4b
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 4) (cbrt.f64 (pow.f64 (cbrt.f64 l) 2))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
19.8b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (*.f64 l (PI.f64))))
45.8b
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3/2) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
12.2b
(*.f64 l (PI.f64))
26.3b
(fma.f64 (sqrt.f64 (*.f64 l (cbrt.f64 l))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
48.0b
(cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))
15.9b
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
15.5b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (PI.f64) (/.f64 (/.f64 l F) F)))
61.6b
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
27.9b
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
16.3b
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
15.5b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
40.4b
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F))
32.1b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (cbrt.f64 F))))
19.8b
(*.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)))
37.9b
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
Compiler

Compiled 627 to 436 computations (30.5% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 l (PI.f64))
0.6b
(cbrt.f64 (*.f64 l (PI.f64)))
0.7b
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
Compiler

Compiled 18 to 8 computations (55.6% saved)

series4.0ms (0%)

Counts
2 → 0
Calls

6 calls:

TimeVariablePointExpression
1.0ms
l
@-inf
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
1.0ms
l
@0
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
1.0ms
l
@inf
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
0.0ms
l
@-inf
(cbrt.f64 (*.f64 l (PI.f64)))
0.0ms
l
@0
(cbrt.f64 (*.f64 l (PI.f64)))

rewrite97.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
543×pow1_binary64
510×add-log-exp_binary64
510×log1p-expm1-u_binary64
510×expm1-log1p-u_binary64
497×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
114712
2144512
Stop Event
node limit
Counts
2 → 52
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
(cbrt.f64 (*.f64 l (PI.f64)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (PI.f64))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 l (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) (*.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l (PI.f64))) (sqrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) 3) (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) 3) (pow.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) 1) (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) (cbrt.f64 l)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) (pow.f64 (*.f64 l (PI.f64)) 1/6)) (pow.f64 (*.f64 l (PI.f64)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (*.f64 l (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) (pow.f64 (*.f64 l (PI.f64)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 1/3) (pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (PI.f64)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (PI.f64)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 l (PI.f64)))))))))

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 l (PI.f64))
1.7b
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
Compiler

Compiled 20 to 11 computations (45% saved)

series5.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
4.0ms
l
@inf
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
0.0ms
l
@0
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
0.0ms
l
@-inf
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)

rewrite53.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
747×pow1_binary64
697×add-log-exp_binary64
697×log1p-expm1-u_binary64
697×expm1-log1p-u_binary64
685×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0711
11545
221515
Stop Event
node limit
Counts
1 → 47
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (fma.f64 l (PI.f64) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (fma.f64 l (PI.f64) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 l (PI.f64)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 l (PI.f64) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (fma.f64 l (PI.f64) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 l (PI.f64) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 l (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (PI.f64))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2) (cbrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l (PI.f64))) (sqrt.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) (+.f64 (*.f64 l (PI.f64)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1) (/.f64 1 (+.f64 (*.f64 l (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 l (PI.f64) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 l (PI.f64) 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) (+.f64 (*.f64 l (PI.f64)) 2)) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 l (PI.f64)) 2) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) (+.f64 (*.f64 l (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) (-.f64 1 (*.f64 (fma.f64 l (PI.f64) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1) (+.f64 (*.f64 l (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1) (-.f64 (fma.f64 l (PI.f64) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) (+.f64 (*.f64 l (PI.f64)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1)) (neg.f64 (+.f64 (*.f64 l (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (fma.f64 l (PI.f64) -1) 3)) (+.f64 1 (-.f64 (*.f64 (fma.f64 l (PI.f64) -1) (fma.f64 l (PI.f64) -1)) (fma.f64 l (PI.f64) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (fma.f64 l (PI.f64) -1) (fma.f64 l (PI.f64) -1))) (-.f64 1 (fma.f64 l (PI.f64) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 l (PI.f64) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 l (PI.f64) 1)) 2) (cbrt.f64 (fma.f64 l (PI.f64) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 l (PI.f64) 1)) (sqrt.f64 (fma.f64 l (PI.f64) 1)) -1)))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0460
1560
Stop Event
saturated
Counts
59 → 47
Calls
Call 1
Inputs
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
Outputs
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))

localize26.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
0.1b
(/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)
0.2b
(*.f64 (PI.f64) l)
0.7b
(/.f64 (PI.f64) (/.f64 F l))
Compiler

Compiled 34 to 8 computations (76.5% saved)

series10.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
l
@inf
(/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)
1.0ms
l
@inf
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
1.0ms
l
@inf
(/.f64 (PI.f64) (/.f64 F l))
1.0ms
F
@0
(/.f64 (PI.f64) (/.f64 F l))
1.0ms
l
@-inf
(/.f64 (PI.f64) (/.f64 F l))

rewrite108.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
675×log-prod_binary64
420×pow-prod-down_binary64
300×pow2_binary64
290×fma-def_binary64
230×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0937
121137
2341437
Stop Event
node limit
Counts
3 → 219
Calls
Call 1
Inputs
(/.f64 (PI.f64) (/.f64 F l))
(/.f64 (/.f64 (PI.f64) (/.f64 F l)) F)
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (PI.f64) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) (/.f64 l F))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) (/.f64 l F)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) (/.f64 l F)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (/.f64 (PI.f64) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (/.f64 l F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (PI.f64) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)) (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (PI.f64)) (/.f64 1 (/.f64 (neg.f64 F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l F) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 (PI.f64) (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) F) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) 1) (/.f64 (cbrt.f64 (PI.f64)) (/.f64 F l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) 1) (/.f64 (sqrt.f64 (PI.f64)) (/.f64 F l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) F) (/.f64 (sqrt.f64 (PI.f64)) (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) F) (/.f64 (cbrt.f64 (PI.f64)) (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 F l)) -2) (/.f64 (PI.f64) (cbrt.f64 (/.f64 F l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (pow.f64 (cbrt.f64 (/.f64 F l)) 2)) (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (/.f64 F l)) 2)) (/.f64 (sqrt.f64 (PI.f64)) (cbrt.f64 (/.f64 F l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 F l) -1/2) (/.f64 (PI.f64) (sqrt.f64 (/.f64 F l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (sqrt.f64 (/.f64 F l))) (/.f64 (cbrt.f64 (PI.f64)) (sqrt.f64 (/.f64 F l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) 1) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) (neg.f64 F)) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) (sqrt.f64 l)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) (/.f64 l F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) (/.f64 l F)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (/.f64 F l) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 F (*.f64 (PI.f64) l)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (PI.f64) (/.f64 (neg.f64 F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) (/.f64 l F)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 (/.f64 F l) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (PI.f64) (/.f64 l F))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (/.f64 1 (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (/.f64 l F)) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)) (*.f64 (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (*.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (neg.f64 (/.f64 l F))) (/.f64 1 (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (*.f64 (PI.f64) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) F) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) F) (/.f64 (sqrt.f64 (PI.f64)) (/.f64 F l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 F) -2) (/.f64 (*.f64 (PI.f64) (/.f64 l F)) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 F -1/2) (/.f64 (*.f64 (PI.f64) (/.f64 l F)) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) (sqrt.f64 F)) (/.f64 (/.f64 l F) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) F) (/.f64 (cbrt.f64 (PI.f64)) (/.f64 F l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) 1) (/.f64 (/.f64 l F) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)) 1) (/.f64 (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) 1) (/.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) 1) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (/.f64 l F) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) (pow.f64 (cbrt.f64 F) 2)) (/.f64 l (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 F (*.f64 (PI.f64) l)) -2)) (sqrt.f64 F)) (/.f64 (cbrt.f64 (*.f64 (PI.f64) (/.f64 l F))) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) (sqrt.f64 F)) (/.f64 l (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 F (/.f64 F (*.f64 (PI.f64) l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 F (*.f64 (PI.f64) l)) F) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (*.f64 F F) l) (PI.f64)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 F (/.f64 F (*.f64 (PI.f64) l))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (PI.f64) (/.f64 l F)) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (/.f64 1 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3))) (neg.f64 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))) (neg.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 3)) (+.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (-.f64 (pow.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 2) (*.f64 (*.f64 (PI.f64) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 2)) (-.f64 (*.f64 (PI.f64) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (PI.f64)) l) (+.f64 1 (expm1.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (+.f64 1 (expm1.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (exp.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l))) (/.f64 1 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (/.f64 (PI.f64) F)) (/.f64 l F))) (+.f64 1 (expm1.f64 (*.f64 (PI.f64) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) l (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) l (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (PI.f64) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 l (PI.f64) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (/.f64 l F)) (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) l) 1 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) l) 1 (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1 (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1 (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) 1 (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (PI.f64) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (PI.f64) l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (cbrt.f64 (*.f64 (PI.f64) l)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (cbrt.f64 (*.f64 (PI.f64) l)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) 2) (cbrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (PI.f64) l)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (PI.f64) l)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (neg.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (neg.f64 (/.f64 l F))) (/.f64 1 F) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 3) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 2))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (/.f64 1 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (/.f64 1 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (/.f64 1 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (/.f64 1 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) 2) (cbrt.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) (sqrt.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (/.f64 1 F)) (*.f64 (PI.f64) (/.f64 l F)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (-.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))) (+.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))) (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F))) (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)) (*.f64 (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)) 1))))))

simplify102.0ms (0.9%)

Algorithm
egg-herbie
Rules
875×fma-neg_binary64
780×div-sub_binary64
497×associate-/r*_binary64
487×associate-/l/_binary64
403×distribute-neg-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
020794
156794
2154773
3505773
41778773
55025773
67997773
Stop Event
node limit
Counts
291 → 229
Calls
Call 1
Inputs
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
Outputs
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (PI.f64) (*.f64 F (/.f64 F l)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (PI.f64)) (*.f64 -1 (/.f64 (PI.f64) (pow.f64 F 2)))) l))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(neg.f64 (/.f64 l (/.f64 (*.f64 F F) (PI.f64))))
(/.f64 (*.f64 (neg.f64 (PI.f64)) l) (*.f64 F F))
(*.f64 l (/.f64 (neg.f64 (PI.f64)) (*.f64 F F)))
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(+.f64 (*.f64 l (PI.f64)) (*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))))
(*.f64 l (-.f64 (PI.f64) (/.f64 (PI.f64) (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 l (*.f64 F F))))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (exp.f64 (PI.f64)) l)
1.0b
(exp.f64 (PI.f64))
1.9b
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
Compiler

Compiled 15 to 6 computations (60% saved)

series79.0ms (0.7%)

Counts
3 → 24
Calls

6 calls:

TimeVariablePointExpression
61.0ms
l
@inf
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
15.0ms
l
@-inf
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
2.0ms
l
@0
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
0.0ms
l
@0
(pow.f64 (exp.f64 (PI.f64)) l)
0.0ms
l
@inf
(pow.f64 (exp.f64 (PI.f64)) l)

rewrite64.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
542×pow1_binary64
516×add-sqr-sqrt_binary64
498×add-log-exp_binary64
498×log1p-expm1-u_binary64
498×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0616
111716
2138616
Stop Event
node limit
Counts
3 → 64
Calls
Call 1
Inputs
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
(exp.f64 (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) (*.f64 l 1/2)) (*.f64 (PI.f64) (*.f64 l 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (PI.f64) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (PI.f64) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) (cbrt.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (sqrt.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (PI.f64)) (sqrt.f64 l)) (*.f64 (sqrt.f64 (PI.f64)) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) (sqrt.f64 l)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) l)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (exp.f64 (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (PI.f64))) (pow.f64 (cbrt.f64 (exp.f64 (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 (PI.f64))) 2) (cbrt.f64 (exp.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 (PI.f64))) (sqrt.f64 (exp.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (exp.f64 (PI.f64)) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 (PI.f64)) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)) (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)) 2) (cbrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)) (sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 l) (pow.f64 (exp.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 (PI.f64))) 2) l) (pow.f64 (cbrt.f64 (exp.f64 (PI.f64))) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 (PI.f64))) l) (pow.f64 (sqrt.f64 (exp.f64 (PI.f64))) l))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (PI.f64)) (*.f64 2 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (PI.f64)) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 (PI.f64)) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (PI.f64) l))))))

simplify47.0ms (0.4%)

Algorithm
egg-herbie
Rules
917×distribute-rgt-in_binary64
893×distribute-lft-in_binary64
635×distribute-rgt-out_binary64
482×fma-def_binary64
447×associate-*l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
057179
1172177
2659177
33983177
Stop Event
node limit
Counts
88 → 76
Calls
Call 1
Inputs
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 l 3) (+.f64 (*.f64 2 (pow.f64 (PI.f64) 3)) (+.f64 (pow.f64 (PI.f64) 3) (*.f64 -3 (pow.f64 (PI.f64) 3)))))) (+.f64 (*.f64 l (PI.f64)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 l 3) (+.f64 (*.f64 2 (pow.f64 (PI.f64) 3)) (+.f64 (pow.f64 (PI.f64) 3) (*.f64 -3 (pow.f64 (PI.f64) 3)))))) (+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2))) (*.f64 1/24 (*.f64 (+.f64 (*.f64 12 (pow.f64 (PI.f64) 4)) (+.f64 (*.f64 -3 (pow.f64 (PI.f64) 4)) (+.f64 (*.f64 -4 (pow.f64 (PI.f64) 4)) (+.f64 (pow.f64 (PI.f64) 4) (*.f64 -6 (pow.f64 (PI.f64) 4)))))) (pow.f64 l 4))))))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
1
(+.f64 (*.f64 l (PI.f64)) 1)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 (*.f64 l (PI.f64)) 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 (*.f64 l (PI.f64)) (+.f64 1 (*.f64 1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))))))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
(exp.f64 (*.f64 l (PI.f64)))
Outputs
(*.f64 l (PI.f64))
(+.f64 (*.f64 l (PI.f64)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 l 3) (+.f64 (*.f64 2 (pow.f64 (PI.f64) 3)) (+.f64 (pow.f64 (PI.f64) 3) (*.f64 -3 (pow.f64 (PI.f64) 3)))))) (+.f64 (*.f64 l (PI.f64)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2)))))
(*.f64 l (PI.f64))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 l 3) (+.f64 (*.f64 2 (pow.f64 (PI.f64) 3)) (+.f64 (pow.f64 (PI.f64) 3) (*.f64 -3 (pow.f64 (PI.f64) 3)))))) (+.f64 (*.f64 l (PI.f64)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (PI.f64) 2)) (pow.f64 (PI.f64) 2)) (pow.f64 l 2))) (*.f64 1/24 (*.f64 (+.f64 (*.f64 12 (pow.f64 (PI.f64) 4)) (+.f64 (*.f64 -3 (pow.f64 (PI.f64) 4)) (+.f64 (*.f64 -4 (pow.f64 (PI.f64) 4)) (+.f64 (pow.f64 (PI.f64) 4) (*.f64 -6 (pow.f64 (PI.f64) 4)))))) (pow.f64 l 4))))))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
1
(+.f64 (*.f64 l (PI.f64)) 1)
(fma.f64 l (PI.f64) 1)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 (*.f64 l (PI.f64)) 1))
(fma.f64 1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 l l)) (fma.f64 l (PI.f64) 1))
(fma.f64 (*.f64 (*.f64 1/2 l) l) (pow.f64 (PI.f64) 2) (fma.f64 l (PI.f64) 1))
(fma.f64 l (PI.f64) (fma.f64 1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 l l)) 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 l 2) (pow.f64 (PI.f64) 2))) (+.f64 (*.f64 l (PI.f64)) (+.f64 1 (*.f64 1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3))))))
(fma.f64 1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 l l)) (+.f64 (fma.f64 l (PI.f64) 1) (*.f64 1/6 (*.f64 (pow.f64 l 3) (pow.f64 (PI.f64) 3)))))
(fma.f64 1/2 (*.f64 l (*.f64 l (pow.f64 (PI.f64) 2))) (fma.f64 l (PI.f64) (fma.f64 (*.f64 1/6 (pow.f64 l 3)) (pow.f64 (PI.f64) 3) 1)))
(fma.f64 1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 l l)) (fma.f64 l (PI.f64) (fma.f64 (pow.f64 l 3) (*.f64 1/6 (pow.f64 (PI.f64) 3)) 1)))
(fma.f64 1/2 (*.f64 (pow.f64 (PI.f64) 2) (*.f64 l l)) (fma.f64 (pow.f64 l 3) (*.f64 1/6 (pow.f64 (PI.f64) 3)) (fma.f64 l (PI.f64) 1)))
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)
(exp.f64 (*.f64 l (PI.f64)))
(pow.f64 (exp.f64 l) (PI.f64))
(pow.f64 (exp.f64 (PI.f64)) l)

localize50.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 l)
4.2b
(*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2)))
16.7b
(sqrt.f64 (*.f64 l (cbrt.f64 l)))
30.7b
(tan.f64 (*.f64 (PI.f64) l))
Compiler

Compiled 63 to 24 computations (61.9% saved)

series53.0ms (0.4%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
51.0ms
l
@0
(sqrt.f64 (*.f64 l (cbrt.f64 l)))
1.0ms
l
@-inf
(sqrt.f64 (*.f64 l (cbrt.f64 l)))
0.0ms
l
@inf
(sqrt.f64 (*.f64 l (cbrt.f64 l)))

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
387×pow1_binary64
373×add-sqr-sqrt_binary64
363×add-log-exp_binary64
363×log1p-expm1-u_binary64
363×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058
1986
211526
Stop Event
node limit
Counts
1 → 52
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 l (cbrt.f64 l)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 l) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 1 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 l)) (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 l)) l) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 l)) (pow.f64 (*.f64 l (pow.f64 (cbrt.f64 l) 2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (cbrt.f64 l))) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l 1/6) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l 1/6) (pow.f64 (*.f64 (sqrt.f64 l) l) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (pow.f64 l 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 l (cbrt.f64 l))) 2)) (pow.f64 (*.f64 (cbrt.f64 (*.f64 l (cbrt.f64 l))) (pow.f64 (cbrt.f64 l) 2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 l 1/6)) (pow.f64 (*.f64 (pow.f64 l 1/6) l) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 l)) (pow.f64 (*.f64 (sqrt.f64 l) (cbrt.f64 l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 l)) (pow.f64 (*.f64 (pow.f64 l 1/6) (pow.f64 (cbrt.f64 l) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 l) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 2/3) (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2/3) (pow.f64 (pow.f64 (cbrt.f64 l) 2) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) 2/3) (pow.f64 (cbrt.f64 l) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 l) 2/3) (pow.f64 (sqrt.f64 l) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 l (cbrt.f64 l))) 2) 2/3) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 l 1/6)) 2/3) (pow.f64 (pow.f64 l 1/6) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 1 1/3) 2) (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) 1/2) (cbrt.f64 (pow.f64 l 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (pow.f64 l 1/6)) 1/2) (sqrt.f64 (pow.f64 l 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cbrt.f64 l) (sqrt.f64 l)) 1/2) (sqrt.f64 (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) 1/2) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (sqrt.f64 l)) 1/2) (sqrt.f64 (pow.f64 l 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (pow.f64 (cbrt.f64 l) 2)) 1/3) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 l (cbrt.f64 l)) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) 1/3) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 l (cbrt.f64 l)) (sqrt.f64 l)) 1/3) (cbrt.f64 (pow.f64 l 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 l (cbrt.f64 l)) (cbrt.f64 l)) 1/3) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) 2) 3) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 l 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 l) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (cbrt.f64 l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 l) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l l) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 l l))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 (log.f64 l)))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

eval226.0ms (1.9%)

Compiler

Compiled 12737 to 4672 computations (63.3% saved)

prune154.0ms (1.3%)

Pruning

26 alts after pruning (23 fresh and 3 done)

PrunedKeptTotal
New64521666
Fresh12214
Picked101
Done235
Total66026686
Error
0.0b
Counts
686 → 26
Alt Table
Click to see full alt table
StatusErrorProgram
15.6b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 F) (*.f64 (PI.f64) (/.f64 l F))))
37.9b
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))
26.6b
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
41.0b
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
16.6b
(fma.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 6) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
13.0b
(*.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))
48.0b
(cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))
39.8b
(/.f64 1 (/.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))))
12.9b
(*.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
61.9b
(log.f64 1)
13.1b
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
13.3b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
36.9b
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F))
50.6b
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
29.0b
(fma.f64 (sqrt.f64 (*.f64 l (cbrt.f64 l))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
13.1b
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
15.5b
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
46.4b
(/.f64 1 (/.f64 (+.f64 (*.f64 l (PI.f64)) 2) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1)))
61.6b
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
13.3b
(pow.f64 (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 l)) 3)
16.3b
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
12.2b
(*.f64 l (PI.f64))
54.5b
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (PI.f64) (*.f64 F (/.f64 F l))))
13.7b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) 3) (cbrt.f64 (*.f64 l (PI.f64))))
Compiler

Compiled 724 to 503 computations (30.5% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)
0.6b
(cbrt.f64 l)
0.6b
(cbrt.f64 (*.f64 l (PI.f64)))
1.0b
(cbrt.f64 (PI.f64))
Compiler

Compiled 43 to 17 computations (60.5% saved)

series2.0ms (0%)

Counts
2 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
l
@-inf
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)
1.0ms
l
@0
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)
1.0ms
l
@inf
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)

rewrite75.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
632×pow1_binary64
583×add-log-exp_binary64
583×log1p-expm1-u_binary64
583×expm1-log1p-u_binary64
567×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
115814
2168814
Stop Event
node limit
Counts
2 → 37
Calls
Call 1
Inputs
(cbrt.f64 (PI.f64))
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (PI.f64))) (pow.f64 (cbrt.f64 (cbrt.f64 (PI.f64))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (PI.f64))) 2) (cbrt.f64 (cbrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) 1/6) (pow.f64 (PI.f64) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) 1/3) (cbrt.f64 (cbrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (PI.f64)) 1/3) (pow.f64 (sqrt.f64 (PI.f64)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (PI.f64) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (PI.f64) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (cbrt.f64 (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))) (cbrt.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 (cbrt.f64 (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (*.f64 (PI.f64) l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (PI.f64) l) 1/6) (*.f64 (pow.f64 (*.f64 (PI.f64) l) 1/6) (cbrt.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 (PI.f64) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (PI.f64) l)) (cbrt.f64 l)) (cbrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 (*.f64 (PI.f64) l)))))))))

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize2.0ms (0%)

Compiler

Compiled 5 to 5 computations (0% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (*.f64 (/.f64 (PI.f64) F) l) F)
0.2b
(*.f64 (/.f64 (PI.f64) F) l)
0.2b
(/.f64 (PI.f64) F)
0.2b
(*.f64 (PI.f64) l)
Compiler

Compiled 34 to 8 computations (76.5% saved)

series7.0ms (0.1%)

Counts
3 → 48
Calls

15 calls:

TimeVariablePointExpression
1.0ms
l
@inf
(*.f64 (/.f64 (PI.f64) F) l)
1.0ms
F
@0
(/.f64 (PI.f64) F)
1.0ms
F
@-inf
(/.f64 (PI.f64) F)
0.0ms
F
@-inf
(*.f64 (/.f64 (PI.f64) F) l)
0.0ms
F
@inf
(/.f64 (PI.f64) F)

rewrite138.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
904×pow1_binary64
839×add-log-exp_binary64
839×log1p-expm1-u_binary64
839×expm1-log1p-u_binary64
820×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0724
115124
2220924
Stop Event
node limit
Counts
3 → 95
Calls
Call 1
Inputs
(/.f64 (PI.f64) F)
(*.f64 (/.f64 (PI.f64) F) l)
(/.f64 (*.f64 (/.f64 (PI.f64) F) l) F)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (PI.f64) F)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) F) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (PI.f64) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (PI.f64) F)) (pow.f64 (cbrt.f64 (/.f64 (PI.f64) F)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (PI.f64) F)) 2) (cbrt.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (PI.f64) F)) (sqrt.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (PI.f64)) (/.f64 1 (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 F) 2)) (/.f64 (PI.f64) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 F)) (/.f64 (PI.f64) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) 1) (/.f64 (cbrt.f64 (PI.f64)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) 1) (/.f64 (sqrt.f64 (PI.f64)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (PI.f64)) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (sqrt.f64 F)) (/.f64 (cbrt.f64 (PI.f64)) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (PI.f64) F) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (PI.f64) F) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (PI.f64) F)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (PI.f64) F)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 F (PI.f64)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (PI.f64) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (PI.f64) F) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (PI.f64) F) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (PI.f64) 3) (pow.f64 F 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (PI.f64) F)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 (PI.f64) F) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (PI.f64) (/.f64 F l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 l (/.f64 F (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 F (*.f64 (PI.f64) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (PI.f64) l) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (PI.f64) l)) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (PI.f64) l) 1) F)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (PI.f64) l) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (PI.f64) l) (sqrt.f64 F)) (sqrt.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (PI.f64)) l) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (neg.f64 (PI.f64))) (neg.f64 F))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (PI.f64) F) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (/.f64 (PI.f64) F)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (PI.f64) F) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 l 3) (pow.f64 (/.f64 (PI.f64) F) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (PI.f64) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (PI.f64) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (PI.f64) F) l)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) F) (/.f64 1 (/.f64 F l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (PI.f64) F) (*.f64 l (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (*.f64 (/.f64 (PI.f64) F) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) l) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 2) (*.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) 2) (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (*.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (/.f64 1 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) (sqrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (PI.f64) F) (neg.f64 l)) (/.f64 1 (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (*.f64 (/.f64 (PI.f64) F) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (sqrt.f64 F)) (/.f64 (/.f64 (PI.f64) F) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) 1) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l 1) (/.f64 (/.f64 (PI.f64) F) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 2) 1) (/.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 1) (/.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) (pow.f64 (cbrt.f64 F) 2)) (/.f64 l (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (pow.f64 (cbrt.f64 F) 2)) (/.f64 (/.f64 (PI.f64) F) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 F) 2)) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 2) (pow.f64 (cbrt.f64 F) 2)) (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (cbrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (PI.f64) F) (sqrt.f64 F)) (/.f64 l (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 F)) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) 2) (sqrt.f64 F)) (/.f64 (cbrt.f64 (*.f64 (/.f64 (PI.f64) F) l)) (sqrt.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 F (PI.f64)) (/.f64 F l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (/.f64 (PI.f64) F) l) (neg.f64 F)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (PI.f64) F) l) 3) (pow.f64 F 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (/.f64 (PI.f64) F) F) l)))))))

simplify105.0ms (0.9%)

Algorithm
egg-herbie
Rules
976×associate-/r/_binary64
861×*-commutative_binary64
612×times-frac_binary64
574×associate-/l/_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09456
119456
239456
382456
4223456
5849456
63871456
74694456
84904456
95123456
105351456
115680456
127148456
Stop Event
node limit
Counts
143 → 99
Calls
Call 1
Inputs
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
Outputs
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) F)
(/.f64 l (/.f64 F (PI.f64)))
(*.f64 (/.f64 l F) (PI.f64))
(*.f64 (PI.f64) (/.f64 l F))
(*.f64 l (/.f64 (PI.f64) F))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))
(/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2))
(/.f64 l (/.f64 (*.f64 F F) (PI.f64)))
(*.f64 (/.f64 l F) (/.f64 (PI.f64) F))
(*.f64 (PI.f64) (/.f64 (/.f64 l F) F))
(*.f64 l (/.f64 (/.f64 (PI.f64) F) F))
(*.f64 l (/.f64 (PI.f64) (*.f64 F F)))

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
0.4b
(*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2))
0.5b
(pow.f64 (cbrt.f64 l) 2)
0.6b
(cbrt.f64 l)
Compiler

Compiled 26 to 14 computations (46.2% saved)

series51.0ms (0.4%)

Counts
3 → 12
Calls

9 calls:

TimeVariablePointExpression
43.0ms
l
@inf
(*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2))
2.0ms
l
@-inf
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
2.0ms
l
@0
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
1.0ms
l
@-inf
(*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2))
1.0ms
l
@0
(*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2))

rewrite53.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
671×pow1_binary64
619×add-log-exp_binary64
619×log1p-expm1-u_binary64
619×expm1-log1p-u_binary64
604×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
116221
2178721
Stop Event
node limit
Counts
3 → 42
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 l) 2)
(*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2))
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 l) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 l) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (*.f64 (cbrt.f64 (cbrt.f64 l)) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (cbrt.f64 l))) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (pow.f64 l 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l 1/6) (*.f64 (pow.f64 l 1/6) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 l) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) (cbrt.f64 (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 l (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 l l))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 l) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 l))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 l (PI.f64)) 2) (PI.f64)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 l) (sqrt.f64 (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 l (cbrt.f64 l)) (pow.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 l) 2)) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 l (PI.f64)) 2) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 l l) (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 l l)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (cbrt.f64 l) 2) (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) l))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 l (*.f64 (pow.f64 (*.f64 l (PI.f64)) 2) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (PI.f64))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0460
1560
Stop Event
saturated
Counts
54 → 43
Calls
Call 1
Inputs
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
Outputs
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))
(*.f64 l (PI.f64))

localize47.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 l) (PI.f64))
0.6b
(cbrt.f64 l)
9.8b
(/.f64 (neg.f64 l) (*.f64 F F))
16.7b
(sqrt.f64 (*.f64 l (cbrt.f64 l)))
Compiler

Compiled 57 to 12 computations (78.9% saved)

series5.0ms (0%)

Counts
2 → 24
Calls

9 calls:

TimeVariablePointExpression
1.0ms
l
@0
(/.f64 (neg.f64 l) (*.f64 F F))
1.0ms
F
@0
(/.f64 (neg.f64 l) (*.f64 F F))
1.0ms
l
@-inf
(*.f64 (cbrt.f64 l) (PI.f64))
1.0ms
l
@inf
(/.f64 (neg.f64 l) (*.f64 F F))
1.0ms
l
@-inf
(/.f64 (neg.f64 l) (*.f64 F F))

rewrite94.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
844×pow1_binary64
783×add-log-exp_binary64
782×log1p-expm1-u_binary64
782×expm1-log1p-u_binary64
762×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0916
118814
2261514
Stop Event
node limit
Counts
2 → 50
Calls
Call 1
Inputs
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 (cbrt.f64 l) (PI.f64))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 l (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 l (pow.f64 F -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (*.f64 F F)) (*.f64 l (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (pow.f64 F -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (/.f64 1 (*.f64 F (neg.f64 F))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 l (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 l (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (pow.f64 F -2))) (pow.f64 (cbrt.f64 (*.f64 l (pow.f64 F -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (pow.f64 F -2))) 2) (cbrt.f64 (*.f64 l (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) F) (/.f64 (sqrt.f64 l) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 F -2) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 l (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l F) (/.f64 1 F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 F) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 F) (/.f64 l F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) 1) (/.f64 (cbrt.f64 l) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) 1) (/.f64 (sqrt.f64 l) (*.f64 F F)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 F 4))) (/.f64 l (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) (cbrt.f64 (pow.f64 F 4))) (/.f64 (sqrt.f64 l) (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (cbrt.f64 (pow.f64 F 4))) (/.f64 l (pow.f64 (cbrt.f64 F) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) F) (/.f64 (cbrt.f64 l) F))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (cbrt.f64 (pow.f64 F 4))) (cbrt.f64 (*.f64 l (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (pow.f64 F -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (pow.f64 F -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (pow.f64 F -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 l) F) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 F (/.f64 l F)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 l (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 l l) (pow.f64 F 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (pow.f64 F -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (pow.f64 F -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 l 3) (pow.f64 (*.f64 F F) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (pow.f64 F -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (pow.f64 F -2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cbrt.f64 l) (PI.f64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 l) (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cbrt.f64 l) (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 l) (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 l) (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 l) (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 l) (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 l (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) l))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 l) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 l) (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cbrt.f64 l) (PI.f64))))))))

simplify66.0ms (0.6%)

Algorithm
egg-herbie
Rules
911×fma-def_binary64
647×div-sub_binary64
632×times-frac_binary64
516×associate-/l/_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08216
117216
236216
379216
4225216
5874216
63939216
75277216
85883216
97748216
Stop Event
node limit
Counts
74 → 52
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
Outputs
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))
(*.f64 -1 (/.f64 l (pow.f64 F 2)))
(neg.f64 (/.f64 l (*.f64 F F)))
(/.f64 (neg.f64 l) (*.f64 F F))

eval199.0ms (1.7%)

Compiler

Compiled 9239 to 3341 computations (63.8% saved)

prune386.0ms (3.3%)

Pruning

28 alts after pruning (20 fresh and 8 done)

PrunedKeptTotal
New5289537
Fresh71118
Picked011
Done077
Total53528563
Error
0.0b
Counts
563 → 28
Alt Table
Click to see full alt table
StatusErrorProgram
48.0b
(cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))
39.1b
(*.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l))
12.9b
(*.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (*.f64 (/.f64 1 F) (PI.f64)) l) F))
61.9b
(log.f64 1)
13.1b
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
13.3b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
36.9b
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F))
26.0b
(*.f64 (*.f64 (PI.f64) (sqrt.f64 (*.f64 l (cbrt.f64 l)))) (cbrt.f64 l))
12.2b
(*.f64 l (PI.f64))
13.4b
(*.f64 (*.f64 (PI.f64) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3/2) 2)) (cbrt.f64 l))
50.6b
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
39.1b
(*.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 2))))
29.0b
(fma.f64 (sqrt.f64 (*.f64 l (cbrt.f64 l))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
54.5b
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
12.9b
(*.f64 (cbrt.f64 l) (*.f64 (-.f64 (+.f64 1 (cbrt.f64 (PI.f64))) 1) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
13.1b
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
15.5b
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
61.6b
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
13.3b
(pow.f64 (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 l)) 3)
13.7b
(*.f64 (*.f64 (PI.f64) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 3) 2)) (cbrt.f64 l))
15.5b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (PI.f64) (*.f64 F (/.f64 F l))))
29.2b
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
37.9b
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))
13.0b
(*.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))
48.1b
(cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3)))
13.7b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) 3) (cbrt.f64 (*.f64 l (PI.f64))))
Compiler

Compiled 356 to 257 computations (27.8% saved)

regimes1.3s (10.8%)

Counts
65 → 3
Calls
Call 1
Inputs
(log.f64 1)
(*.f64 l (PI.f64))
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (PI.f64) (*.f64 F (/.f64 F l))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (PI.f64) (/.f64 (/.f64 l F) F)))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (*.f64 (/.f64 1 F) (PI.f64)) l) F))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 F) (*.f64 (PI.f64) (/.f64 l F))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (*.f64 l (PI.f64))))
(cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)
(pow.f64 (sqrt.f64 (*.f64 l (PI.f64))) 2)
(pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 3)
(cbrt.f64 (pow.f64 (*.f64 l (PI.f64)) 3))
(*.f64 (*.f64 (PI.f64) (cbrt.f64 (*.f64 l l))) (cbrt.f64 l))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F)))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (*.f64 (/.f64 1 F) (/.f64 1 F)) (tan.f64 (*.f64 (PI.f64) l))))
(log.f64 (pow.f64 (exp.f64 (PI.f64)) l))
(pow.f64 (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 l)) 3)
(cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3)))
(*.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)))
(*.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))
(*.f64 (*.f64 (PI.f64) (sqrt.f64 (*.f64 l (cbrt.f64 l)))) (cbrt.f64 l))
(/.f64 1 (/.f64 (+.f64 (*.f64 l (PI.f64)) 2) (+.f64 (pow.f64 (fma.f64 l (PI.f64) 1) 2) -1)))
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(-.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (/.f64 (PI.f64) (/.f64 F l)) F))
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (/.f64 (neg.f64 (PI.f64)) (/.f64 (*.f64 F F) l)))
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 1 (/.f64 (cos.f64 (*.f64 (PI.f64) l)) (sin.f64 (*.f64 (PI.f64) l)))) (*.f64 F F)))
(*.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 2))))
(*.f64 (*.f64 (PI.f64) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 3) 2)) (cbrt.f64 l))
(*.f64 (cbrt.f64 l) (*.f64 (cbrt.f64 (PI.f64)) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
(-.f64 (log.f64 (pow.f64 (exp.f64 (PI.f64)) l)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(*.f64 (cbrt.f64 l) (*.f64 (-.f64 (+.f64 1 (cbrt.f64 (PI.f64))) 1) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F))
(-.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 l 3))) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
(fma.f64 (sqrt.f64 (*.f64 l (cbrt.f64 l))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 (cbrt.f64 F) F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 (cbrt.f64 F) 2))))
(*.f64 (*.f64 (PI.f64) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3/2) 2)) (cbrt.f64 l))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) 3) (cbrt.f64 (*.f64 l (PI.f64))))
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(/.f64 1 (/.f64 (fma.f64 (/.f64 (PI.f64) F) (/.f64 l F) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (*.f64 (/.f64 (PI.f64) F) (/.f64 l F)) 2))))
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(fma.f64 (sqrt.f64 (*.f64 l (cbrt.f64 l))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) F) (/.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F)))
(fma.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 6) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (PI.f64) (/.f64 (neg.f64 l) (*.f64 F F))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 l (PI.f64)))) (pow.f64 (cbrt.f64 (*.f64 l (PI.f64))) 2)))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(fma.f64 (cbrt.f64 (*.f64 l l)) (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 l) 2)) 3/2) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (pow.f64 (cbrt.f64 F) 2)) (/.f64 (sqrt.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)) (cbrt.f64 F))))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2) (cbrt.f64 (*.f64 l (cbrt.f64 l)))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
(/.f64 1 (/.f64 (fma.f64 (tan.f64 (*.f64 (PI.f64) l)) (pow.f64 F -2) (*.f64 (PI.f64) l)) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (sqrt.f64 (tan.f64 (*.f64 (PI.f64) l))) F) 4))))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 l)) 4) (cbrt.f64 (pow.f64 (cbrt.f64 l) 2))) (*.f64 (cbrt.f64 l) (PI.f64)) (*.f64 (tan.f64 (*.f64 (PI.f64) l)) (neg.f64 (pow.f64 F -2))))
Outputs
(*.f64 l (PI.f64))
(-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F))
(*.f64 l (PI.f64))
Calls

10 calls:

360.0ms
(*.f64 F F)
163.0ms
F
119.0ms
l
118.0ms
(*.f64 (PI.f64) l)
117.0ms
(*.f64 (PI.f64) l)
Results
ErrorSegmentsBranch
6.5b3F
0.2b3l
6.1b3(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
6.1b3(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
0.2b3(*.f64 (PI.f64) l)
0.2b3(*.f64 (PI.f64) l)
7.7b2(/.f64 1 (*.f64 F F))
7.7b2(/.f64 1 (*.f64 F F))
7.7b2(*.f64 F F)
7.7b2(*.f64 F F)
Compiler

Compiled 985 to 392 computations (60.2% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.34290812865695e-11
18.081279570753722
0.0ms
-1.171148552148782e+46
-6.110033088159472e+45
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes97.0ms (0.8%)

Counts
7 → 3
Calls
Call 1
Inputs
(log.f64 1)
(*.f64 l (PI.f64))
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 -1 (/.f64 (*.f64 l (PI.f64)) (pow.f64 F 2)))
(*.f64 l (-.f64 (PI.f64) (/.f64 (/.f64 (PI.f64) F) F)))
Outputs
(*.f64 l (PI.f64))
(*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F)))
(*.f64 l (PI.f64))
Calls

2 calls:

73.0ms
l
20.0ms
F
Results
ErrorSegmentsBranch
10.7b2F
0.2b3l
Compiler

Compiled 55 to 30 computations (45.5% saved)

bsearch440.0ms (3.7%)

Algorithm
binary-search
Steps
TimeLeftRight
188.0ms
2.3373202506908253e-11
5.755450042223917
252.0ms
-3.727881623387901e+45
-1.9448839368712364e+45
Compiler

Compiled 201 to 144 computations (28.4% saved)

regimes48.0ms (0.4%)

Counts
4 → 3
Calls
Call 1
Inputs
(log.f64 1)
(*.f64 l (PI.f64))
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
Outputs
(*.f64 l (PI.f64))
(*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F))
(*.f64 l (PI.f64))
Calls

2 calls:

35.0ms
l
11.0ms
F
Results
ErrorSegmentsBranch
10.0b3F
12.2b1l
Compiler

Compiled 28 to 18 computations (35.7% saved)

bsearch1.1s (9.2%)

Algorithm
binary-search
Steps
TimeLeftRight
901.0ms
-7.630539572183668e-207
-1.0049936927995714e-217
183.0ms
-7.30196928516257e-55
-1.3571632123859954e-68
Compiler

Compiled 191 to 144 computations (24.6% saved)

regimes54.0ms (0.5%)

Accuracy

Total -49.9b remaining (-409.5%)

Threshold costs -49.9b (-409.5%)

Counts
3 → 1
Calls
Call 1
Inputs
(log.f64 1)
(*.f64 l (PI.f64))
(-.f64 (+.f64 1 (*.f64 l (PI.f64))) 1)
Outputs
(*.f64 l (PI.f64))
Calls

2 calls:

10.0ms
F
8.0ms
l
Results
ErrorSegmentsBranch
12.2b1F
12.2b1l
Compiler

Compiled 20 to 14 computations (30% saved)

simplify17.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
039125
155125
273125
396125
4107125
5112125
6113125
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 (PI.f64) l) -9999999999999999931398190359470212947659194368) (*.f64 l (PI.f64)) (if (<=.f64 (*.f64 (PI.f64) l) 7922816251426434048/79228162514264337593543950336) (-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F)) (*.f64 l (PI.f64))))
(if (<=.f64 l -3727881623387900877219710184044453331302612992) (*.f64 l (PI.f64)) (if (<=.f64 l 1861861819085211904/79228162514264337593543950336) (*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F))) (*.f64 l (PI.f64))))
(if (<=.f64 F -5039633983824767/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 l (PI.f64)) (if (<=.f64 F -2711053400359889/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F)) (*.f64 l (PI.f64))))
(*.f64 l (PI.f64))
(log.f64 1)
Outputs
(if (<=.f64 (*.f64 (PI.f64) l) -9999999999999999931398190359470212947659194368) (*.f64 l (PI.f64)) (if (<=.f64 (*.f64 (PI.f64) l) 7922816251426434048/79228162514264337593543950336) (-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 (/.f64 (PI.f64) F) l) F)) (*.f64 l (PI.f64))))
(if (<=.f64 (*.f64 (PI.f64) l) -9999999999999999931398190359470212947659194368) (*.f64 (PI.f64) l) (if (<=.f64 (*.f64 (PI.f64) l) 7737125245533627/77371252455336267181195264) (-.f64 (*.f64 (PI.f64) l) (/.f64 (*.f64 l (/.f64 (PI.f64) F)) F)) (*.f64 (PI.f64) l)))
(if (<=.f64 l -3727881623387900877219710184044453331302612992) (*.f64 l (PI.f64)) (if (<=.f64 l 1861861819085211904/79228162514264337593543950336) (*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F))) (*.f64 l (PI.f64))))
(if (<=.f64 l -3727881623387900877219710184044453331302612992) (*.f64 (PI.f64) l) (if (<=.f64 l 7272897730801609/309485009821345068724781056) (*.f64 (PI.f64) (-.f64 l (/.f64 (/.f64 l F) F))) (*.f64 (PI.f64) l)))
(if (<=.f64 F -5039633983824767/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 l (PI.f64)) (if (<=.f64 F -2711053400359889/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F)) (*.f64 l (PI.f64))))
(if (<=.f64 F -5039633983824767/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 (PI.f64) l) (if (<=.f64 F -2711053400359889/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 (/.f64 l F) (/.f64 (neg.f64 (PI.f64)) F)) (*.f64 (PI.f64) l)))
(if (<=.f64 F -5039633983824767/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 (PI.f64) l) (if (<=.f64 F -2711053400359889/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 (/.f64 (PI.f64) F) (/.f64 (neg.f64 l) F)) (*.f64 (PI.f64) l)))
(*.f64 l (PI.f64))
(*.f64 (PI.f64) l)
(log.f64 1)
0
Compiler

Compiled 88 to 49 computations (44.3% saved)

soundness180.0ms (1.5%)

Algorithm
egg-herbie
Rules
607×fma-neg_binary64
413×fma-def_binary64
406×associate-*r*_binary64
404×associate-*l*_binary64
385×distribute-neg-frac_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01123
12520
25720
313920
423620
537520
650120
764120
883320
9110320
10115720
0891282
12591208
29431154
358891124
Stop Event
node limit
saturated
Compiler

Compiled 91 to 59 computations (35.2% saved)

end145.0ms (1.2%)

Compiler

Compiled 80 to 34 computations (57.5% saved)

Profiling

Loading profile data...