Details

Time bar (total: 7.4s)

analyze624.0ms (8.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
12.5%87.4%0.1%5
18.7%81.1%0.1%6
18.7%76.5%4.8%7
28.1%66.3%5.6%8
35.1%55%9.9%9
36.3%50.9%12.8%10
42.1%42.4%15.5%11
47.5%33.8%18.7%12
48.8%30.7%20.6%13
51.8%25.6%22.5%14
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample360.0ms (4.9%)

Algorithm
intervals
Results
11.0ms183×body128valid
9.0ms25×body2048valid
6.0ms25×body1024valid
2.0msbody4096valid
2.0ms33×body128nan
2.0ms10×body512valid
1.0msbody256valid
1.0msbody128invalid
Compiler

Compiled 36 to 24 computations (33.3% saved)

simplify85.0ms (1.2%)

Algorithm
egg-herbie
Rules
518×div-sub_binary64
428×fma-neg_binary64
246×associate-/l*_binary64
205×fma-def_binary64
183×times-frac_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01120
12720
25420
311520
417920
529120
641720
752820
860220
985420
10180220
11104320
12102720
13103520
14104320
15104320
16110120
17113720
18113920
19115120
20104620

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
30.5b
Counts
2 → 1
Alt Table
StatusErrorProgram
30.5b
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
Compiler

Compiled 48 to 30 computations (37.5% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
0.8b
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))
1.0b
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))

series596.0ms (8.1%)

Counts
4 → 96
Calls

4 calls:

302.0ms
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))
149.0ms
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
135.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
8.0ms
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))

rewrite44.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
81×add-sqr-sqrt_binary64
80×*-un-lft-identity_binary64
61×prod-diff_binary64
60×add-cube-cbrt_binary64
41×sqrt-prod_binary64
Counts
4 → 176
Calls

4 calls:

11.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
8.0ms
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))
3.0ms
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))

simplify307.0ms (4.2%)

Algorithm
egg-herbie
Rules
819×fma-neg_binary64
295×cancel-sign-sub-inv_binary64
181×unswap-sqr_binary64
169×sub-neg_binary64
135×associate-*r*_binary64
Counts
272 → 292
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03178791
17796792
226825750
345845750
449745750

prune181.0ms (2.4%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New28012292
Fresh000
Picked101
Done000
Total28112293
Error
6.5b
Counts
293 → 12
Alt Table
StatusErrorProgram
40.6b
(/.f64 (/.f64 (*.f64 c a) (-.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2) b_2)) a)
44.4b
(*.f64 -1/2 (/.f64 c b_2))
30.6b
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))
53.0b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)) a) 3))
31.1b
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) (cbrt.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))) (/.f64 a (cbrt.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))))
36.0b
(/.f64 (-.f64 (neg.f64 b_2) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)))) a)
41.6b
(fma.f64 1/2 (/.f64 c b_2) (*.f64 -2 (/.f64 b_2 a)))
53.2b
(/.f64 (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b_2 5)) -1/16 (fma.f64 (/.f64 (*.f64 c a) b_2) -1/2 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b_2 3)) -1/8))) a)
41.2b
(/.f64 (*.f64 -2 b_2) a)
33.1b
(/.f64 (-.f64 (neg.f64 b_2) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)) (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)))) a)
33.1b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 a) (cbrt.f64 a))) (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)) (cbrt.f64 a)))
60.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
Compiler

Compiled 9200 to 2064 computations (77.6% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))
0.8b
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))
1.0b
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))

series76.0ms (1%)

Counts
1 → 20
Calls

1 calls:

76.0ms
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))

rewrite32.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
165×times-frac_binary64
121×*-un-lft-identity_binary64
121×add-sqr-sqrt_binary64
73×add-cube-cbrt_binary64
27×associate-/r*_binary64
Counts
1 → 134
Calls

1 calls:

11.0ms
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))

simplify172.0ms (2.3%)

Algorithm
egg-herbie
Rules
858×times-frac_binary64
427×associate-/l*_binary64
377×fma-neg_binary64
298×fma-def_binary64
204×associate-/r/_binary64
Counts
154 → 163
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01895683
14455239
214274890
348334890
450334890

prune273.0ms (3.7%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New3644368
Fresh5611
Picked011
Done000
Total36911380
Error
6.5b
Counts
380 → 11
Alt Table
StatusErrorProgram
32.5b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a))
36.0b
(/.f64 (-.f64 (neg.f64 b_2) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)))) a)
33.1b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 a (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))))) (cbrt.f64 (/.f64 a (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))))))) (/.f64 1 (cbrt.f64 (/.f64 a (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c)))))))))
41.6b
(fma.f64 1/2 (/.f64 c b_2) (*.f64 -2 (/.f64 b_2 a)))
44.4b
(*.f64 -1/2 (/.f64 c b_2))
30.6b
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))
41.3b
(/.f64 1 (/.f64 a (*.f64 b_2 -2)))
36.2b
(/.f64 (/.f64 (*.f64 a c) a) (+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))
41.2b
(/.f64 (*.f64 -2 b_2) a)
33.1b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 a) (cbrt.f64 a))) (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 c a))) b_2)) (cbrt.f64 a)))
60.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
Compiler

Compiled 12267 to 3071 computations (75% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))
0.1b
(/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a)
0.7b
(-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c)))))
14.3b
(sqrt.f64 (neg.f64 (*.f64 a c)))

series652.0ms (8.8%)

Counts
4 → 42
Calls

4 calls:

375.0ms
(/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a)
151.0ms
(-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c)))))
108.0ms
(hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))
17.0ms
(sqrt.f64 (neg.f64 (*.f64 a c)))

rewrite24.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
59×*-un-lft-identity_binary64
50×add-sqr-sqrt_binary64
39×add-cube-cbrt_binary64
30×prod-diff_binary64
18×times-frac_binary64
Counts
4 → 133
Calls

4 calls:

7.0ms
(/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a)
5.0ms
(-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c)))))
2.0ms
(sqrt.f64 (neg.f64 (*.f64 a c)))
0.0ms
(hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))

simplify153.0ms (2.1%)

Algorithm
egg-herbie
Rules
661×fma-def_binary64
389×fma-neg_binary64
314×div-sub_binary64
285×cancel-sign-sub-inv_binary64
176×sub-neg_binary64
Counts
175 → 257
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02855362
16674289
221823828
344323824
449223824

prune199.0ms (2.7%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2543257
Fresh639
Picked011
Done011
Total2608268
Error
0.1b
Counts
268 → 8
Alt Table
StatusErrorProgram
43.8b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 c))))) a))
32.5b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a))
44.4b
(*.f64 -1/2 (/.f64 c b_2))
41.6b
(fma.f64 1/2 (/.f64 c b_2) (*.f64 -2 (/.f64 b_2 a)))
54.0b
(*.f64 1 (/.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b_2 3)) -1/8 (fma.f64 1/16 (/.f64 (pow.f64 (neg.f64 (*.f64 c a)) 3) (pow.f64 b_2 5)) (/.f64 (*.f64 -1/2 (*.f64 c a)) b_2))) (/.f64 -5/128 (/.f64 (pow.f64 b_2 7) (pow.f64 (neg.f64 (*.f64 c a)) 4)))) a))
30.6b
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))
36.2b
(/.f64 (/.f64 (*.f64 a c) a) (+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))
46.6b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (*.f64 (sqrt.f64 (neg.f64 a)) (sqrt.f64 c)))) a))
Compiler

Compiled 7706 to 2271 computations (70.5% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.8b
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))
1.4b
(+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
15.2b
(/.f64 (*.f64 a c) a)
19.1b
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))

series56.0ms (0.8%)

Counts
2 → 44
Calls

2 calls:

53.0ms
(+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
2.0ms
(/.f64 (*.f64 a c) a)

rewrite14.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
10×fma-def_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 50
Calls

2 calls:

9.0ms
(+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
3.0ms
(/.f64 (*.f64 a c) a)

simplify66.0ms (0.9%)

Algorithm
egg-herbie
Rules
484×associate-/r*_binary64
399×associate-*l*_binary64
380×fma-neg_binary64
296×associate-*l/_binary64
284×fma-def_binary64
Counts
94 → 93
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01411367
13871179
213661103
347411103
449451103

prune86.0ms (1.2%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1731174
Fresh145
Picked011
Done022
Total1748182
Error
0.1b
Counts
182 → 8
Alt Table
StatusErrorProgram
33.7b
(/.f64 c (+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))
44.4b
(*.f64 -1/2 (/.f64 c b_2))
43.8b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 c))))) a))
32.5b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (sqrt.f64 (neg.f64 (*.f64 a c))))) a))
41.6b
(fma.f64 1/2 (/.f64 c b_2) (*.f64 -2 (/.f64 b_2 a)))
30.6b
(/.f64 1 (/.f64 a (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))))
36.2b
(/.f64 (/.f64 (*.f64 a c) a) (+.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))))
46.6b
(*.f64 1 (/.f64 (-.f64 (neg.f64 b_2) (hypot.f64 b_2 (*.f64 (sqrt.f64 (neg.f64 a)) (sqrt.f64 c)))) a))
Compiler

Compiled 4347 to 1193 computations (72.6% saved)

regimes1.6s (21.1%)

Accuracy

Total 6.5b remaining (98.7%)

Threshold costs 0b (0%)

Counts
130 → 4
Compiler

Compiled 10797 to 6285 computations (41.8% saved)

bsearch83.0ms (1.1%)

Steps
ItersRangePoint
6
1.2801692910942717e+92
8.413209116405939e+92
8.089389794080142e+92
8
2.848439522607429e-308
7.326547088866894e-306
3.794720303511745e-306
4
-2.4639643721163906e+168
-3.1329246665015342e+147
-6.619515284789695e+148
Compiler

Compiled 4 to 3 computations (25% saved)

simplify13.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
03077
14675
26175
37375
48175
58575
68675
78575

end1.0ms (0%)

Compiler

Compiled 53 to 28 computations (47.2% saved)

sample1.7s (22.9%)

Algorithm
intervals
Results
369.0ms5220×body128valid
329.0ms1118×body2048valid
227.0ms395×body4096valid
169.0ms735×body1024valid
59.0ms347×body512valid
43.0ms787×body128nan
21.0ms185×body256valid
17.0ms271×body128invalid
Compiler

Compiled 201 to 128 computations (36.3% saved)

Profiling

Loading profile data...