Details

Time bar (total: 11.6s)

analyze743.0ms (6.4%)

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
49.9%49.9%0.2%6
49.9%49.9%0.2%7
49.9%49.9%0.2%8
49.9%49.9%0.2%9
49.9%49.9%0.2%10
74.8%24.9%0.2%11
74.8%24.9%0.2%12
74.8%24.9%0.2%13
74.8%24.9%0.2%14
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.9s (16.5%)

Results
1.3s7128×body128valid
189.0ms439×body512valid
180.0ms335×body1024valid
86.0ms293×body256valid
46.0ms61×body2048valid
Compiler

Compiled 56 to 35 computations (37.5% saved)

simplify185.0ms (1.6%)

Algorithm
egg-herbie
Rules
1303×div-sub_binary64
658×fma-def_binary64
640×sub-neg_binary64
569×unsub-neg_binary64
393×neg-mul-1_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01219
12319
25819
314317
434417
596717
6228217
7364617
8370017
9409717
10425317
11454317
12471917
13547817

prune7.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
6.9b
Counts
3 → 2
Alt Table
StatusErrorProgram
7.7b
(fma.f64 y (/.f64 (-.f64 t z) (-.f64 a t)) (+.f64 x y))
14.5b
(-.f64 (+.f64 x y) (/.f64 (*.f64 (-.f64 z t) y) (-.f64 a t)))
Compiler

Compiled 100 to 56 computations (44% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 t z) (-.f64 a t))
2.3b
(fma.f64 y (/.f64 (-.f64 t z) (-.f64 a t)) (+.f64 x y))

series97.0ms (0.8%)

Counts
2 → 96
Calls

2 calls:

67.0ms
(fma.f64 y (/.f64 (-.f64 t z) (-.f64 a t)) (+.f64 x y))
30.0ms
(/.f64 (-.f64 t z) (-.f64 a t))

rewrite19.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
38×*-un-lft-identity_binary64
38×add-sqr-sqrt_binary64
25×times-frac_binary64
14×add-cube-cbrt_binary64
12×distribute-lft-out--_binary64
Counts
2 → 64
Calls

2 calls:

10.0ms
(/.f64 (-.f64 t z) (-.f64 a t))
0.0ms
(fma.f64 y (/.f64 (-.f64 t z) (-.f64 a t)) (+.f64 x y))

simplify238.0ms (2%)

Algorithm
egg-herbie
Rules
671×times-frac_binary64
644×fma-neg_binary64
523×cancel-sign-sub-inv_binary64
397×sub-neg_binary64
195×div-sub_binary64
Counts
160 → 137
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02734255
17404157
224803550
344303531
451673531

prune232.0ms (2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1307137
Fresh011
Picked101
Done000
Total1318139
Error
0.0b
Counts
139 → 8
Alt Table
StatusErrorProgram
7.8b
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))
14.5b
(-.f64 (+.f64 x y) (/.f64 (*.f64 (-.f64 z t) y) (-.f64 a t)))
31.0b
(-.f64 (+.f64 x (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 (*.f64 y z) t))) (*.f64 y (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 a t))))
24.9b
(+.f64 x (*.f64 (/.f64 y t) (-.f64 z a)))
35.7b
(-.f64 (+.f64 y (+.f64 x (*.f64 (/.f64 y a) (+.f64 t (/.f64 (*.f64 t t) a))))) (+.f64 (/.f64 (*.f64 y z) a) (*.f64 (/.f64 z a) (*.f64 (/.f64 y a) (+.f64 t (/.f64 (*.f64 t t) a))))))
23.9b
(+.f64 y (+.f64 x (*.f64 (/.f64 y a) (-.f64 t z))))
7.7b
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))
32.2b
(*.f64 (-.f64 (+.f64 1 (/.f64 t (-.f64 a t))) (/.f64 z (-.f64 a t))) y)
Compiler

Compiled 3720 to 1266 computations (66% saved)

localize20.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 a t) (-.f64 t z))
0.5b
(/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z)))
2.3b
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))

series136.0ms (1.2%)

Counts
3 → 132
Calls

3 calls:

66.0ms
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))
36.0ms
(/.f64 (-.f64 a t) (-.f64 t z))
33.0ms
(/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z)))

rewrite84.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
218×times-frac_binary64
195×*-un-lft-identity_binary64
195×add-sqr-sqrt_binary64
91×add-cube-cbrt_binary64
52×distribute-lft-out--_binary64
Counts
3 → 214
Calls

3 calls:

22.0ms
(/.f64 (-.f64 a t) (-.f64 t z))
19.0ms
(/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z)))
0.0ms
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))

simplify352.0ms (3%)

Algorithm
egg-herbie
Rules
672×cancel-sign-sub-inv_binary64
565×sub-neg_binary64
292×fma-neg_binary64
225×+-commutative_binary64
218×associate--r+_binary64
Counts
346 → 344
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03988897
110398416
236808214
354598214

prune595.0ms (5.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New3440344
Fresh077
Picked011
Done000
Total3448352
Error
0.0b
Counts
352 → 8
Alt Table
StatusErrorProgram
7.8b
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))
14.5b
(-.f64 (+.f64 x y) (/.f64 (*.f64 (-.f64 z t) y) (-.f64 a t)))
31.0b
(-.f64 (+.f64 x (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 (*.f64 y z) t))) (*.f64 y (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 a t))))
24.9b
(+.f64 x (*.f64 (/.f64 y t) (-.f64 z a)))
35.7b
(-.f64 (+.f64 y (+.f64 x (*.f64 (/.f64 y a) (+.f64 t (/.f64 (*.f64 t t) a))))) (+.f64 (/.f64 (*.f64 y z) a) (*.f64 (/.f64 z a) (*.f64 (/.f64 y a) (+.f64 t (/.f64 (*.f64 t t) a))))))
23.9b
(+.f64 y (+.f64 x (*.f64 (/.f64 y a) (-.f64 t z))))
7.7b
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))
32.2b
(*.f64 (-.f64 (+.f64 1 (/.f64 t (-.f64 a t))) (/.f64 z (-.f64 a t))) y)
Compiler

Compiled 9563 to 2923 computations (69.4% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t))))
0.5b
(*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))
0.5b
(cbrt.f64 (-.f64 a t))
6.5b
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))

series293.0ms (2.5%)

Counts
4 → 144
Calls

4 calls:

101.0ms
(*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))
79.0ms
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))
58.0ms
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t))))
54.0ms
(cbrt.f64 (-.f64 a t))

rewrite118.0ms (1%)

Algorithm
rewrite-expression-head
Rules
99×add-sqr-sqrt_binary64
79×*-un-lft-identity_binary64
61×cbrt-prod_binary64
55×times-frac_binary64
54×associate-*r*_binary64
Counts
4 → 189
Calls

4 calls:

54.0ms
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t))))
18.0ms
(*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))
4.0ms
(cbrt.f64 (-.f64 a t))
1.0ms
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))

simplify310.0ms (2.7%)

Algorithm
egg-herbie
Rules
871×fma-def_binary64
411×associate-*r*_binary64
299×associate-*l*_binary64
263×times-frac_binary64
262×associate-/l*_binary64
Counts
333 → 380
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
056010244
115068821
248368561
355988561

prune758.0ms (6.5%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New4802482
Fresh246
Picked011
Done011
Total4828490
Error
0.0b
Counts
490 → 8
Alt Table
StatusErrorProgram
31.0b
(-.f64 (+.f64 x (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 (*.f64 y z) t))) (*.f64 y (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 a t))))
24.9b
(+.f64 x (*.f64 (/.f64 y t) (-.f64 z a)))
23.9b
(+.f64 y (+.f64 x (*.f64 (/.f64 y a) (-.f64 t z))))
7.7b
(fma.f64 y (/.f64 1 (/.f64 (-.f64 a t) (-.f64 t z))) (+.f64 x y))
32.2b
(*.f64 (-.f64 (+.f64 1 (/.f64 t (-.f64 a t))) (/.f64 z (-.f64 a t))) y)
12.5b
(-.f64 (+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x)) (/.f64 (*.f64 y z) (-.f64 a t)))
7.8b
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))
31.8b
(-.f64 (+.f64 y (fma.f64 (/.f64 y a) t x)) (fma.f64 (/.f64 (*.f64 y t) a) (/.f64 z a) (/.f64 (*.f64 y z) a)))
Compiler

Compiled 17971 to 5923 computations (67% saved)

localize30.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 y (-.f64 a t))
5.4b
(fma.f64 (/.f64 y (-.f64 a t)) t x)
6.0b
(/.f64 (*.f64 y z) (-.f64 a t))
6.2b
(+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x))

series186.0ms (1.6%)

Counts
4 → 144
Calls

4 calls:

61.0ms
(+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x))
51.0ms
(/.f64 (*.f64 y z) (-.f64 a t))
41.0ms
(fma.f64 (/.f64 y (-.f64 a t)) t x)
33.0ms
(/.f64 y (-.f64 a t))

rewrite25.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
31×*-un-lft-identity_binary64
29×add-sqr-sqrt_binary64
20×times-frac_binary64
17×add-cube-cbrt_binary64
11×add-cbrt-cube_binary64
Counts
4 → 96
Calls

4 calls:

12.0ms
(/.f64 (*.f64 y z) (-.f64 a t))
4.0ms
(/.f64 y (-.f64 a t))
4.0ms
(+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x))
0.0ms
(fma.f64 (/.f64 y (-.f64 a t)) t x)

simplify227.0ms (2%)

Algorithm
egg-herbie
Rules
775×fma-def_binary64
358×fma-neg_binary64
325×distribute-rgt-in_binary64
256×distribute-lft-in_binary64
221×cancel-sign-sub-inv_binary64
Counts
240 → 206
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02974380
16914254
222903750
346843750
449763750

prune439.0ms (3.8%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New2033206
Fresh235
Picked101
Done112
Total2077214
Error
0.0b
Counts
214 → 7
Alt Table
StatusErrorProgram
31.0b
(-.f64 (+.f64 x (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 (*.f64 y z) t))) (*.f64 y (*.f64 (+.f64 1 (/.f64 a t)) (/.f64 a t))))
24.9b
(+.f64 x (*.f64 (/.f64 y t) (-.f64 z a)))
28.0b
(-.f64 (+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x)) (fma.f64 (/.f64 y a) z (*.f64 (/.f64 z a) (*.f64 (/.f64 y a) (+.f64 t (/.f64 t (/.f64 a t)))))))
32.2b
(*.f64 (-.f64 (+.f64 1 (/.f64 t (-.f64 a t))) (/.f64 z (-.f64 a t))) y)
30.6b
(-.f64 (-.f64 x (*.f64 (/.f64 y t) (+.f64 a (/.f64 a (/.f64 t a))))) (/.f64 (*.f64 y z) (-.f64 a t)))
7.8b
(fma.f64 y (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 a t)) (cbrt.f64 (-.f64 a t)))) (/.f64 (-.f64 t z) (cbrt.f64 (-.f64 a t)))) (+.f64 x y))
7.7b
(-.f64 (+.f64 y (fma.f64 (/.f64 y (-.f64 a t)) t x)) (/.f64 y (/.f64 (-.f64 a t) z)))
Compiler

Compiled 5560 to 1351 computations (75.7% saved)

regimes4.4s (37.5%)

Accuracy

Total 6.1b remaining (98.8%)

Threshold costs 0b (0%)

Counts
203 → 4
Compiler

Compiled 28908 to 16392 computations (43.3% saved)

bsearch14.0ms (0.1%)

Compiler

Compiled 18 to 11 computations (38.9% saved)

simplify19.0ms (0.2%)

Algorithm
egg-herbie
Rules
20×+-commutative_binary64
16×sub-neg_binary64
14×*-commutative_binary64
11×neg-sub0_binary64
11×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038149
157149
280149
3105149
4122149
5141149
6148149
7149149
8145149

end194.0ms (1.7%)

Compiler

Compiled 391 to 170 computations (56.5% saved)

Profiling

Loading profile data...