Details

Time bar (total: 8.5s)

analyze87.0ms (1%)

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
74.9%25%0.2%5
74.9%25%0.2%6
74.9%25%0.2%7
87.3%12.5%0.2%8
93.6%6.2%0.2%9
93.6%6.2%0.2%10
93.6%6.2%0.2%11
96.7%3.1%0.2%12
98.2%1.6%0.2%13
98.2%1.6%0.2%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample1.7s (20.6%)

Results
1.5s8256×body128valid
Compiler

Compiled 59 to 35 computations (40.7% saved)

simplify115.0ms (1.4%)

Algorithm
egg-herbie
Rules
1070×fma-neg_binary64
881×fma-def_binary64
768×times-frac_binary64
551×cancel-sign-sub-inv_binary64
514×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01220
12520
24720
37820
414920
522820
632420
750020
869420
986720
1099920
11242220
12392020
13495020

prune6.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
28.4b
Counts
3 → 1
Alt Table
StatusErrorProgram
28.4b
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 69 to 33 computations (52.2% saved)

localize17.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(-.f64 (*.f64 b c) (*.f64 a d))
28.1b
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))

series119.0ms (1.4%)

Counts
2 → 96
Calls

2 calls:

101.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))
18.0ms
(-.f64 (*.f64 b c) (*.f64 a d))

rewrite10.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
10×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
2 → 48
Calls

2 calls:

5.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))
3.0ms
(-.f64 (*.f64 b c) (*.f64 a d))

simplify114.0ms (1.3%)

Algorithm
egg-herbie
Rules
491×fma-neg_binary64
380×associate-*l*_binary64
348×fma-def_binary64
315×associate-*r*_binary64
247×associate-/l*_binary64
Counts
144 → 109
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01282762
13232614
210842567
344302567
449522567

prune141.0ms (1.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1009109
Fresh000
Picked101
Done000
Total1019110
Error
1.4b
Counts
110 → 9
Alt Table
StatusErrorProgram
15.8b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 d c)))
34.9b
(/.f64 b c)
28.8b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (/.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (fma.f64 d d (*.f64 c c))))
36.9b
(-.f64 (/.f64 b c) (fma.f64 (/.f64 a c) (/.f64 d c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))
34.0b
(-.f64 (/.f64 b c) (/.f64 (*.f64 a d) (pow.f64 c 2)))
38.2b
(-.f64 (fma.f64 (/.f64 c d) (/.f64 b d) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3))) (/.f64 a d))
38.0b
(neg.f64 (/.f64 a d))
28.6b
(/.f64 1 (/.f64 (fma.f64 c c (*.f64 d d)) (-.f64 (*.f64 b c) (*.f64 a d))))
15.2b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)))
Compiler

Compiled 2873 to 631 computations (78% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 d c))
0.2b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)))
0.3b
(-.f64 (*.f64 c b) (*.f64 a d))
14.6b
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))

series471.0ms (5.6%)

Counts
4 → 132
Calls

4 calls:

212.0ms
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)))
192.0ms
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))
48.0ms
(/.f64 1 (hypot.f64 d c))
18.0ms
(-.f64 (*.f64 c b) (*.f64 a d))

rewrite75.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
51×add-sqr-sqrt_binary64
43×times-frac_binary64
36×*-un-lft-identity_binary64
34×add-cube-cbrt_binary64
32×add-exp-log_binary64
Counts
4 → 139
Calls

4 calls:

32.0ms
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)))
9.0ms
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))
6.0ms
(-.f64 (*.f64 c b) (*.f64 a d))
5.0ms
(/.f64 1 (hypot.f64 d c))

simplify266.0ms (3.1%)

Algorithm
egg-herbie
Rules
874×times-frac_binary64
537×fma-def_binary64
368×cancel-sign-sub-inv_binary64
196×fma-neg_binary64
181×sub-neg_binary64
Counts
271 → 271
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02656415
17445877
225525818
350615818

prune332.0ms (3.9%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New2638271
Fresh358
Picked101
Done000
Total26713280
Error
1.3b
Counts
280 → 13
Alt Table
StatusErrorProgram
27.2b
(*.f64 (/.f64 1 (hypot.f64 d c)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)) 3)))
34.9b
(/.f64 b c)
38.0b
(neg.f64 (/.f64 a d))
15.4b
(*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))))
46.7b
(*.f64 (/.f64 1 (hypot.f64 d c)) a)
21.4b
(*.f64 (*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 1 (sqrt.f64 (hypot.f64 d c)))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (sqrt.f64 (hypot.f64 d c))))
43.8b
(*.f64 (/.f64 1 (hypot.f64 d c)) (neg.f64 b))
15.3b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))))
42.3b
(*.f64 (/.f64 1 (hypot.f64 d c)) (-.f64 (/.f64 (*.f64 c b) d) a))
38.2b
(-.f64 (fma.f64 (/.f64 c d) (/.f64 b d) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3))) (/.f64 a d))
28.6b
(/.f64 1 (/.f64 (fma.f64 c c (*.f64 d d)) (-.f64 (*.f64 b c) (*.f64 a d))))
15.1b
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)) (hypot.f64 d c))
36.9b
(-.f64 (/.f64 b c) (fma.f64 (/.f64 a c) (/.f64 d c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))
Compiler

Compiled 7591 to 2324 computations (69.4% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 d c)
0.0b
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)) (hypot.f64 d c))
0.3b
(-.f64 (*.f64 c b) (*.f64 a d))
14.6b
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))

series174.0ms (2.1%)

Counts
2 → 72
Calls

2 calls:

150.0ms
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)) (hypot.f64 d c))
23.0ms
(hypot.f64 d c)

rewrite35.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
75×times-frac_binary64
44×*-un-lft-identity_binary64
44×add-sqr-sqrt_binary64
44×add-cube-cbrt_binary64
13×associate-/l*_binary64
Counts
2 → 83
Calls

2 calls:

16.0ms
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c)) (hypot.f64 d c))
1.0ms
(hypot.f64 d c)

simplify166.0ms (2%)

Algorithm
egg-herbie
Rules
694×times-frac_binary64
567×associate-/l*_binary64
475×associate-/l/_binary64
441×fma-neg_binary64
291×div-sub_binary64
Counts
155 → 168
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02304858
15694613
214904399
345484352
454674352

prune356.0ms (4.2%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2977304
Fresh9312
Picked101
Done000
Total30710317
Error
1.3b
Counts
317 → 10
Alt Table
StatusErrorProgram
15.4b
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (sqrt.f64 (hypot.f64 d c))) (sqrt.f64 (hypot.f64 d c))) (hypot.f64 d c))
15.4b
(*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))))
43.8b
(/.f64 (neg.f64 b) (hypot.f64 d c))
15.7b
(/.f64 1 (/.f64 (hypot.f64 d c) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))))
36.9b
(-.f64 (/.f64 b c) (fma.f64 (/.f64 a c) (/.f64 d c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))
28.4b
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 1 (*.f64 (hypot.f64 d c) (hypot.f64 d c))))
46.7b
(/.f64 a (hypot.f64 d c))
34.9b
(/.f64 b c)
15.2b
(/.f64 (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c))
42.3b
(/.f64 (-.f64 (/.f64 (*.f64 c b) d) a) (hypot.f64 d c))
Compiler

Compiled 8179 to 2003 computations (75.5% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c))
0.2b
(/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d))))
0.3b
(-.f64 (*.f64 c b) (*.f64 a d))
14.7b
(/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))

series365.0ms (4.3%)

Counts
3 → 144
Calls

3 calls:

162.0ms
(/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d))))
123.0ms
(/.f64 (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c))
79.0ms
(/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))

rewrite121.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
528×times-frac_binary64
254×*-un-lft-identity_binary64
254×add-sqr-sqrt_binary64
254×add-cube-cbrt_binary64
56×associate-/l*_binary64
Counts
3 → 343
Calls

3 calls:

17.0ms
(/.f64 (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c))
6.0ms
(/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d))))
4.0ms
(/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))

simplify609.0ms (7.2%)

Algorithm
egg-herbie
Rules
446×times-frac_binary64
367×associate-/l*_binary64
322×associate-/r*_binary64
239×associate-/l/_binary64
229×associate-/r/_binary64
Counts
487 → 595
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
041218794
1118417414
2475917414
3500017414
4498117414

prune581.0ms (6.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New6190619
Fresh099
Picked011
Done000
Total61910629
Error
1.3b
Counts
629 → 10
Alt Table
StatusErrorProgram
15.4b
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (sqrt.f64 (hypot.f64 d c))) (sqrt.f64 (hypot.f64 d c))) (hypot.f64 d c))
15.4b
(*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (*.f64 (sqrt.f64 (/.f64 1 (hypot.f64 d c))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))))
43.8b
(/.f64 (neg.f64 b) (hypot.f64 d c))
15.7b
(/.f64 1 (/.f64 (hypot.f64 d c) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 d c))))
36.9b
(-.f64 (/.f64 b c) (fma.f64 (/.f64 a c) (/.f64 d c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))
28.4b
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 1 (*.f64 (hypot.f64 d c) (hypot.f64 d c))))
46.7b
(/.f64 a (hypot.f64 d c))
34.9b
(/.f64 b c)
15.2b
(/.f64 (/.f64 1 (/.f64 (hypot.f64 d c) (-.f64 (*.f64 c b) (*.f64 a d)))) (hypot.f64 d c))
42.3b
(/.f64 (-.f64 (/.f64 (*.f64 c b) d) a) (hypot.f64 d c))
Compiler

Compiled 21273 to 5546 computations (73.9% saved)

regimes2.3s (26.8%)

Accuracy

Total 9.8b remaining (83.6%)

Threshold costs 0b (0%)

Counts
177 → 7
Compiler

Compiled 18338 to 10444 computations (43% saved)

bsearch109.0ms (1.3%)

Steps
ItersRangePoint
4
2.289460509993495e+133
3.9413810999069814e+133
2.6508181390370694e+133
7
-1.1303262023734178e-277
-4.453857161756357e-280
-8.168380286508774e-280
9
-2.1710835684207147e-221
-1.5401647695385404e-229
-7.746052639847127e-223
10
-1.3759515111598078e-187
-9.396862257212423e-203
-2.3624307415395805e-197
10
-1.2123400635254853e-64
-6.611758308217706e-78
-1.0719267080027835e-77
9
-2.1716881053784275e+189
-9.844060192539692e+179
-1.0001347671923885e+180
Compiler

Compiled 5 to 4 computations (20% saved)

simplify12.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
045169
159169
278169
396169
4108169
5114169
6116169
7115169

end141.0ms (1.7%)

Compiler

Compiled 420 to 198 computations (52.9% saved)

Profiling

Loading profile data...