Details

Time bar (total: 9.0s)

analyze1.2s (13.5%)

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%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
13.2%86.5%0.2%10
17%82.8%0.2%11
18.2%81.5%0.2%12
21.7%78.1%0.2%13
32.9%66.9%0.2%14
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample1.2s (13.5%)

Results
1.0s8256×body128valid
90.0ms705×body128invalid
Compiler

Compiled 50 to 32 computations (36% saved)

simplify118.0ms (1.3%)

Algorithm
egg-herbie
Rules
1539×fma-neg_binary64
1346×fma-def_binary64
1046×div-sub_binary64
750×associate-/r/_binary64
420×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01116
12616
24916
39616
418316
533916
665716
7172616
8283016
9268716
10295116
11317216
12325816
13429716
14521316

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
13.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
13.2b
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
Compiler

Compiled 59 to 33 computations (44.1% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 y z))
0.0b
(-.f64 t (*.f64 a z))
12.9b
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))

series70.0ms (0.8%)

Counts
3 → 78
Calls

3 calls:

60.0ms
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
5.0ms
(-.f64 t (*.f64 a z))
5.0ms
(-.f64 x (*.f64 y z))

rewrite15.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
15×*-un-lft-identity_binary64
15×add-sqr-sqrt_binary64
15×add-cube-cbrt_binary64
times-frac_binary64
add-log-exp_binary64
Counts
3 → 74
Calls

3 calls:

5.0ms
(-.f64 t (*.f64 a z))
4.0ms
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
2.0ms
(-.f64 x (*.f64 y z))

simplify112.0ms (1.3%)

Algorithm
egg-herbie
Rules
886×fma-def_binary64
731×cancel-sign-sub-inv_binary64
207×sub-neg_binary64
192×fma-neg_binary64
173×times-frac_binary64
Counts
152 → 163
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02284118
16713825
224543679
349653679
449353679

prune139.0ms (1.6%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New15310163
Fresh000
Picked011
Done000
Total15311164
Error
3.6b
Counts
164 → 11
Alt Table
StatusErrorProgram
13.2b
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
34.9b
(-.f64 (fma.f64 (/.f64 y (*.f64 a a)) (/.f64 t z) (/.f64 y a)) (fma.f64 (/.f64 x (*.f64 z a)) (/.f64 t (*.f64 z a)) (/.f64 x (*.f64 z a))))
13.7b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
14.1b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (*.f64 (cbrt.f64 (-.f64 t (*.f64 a z))) (cbrt.f64 (-.f64 t (*.f64 a z))))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 t (*.f64 a z)))))
46.5b
(-.f64 (fma.f64 (/.f64 a t) (/.f64 (*.f64 z x) t) (fma.f64 (/.f64 (*.f64 a a) (pow.f64 t 3)) (*.f64 z (*.f64 z x)) (/.f64 x t))) (fma.f64 (/.f64 a t) (/.f64 (*.f64 y (*.f64 z z)) t) (fma.f64 (/.f64 y t) z (/.f64 y (/.f64 (pow.f64 (/.f64 t z) 3) (*.f64 a a))))))
39.0b
(*.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (/.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
42.2b
(/.f64 (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 x (*.f64 y z))))) (-.f64 t (*.f64 a z)))
14.0b
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
37.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y z) (*.f64 y z))) (*.f64 (-.f64 t (*.f64 z a)) (fma.f64 y z x)))
43.0b
(/.f64 x t)
13.5b
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z))))
Compiler

Compiled 4539 to 1335 computations (70.6% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 y z))
0.0b
(-.f64 t (*.f64 a z))
0.6b
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z))))
12.8b
(/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z)))

series131.0ms (1.5%)

Counts
2 → 120
Calls

2 calls:

71.0ms
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z))))
60.0ms
(/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z)))

rewrite26.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
90×times-frac_binary64
54×*-un-lft-identity_binary64
54×add-sqr-sqrt_binary64
54×add-cube-cbrt_binary64
18×associate-/r*_binary64
Counts
2 → 120
Calls

2 calls:

9.0ms
(/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z)))
6.0ms
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (-.f64 x (*.f64 y z))))

simplify203.0ms (2.3%)

Algorithm
egg-herbie
Rules
398×sub-neg_binary64
351×times-frac_binary64
310×fma-neg_binary64
262×associate-/l*_binary64
231×associate-/r*_binary64
Counts
240 → 261
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03388921
110488344
241308272
349448272
449538272

prune323.0ms (3.6%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New3205325
Fresh189
Picked101
Done011
Total32214336
Error
3.5b
Counts
336 → 14
Alt Table
StatusErrorProgram
13.2b
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
34.9b
(-.f64 (fma.f64 (/.f64 y (*.f64 a a)) (/.f64 t z) (/.f64 y a)) (fma.f64 (/.f64 x (*.f64 z a)) (/.f64 t (*.f64 z a)) (/.f64 x (*.f64 z a))))
13.7b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
14.1b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (*.f64 (cbrt.f64 (-.f64 t (*.f64 a z))) (cbrt.f64 (-.f64 t (*.f64 a z))))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 t (*.f64 a z)))))
37.3b
(/.f64 1 (-.f64 (fma.f64 (/.f64 a (*.f64 y y)) (/.f64 x z) (/.f64 a y)) (/.f64 t (*.f64 z y))))
37.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y z) (*.f64 y z))) (*.f64 (-.f64 t (*.f64 z a)) (fma.f64 y z x)))
41.5b
(/.f64 1 (/.f64 a y))
43.0b
(/.f64 x t)
35.9b
(/.f64 1 (+.f64 (/.f64 (*.f64 y (*.f64 z t)) (*.f64 x x)) (/.f64 (-.f64 t (*.f64 a z)) x)))
30.9b
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (/.f64 (*.f64 (-.f64 x (*.f64 y z)) (fma.f64 y z x)) (fma.f64 y z x))))
34.5b
(/.f64 1 (*.f64 (/.f64 (-.f64 t (*.f64 a z)) (*.f64 (-.f64 x (*.f64 z y)) (fma.f64 z y x))) (+.f64 x (*.f64 y z))))
39.0b
(*.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (/.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
42.2b
(/.f64 (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 x (*.f64 y z))))) (-.f64 t (*.f64 a z)))
14.0b
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
Compiler

Compiled 9929 to 3122 computations (68.6% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))
0.5b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.6b
(cbrt.f64 x)
12.9b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))

series593.0ms (6.6%)

Counts
4 → 120
Calls

4 calls:

260.0ms
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))
259.0ms
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
43.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
31.0ms
(cbrt.f64 x)

rewrite17.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
29×add-sqr-sqrt_binary64
21×*-un-lft-identity_binary64
21×add-cube-cbrt_binary64
19×cbrt-prod_binary64
11×pow1_binary64
Counts
4 → 96
Calls

4 calls:

4.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
3.0ms
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
1.0ms
(cbrt.f64 x)
0.0ms
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))

simplify102.0ms (1.1%)

Algorithm
egg-herbie
Rules
749×cancel-sign-sub-inv_binary64
747×fma-def_binary64
402×unswap-sqr_binary64
207×times-frac_binary64
202×sub-neg_binary64
Counts
216 → 194
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02364493
16294183
225014025
349704025

prune175.0ms (2%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New2291230
Fresh11112
Picked011
Done101
Total23113244
Error
3.5b
Counts
244 → 13
Alt Table
StatusErrorProgram
13.7b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
14.1b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (*.f64 (cbrt.f64 (-.f64 t (*.f64 a z))) (cbrt.f64 (-.f64 t (*.f64 a z))))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 t (*.f64 a z)))))
37.3b
(/.f64 1 (-.f64 (fma.f64 (/.f64 a (*.f64 y y)) (/.f64 x z) (/.f64 a y)) (/.f64 t (*.f64 z y))))
37.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y z) (*.f64 y z))) (*.f64 (-.f64 t (*.f64 z a)) (fma.f64 y z x)))
29.7b
(/.f64 x (-.f64 t (*.f64 z a)))
35.9b
(/.f64 1 (+.f64 (/.f64 (*.f64 y (*.f64 z t)) (*.f64 x x)) (/.f64 (-.f64 t (*.f64 a z)) x)))
30.9b
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (/.f64 (*.f64 (-.f64 x (*.f64 y z)) (fma.f64 y z x)) (fma.f64 y z x))))
34.5b
(/.f64 1 (*.f64 (/.f64 (-.f64 t (*.f64 a z)) (*.f64 (-.f64 x (*.f64 z y)) (fma.f64 z y x))) (+.f64 x (*.f64 y z))))
34.9b
(-.f64 (fma.f64 (/.f64 y (*.f64 a a)) (/.f64 t z) (/.f64 y a)) (fma.f64 (/.f64 x (*.f64 z a)) (/.f64 t (*.f64 z a)) (/.f64 x (*.f64 z a))))
39.0b
(*.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (/.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
42.2b
(/.f64 (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 x (*.f64 y z))))) (-.f64 t (*.f64 a z)))
14.0b
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
41.5b
(/.f64 1 (/.f64 a y))
Compiler

Compiled 6731 to 1758 computations (73.9% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z))))
3.9b
(/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a)))
5.0b
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
8.4b
(cbrt.f64 (-.f64 x (*.f64 y z)))

series342.0ms (3.8%)

Counts
4 → 192
Calls

4 calls:

148.0ms
(/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a)))
75.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
67.0ms
(*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z))))
51.0ms
(cbrt.f64 (-.f64 x (*.f64 y z)))

rewrite50.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
54×add-sqr-sqrt_binary64
41×*-un-lft-identity_binary64
41×cbrt-prod_binary64
41×add-cube-cbrt_binary64
40×cbrt-div_binary64
Counts
4 → 175
Calls

4 calls:

16.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
9.0ms
(*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z))))
5.0ms
(/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a)))
2.0ms
(cbrt.f64 (-.f64 x (*.f64 y z)))

simplify311.0ms (3.5%)

Algorithm
egg-herbie
Rules
853×fma-def_binary64
319×*-commutative_binary64
229×sub-neg_binary64
189×cancel-sign-sub-inv_binary64
178×fma-neg_binary64
Counts
367 → 480
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
086817175
1287315541
2487315522
3529915522

prune487.0ms (5.4%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New6260626
Fresh01111
Picked011
Done011
Total62613639
Error
3.5b
Counts
639 → 13
Alt Table
StatusErrorProgram
13.7b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (cbrt.f64 x) (neg.f64 (*.f64 y z))) (-.f64 t (*.f64 a z)))
14.1b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (*.f64 (cbrt.f64 (-.f64 t (*.f64 a z))) (cbrt.f64 (-.f64 t (*.f64 a z))))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 t (*.f64 a z)))))
37.3b
(/.f64 1 (-.f64 (fma.f64 (/.f64 a (*.f64 y y)) (/.f64 x z) (/.f64 a y)) (/.f64 t (*.f64 z y))))
37.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y z) (*.f64 y z))) (*.f64 (-.f64 t (*.f64 z a)) (fma.f64 y z x)))
29.7b
(/.f64 x (-.f64 t (*.f64 z a)))
35.9b
(/.f64 1 (+.f64 (/.f64 (*.f64 y (*.f64 z t)) (*.f64 x x)) (/.f64 (-.f64 t (*.f64 a z)) x)))
30.9b
(/.f64 1 (/.f64 (-.f64 t (*.f64 a z)) (/.f64 (*.f64 (-.f64 x (*.f64 y z)) (fma.f64 y z x)) (fma.f64 y z x))))
34.5b
(/.f64 1 (*.f64 (/.f64 (-.f64 t (*.f64 a z)) (*.f64 (-.f64 x (*.f64 z y)) (fma.f64 z y x))) (+.f64 x (*.f64 y z))))
34.9b
(-.f64 (fma.f64 (/.f64 y (*.f64 a a)) (/.f64 t z) (/.f64 y a)) (fma.f64 (/.f64 x (*.f64 z a)) (/.f64 t (*.f64 z a)) (/.f64 x (*.f64 z a))))
39.0b
(*.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (/.f64 (sqrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
42.2b
(/.f64 (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 x (*.f64 y z))))) (-.f64 t (*.f64 a z)))
14.0b
(*.f64 (*.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (cbrt.f64 (-.f64 x (*.f64 y z)))) (/.f64 (cbrt.f64 (-.f64 x (*.f64 y z))) (-.f64 t (*.f64 z a))))
41.5b
(/.f64 1 (/.f64 a y))
Compiler

Compiled 31404 to 10699 computations (65.9% saved)

regimes3.1s (34.5%)

Accuracy

Total 2.6b remaining (45.8%)

Threshold costs 0b (0%)

Counts
259 → 5
Compiler

Compiled 38974 to 22538 computations (42.2% saved)

bsearch11.0ms (0.1%)

Compiler

Compiled 16 to 10 computations (37.5% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
13×sub-neg_binary64
12×+-commutative_binary64
10×*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040162
157162
281162
397162
4106162
5107162
6106162

end176.0ms (2%)

Compiler

Compiled 581 to 251 computations (56.8% saved)

Profiling

Loading profile data...