Details

Time bar (total: 6.6s)

analyze641.0ms (9.7%)

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)

sample54.0ms (0.8%)

Algorithm
intervals
Symmetry

(sort V l)

Results
12.0ms256×body128valid
5.0ms111×body128nan
1.0ms31×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.4b
Counts
2 → 1
Alt Table
StatusErrorProgram
17.4b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 36 to 24 computations (33.3% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
1.2b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.3b
(/.f64 A (*.f64 V l))
14.0b
(sqrt.f64 (/.f64 A (*.f64 V l)))

series121.0ms (1.8%)

Counts
3 → 12
Calls

3 calls:

65.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
38.0ms
(sqrt.f64 (/.f64 A (*.f64 V l)))
17.0ms
(/.f64 A (*.f64 V l))

rewrite14.0ms (0.2%)

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:

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

simplify94.0ms (1.4%)

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

prune86.0ms (1.3%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New721486
Fresh000
Picked101
Done000
Total731487
Error
8.5b
Counts
87 → 14
Alt Table
StatusErrorProgram
49.9b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 V))) (sqrt.f64 (/.f64 A l)))
17.8b
(*.f64 c0 (*.f64 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l))))))
50.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
18.9b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
17.6b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
39.8b
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l))))
18.1b
(*.f64 (*.f64 (cbrt.f64 c0) (cbrt.f64 c0)) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
17.7b
(*.f64 c0 (sqrt.f64 (/.f64 1 (/.f64 (*.f64 V l) A))))
29.1b
(*.f64 c0 (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (sqrt.f64 (/.f64 A (*.f64 V l)))) (sqrt.f64 (/.f64 A (*.f64 V l))))))
40.1b
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))
35.4b
(*.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
39.1b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))
18.1b
(*.f64 c0 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) (cbrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (cbrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))
18.1b
(*.f64 c0 (sqrt.f64 (/.f64 1 (/.f64 V (/.f64 A l)))))
Compiler

Compiled 1690 to 593 computations (64.9% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
1.5b
(sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.3b
(/.f64 A (*.f64 V l))
14.0b
(sqrt.f64 (/.f64 A (*.f64 V l)))

series675.0ms (10.2%)

Counts
2 → 36
Calls

2 calls:

600.0ms
(sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))
74.0ms
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))

rewrite22.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
35×sqrt-prod_binary64
13×associate-*r*_binary64
11×add-sqr-sqrt_binary64
10×sqrt-div_binary64
*-un-lft-identity_binary64
Counts
2 → 59
Calls

2 calls:

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

simplify99.0ms (1.5%)

Algorithm
egg-herbie
Rules
510×fma-neg_binary64
461×unswap-sqr_binary64
396×fma-def_binary64
254×sqr-pow_binary64
246×div-sub_binary64
Counts
95 → 83
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01291643
12541503
25861503
39111359
414141359
526511359
645751359
749921359

prune196.0ms (3%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New2055210
Fresh5813
Picked101
Done000
Total21113224
Error
8.5b
Counts
224 → 13
Alt Table
StatusErrorProgram
39.1b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))
17.7b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))))))
50.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
18.9b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
17.5b
(*.f64 (*.f64 c0 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
18.1b
(*.f64 (*.f64 (cbrt.f64 c0) (cbrt.f64 c0)) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
19.1b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (/.f64 V (/.f64 (cbrt.f64 A) l))))))
35.4b
(*.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
40.2b
(/.f64 (*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 A))) (sqrt.f64 (sqrt.f64 A))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 V l))) (sqrt.f64 (sqrt.f64 (*.f64 V l)))))
34.2b
(*.f64 (*.f64 c0 (exp.f64 (*.f64 1/4 (-.f64 (log.f64 (/.f64 A V)) (log.f64 l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
49.9b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 V))) (sqrt.f64 (/.f64 A l)))
39.8b
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l))))
18.1b
(*.f64 c0 (sqrt.f64 (/.f64 1 (/.f64 V (/.f64 A l)))))
Compiler

Compiled 5246 to 1154 computations (78% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.5b
(sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.3b
(/.f64 A (*.f64 V l))
14.0b
(sqrt.f64 (/.f64 A (*.f64 V l)))
15.6b
(pow.f64 (/.f64 A (*.f64 V l)) 1/4)

series802.0ms (12.1%)

Counts
1 → 36
Calls

1 calls:

802.0ms
(pow.f64 (/.f64 A (*.f64 V l)) 1/4)

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-exp-log_binary64
unpow-prod-down_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
Counts
1 → 25
Calls

1 calls:

4.0ms
(pow.f64 (/.f64 A (*.f64 V l)) 1/4)

simplify81.0ms (1.2%)

Algorithm
egg-herbie
Rules
539×fma-neg_binary64
492×log-prod_binary64
258×exp-prod_binary64
251×*-commutative_binary64
234×unswap-sqr_binary64
Counts
61 → 43
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0115972
1228864
2446840
31368786
43670770
54961770
64931770

prune151.0ms (2.3%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1490149
Fresh01212
Picked011
Done000
Total14913162
Error
8.5b
Counts
162 → 13
Alt Table
StatusErrorProgram
39.1b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))
17.7b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))))))
50.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
18.9b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
17.5b
(*.f64 (*.f64 c0 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
18.1b
(*.f64 (*.f64 (cbrt.f64 c0) (cbrt.f64 c0)) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
19.1b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (/.f64 V (/.f64 (cbrt.f64 A) l))))))
35.4b
(*.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
40.2b
(/.f64 (*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 A))) (sqrt.f64 (sqrt.f64 A))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 V l))) (sqrt.f64 (sqrt.f64 (*.f64 V l)))))
34.2b
(*.f64 (*.f64 c0 (exp.f64 (*.f64 1/4 (-.f64 (log.f64 (/.f64 A V)) (log.f64 l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
49.9b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 V))) (sqrt.f64 (/.f64 A l)))
39.8b
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l))))
18.1b
(*.f64 c0 (sqrt.f64 (/.f64 1 (/.f64 V (/.f64 A l)))))
Compiler

Compiled 3804 to 1400 computations (63.2% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.5b
(sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.3b
(/.f64 A (*.f64 V l))
14.0b
(sqrt.f64 (/.f64 A (*.f64 V l)))
15.9b
(cbrt.f64 (/.f64 A (*.f64 V l)))

series762.0ms (11.5%)

Counts
1 → 36
Calls

1 calls:

762.0ms
(cbrt.f64 (/.f64 A (*.f64 V l)))

rewrite3.0ms (0%)

Algorithm
rewrite-expression-head
Rules
cbrt-prod_binary64
*-un-lft-identity_binary64
times-frac_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
Counts
1 → 18
Calls

1 calls:

2.0ms
(cbrt.f64 (/.f64 A (*.f64 V l)))

simplify75.0ms (1.1%)

Algorithm
egg-herbie
Rules
692×fma-neg_binary64
526×fma-def_binary64
338×exp-sum_binary64
300×div-sub_binary64
254×distribute-rgt-in_binary64
Counts
54 → 34
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
090996
1163946
2284909
3738695
41695633
54242633
64947633

prune163.0ms (2.5%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New2000200
Fresh01111
Picked011
Done011
Total20013213
Error
8.5b
Counts
213 → 13
Alt Table
StatusErrorProgram
39.1b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))
17.7b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 (fabs.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))) (sqrt.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))))))
50.2b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 (sqrt.f64 A) V))) (sqrt.f64 (/.f64 (sqrt.f64 A) l)))
18.9b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
17.5b
(*.f64 (*.f64 c0 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
18.1b
(*.f64 (*.f64 (cbrt.f64 c0) (cbrt.f64 c0)) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))
19.1b
(*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (sqrt.f64 (/.f64 (*.f64 (cbrt.f64 A) (cbrt.f64 A)) (/.f64 V (/.f64 (cbrt.f64 A) l))))))
35.4b
(*.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))
40.2b
(/.f64 (*.f64 (*.f64 c0 (sqrt.f64 (sqrt.f64 A))) (sqrt.f64 (sqrt.f64 A))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 V l))) (sqrt.f64 (sqrt.f64 (*.f64 V l)))))
34.2b
(*.f64 (*.f64 c0 (exp.f64 (*.f64 1/4 (-.f64 (log.f64 (/.f64 A V)) (log.f64 l))))) (sqrt.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))
49.9b
(*.f64 (*.f64 c0 (sqrt.f64 (/.f64 1 V))) (sqrt.f64 (/.f64 A l)))
39.8b
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l))))
18.1b
(*.f64 c0 (sqrt.f64 (/.f64 1 (/.f64 V (/.f64 A l)))))
Compiler

Compiled 6525 to 1418 computations (78.3% saved)

regimes1.2s (18.7%)

Accuracy

Total 2.6b remaining (22.6%)

Threshold costs 0b (0%)

Counts
81 → 4
Compiler

Compiled 16823 to 9818 computations (41.6% saved)

bsearch3.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03483
14283
24183

end7.0ms (0.1%)

Compiler

Compiled 177 to 99 computations (44.1% saved)

sample1.3s (19.3%)

Algorithm
intervals
Results
416.0ms8000×body128valid
141.0ms2921×body128nan
38.0ms801×body128invalid
Compiler

Compiled 332 to 201 computations (39.5% saved)

Profiling

Loading profile data...