Details

Time bar (total: 8.8s)

analyze72.0ms (0.8%)

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
25%74.9%0.1%5
25%50%25.1%6
25%31.2%43.8%7
25%21.9%53.2%8
25%14%61%9
28.1%10.9%61%10
31.6%7.4%61%11
33.4%5.7%61%12
35.2%3.8%61%13
36.1%2.9%61%14
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample17.0ms (0.2%)

Algorithm
intervals
Results
10.0ms256×body128valid
0.0msbody128invalid
Compiler

Compiled 35 to 27 computations (22.9% saved)

simplify125.0ms (1.4%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (34.0ms)

IterNodesCost
0512625

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 0.2b

Counts
2 → 1
Compiler

Compiled 34 to 24 computations (29.4% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 a a) (*.f64 b b))
0.0b
(*.f64 4 (*.f64 b b))
0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

rewrite31.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
10×add-exp-log_binary64_2503 pow1_binary64_2526
add-cbrt-cube_binary64_2501
add-log-exp_binary64_2504 add-sqr-sqrt_binary64_2487
*-un-lft-identity_binary64_2465 add-cube-cbrt_binary64_2500
unpow-prod-down_binary64_2544 prod-exp_binary64_2514 pow-prod-down_binary64_2536 pow-unpow_binary64_2542 associate-*l*_binary64_2406 cbrt-unprod_binary64_2498
flip3-+_binary64_2468 +-commutative_binary64_2395 sum-log_binary64_2556 flip-+_binary64_2439
*-commutative_binary64_2396 unpow2_binary64_2530 pow-exp_binary64_2533 unswap-sqr_binary64_2433 pow-to-exp_binary64_2534 sqr-pow_binary64_2437 pow-pow_binary64_2537 associate-*r*_binary64_2405
Counts
4 → 59
Calls

4 calls:

8.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
8.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
6.0ms
(*.f64 4 (*.f64 b b))
4.0ms
(+.f64 (*.f64 a a) (*.f64 b b))

series665.0ms (7.6%)

Counts
4 → 51
Calls

4 calls:

357.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
184.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
97.0ms
(+.f64 (*.f64 a a) (*.f64 b b))
27.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 1426 to 1265 computations (11.3% saved)

simplify84.0ms (1%)

Algorithm
egg-herbie
Counts
110 → 110
Iterations

Useful iterations: 0 (62.0ms)

IterNodesCost
050171762

prune119.0ms (1.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1073110
Fresh000
Picked101
Done000
Total1083111

Merged error: 0.0b

Counts
111 → 3
Compiler

Compiled 2366 to 1193 computations (49.6% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(-.f64 (+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b))) 1)
0.0b
(*.f64 4 (*.f64 b b))
0.0b
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b)))
3.6b
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))

rewrite56.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
30×add-exp-log_binary64_2503 add-cbrt-cube_binary64_2501 pow1_binary64_2526
27×add-log-exp_binary64_2504
18×prod-exp_binary64_2514 pow-prod-down_binary64_2536 cbrt-unprod_binary64_2498
12×sum-log_binary64_2556
11×add-sqr-sqrt_binary64_2487
*-un-lft-identity_binary64_2465
add-cube-cbrt_binary64_2500
diff-log_binary64_2557 associate-*l*_binary64_2406
cancel-sign-sub-inv_binary64_2431
difference-of-squares_binary64_2434 *-commutative_binary64_2396 associate-*r*_binary64_2405
flip3-+_binary64_2468 difference-of-sqr-1_binary64_2435 +-commutative_binary64_2395 flip--_binary64_2440 associate-+l+_binary64_2398 flip-+_binary64_2439 distribute-lft-out--_binary64_2417 sub-neg_binary64_2458 unswap-sqr_binary64_2433 associate--l+_binary64_2402 flip3--_binary64_2469
Counts
4 → 83
Calls

4 calls:

16.0ms
(-.f64 (+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b))) 1)
13.0ms
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b)))
11.0ms
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))
6.0ms
(*.f64 4 (*.f64 b b))

series857.0ms (9.7%)

Counts
4 → 45
Calls

4 calls:

369.0ms
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b)))
364.0ms
(-.f64 (+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))))) (*.f64 4 (*.f64 b b))) 1)
99.0ms
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))
24.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 1422 to 1262 computations (11.3% saved)

simplify103.0ms (1.2%)

Algorithm
egg-herbie
Counts
128 → 128
Iterations

Useful iterations: 0 (72.0ms)

IterNodesCost
049522824
149522824

prune163.0ms (1.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1280128
Fresh022
Picked011
Done000
Total1283131

Merged error: 0.0b

Counts
131 → 3
Compiler

Compiled 3440 to 2086 computations (39.4% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.4b
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
12.3b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
12.3b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
12.3b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))

rewrite57.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
25×cbrt-prod_binary64_2496
23×add-sqr-sqrt_binary64_2487
18×cbrt-div_binary64_2497
15×*-un-lft-identity_binary64_2465 add-cube-cbrt_binary64_2500
11×pow1_binary64_2526
flip3-+_binary64_2468 flip-+_binary64_2439 pow1/3_binary64_2547
swap-sqr_binary64_2432 add-exp-log_binary64_2503 associate-*r*_binary64_2405 associate-*l*_binary64_2406
add-log-exp_binary64_2504 frac-times_binary64_2475 unswap-sqr_binary64_2433 add-cbrt-cube_binary64_2501
associate-*l/_binary64_2408 associate-*r/_binary64_2407 pow-prod-down_binary64_2536 pow-sqr_binary64_2438 pow-prod-up_binary64_2535
*-commutative_binary64_2396 pow-plus_binary64_2528 pow2_binary64_2546 prod-exp_binary64_2514 cbrt-unprod_binary64_2498
Counts
4 → 87
Calls

4 calls:

20.0ms
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
8.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
7.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
7.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))

series1.7s (18.8%)

Counts
4 → 60
Calls

4 calls:

588.0ms
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
363.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
357.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
347.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))
Compiler

Compiled 5772 to 4269 computations (26% saved)

simplify118.0ms (1.3%)

Algorithm
egg-herbie
Counts
147 → 147
Iterations

Useful iterations: 0 (71.0ms)

IterNodesCost
049435335
149435335

prune363.0ms (4.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1470147
Fresh011
Picked011
Done011
Total1473150

Merged error: 0.0b

Counts
150 → 3
Compiler

Compiled 8496 to 4082 computations (52% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4)
1.6b
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
4.2b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
47.1b
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))

rewrite69.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
31×add-exp-log_binary64_2503
27×*-un-lft-identity_binary64_2465
18×prod-exp_binary64_2514
17×add-cube-cbrt_binary64_2500 add-sqr-sqrt_binary64_2487
15×add-cbrt-cube_binary64_2501
12×times-frac_binary64_2471
add-log-exp_binary64_2504
associate-*l*_binary64_2406
unpow-prod-down_binary64_2544 cbrt-unprod_binary64_2498
pow1_binary64_2526 distribute-lft-out_binary64_2416
associate-/r*_binary64_2409 pow-exp_binary64_2533 pow-to-exp_binary64_2534
flip3-+_binary64_2468 flip-+_binary64_2439 pow-unpow_binary64_2542 associate-/l*_binary64_2410
sum-log_binary64_2556 associate-/l/_binary64_2412 sqr-pow_binary64_2437 associate-+r+_binary64_2397 associate-/r/_binary64_2411
*-commutative_binary64_2396 +-commutative_binary64_2395 unpow2_binary64_2530 associate-+r-_binary64_2399 clear-num_binary64_2464 cbrt-undiv_binary64_2499 sub-neg_binary64_2458 cancel-sign-sub-inv_binary64_2431 div-exp_binary64_2516 div-inv_binary64_2462 diff-log_binary64_2557 pow-pow_binary64_2537 frac-2neg_binary64_2476 associate-*r*_binary64_2405
Counts
4 → 97
Calls

4 calls:

20.0ms
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))
15.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
13.0ms
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
5.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4)

series2.6s (29.5%)

Counts
4 → 39
Calls

4 calls:

2.3s
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))
136.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
64.0ms
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
55.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4)
Compiler

Compiled 3754 to 2977 computations (20.7% saved)

simplify102.0ms (1.2%)

Algorithm
egg-herbie
Counts
136 → 136
Iterations

Useful iterations: 0 (49.0ms)

IterNodesCost
049546821
149546821

prune374.0ms (4.3%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1360136
Fresh000
Picked011
Done022
Total1363139

Merged error: 0.0b

Counts
139 → 3
Compiler

Compiled 8095 to 4204 computations (48.1% saved)

regimes235.0ms (2.7%)

Compiler

Compiled 3060 to 2041 computations (33.3% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
03537
13537

end0.0ms (0%)

sample867.0ms (9.9%)

Algorithm
intervals
Results
336.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 462 to 315 computations (31.8% saved)

Profiling

Loading profile data...