Details

Time bar (total: 7.5s)

analyze1.2s (15.8%)

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
6.2%93.6%0.1%7
9.4%90.5%0.1%8
14%85.8%0.1%9
19.5%80.4%0.1%10
20.7%79.2%0.1%11
22%77.8%0.1%12
23.5%76.4%0.1%13
23.8%76%0.1%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample73.0ms (1%)

Algorithm
intervals
Results
32.0ms111×body1024valid
11.0ms79×body128valid
8.0ms41×body512valid
7.0ms10×body2048valid
2.0ms15×body256valid
Compiler

Compiled 28 to 20 computations (28.6% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r/_binary64 associate-/l*_binary64
+-commutative_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11314
21714
32014
42114
52114

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
11.6b
Counts
2 → 1
Alt Table
StatusErrorProgram
11.6b
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b)))
Compiler

Compiled 36 to 24 computations (33.3% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.1b
(*.f64 r (sin.f64 b))
0.2b
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b)))
3.1b
(cos.f64 (+.f64 a b))

rewrite65.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
10×add-exp-log_binary64 add-cbrt-cube_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64 *-un-lft-identity_binary64
pow1_binary64
add-log-exp_binary64 times-frac_binary64 associate-/r*_binary64 associate-*l*_binary64 associate-*r*_binary64
Counts
3 → 47
Calls

3 calls:

5.0ms
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b)))
4.0ms
(*.f64 r (sin.f64 b))
4.0ms
(cos.f64 (+.f64 a b))
Compiler

Compiled 706 to 152 computations (78.5% saved)

series115.0ms (1.5%)

Error
10.5b
Counts
3 → 30
Calls

3 calls:

62.0ms
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b)))
20.0ms
(cos.f64 (+.f64 a b))
17.0ms
(*.f64 r (sin.f64 b))
Compiler

Compiled 1222 to 731 computations (40.2% saved)

simplify93.0ms (1.2%)

Algorithm
egg-herbie
Rules
475×associate-*l*_binary64
470×associate-*r*_binary64
377×associate-/r*_binary64
321×associate-*l/_binary64
262×associate-/l/_binary64
Counts
77 → 58
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01321213
13361091
212101073
343271073
447691073
550201073

prune61.0ms (0.8%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New49958
Fresh000
Picked101
Done000
Total50959
Error
0.1b
Counts
59 → 9
Alt Table
StatusErrorProgram
11.8b
(/.f64 (*.f64 r (sin.f64 b)) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))
0.3b
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
11.6b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
11.7b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
32.9b
(*.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
11.7b
(*.f64 (*.f64 r (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a))))
32.3b
(*.f64 (/.f64 r (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))
12.3b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (cbrt.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (cbrt.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
12.0b
(*.f64 (/.f64 r (*.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (cbrt.f64 (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))
Compiler

Compiled 1025 to 369 computations (64% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 r (sin.f64 b))
0.1b
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
0.2b
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))

rewrite152.0ms (2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
14×add-sqr-sqrt_binary64
13×add-exp-log_binary64 add-cbrt-cube_binary64
10×add-cube-cbrt_binary64 *-un-lft-identity_binary64
pow1_binary64
add-log-exp_binary64 associate-*l*_binary64 associate-*r*_binary64
Counts
4 → 76
Calls

4 calls:

9.0ms
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
5.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
5.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
4.0ms
(*.f64 r (sin.f64 b))
Compiler

Compiled 1877 to 293 computations (84.4% saved)

series201.0ms (2.7%)

Error
0.1b
Counts
4 → 38
Calls

4 calls:

104.0ms
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
34.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
23.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
19.0ms
(*.f64 r (sin.f64 b))
Compiler

Compiled 1919 to 1100 computations (42.7% saved)

simplify125.0ms (1.7%)

Algorithm
egg-herbie
Rules
511×associate-/r*_binary64
338×associate-*l/_binary64
328×associate-/l/_binary64
308×associate-/r/_binary64
191×distribute-rgt-neg-in_binary64
Counts
114 → 70
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01922488
15122264
219392065
347392065
449842065
549612065

prune81.0ms (1.1%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New61970
Fresh718
Picked101
Done000
Total691079
Error
0.0b
Counts
79 → 10
Alt Table
StatusErrorProgram
0.4b
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))
0.4b
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))
27.3b
(/.f64 (*.f64 (/.f64 r (sqrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))) (sin.f64 b)) (sqrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.5b
(/.f64 (*.f64 r (sin.f64 b)) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3)))
0.9b
(/.f64 (*.f64 (/.f64 r (*.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (sin.f64 b)) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.7b
(/.f64 1 (/.f64 (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)) r))
1.2b
(*.f64 (*.f64 (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))))
1.2b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (cbrt.f64 (*.f64 (sin.f64 b) r))) (cbrt.f64 (*.f64 (sin.f64 b) r))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
11.7b
(*.f64 (*.f64 r (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a))))
0.4b
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
Compiler

Compiled 1742 to 577 computations (66.9% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (cos.f64 b) (cos.f64 a))
0.1b
(-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))
0.2b
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))
0.3b
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b))

rewrite157.0ms (2.1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
31×add-sqr-sqrt_binary64
29×*-un-lft-identity_binary64
19×add-cube-cbrt_binary64
18×times-frac_binary64
13×add-exp-log_binary64 add-cbrt-cube_binary64
Counts
4 → 94
Calls

4 calls:

9.0ms
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))
7.0ms
(-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))
5.0ms
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b))
4.0ms
(*.f64 (cos.f64 b) (cos.f64 a))
Compiler

Compiled 2037 to 382 computations (81.2% saved)

series227.0ms (3%)

Error
0.0b
Counts
4 → 39
Calls

4 calls:

104.0ms
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))
39.0ms
(-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))
32.0ms
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b))
24.0ms
(*.f64 (cos.f64 b) (cos.f64 a))
Compiler

Compiled 1690 to 1045 computations (38.2% saved)

simplify149.0ms (2%)

Algorithm
egg-herbie
Rules
502×associate-/r*_binary64
390×associate-/l/_binary64
378×associate-*l/_binary64
308×*-commutative_binary64
297×associate-/r/_binary64
Counts
133 → 106
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02193031
15142864
216452843
344872840
449952840
549612840

prune116.0ms (1.5%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New1024106
Fresh189
Picked101
Done000
Total10412116
Error
0.0b
Counts
116 → 12
Alt Table
StatusErrorProgram
0.4b
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))
1.2b
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 a) (/.f64 (cos.f64 b) (*.f64 (cbrt.f64 (sin.f64 b)) (cbrt.f64 (sin.f64 b))))) (cbrt.f64 (sin.f64 b))) (sin.f64 a)))
0.5b
(/.f64 (*.f64 r (sin.f64 b)) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3)))
0.9b
(/.f64 (*.f64 (/.f64 r (*.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (sin.f64 b)) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.6b
(/.f64 r (-.f64 (/.f64 (log.f64 (exp.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (sin.f64 b)) (sin.f64 a)))
0.3b
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a)))
13.0b
(/.f64 r (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (sin.f64 b)) 3)) (sin.f64 a)))
0.7b
(/.f64 1 (/.f64 (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)) r))
1.2b
(*.f64 (*.f64 (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))))
1.2b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (cbrt.f64 (*.f64 (sin.f64 b) r))) (cbrt.f64 (*.f64 (sin.f64 b) r))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
11.7b
(*.f64 (*.f64 r (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a))))
0.4b
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
Compiler

Compiled 2283 to 709 computations (68.9% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a))
0.1b
(*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b)))
0.2b
(/.f64 (cos.f64 a) (sin.f64 b))
0.2b
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a)))

rewrite175.0ms (2.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
34×add-sqr-sqrt_binary64
29×add-cube-cbrt_binary64 *-un-lft-identity_binary64
28×times-frac_binary64
13×add-exp-log_binary64 add-cbrt-cube_binary64 associate-*r*_binary64
pow1_binary64 add-log-exp_binary64 associate-/l*_binary64 associate-/r*_binary64
Counts
4 → 102
Calls

4 calls:

8.0ms
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a)))
7.0ms
(*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b)))
6.0ms
(-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a))
4.0ms
(/.f64 (cos.f64 a) (sin.f64 b))
Compiler

Compiled 2307 to 457 computations (80.2% saved)

series219.0ms (2.9%)

Error
0.0b
Counts
4 → 39
Calls

4 calls:

102.0ms
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a)))
37.0ms
(-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a))
33.0ms
(*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b)))
25.0ms
(/.f64 (cos.f64 a) (sin.f64 b))
Compiler

Compiled 1727 to 1058 computations (38.7% saved)

simplify179.0ms (2.4%)

Algorithm
egg-herbie
Rules
422×associate-/r*_binary64
390×associate-*l/_binary64
369×associate-*r/_binary64
313×*-commutative_binary64
286×unswap-sqr_binary64
Counts
141 → 77
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02273094
15272925
216312908
341272905
448372905
549712905
649432905

prune89.0ms (1.2%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New76177
Fresh01111
Picked011
Done000
Total761389
Error
0.0b
Counts
89 → 13
Alt Table
StatusErrorProgram
0.4b
(/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))
1.2b
(/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 a) (/.f64 (cos.f64 b) (*.f64 (cbrt.f64 (sin.f64 b)) (cbrt.f64 (sin.f64 b))))) (cbrt.f64 (sin.f64 b))) (sin.f64 a)))
0.5b
(/.f64 (*.f64 r (sin.f64 b)) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3)))
0.9b
(/.f64 (*.f64 (/.f64 r (*.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (sin.f64 b)) (cbrt.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.6b
(/.f64 r (-.f64 (/.f64 (log.f64 (exp.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (sin.f64 b)) (sin.f64 a)))
0.3b
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 a) (sin.f64 b))) (sin.f64 a)))
13.0b
(/.f64 r (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (sin.f64 b)) 3)) (sin.f64 a)))
12.9b
(/.f64 r (-.f64 (*.f64 (cos.f64 b) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 a) (sin.f64 b)) 3))) (sin.f64 a)))
0.7b
(/.f64 1 (/.f64 (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)) r))
1.2b
(*.f64 (*.f64 (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a))))) (cbrt.f64 (/.f64 r (-.f64 (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (sin.f64 b)) (sin.f64 a)))))
1.2b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (cbrt.f64 (*.f64 (sin.f64 b) r))) (cbrt.f64 (*.f64 (sin.f64 b) r))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
11.7b
(*.f64 (*.f64 r (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a))))
0.4b
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
Compiler

Compiled 1835 to 526 computations (71.3% saved)

regimes1.6s (21.8%)

Accuracy

Total 0.3b remaining (86.6%)

Threshold costs 0.3b (86.6%)

Compiler

Compiled 26310 to 14692 computations (44.2% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
sub-neg_binary64 +-commutative_binary64
neg-mul-1_binary64 neg-sub0_binary64
cancel-sign-sub-inv_binary64 distribute-rgt-neg-in_binary64
1-exp_binary64 /-rgt-identity_binary64 distribute-lft-neg-out_binary64 distribute-lft-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01526
12526
23426
34026
44426
54526
64426

end1.0ms (0%)

Compiler

Compiled 19 to 12 computations (36.8% saved)

sample2.3s (31.2%)

Algorithm
intervals
Results
1.0s3506×body1024valid
281.0ms1297×body512valid
181.0ms2422×body128valid
116.0ms181×body2048valid
85.0ms594×body256valid
0.0msbody1024invalid
Compiler

Compiled 372 to 211 computations (43.3% saved)

Profiling

Loading profile data...