Details

Time bar (total: 12.9s)

analyze972.0ms (7.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
7.8%92%0.2%8
15.6%84.2%0.2%9
23.4%76.4%0.2%10
25%74.9%0.2%11
37.9%59.6%2.5%12
41.4%55.7%2.9%13
46.3%50.6%3.1%14
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.4s (10.9%)

Results
1.0s8256×body128valid
236.0ms1878×body128invalid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify294.0ms (2.3%)

Algorithm
egg-herbie
Rules
2150×fma-neg_binary64
1161×div-sub_binary64
897×fma-def_binary64
414×associate-/l*_binary64
410×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01116
11816
23316
36516
411316
519716
639716
781416
8144916
9183216
10194116
11203616
12211016
13222416
14217416
15265216
16233016
17235816
18237616
19239216
20238416
21246816
22246816
23238816
24245016
25242816
26242616
27242816
28243016
29244016
30244016
31225516

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
5.9b
Counts
2 → 1
Alt Table
StatusErrorProgram
5.9b
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
Compiler

Compiled 45 to 30 computations (33.3% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))
5.6b
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))

series46.0ms (0.4%)

Counts
2 → 66
Calls

2 calls:

32.0ms
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
14.0ms
(-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))

rewrite333.0ms (2.6%)

Algorithm
rewrite-expression-head
Rules
1429×times-frac_binary64
1339×add-sqr-sqrt_binary64
1335×*-un-lft-identity_binary64
936×prod-diff_binary64
935×add-cube-cbrt_binary64
Counts
2 → 1074
Calls

2 calls:

36.0ms
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
23.0ms
(-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))

simplify1.3s (9.7%)

Algorithm
egg-herbie
Rules
687×times-frac_binary64
569×associate-*l*_binary64
557×associate-*r*_binary64
314×*-commutative_binary64
243×distribute-rgt-in_binary64
Counts
1140 → 1067
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
099085623
1169943502
2379441798
3468641798
4504041798

prune1.6s (12.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New105981067
Fresh000
Picked101
Done000
Total106081068
Error
0.0b
Counts
1068 → 8
Alt Table
StatusErrorProgram
30.0b
(/.f64 (*.f64 x (-.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (*.f64 (/.f64 t (-.f64 1 z)) (/.f64 t (-.f64 1 z))))) (+.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
8.5b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
6.3b
(*.f64 x (+.f64 (/.f64 y z) (*.f64 (neg.f64 (/.f64 (*.f64 (cbrt.f64 t) (cbrt.f64 t)) 1)) (/.f64 (cbrt.f64 t) (-.f64 1 z)))))
53.1b
(*.f64 (*.f64 x (+.f64 (/.f64 (sqrt.f64 y) (sqrt.f64 z)) (sqrt.f64 (/.f64 t (-.f64 1 z))))) (-.f64 (/.f64 (sqrt.f64 y) (sqrt.f64 z)) (sqrt.f64 (/.f64 t (-.f64 1 z)))))
28.9b
(*.f64 x (+.f64 (/.f64 y z) (*.f64 (neg.f64 (sqrt.f64 (/.f64 t (-.f64 1 z)))) (sqrt.f64 (/.f64 t (-.f64 1 z))))))
17.2b
(/.f64 x (/.f64 z (+.f64 y t)))
5.9b
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
30.9b
(*.f64 x (+.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) z) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 (-.f64 1 z)))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z)))) (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))))
Compiler

Compiled 57711 to 31339 computations (45.7% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z))))
5.6b
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))

series49.0ms (0.4%)

Counts
2 → 84
Calls

2 calls:

34.0ms
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
16.0ms
(fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z))))

rewrite5.0ms (0%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
2 → 32
Calls

2 calls:

3.0ms
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
0.0ms
(fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z))))

simplify96.0ms (0.7%)

Algorithm
egg-herbie
Rules
797×fma-neg_binary64
432×cancel-sign-sub-inv_binary64
422×fma-def_binary64
234×associate-/l/_binary64
218×associate-*l*_binary64
Counts
116 → 90
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01122138
12741926
28261862
326321827
445721827
549741827

prune72.0ms (0.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New89190
Fresh257
Picked011
Done000
Total91798
Error
0b
Counts
98 → 7
Alt Table
StatusErrorProgram
16.0b
(*.f64 (/.f64 x z) (+.f64 y t))
17.2b
(/.f64 x (/.f64 z (+.f64 y t)))
30.0b
(/.f64 (*.f64 x (-.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (*.f64 (/.f64 t (-.f64 1 z)) (/.f64 t (-.f64 1 z))))) (+.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
8.5b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
28.9b
(*.f64 x (+.f64 (/.f64 y z) (*.f64 (neg.f64 (sqrt.f64 (/.f64 t (-.f64 1 z)))) (sqrt.f64 (/.f64 t (-.f64 1 z))))))
5.9b
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
30.9b
(*.f64 x (+.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) z) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 (-.f64 1 z)))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z)))) (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))))
Compiler

Compiled 1967 to 1089 computations (44.6% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
3.1b
(/.f64 (*.f64 t x) (-.f64 1 z))
6.4b
(/.f64 (*.f64 y x) z)

series56.0ms (0.4%)

Counts
3 → 42
Calls

3 calls:

27.0ms
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
17.0ms
(/.f64 (*.f64 t x) (-.f64 1 z))
13.0ms
(/.f64 (*.f64 y x) z)

rewrite39.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
96×times-frac_binary64
84×prod-diff_binary64
81×*-un-lft-identity_binary64
81×add-sqr-sqrt_binary64
49×add-cube-cbrt_binary64
Counts
3 → 173
Calls

3 calls:

12.0ms
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
5.0ms
(/.f64 (*.f64 t x) (-.f64 1 z))
3.0ms
(/.f64 (*.f64 y x) z)

simplify177.0ms (1.4%)

Algorithm
egg-herbie
Rules
543×fma-neg_binary64
265×cancel-sign-sub-inv_binary64
213×distribute-rgt-neg-in_binary64
205×div-sub_binary64
190×distribute-rgt-out_binary64
Counts
215 → 256
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03167070
17995494
228114354
343184354
449444354

prune231.0ms (1.8%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New2551256
Fresh145
Picked101
Done011
Total2576263
Error
0b
Counts
263 → 6
Alt Table
StatusErrorProgram
16.0b
(*.f64 (/.f64 x z) (+.f64 y t))
17.2b
(/.f64 x (/.f64 z (+.f64 y t)))
28.9b
(*.f64 x (+.f64 (/.f64 y z) (*.f64 (neg.f64 (sqrt.f64 (/.f64 t (-.f64 1 z)))) (sqrt.f64 (/.f64 t (-.f64 1 z))))))
5.9b
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
30.9b
(*.f64 x (+.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) z) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 (-.f64 1 z)))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z)))) (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))))
8.6b
(-.f64 (/.f64 1 (/.f64 z (*.f64 y x))) (/.f64 (*.f64 t x) (-.f64 1 z)))
Compiler

Compiled 8437 to 4151 computations (50.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series57.0ms (0.4%)

Counts
3 → 84
Calls

3 calls:

27.0ms
(-.f64 (/.f64 1 (/.f64 z (*.f64 y x))) (/.f64 (*.f64 t x) (-.f64 1 z)))
16.0ms
(/.f64 z (*.f64 y x))
14.0ms
(/.f64 1 (/.f64 z (*.f64 y x)))

rewrite111.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
590×times-frac_binary64
345×add-sqr-sqrt_binary64
342×*-un-lft-identity_binary64
312×prod-diff_binary64
257×add-cube-cbrt_binary64
Counts
3 → 450
Calls

3 calls:

26.0ms
(-.f64 (/.f64 1 (/.f64 z (*.f64 y x))) (/.f64 (*.f64 t x) (-.f64 1 z)))
5.0ms
(/.f64 1 (/.f64 z (*.f64 y x)))
3.0ms
(/.f64 z (*.f64 y x))

simplify491.0ms (3.8%)

Algorithm
egg-herbie
Rules
822×fma-neg_binary64
250×unsub-neg_binary64
237×cancel-sign-sub-inv_binary64
200×neg-mul-1_binary64
198×distribute-rgt-out_binary64
Counts
534 → 523
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
034523706
175917611
2263912935
3411812935
4492812935
5496712935

prune609.0ms (4.7%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New5770577
Fresh044
Picked011
Done011
Total5776583
Error
0b
Counts
583 → 6
Alt Table
StatusErrorProgram
16.0b
(*.f64 (/.f64 x z) (+.f64 y t))
17.2b
(/.f64 x (/.f64 z (+.f64 y t)))
28.9b
(*.f64 x (+.f64 (/.f64 y z) (*.f64 (neg.f64 (sqrt.f64 (/.f64 t (-.f64 1 z)))) (sqrt.f64 (/.f64 t (-.f64 1 z))))))
5.9b
(*.f64 x (fma.f64 y (/.f64 1 z) (neg.f64 (/.f64 t (-.f64 1 z)))))
30.9b
(*.f64 x (+.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) z) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 (-.f64 1 z)))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z)))) (*.f64 (/.f64 t (cbrt.f64 (-.f64 1 z))) (/.f64 1 (*.f64 (cbrt.f64 (-.f64 1 z)) (cbrt.f64 (-.f64 1 z))))))))
8.6b
(-.f64 (/.f64 1 (/.f64 z (*.f64 y x))) (/.f64 (*.f64 t x) (-.f64 1 z)))
Compiler

Compiled 24964 to 13663 computations (45.3% saved)

regimes4.9s (37.7%)

Accuracy

Total 1.4b remaining (97.6%)

Threshold costs 0b (0%)

Counts
261 → 3
Compiler

Compiled 54079 to 36340 computations (32.8% saved)

bsearch17.0ms (0.1%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02990
14490
26290
37390
48090
58290
68190

end129.0ms (1%)

Compiler

Compiled 284 to 185 computations (34.9% saved)

Profiling

Loading profile data...