Details

Time bar (total: 8.7s)

analyze405.0ms (4.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
49.9%49.9%0.1%3
49.9%49.9%0.1%4
49.9%49.9%0.1%5
74.9%25%0.1%6
74.9%25%0.1%7
74.9%25%0.1%8
87.4%12.5%0.1%9
87.4%12.5%0.1%10
87.4%12.5%0.1%11
93.6%6.2%0.1%12
93.6%6.2%0.1%13
93.6%6.2%0.1%14
Compiler

Compiled 27 to 21 computations (22.2% saved)

sample102.0ms (1.2%)

Algorithm
intervals
Results
31.0ms28×body4096valid
25.0ms30×body2048valid
21.0ms169×body128valid
9.0ms17×body1024valid
4.0msbody512valid
1.0msbody256valid
Compiler

Compiled 56 to 44 computations (21.4% saved)

simplify75.0ms (0.9%)

Algorithm
egg-herbie
Rules
763×div-sub_binary64
390×associate-/r/_binary64
378×cancel-sign-sub-inv_binary64
331×distribute-rgt-in_binary64
311×associate-/l/_binary64
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02036
14433
29233
325033
462433
5184433
6409133
7489733
8500533

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
29.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
29.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
Compiler

Compiled 72 to 51 computations (29.2% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64)
0.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
0.0b
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)
37.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

rewrite149.0ms (1.7%)

Algorithm
rewrite-expression-head
Error
28.9b
Rules
55×add-sqr-sqrt_binary64
53×*-un-lft-identity_binary64
40×times-frac_binary64
33×add-cube-cbrt_binary64
13×associate-*r*_binary64
Counts
4 → 124
Calls

4 calls:

17.0ms
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)
7.0ms
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
6.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
4.0ms
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64)
Compiler

Compiled 4289 to 2057 computations (52% saved)

series354.0ms (4.1%)

Error
0.4b
Counts
4 → 76
Calls

4 calls:

98.0ms
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)
85.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
62.0ms
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
45.0ms
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64)
Compiler

Compiled 6074 to 4416 computations (27.3% saved)

simplify219.0ms (2.5%)

Algorithm
egg-herbie
Rules
397×sub-neg_binary64
203×*-commutative_binary64
199×+-commutative_binary64
197×associate-/l*_binary64
189×times-frac_binary64
Counts
200 → 175
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04797708
112567132
240367129
348397129
449567129

prune136.0ms (1.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1696175
Fresh000
Picked011
Done000
Total1697176
Error
0.8b
Counts
176 → 7
Alt Table
StatusErrorProgram
45.0b
(*.f64 180 (/.f64 (atan.f64 (+.f64 (*.f64 1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B)))) (*.f64 2 (/.f64 (-.f64 C A) B)))) PI.f64))
29.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
42.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 -1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B))))) PI.f64))
30.1b
(*.f64 180 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))
47.2b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (+.f64 (/.f64 C B) (*.f64 (/.f64 C B) (/.f64 A B))) (+.f64 1 (+.f64 (/.f64 A B) (*.f64 1/2 (+.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (*.f64 (/.f64 A B) (/.f64 A B)))))))) PI.f64))
34.3b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (/.f64 (-.f64 C (+.f64 A (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) B) (*.f64 1/2 (*.f64 B (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))))))) PI.f64))
42.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 1/2 (+.f64 (/.f64 B A) (/.f64 C (/.f64 (*.f64 A A) B))))) PI.f64))
Compiler

Compiled 5388 to 2606 computations (51.6% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B)))
0.0b
(*.f64 180 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))
0.0b
(/.f64 (-.f64 C A) B)
0.0b
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)

rewrite92.0ms (1.1%)

Algorithm
rewrite-expression-head
Error
0.8b
Rules
43×add-sqr-sqrt_binary64
38×*-un-lft-identity_binary64
34×times-frac_binary64
30×add-cube-cbrt_binary64
13×associate-*r*_binary64
Counts
4 → 104
Calls

4 calls:

5.0ms
(*.f64 180 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))
5.0ms
(/.f64 (-.f64 C A) B)
2.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
1.0ms
(atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B)))
Compiler

Compiled 2134 to 1094 computations (48.7% saved)

series102.0ms (1.2%)

Error
0.8b
Counts
4 → 42
Calls

4 calls:

31.0ms
(*.f64 180 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))
26.0ms
(/.f64 (-.f64 C A) B)
25.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
15.0ms
(atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B)))
Compiler

Compiled 1379 to 1058 computations (23.3% saved)

simplify133.0ms (1.5%)

Algorithm
egg-herbie
Rules
707×div-sub_binary64
409×associate-/r*_binary64
338×distribute-rgt-in_binary64
331×distribute-lft-in_binary64
289×associate-/r/_binary64
Counts
146 → 106
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01692808
13542577
28152577
318492577
437622577
550052577

prune48.0ms (0.6%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1051106
Fresh055
Picked011
Done011
Total1058113
Error
0.8b
Counts
113 → 8
Alt Table
StatusErrorProgram
30.3b
(*.f64 180 (log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64))))
34.3b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (/.f64 (-.f64 C (+.f64 A (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) B) (*.f64 1/2 (*.f64 B (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))))))) PI.f64))
45.0b
(*.f64 180 (/.f64 (atan.f64 (+.f64 (*.f64 1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B)))) (*.f64 2 (/.f64 (-.f64 C A) B)))) PI.f64))
29.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
42.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 -1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B))))) PI.f64))
30.1b
(*.f64 180 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))
47.2b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (+.f64 (/.f64 C B) (*.f64 (/.f64 C B) (/.f64 A B))) (+.f64 1 (+.f64 (/.f64 A B) (*.f64 1/2 (+.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (*.f64 (/.f64 A B) (/.f64 A B)))))))) PI.f64))
42.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 1/2 (+.f64 (/.f64 B A) (/.f64 C (/.f64 (*.f64 A A) B))))) PI.f64))
Compiler

Compiled 1697 to 951 computations (44% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 180 (log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64))))
0.0b
(/.f64 (-.f64 A C) B)
0.0b
(/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)
0.6b
(log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)))

rewrite120.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.8b
Rules
51×add-sqr-sqrt_binary64
49×*-un-lft-identity_binary64
42×times-frac_binary64
41×add-cube-cbrt_binary64
28×log-pow_binary64
Counts
4 → 128
Calls

4 calls:

9.0ms
(*.f64 180 (log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64))))
5.0ms
(/.f64 (-.f64 A C) B)
3.0ms
(log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)))
2.0ms
(/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)
Compiler

Compiled 2981 to 1671 computations (43.9% saved)

series207.0ms (2.4%)

Error
0.8b
Counts
4 → 42
Calls

4 calls:

75.0ms
(*.f64 180 (log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64))))
74.0ms
(log.f64 (exp.f64 (/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)))
26.0ms
(/.f64 (-.f64 A C) B)
25.0ms
(/.f64 (atan.f64 (-.f64 1 (/.f64 (-.f64 A C) B))) PI.f64)
Compiler

Compiled 1547 to 1226 computations (20.7% saved)

simplify154.0ms (1.8%)

Algorithm
egg-herbie
Rules
752×associate-/l*_binary64
418×associate-/l/_binary64
329×distribute-rgt-in_binary64
320×distribute-lft-in_binary64
239×associate-/r/_binary64
Counts
170 → 130
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02193465
13953205
28053199
317293199
444733199
550573199

prune70.0ms (0.8%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1291130
Fresh055
Picked101
Done112
Total1317138
Error
0.8b
Counts
138 → 7
Alt Table
StatusErrorProgram
45.0b
(*.f64 180 (/.f64 (atan.f64 (+.f64 (*.f64 1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B)))) (*.f64 2 (/.f64 (-.f64 C A) B)))) PI.f64))
29.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
42.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 -1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B))))) PI.f64))
47.2b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (+.f64 (/.f64 C B) (*.f64 (/.f64 C B) (/.f64 A B))) (+.f64 1 (+.f64 (/.f64 A B) (*.f64 1/2 (+.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (*.f64 (/.f64 A B) (/.f64 A B)))))))) PI.f64))
30.3b
(*.f64 180 (+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))))
34.3b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (/.f64 (-.f64 C (+.f64 A (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) B) (*.f64 1/2 (*.f64 B (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))))))) PI.f64))
42.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 1/2 (+.f64 (/.f64 B A) (/.f64 C (/.f64 (*.f64 A A) B))))) PI.f64))
Compiler

Compiled 2368 to 1350 computations (43% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
0.0b
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
0.7b
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))
0.7b
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))

rewrite120.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.8b
Rules
38×*-un-lft-identity_binary64
38×add-sqr-sqrt_binary64
38×add-cube-cbrt_binary64
36×times-frac_binary64
32×log-pow_binary64
Counts
4 → 114
Calls

4 calls:

4.0ms
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))
4.0ms
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))
3.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
3.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
Compiler

Compiled 4412 to 2554 computations (42.1% saved)

series225.0ms (2.6%)

Error
0.8b
Counts
4 → 36
Calls

4 calls:

84.0ms
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))
80.0ms
(log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))
29.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
29.0ms
(/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)
Compiler

Compiled 2513 to 1916 computations (23.8% saved)

simplify263.0ms (3%)

Algorithm
egg-herbie
Rules
505×log-prod_binary64
444×log-pow_binary64
421×associate-/l/_binary64
367×times-frac_binary64
299×associate-/l*_binary64
Counts
150 → 92
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01143808
11603544
22703544
34333544
46613544
510663544
625533544
736453544
843863544
949443544
1049883544

prune50.0ms (0.6%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New91192
Fresh055
Picked011
Done011
Total91899
Error
0.8b
Counts
99 → 8
Alt Table
StatusErrorProgram
31.2b
(*.f64 180 (+.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))) 2) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))))
42.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 1/2 (+.f64 (/.f64 B A) (/.f64 C (/.f64 (*.f64 A A) B))))) PI.f64))
45.0b
(*.f64 180 (/.f64 (atan.f64 (+.f64 (*.f64 1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B)))) (*.f64 2 (/.f64 (-.f64 C A) B)))) PI.f64))
29.0b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) B)) PI.f64))
42.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 -1/2 (+.f64 (/.f64 B C) (/.f64 A (/.f64 (*.f64 C C) B))))) PI.f64))
47.2b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (+.f64 (/.f64 C B) (*.f64 (/.f64 C B) (/.f64 A B))) (+.f64 1 (+.f64 (/.f64 A B) (*.f64 1/2 (+.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (*.f64 (/.f64 A B) (/.f64 A B)))))))) PI.f64))
30.3b
(*.f64 180 (+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan.f64 (+.f64 1 (/.f64 (-.f64 C A) B))) PI.f64))))))
34.3b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (/.f64 (-.f64 C (+.f64 A (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) B) (*.f64 1/2 (*.f64 B (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))))))) PI.f64))
Compiler

Compiled 2113 to 1232 computations (41.7% saved)

regimes2.3s (27%)

Accuracy

Total 15.7b remaining (95.2%)

Threshold costs 0b (0%)

Compiler

Compiled 29986 to 22195 computations (26% saved)

bsearch9.0ms (0.1%)

Compiler

Compiled 21 to 15 computations (28.6% saved)

simplify10.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
057182
192182
2118182
3142182
4156182
5162182
6164182
7161182

end2.0ms (0%)

Compiler

Compiled 119 to 77 computations (35.3% saved)

sample3.2s (37.3%)

Algorithm
intervals
Results
894.0ms889×body4096valid
732.0ms5424×body128valid
616.0ms817×body2048valid
303.0ms512×body1024valid
118.0ms217×body512valid
42.0ms141×body256valid
Compiler

Compiled 414 to 277 computations (33.1% saved)

Profiling

Loading profile data...