Details

Time bar (total: 22.7s)

analyze2.4s (10.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%98.2%1.8%8
0%94.3%5.7%9
0.4%93%6.6%10
7.4%83.3%9.3%11
12.4%75.2%12.4%12
14.4%68.9%16.7%13
16.8%65.4%17.8%14
Compiler

Compiled 41 to 33 computations (19.5% saved)

sample140.0ms (0.6%)

Algorithm
intervals
Results
23.0ms171×body128valid
18.0ms107×body128nan
17.0ms32×body1024valid
15.0ms22×body2048nan
14.0ms26×body1024nan
14.0ms21×body2048valid
7.0ms20×body512nan
7.0ms18×body512valid
3.0ms14×body256valid
3.0ms11×body256nan
Compiler

Compiled 81 to 69 computations (14.8% saved)

simplify133.0ms (0.6%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (34.0ms)

IterNodesCost
0561361

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
52.1b
Counts
2 → 1
Compiler

Compiled 80 to 59 computations (26.3% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.2b
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
12.7b
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
18.8b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
34.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))

rewrite113.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
66×sqrt-div_binary64_2823
40×associate-*r/_binary64_2748
39×*-un-lft-identity_binary64_2806
36×times-frac_binary64_2812
35×add-sqr-sqrt_binary64_2828
34×associate-*l/_binary64_2749
32×add-cube-cbrt_binary64_2841
31×flip-+_binary64_2780 flip3-+_binary64_2809
24×frac-times_binary64_2816 frac-add_binary64_2814
20×associate-/l/_binary64_2753 distribute-neg-frac_binary64_2770
17×pow1_binary64_2867
16×distribute-lft-neg-in_binary64_2763 flip3--_binary64_2810 flip--_binary64_2781 distribute-rgt-neg-in_binary64_2764
15×sqrt-prod_binary64_2822
12×associate-/l*_binary64_2751
add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
pow-prod-down_binary64_2877
sqrt-pow1_binary64_2824
neg-mul-1_binary64_2802 unpow-prod-down_binary64_2885 add-log-exp_binary64_2845
associate-*l*_binary64_2747 distribute-lft-out_binary64_2757 associate-/r*_binary64_2750 associate-*r*_binary64_2746
pow1/2_binary64_2886 associate-/r/_binary64_2752
neg-sub0_binary64_2801 div-inv_binary64_2803 div-exp_binary64_2857 *-commutative_binary64_2737 cbrt-undiv_binary64_2840 distribute-lft-out--_binary64_2758 div-sub_binary64_2811 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 rem-sqrt-square_binary64_2819 distribute-frac-neg_binary64_2769 clear-num_binary64_2805 unswap-sqr_binary64_2774 frac-2neg_binary64_2817
Counts
4 → 158
Calls

4 calls:

36.0ms
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
19.0ms
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
13.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
9.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)

series879.0ms (3.9%)

Counts
4 → 12
Calls

4 calls:

424.0ms
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
325.0ms
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
67.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
63.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)

simplify138.0ms (0.6%)

Algorithm
egg-herbie
Counts
170 → 170
Iterations

Useful iterations: 0 (56.0ms)

IterNodesCost
0494711055
1494711055

prune631.0ms (2.8%)

Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New15218170
Fresh000
Picked101
Done000
Total15318171
Error
45.4b
Counts
171 → 18
Compiler

Compiled 12272 to 6958 computations (43.3% saved)

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.2b
(*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)
17.9b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F))) (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
19.4b
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)))
34.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

rewrite65.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
48×sqrt-div_binary64_2823
22×associate-*r/_binary64_2748
21×add-sqr-sqrt_binary64_2828
20×associate-/l/_binary64_2753 distribute-neg-frac_binary64_2770 associate-*l/_binary64_2749
18×times-frac_binary64_2812 *-un-lft-identity_binary64_2806 add-cube-cbrt_binary64_2841
16×flip-+_binary64_2780 flip3-+_binary64_2809
13×pow1_binary64_2867
12×frac-times_binary64_2816 frac-add_binary64_2814
10×flip3--_binary64_2810 flip--_binary64_2781
add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
associate-/l*_binary64_2751
distribute-lft-neg-in_binary64_2763 sqrt-pow1_binary64_2824 neg-mul-1_binary64_2802 add-log-exp_binary64_2845 sqrt-prod_binary64_2822 pow-prod-down_binary64_2877 distribute-rgt-neg-in_binary64_2764
associate-*l*_binary64_2747 associate-/r*_binary64_2750 associate-*r*_binary64_2746
pow1/2_binary64_2886 associate-/r/_binary64_2752
neg-sub0_binary64_2801 div-inv_binary64_2803 div-exp_binary64_2857 *-commutative_binary64_2737 cbrt-undiv_binary64_2840 div-sub_binary64_2811 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 rem-sqrt-square_binary64_2819 distribute-frac-neg_binary64_2769 clear-num_binary64_2805 unswap-sqr_binary64_2774 frac-2neg_binary64_2817
Counts
4 → 112
Calls

4 calls:

15.0ms
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F))) (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
7.0ms
(*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)
7.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)))

series646.0ms (2.8%)

Counts
4 → 12
Calls

4 calls:

380.0ms
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F))) (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
138.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)))
66.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
62.0ms
(*.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) F)

simplify78.0ms (0.3%)

Algorithm
egg-herbie
Counts
124 → 124
Iterations

Useful iterations: 0 (29.0ms)

IterNodesCost
049795915
149795915

prune388.0ms (1.7%)

Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New1177124
Fresh11617
Picked101
Done000
Total11923142
Error
43.2b
Counts
142 → 23
Compiler

Compiled 8809 to 4914 computations (44.2% saved)

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

6.4b
(/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C)))))
12.0b
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))))
19.4b
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))
34.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

rewrite227.0ms (1%)

Algorithm
rewrite-expression-head
Rules
640×times-frac_binary64_2812
487×*-un-lft-identity_binary64_2806
298×add-sqr-sqrt_binary64_2828
297×add-cube-cbrt_binary64_2841
265×sqrt-prod_binary64_2822
152×distribute-lft-neg-in_binary64_2763 distribute-rgt-neg-in_binary64_2764
114×distribute-lft-out_binary64_2757
90×associate-/r*_binary64_2750
66×sqrt-div_binary64_2823
37×associate-/r/_binary64_2752
36×distribute-neg-frac_binary64_2770
31×flip-+_binary64_2780 flip3-+_binary64_2809
24×frac-add_binary64_2814
19×neg-mul-1_binary64_2802
11×add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 pow1_binary64_2867
div-inv_binary64_2803 associate-/l*_binary64_2751
associate-/l/_binary64_2753 div-exp_binary64_2857 cbrt-undiv_binary64_2840 sqrt-pow1_binary64_2824 add-log-exp_binary64_2845 associate-*r/_binary64_2748 associate-*l/_binary64_2749
flip3--_binary64_2810 flip--_binary64_2781 pow-prod-down_binary64_2877
pow1/2_binary64_2886 clear-num_binary64_2805 frac-2neg_binary64_2817
div-sub_binary64_2811 rem-sqrt-square_binary64_2819
Counts
4 → 504
Calls

4 calls:

50.0ms
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))))
24.0ms
(/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C)))))
9.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

series839.0ms (3.7%)

Counts
4 → 12
Calls

4 calls:

389.0ms
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C))))))
242.0ms
(/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))) (+.f64 A C)))))
133.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))
76.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

simplify379.0ms (1.7%)

Algorithm
egg-herbie
Counts
516 → 516
Iterations

Useful iterations: 0 (61.0ms)

IterNodesCost
0524146794

prune2.7s (11.7%)

Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New5142516
Fresh12122
Picked101
Done000
Total51623539
Error
43.2b
Counts
539 → 23
Compiler

Compiled 37457 to 20437 computations (45.4% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

12.0b
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))))) (+.f64 A C))))))
19.4b
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))
34.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
34.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

rewrite249.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
520×times-frac_binary64_2812
338×sqrt-div_binary64_2823
239×add-sqr-sqrt_binary64_2828
237×*-un-lft-identity_binary64_2806 add-cube-cbrt_binary64_2841
168×sqrt-prod_binary64_2822
107×flip-+_binary64_2780 flip3-+_binary64_2809
91×associate-/r/_binary64_2752
90×distribute-lft-neg-in_binary64_2763 distribute-neg-frac_binary64_2770 distribute-rgt-neg-in_binary64_2764
80×frac-add_binary64_2814
70×associate-/r*_binary64_2750
40×frac-times_binary64_2816
24×associate-*r/_binary64_2748 associate-*l/_binary64_2749
15×neg-mul-1_binary64_2802
12×pow1_binary64_2867
add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
div-inv_binary64_2803
sqrt-pow1_binary64_2824
add-log-exp_binary64_2845 associate-/l*_binary64_2751
pow1/2_binary64_2886 div-exp_binary64_2857 cbrt-undiv_binary64_2840 pow-prod-down_binary64_2877
associate-/l/_binary64_2753 flip3--_binary64_2810 rem-sqrt-square_binary64_2819 flip--_binary64_2781
clear-num_binary64_2805 frac-2neg_binary64_2817
Counts
4 → 415
Calls

4 calls:

61.0ms
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))))) (+.f64 A C))))))
11.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
8.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))

series651.0ms (2.9%)

Counts
4 → 12
Calls

4 calls:

386.0ms
(/.f64 (sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (/.f64 (-.f64 (*.f64 B B) (*.f64 C (*.f64 A 4))) (neg.f64 (sqrt.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B))))) (+.f64 A C))))))
131.0ms
(sqrt.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)))
71.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))
62.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))

simplify384.0ms (1.7%)

Algorithm
egg-herbie
Counts
427 → 427
Iterations

Useful iterations: 0 (34.0ms)

IterNodesCost
0513046764

prune2.6s (11.2%)

Pruning

25 alts after pruning (24 fresh and 1 done)

PrunedKeptTotal
New4216427
Fresh41822
Picked011
Done000
Total42525450
Error
43.1b
Counts
450 → 25
Compiler

Compiled 36084 to 19265 computations (46.6% saved)

regimes2.0s (8.8%)

Accuracy

Total 4.8b remaining (9.9%)

Threshold costs 0b (0%)

Compiler

Compiled 29471 to 19418 computations (34.1% saved)

bsearch10.0ms (0%)

Compiler

Compiled 40 to 32 computations (20% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
0205366
1205366

end0.0ms (0%)

sample7.1s (31.4%)

Algorithm
intervals
Results
743.0ms5406×body128valid
498.0ms904×body1024valid
496.0ms698×body2048valid
451.0ms826×body1024nan
394.0ms557×body2048nan
390.0ms2923×body128nan
264.0ms643×body512valid
230.0ms574×body512nan
95.0ms346×body256nan
94.0ms348×body256valid
1.0msbody4096valid
Compiler

Compiled 5136 to 3377 computations (34.2% saved)

Profiling

Loading profile data...