Details

Time bar (total: 4.8s)

analyze255.0ms (5.3%)

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 20 to 13 computations (35% saved)

sample42.0ms (0.9%)

Algorithm
intervals
Results
25.0ms256×body128valid
Compiler

Compiled 41 to 27 computations (34.1% saved)

simplify80.0ms (1.7%)

Algorithm
egg-herbie
Rules
785×distribute-rgt-neg-in_binary64
770×unswap-sqr_binary64
631×associate-*l*_binary64
289×sub-neg_binary64
232×associate-+l+_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01325
12925
25025
313825
437425
5111725
6283925
7514025

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
0.2b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.2b
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b))) 1)
Compiler

Compiled 57 to 36 computations (36.8% saved)

localize18.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

rewrite216.0ms (4.5%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
13×add-sqr-sqrt_binary64
11×add-log-exp_binary64
11×*-un-lft-identity_binary64
10×add-exp-log_binary64
10×pow1_binary64
Counts
4 → 68
Calls

4 calls:

16.0ms
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b))) 1)
12.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
12.0ms
(*.f64 4 (*.f64 b b))
8.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
Compiler

Compiled 1731 to 796 computations (54% saved)

series353.0ms (7.3%)

Error
0.0b
Counts
4 → 57
Calls

4 calls:

126.0ms
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b))) 1)
110.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
75.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
11.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 1883 to 1494 computations (20.7% saved)

simplify306.0ms (6.4%)

Algorithm
egg-herbie
Rules
476×associate-*l*_binary64
400×associate-*r*_binary64
330×cancel-sign-sub-inv_binary64
329×exp-prod_binary64
271×distribute-rgt-in_binary64
Counts
125 → 87
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01302623
12912414
28212375
330932375
444582375
548382375
649802375

prune78.0ms (1.6%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New85287
Fresh000
Picked101
Done000
Total86288
Error
0b
Counts
88 → 2
Alt Table
StatusErrorProgram
0.0b
(-.f64 (+.f64 (+.f64 (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1)
0.2b
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))) 1)
Compiler

Compiled 1145 to 560 computations (51.1% saved)

localize28.0ms (0.6%)

Local error

Found 4 expressions with local error:

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

rewrite235.0ms (4.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
55×pow1_binary64
39×add-cbrt-cube_binary64
39×add-exp-log_binary64
30×pow-prod-down_binary64
24×cbrt-unprod_binary64
Counts
4 → 89
Calls

4 calls:

27.0ms
(*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))
22.0ms
(+.f64 (+.f64 (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b)))
15.0ms
(*.f64 (*.f64 a a) (*.f64 b b))
11.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 2528 to 1303 computations (48.5% saved)

series212.0ms (4.4%)

Error
0b
Counts
4 → 33
Calls

4 calls:

113.0ms
(+.f64 (+.f64 (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b)))
38.0ms
(*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))
37.0ms
(*.f64 (*.f64 a a) (*.f64 b b))
13.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 1463 to 1154 computations (21.1% saved)

simplify152.0ms (3.2%)

Algorithm
egg-herbie
Rules
601×distribute-rgt-in_binary64
586×distribute-lft-in_binary64
579×unswap-sqr_binary64
518×*-commutative_binary64
218×associate-+l+_binary64
Counts
122 → 82
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01342200
13091883
211921780
339221747
452231747

prune74.0ms (1.5%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New82082
Fresh011
Picked011
Done000
Total82284
Error
0b
Counts
84 → 2
Alt Table
StatusErrorProgram
0.0b
(-.f64 (+.f64 (+.f64 (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1)
0.2b
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))) 1)
Compiler

Compiled 1092 to 654 computations (40.1% saved)

localize28.0ms (0.6%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 4 (*.f64 b b))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
3.4b
(exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))
23.6b
(log.f64 (*.f64 4 (*.f64 b b)))

rewrite134.0ms (2.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
22×pow1_binary64
16×add-exp-log_binary64
add-sqr-sqrt_binary64
add-cbrt-cube_binary64
pow-prod-down_binary64
Counts
4 → 66
Calls

4 calls:

13.0ms
(*.f64 4 (*.f64 b b))
8.0ms
(exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))
8.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
7.0ms
(log.f64 (*.f64 4 (*.f64 b b)))
Compiler

Compiled 1369 to 701 computations (48.8% saved)

series164.0ms (3.4%)

Error
0b
Counts
4 → 27
Calls

4 calls:

84.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
26.0ms
(exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))
21.0ms
(log.f64 (*.f64 4 (*.f64 b b)))
13.0ms
(*.f64 4 (*.f64 b b))
Compiler

Compiled 1178 to 912 computations (22.6% saved)

simplify161.0ms (3.3%)

Algorithm
egg-herbie
Rules
628×unswap-sqr_binary64
614×distribute-rgt-in_binary64
592×distribute-lft-in_binary64
260×associate-*l*_binary64
209×associate-*r*_binary64
Counts
93 → 54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01071135
11991042
24741030
314371027
449841027
549921027
651591027

prune41.0ms (0.8%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New54054
Fresh000
Picked011
Done011
Total54256
Error
0b
Counts
56 → 2
Alt Table
StatusErrorProgram
0.0b
(-.f64 (+.f64 (+.f64 (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1)
0.2b
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (exp.f64 (log.f64 (*.f64 4 (*.f64 b b))))) 1)
Compiler

Compiled 564 to 301 computations (46.6% saved)

regimes759.0ms (15.8%)

Accuracy

Total 0.0b remaining (32.4%)

Threshold costs 0.0b (32.4%)

Compiler

Compiled 7394 to 5087 computations (31.2% saved)

simplify8.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01631
12631
22731
32531

end1.0ms (0%)

Compiler

Compiled 23 to 17 computations (26.1% saved)

sample1.5s (30.3%)

Algorithm
intervals
Results
870.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 93 to 64 computations (31.2% saved)

Profiling

Loading profile data...