Details

Time bar (total: 6.6s)

analyze622.0ms (9.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%93.6%6.4%7
3.1%84.2%12.7%8
12.5%67.1%20.5%9
16%63.5%20.5%10
17.9%57.7%24.4%11
22.6%48.7%28.7%12
28.7%37.8%33.6%13
30.4%35.9%33.7%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample51.0ms (0.8%)

Algorithm
intervals
Symmetry

(sort V l)

Results
12.0ms256×body128valid
4.0ms88×body128nan
1.0ms23×body128invalid
Compiler

Compiled 29 to 21 computations (27.6% saved)

simplify6.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
11312
21512
31512

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
17.7b
Counts
2 → 1
Alt Table
StatusErrorProgram
17.7b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 36 to 24 computations (33.3% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
1.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
6.1b
(/.f64 A (*.f64 V l))
15.3b
(sqrt.f64 (/.f64 A (*.f64 V l)))

series130.0ms (2%)

Counts
3 → 12
Calls

3 calls:

72.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
39.0ms
(sqrt.f64 (/.f64 A (*.f64 V l)))
19.0ms
(/.f64 A (*.f64 V l))

rewrite18.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
16×add-sqr-sqrt_binary64
15×sqrt-prod_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
10×associate-*r*_binary64
Counts
3 → 72
Calls

3 calls:

7.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.0ms
(sqrt.f64 (/.f64 A (*.f64 V l)))
3.0ms
(/.f64 A (*.f64 V l))

simplify105.0ms (1.6%)

Algorithm
egg-herbie
Rules
893×fma-neg_binary64
679×associate-/r/_binary64
449×div-sub_binary64
262×times-frac_binary64
261×sub-neg_binary64
Counts
84 → 86
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01031084
11941009
25611009
316311009
421871009
524461009
631961009
743401009
846981009

prune87.0ms (1.3%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New731386
Fresh000
Picked101
Done000
Total741387
Error
7.6b
Counts
87 → 13
Alt Table
StatusErrorProgram
17.7b
(*.f64 1 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))))
37.4b
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
50.7b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) V))) (sqrt.f64 (/.f64 (cbrt.f64 A) l)))
16.2b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
36.8b
(*.f64 (sqrt.f64 c0) (*.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
15.7b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
37.6b
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))
50.5b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 (sqrt.f64 A) V)) (sqrt.f64 (/.f64 (sqrt.f64 A) l))))
18.3b
(*.f64 (*.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
50.7b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
18.1b
(*.f64 (*.f64 c0 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))))
16.2b
(*.f64 c0 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (/.f64 V (/.f64 (cbrt.f64 A) l)))))
17.9b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
Compiler

Compiled 1648 to 577 computations (65% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
1.1b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
4.5b
(*.f64 (/.f64 1 V) (/.f64 A l))
15.3b
(sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l)))

series127.0ms (1.9%)

Counts
3 → 48
Calls

3 calls:

66.0ms
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
42.0ms
(sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l)))
19.0ms
(*.f64 (/.f64 1 V) (/.f64 A l))

rewrite27.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
38×add-sqr-sqrt_binary64
27×add-exp-log_binary64
25×times-frac_binary64
21×*-un-lft-identity_binary64
19×add-cube-cbrt_binary64
Counts
3 → 98
Calls

3 calls:

9.0ms
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
8.0ms
(*.f64 (/.f64 1 V) (/.f64 A l))
4.0ms
(sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l)))

simplify143.0ms (2.2%)

Algorithm
egg-herbie
Rules
474×sqr-pow_binary64
426×associate-*l/_binary64
402×fabs-mul_binary64
354×associate-/l*_binary64
346×associate-*r/_binary64
Counts
146 → 159
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01461670
13211517
29621517
325491517
426651517
530411517
634151517
740321517
848251517
951831517

prune158.0ms (2.4%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New1545159
Fresh4812
Picked011
Done000
Total15814172
Error
5.2b
Counts
172 → 14
Alt Table
StatusErrorProgram
50.5b
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))) (sqrt.f64 V))
18.2b
(*.f64 c0 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))))
37.6b
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))
17.7b
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
23.5b
(*.f64 c0 (/.f64 (sqrt.f64 (*.f64 (/.f64 1 V) A)) (sqrt.f64 l)))
37.4b
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
36.8b
(*.f64 (sqrt.f64 c0) (*.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
15.7b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
18.3b
(*.f64 (*.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
50.7b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
16.2b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
18.1b
(*.f64 (*.f64 c0 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))))
16.2b
(*.f64 c0 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (/.f64 V (/.f64 (cbrt.f64 A) l)))))
24.6b
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
Compiler

Compiled 2972 to 1410 computations (52.6% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
1.1b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
5.0b
(/.f64 (/.f64 A V) l)
15.3b
(sqrt.f64 (/.f64 (/.f64 A V) l))

series140.0ms (2.1%)

Counts
3 → 48
Calls

3 calls:

76.0ms
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
44.0ms
(sqrt.f64 (/.f64 (/.f64 A V) l))
19.0ms
(/.f64 (/.f64 A V) l)

rewrite48.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
213×times-frac_binary64
134×add-sqr-sqrt_binary64
117×*-un-lft-identity_binary64
117×add-cube-cbrt_binary64
89×sqrt-prod_binary64
Counts
3 → 197
Calls

3 calls:

16.0ms
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
5.0ms
(sqrt.f64 (/.f64 (/.f64 A V) l))
5.0ms
(/.f64 (/.f64 A V) l)

simplify216.0ms (3.2%)

Algorithm
egg-herbie
Rules
637×fma-neg_binary64
558×fma-def_binary64
379×associate-/l/_binary64
291×div-sub_binary64
290×associate-*l*_binary64
Counts
245 → 280
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03004078
15373931
212973881
325843881
426953881
529143881
634243881
749973881
849493881

prune265.0ms (4%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New26812280
Fresh10212
Picked101
Done101
Total28014294
Error
0.1b
Counts
294 → 14
Alt Table
StatusErrorProgram
16.2b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
13.5b
(*.f64 c0 (*.f64 (fabs.f64 (cbrt.f64 A)) (sqrt.f64 (/.f64 (cbrt.f64 A) (*.f64 V l)))))
25.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 (sqrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 A V) (sqrt.f64 l))))
1.1b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))))
7.0b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 V) (cbrt.f64 V))) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 A (cbrt.f64 V)) (cbrt.f64 l)))))
10.7b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 V) (cbrt.f64 V))))) (sqrt.f64 (/.f64 (/.f64 A (cbrt.f64 V)) l)))
24.6b
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
1.9b
(*.f64 c0 (*.f64 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l)))))
37.6b
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))
22.0b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (sqrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) V) (sqrt.f64 l))))
4.8b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) V) (cbrt.f64 l))))
6.6b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) 1) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) V) (cbrt.f64 l))))
23.5b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 (/.f64 1 l))))
4.3b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (*.f64 (cbrt.f64 V) (cbrt.f64 V))) 1)) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) l))))
Compiler

Compiled 5453 to 1606 computations (70.5% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (cbrt.f64 A) (cbrt.f64 V))
0.6b
(cbrt.f64 V)
0.6b
(cbrt.f64 l)
0.6b
(cbrt.f64 A)

series553.0ms (8.3%)

Counts
4 → 60
Calls

4 calls:

456.0ms
(/.f64 (cbrt.f64 A) (cbrt.f64 V))
35.0ms
(cbrt.f64 A)
31.0ms
(cbrt.f64 l)
30.0ms
(cbrt.f64 V)

rewrite12.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
51×cbrt-prod_binary64
36×times-frac_binary64
35×*-un-lft-identity_binary64
35×add-sqr-sqrt_binary64
35×add-cube-cbrt_binary64
Counts
4 → 101
Calls

4 calls:

3.0ms
(/.f64 (cbrt.f64 A) (cbrt.f64 V))
1.0ms
(cbrt.f64 A)
1.0ms
(cbrt.f64 l)
1.0ms
(cbrt.f64 V)

simplify104.0ms (1.6%)

Algorithm
egg-herbie
Rules
400×log-prod_binary64
296×unswap-sqr_binary64
280×fma-neg_binary64
226×fma-def_binary64
213×log-div_binary64
Counts
161 → 152
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01451955
12401829
25911687
320591585
445811585
553741585

prune268.0ms (4%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New2995304
Fresh21113
Picked101
Done000
Total30216318
Error
0.0b
Counts
318 → 16
Alt Table
StatusErrorProgram
16.2b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
13.5b
(*.f64 c0 (*.f64 (fabs.f64 (cbrt.f64 A)) (sqrt.f64 (/.f64 (cbrt.f64 A) (*.f64 V l)))))
25.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 (sqrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 A V) (sqrt.f64 l))))
7.0b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 V) (cbrt.f64 V))) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 A (cbrt.f64 V)) (cbrt.f64 l)))))
32.4b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 A)) (cbrt.f64 (sqrt.f64 A))) (cbrt.f64 V)) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))))
23.5b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 (/.f64 1 l))))
32.3b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 A)) (cbrt.f64 (sqrt.f64 A))) (cbrt.f64 V)) (cbrt.f64 l))))
4.3b
(*.f64 c0 (*.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (*.f64 (cbrt.f64 V) (cbrt.f64 V))) 1)) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) l))))
10.7b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 V) (cbrt.f64 V))))) (sqrt.f64 (/.f64 (/.f64 A (cbrt.f64 V)) l)))
24.6b
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
1.3b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 l)) (cbrt.f64 (cbrt.f64 l))) (cbrt.f64 (cbrt.f64 l)))))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))))
37.6b
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))
22.0b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (sqrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) V) (sqrt.f64 l))))
6.6b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) 1) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) V) (cbrt.f64 l))))
17.2b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (*.f64 (cbrt.f64 (sqrt.f64 l)) (cbrt.f64 (sqrt.f64 l)))))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))))
1.1b
(*.f64 (*.f64 c0 (fabs.f64 (/.f64 (/.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (cbrt.f64 A))) (cbrt.f64 V)) (cbrt.f64 l)))) (sqrt.f64 (/.f64 (/.f64 (cbrt.f64 A) (cbrt.f64 V)) (cbrt.f64 l))))
Compiler

Compiled 8714 to 2137 computations (75.5% saved)

regimes2.3s (34.8%)

Accuracy

Total 1.0b remaining (88.2%)

Threshold costs 0b (0%)

Counts
254 → 1
Compiler

Compiled 48645 to 29440 computations (39.5% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
fabs-div_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01938
12638
22938
33238
42938

end6.0ms (0.1%)

Remove

(sort V l)

Compiler

Compiled 81 to 51 computations (37% saved)

sample1.2s (18.1%)

Algorithm
intervals
Results
394.0ms8000×body128valid
147.0ms3008×body128nan
46.0ms900×body128invalid
Compiler

Compiled 422 to 258 computations (38.9% saved)

Profiling

Loading profile data...