Details

Time bar (total: 2.9s)

analyze41.0ms (1.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%6.2%93.8%0
0%6.2%93.8%1
0%6.2%93.8%2
1.6%3.1%95.3%3
1.6%3.1%95.3%4
2.3%1.6%96.1%5
2.3%1.6%96.1%6
2.7%0.8%96.5%7
2.7%0.8%96.5%8
2.9%0.4%96.7%9
2.9%0.4%96.7%10
3%0.2%96.8%11
3%0.2%96.8%12
3.1%0.1%96.8%13
3.1%0.1%96.8%14
Compiler

Compiled 18 to 11 computations (38.9% saved)

sample22.0ms (0.8%)

Algorithm
intervals
Results
9.0ms256×body128valid
6.0ms256×pre128true
0.0mspre128false
Compiler

Compiled 31 to 21 computations (32.3% saved)

simplify156.0ms (5.4%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (68.0ms)

IterNodesCost
0483617
1483617

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 14.4b

Counts
2 → 1
Compiler

Compiled 24 to 17 computations (29.2% saved)

localize7.0ms (0.3%)

Local error

Found 3 expressions with local error:

0.0b
(-.f64 (*.f64 a a) (*.f64 b b))
0.0b
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
14.0b
(/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))

rewrite20.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480
add-sqr-sqrt_binary64_1464
add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
add-log-exp_binary64_1481
times-frac_binary64_1448 associate-/l*_binary64_1387 pow1_binary64_1503
sqrt-prod_binary64_1458 difference-of-squares_binary64_1411
cbrt-undiv_binary64_1476 associate-/l/_binary64_1389 flip3--_binary64_1446 flip--_binary64_1417 div-exp_binary64_1493
sqrt-pow1_binary64_1460 associate-/r*_binary64_1386 cancel-sign-sub-inv_binary64_1408 rem-sqrt-square_binary64_1455 cbrt-unprod_binary64_1475 div-inv_binary64_1439 sub-neg_binary64_1435 clear-num_binary64_1441 frac-2neg_binary64_1453 diff-log_binary64_1534 pow1/2_binary64_1522 prod-exp_binary64_1491 div-sub_binary64_1447
Counts
3 → 52
Calls

3 calls:

8.0ms
(/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
4.0ms
(-.f64 (*.f64 a a) (*.f64 b b))
1.0ms
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))

series89.0ms (3.1%)

Counts
3 → 9
Calls

3 calls:

35.0ms
(sqrt.f64 (fabs.f64 (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))))
33.0ms
(/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
21.0ms
(-.f64 (*.f64 a a) (*.f64 b b))

simplify69.0ms (2.4%)

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 0 (54.0ms)

IterNodesCost
050391000

prune54.0ms (1.9%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New59261
Fresh000
Picked101
Done000
Total60262

Merged error: 0.0b

Counts
62 → 2
Compiler

Compiled 1075 to 364 computations (66.1% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 (+.f64 a b) a)
0.0b
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))))
0.0b
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))
0.0b
(/.f64 (-.f64 a b) a)

rewrite45.0ms (1.6%)

Algorithm
rewrite-expression-head
Rules
69×*-un-lft-identity_binary64_1442
68×add-sqr-sqrt_binary64_1464
58×times-frac_binary64_1448
41×add-cube-cbrt_binary64_1477
20×add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480
19×associate-*r*_binary64_1382
16×associate-*l*_binary64_1383
associate-/l*_binary64_1387
distribute-lft-out_binary64_1393 pow1_binary64_1503 difference-of-squares_binary64_1411 distribute-lft-out--_binary64_1394
cbrt-undiv_binary64_1476 associate-/r*_binary64_1386 div-exp_binary64_1493
cbrt-unprod_binary64_1475 associate-/l/_binary64_1389 div-inv_binary64_1439 add-log-exp_binary64_1481 prod-exp_binary64_1491 unswap-sqr_binary64_1410
sqrt-prod_binary64_1458
clear-num_binary64_1441 frac-2neg_binary64_1453
sqrt-pow1_binary64_1460 associate-*r/_binary64_1384 rem-sqrt-square_binary64_1455 flip3--_binary64_1446 pow-prod-down_binary64_1513 *-commutative_binary64_1373 flip--_binary64_1417 frac-times_binary64_1452 flip3-+_binary64_1445 flip-+_binary64_1416 pow1/2_binary64_1522 div-sub_binary64_1447 associate-*l/_binary64_1385
Counts
4 → 143
Calls

4 calls:

18.0ms
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))
6.0ms
(/.f64 (-.f64 a b) a)
6.0ms
(/.f64 (+.f64 a b) a)
3.0ms
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))))

series118.0ms (4.1%)

Counts
4 → 12
Calls

4 calls:

42.0ms
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))))
40.0ms
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 (-.f64 a b) a))
20.0ms
(/.f64 (-.f64 a b) a)
16.0ms
(/.f64 (+.f64 a b) a)

simplify54.0ms (1.9%)

Algorithm
egg-herbie
Counts
155 → 155
Iterations

Useful iterations: 0 (24.0ms)

IterNodesCost
052942530

prune108.0ms (3.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1541155
Fresh011
Picked011
Done000
Total1543157

Merged error: 0b

Counts
157 → 3
Compiler

Compiled 3018 to 701 computations (76.8% saved)

localize12.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 a (-.f64 a b))
0.0b
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))))
0.0b
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))
0.1b
(/.f64 1 (/.f64 a (-.f64 a b)))

rewrite94.0ms (3.3%)

Algorithm
rewrite-expression-head
Rules
275×times-frac_binary64_1448
214×add-sqr-sqrt_binary64_1464
190×*-un-lft-identity_binary64_1442
130×add-cube-cbrt_binary64_1477
68×associate-*r*_binary64_1382
62×add-exp-log_binary64_1480
32×add-cbrt-cube_binary64_1478
29×div-exp_binary64_1493
26×associate-/r*_binary64_1386
25×difference-of-squares_binary64_1411 distribute-lft-out--_binary64_1394
18×associate-/r/_binary64_1388
16×associate-*l*_binary64_1383
14×prod-exp_binary64_1491
13×cbrt-undiv_binary64_1476
11×div-inv_binary64_1439
10×unswap-sqr_binary64_1410
flip3--_binary64_1446 flip--_binary64_1417 pow1_binary64_1503
cbrt-unprod_binary64_1475 associate-/l*_binary64_1387 1-exp_binary64_1486 rec-exp_binary64_1492
add-log-exp_binary64_1481
distribute-lft-out_binary64_1393 sqrt-prod_binary64_1458
clear-num_binary64_1441 frac-2neg_binary64_1453
sqrt-pow1_binary64_1460 associate-*r/_binary64_1384 inv-pow_binary64_1527 rem-sqrt-square_binary64_1455 pow-prod-down_binary64_1513 *-commutative_binary64_1373 pow-flip_binary64_1516 frac-times_binary64_1452 un-div-inv_binary64_1440 pow1/2_binary64_1522 associate-*l/_binary64_1385
Counts
4 → 285
Calls

4 calls:

40.0ms
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))
10.0ms
(/.f64 1 (/.f64 a (-.f64 a b)))
6.0ms
(/.f64 a (-.f64 a b))
1.0ms
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))))

series127.0ms (4.4%)

Counts
4 → 12
Calls

4 calls:

41.0ms
(sqrt.f64 (fabs.f64 (*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))))
41.0ms
(*.f64 (/.f64 (+.f64 a b) a) (/.f64 1 (/.f64 a (-.f64 a b))))
25.0ms
(/.f64 a (-.f64 a b))
20.0ms
(/.f64 1 (/.f64 a (-.f64 a b)))

simplify130.0ms (4.5%)

Algorithm
egg-herbie
Counts
297 → 297
Iterations

Useful iterations: 0 (73.0ms)

IterNodesCost
049585476
149585476

prune247.0ms (8.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2961297
Fresh101
Picked011
Done011
Total2973300

Merged error: 0b

Counts
300 → 3
Compiler

Compiled 6496 to 2112 computations (67.5% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a))))
0.0b
(sqrt.f64 (fabs.f64 (log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))))
0.0b
(log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))
0.4b
(*.f64 (/.f64 b a) (/.f64 b a))

rewrite32.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
51×add-sqr-sqrt_binary64_1464
40×times-frac_binary64_1448
38×*-un-lft-identity_binary64_1442
36×add-cube-cbrt_binary64_1477
16×add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480
13×associate-*r*_binary64_1382 swap-sqr_binary64_1409 associate-*l*_binary64_1383 pow1_binary64_1503
10×exp-prod_binary64_1494
add-log-exp_binary64_1481
log-pow_binary64_1531
log-prod_binary64_1528
cbrt-undiv_binary64_1476 cbrt-unprod_binary64_1475 div-inv_binary64_1439 prod-exp_binary64_1491 difference-of-squares_binary64_1411 div-exp_binary64_1493 exp-sum_binary64_1488 unswap-sqr_binary64_1410
sqrt-prod_binary64_1458
cancel-sign-sub-inv_binary64_1408 sub-neg_binary64_1435 rem-exp-log_binary64_1482 exp-diff_binary64_1490
pow2_binary64_1523 sqrt-pow1_binary64_1460 associate-*r/_binary64_1384 rem-sqrt-square_binary64_1455 pow-plus_binary64_1505 rem-log-exp_binary64_1483 pow-prod-down_binary64_1513 *-commutative_binary64_1373 pow-sqr_binary64_1415 diff-log_binary64_1534 frac-times_binary64_1452 pow1/2_binary64_1522 pow-prod-up_binary64_1512 log-div_binary64_1529 associate-*l/_binary64_1385
Counts
4 → 117
Calls

4 calls:

11.0ms
(*.f64 (/.f64 b a) (/.f64 b a))
5.0ms
(log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))
5.0ms
(exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a))))
1.0ms
(sqrt.f64 (fabs.f64 (log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))))

series132.0ms (4.6%)

Counts
4 → 12
Calls

4 calls:

53.0ms
(log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))
33.0ms
(sqrt.f64 (fabs.f64 (log.f64 (exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a)))))))
26.0ms
(exp.f64 (-.f64 1 (*.f64 (/.f64 b a) (/.f64 b a))))
19.0ms
(*.f64 (/.f64 b a) (/.f64 b a))

simplify95.0ms (3.3%)

Algorithm
egg-herbie
Counts
129 → 129
Iterations

Useful iterations: 0 (70.0ms)

IterNodesCost
049821646
149821646

prune120.0ms (4.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1290129
Fresh000
Picked011
Done022
Total1293132

Merged error: 0b

Counts
132 → 3
Compiler

Compiled 2093 to 1217 computations (41.9% saved)

regimes211.0ms (7.3%)

Compiler

Compiled 2035 to 1440 computations (29.2% saved)

bsearch0.0ms (0%)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02220
12220

end0.0ms (0%)

sample870.0ms (30.2%)

Algorithm
intervals
Results
275.0ms8000×body128valid
161.0ms8000×pre128true
2.0ms122×pre128false
Compiler

Compiled 271 to 193 computations (28.8% saved)

Profiling

Loading profile data...