Details

Time bar (total: 23.7s)

analyze919.0ms (3.9%)

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 (5.9%)

Results
1.0s8256×body128valid
221.0ms1806×body128invalid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify285.0ms (1.2%)

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
3.9b
Counts
2 → 1
Alt Table
StatusErrorProgram
3.9b
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
Compiler

Compiled 45 to 30 computations (33.3% saved)

localize9.0ms (0%)

Local error

Found 3 expressions with local error:

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

series50.0ms (0.2%)

Counts
3 → 78
Calls

3 calls:

29.0ms
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
13.0ms
(-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))
8.0ms
(/.f64 t (-.f64 1 z))

rewrite308.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
1447×times-frac_binary64
1363×add-sqr-sqrt_binary64
1359×*-un-lft-identity_binary64
947×add-cube-cbrt_binary64
936×prod-diff_binary64
Counts
3 → 1117
Calls

3 calls:

37.0ms
(*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
24.0ms
(-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))
6.0ms
(/.f64 t (-.f64 1 z))

simplify1.2s (4.9%)

Algorithm
egg-herbie
Rules
854×times-frac_binary64
575×associate-*l*_binary64
560×associate-*r*_binary64
316×*-commutative_binary64
254×distribute-rgt-in_binary64
Counts
1195 → 1129
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0101986414
1177944281
2403542577
3503642577

prune1.6s (6.8%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New112091129
Fresh000
Picked101
Done000
Total112191130
Error
0.0b
Counts
1130 → 9
Alt Table
StatusErrorProgram
35.2b
(+.f64 (*.f64 (fma.f64 y (/.f64 1 z) (neg.f64 (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1)))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z))) (/.f64 (sqrt.f64 t) 1) (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1))) x))
7.7b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
24.4b
(+.f64 (*.f64 (/.f64 y z) x) (*.f64 x (/.f64 (neg.f64 (/.f64 t (sqrt.f64 (-.f64 1 z)))) (sqrt.f64 (-.f64 1 z)))))
3.9b
(+.f64 (*.f64 (fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 1 (-.f64 1 z))) t (*.f64 (/.f64 1 (-.f64 1 z)) t)) x))
4.8b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
17.7b
(/.f64 x (/.f64 z (+.f64 y t)))
33.4b
(*.f64 x (fma.f64 (sqrt.f64 (/.f64 y z)) (sqrt.f64 (/.f64 y z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
36.3b
(cbrt.f64 (*.f64 (*.f64 (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))))
4.5b
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
Compiler

Compiled 58890 to 31886 computations (45.9% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series80.0ms (0.3%)

Counts
4 → 132
Calls

4 calls:

31.0ms
(*.f64 (fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t))) x)
26.0ms
(fma.f64 (neg.f64 (/.f64 1 (-.f64 1 z))) t (*.f64 (/.f64 1 (-.f64 1 z)) t))
15.0ms
(fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t)))
8.0ms
(*.f64 (/.f64 1 (-.f64 1 z)) t)

rewrite16.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
35×add-sqr-sqrt_binary64
27×associate-*l*_binary64
27×*-un-lft-identity_binary64
20×times-frac_binary64
17×add-cube-cbrt_binary64
Counts
4 → 88
Calls

4 calls:

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

simplify119.0ms (0.5%)

Algorithm
egg-herbie
Rules
836×fma-neg_binary64
719×fma-def_binary64
279×times-frac_binary64
226×associate-+l+_binary64
217×associate-/l*_binary64
Counts
220 → 197
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01933110
14432860
213892600
339352600
449912600
549852600

prune650.0ms (2.7%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2870287
Fresh088
Picked011
Done000
Total2879296
Error
0.0b
Counts
296 → 9
Alt Table
StatusErrorProgram
35.2b
(+.f64 (*.f64 (fma.f64 y (/.f64 1 z) (neg.f64 (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1)))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z))) (/.f64 (sqrt.f64 t) 1) (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1))) x))
7.7b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
24.4b
(+.f64 (*.f64 (/.f64 y z) x) (*.f64 x (/.f64 (neg.f64 (/.f64 t (sqrt.f64 (-.f64 1 z)))) (sqrt.f64 (-.f64 1 z)))))
3.9b
(+.f64 (*.f64 (fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 1 (-.f64 1 z))) t (*.f64 (/.f64 1 (-.f64 1 z)) t)) x))
4.8b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
17.7b
(/.f64 x (/.f64 z (+.f64 y t)))
33.4b
(*.f64 x (fma.f64 (sqrt.f64 (/.f64 y z)) (sqrt.f64 (/.f64 y z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
36.3b
(cbrt.f64 (*.f64 (*.f64 (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))))
4.5b
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
Compiler

Compiled 11527 to 7535 computations (34.6% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.6b
(cbrt.f64 y)
0.6b
(cbrt.f64 z)
3.8b
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))

series1.6s (6.6%)

Counts
4 → 84
Calls

4 calls:

1.5s
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
36.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
30.0ms
(cbrt.f64 z)
29.0ms
(cbrt.f64 y)

rewrite13.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
26×add-sqr-sqrt_binary64
22×cbrt-prod_binary64
16×*-un-lft-identity_binary64
16×add-cube-cbrt_binary64
13×pow1_binary64
Counts
4 → 90
Calls

4 calls:

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

simplify102.0ms (0.4%)

Algorithm
egg-herbie
Rules
759×fma-def_binary64
319×fma-neg_binary64
229×exp-prod_binary64
197×cancel-sign-sub-inv_binary64
194×exp-sum_binary64
Counts
174 → 164
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02293319
15532527
217382294
342552142
449792142

prune208.0ms (0.9%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New2360236
Fresh077
Picked011
Done011
Total2369245
Error
0.0b
Counts
245 → 9
Alt Table
StatusErrorProgram
35.2b
(+.f64 (*.f64 (fma.f64 y (/.f64 1 z) (neg.f64 (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1)))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z))) (/.f64 (sqrt.f64 t) 1) (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (/.f64 (sqrt.f64 t) 1))) x))
7.7b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
24.4b
(+.f64 (*.f64 (/.f64 y z) x) (*.f64 x (/.f64 (neg.f64 (/.f64 t (sqrt.f64 (-.f64 1 z)))) (sqrt.f64 (-.f64 1 z)))))
3.9b
(+.f64 (*.f64 (fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 1 (-.f64 1 z))) t (*.f64 (/.f64 1 (-.f64 1 z)) t)) x))
4.8b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
17.7b
(/.f64 x (/.f64 z (+.f64 y t)))
33.4b
(*.f64 x (fma.f64 (sqrt.f64 (/.f64 y z)) (sqrt.f64 (/.f64 y z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
36.3b
(cbrt.f64 (*.f64 (*.f64 (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))))
4.5b
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
Compiler

Compiled 7360 to 2806 computations (61.9% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.6b
(cbrt.f64 x)
1.7b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
2.3b
(*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))

series247.0ms (1%)

Counts
4 → 120
Calls

4 calls:

139.0ms
(*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
45.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
34.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
28.0ms
(cbrt.f64 x)

rewrite880.0ms (3.7%)

Algorithm
rewrite-expression-head
Rules
2816×times-frac_binary64
2644×add-sqr-sqrt_binary64
2631×*-un-lft-identity_binary64
1872×prod-diff_binary64
1864×add-cube-cbrt_binary64
Counts
4 → 2138
Calls

4 calls:

70.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
38.0ms
(*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))
8.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
1.0ms
(cbrt.f64 x)

simplify2.7s (11.4%)

Algorithm
egg-herbie
Rules
999×associate-*r*_binary64
996×associate-*l*_binary64
221×fma-udef_binary64
48×neg-mul-1_binary64
46×neg-sub0_binary64
Counts
2258 → 2896
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02019184454
15558184454

prune3.5s (14.9%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New292622928
Fresh156
Picked011
Done022
Total2927102937
Error
0.0b
Counts
2937 → 10
Alt Table
StatusErrorProgram
24.5b
(*.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
24.4b
(+.f64 (*.f64 (/.f64 y z) x) (*.f64 x (/.f64 (neg.f64 (/.f64 t (sqrt.f64 (-.f64 1 z)))) (sqrt.f64 (-.f64 1 z)))))
3.9b
(+.f64 (*.f64 (fma.f64 1 (/.f64 y z) (neg.f64 (*.f64 (/.f64 1 (-.f64 1 z)) t))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 1 (-.f64 1 z))) t (*.f64 (/.f64 1 (-.f64 1 z)) t)) x))
4.8b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))))
17.7b
(/.f64 x (/.f64 z (+.f64 y t)))
35.2b
(+.f64 (*.f64 (fma.f64 y (/.f64 1 z) (neg.f64 (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (sqrt.f64 t)))) x) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z))) (sqrt.f64 t) (*.f64 (/.f64 (sqrt.f64 t) (-.f64 1 z)) (sqrt.f64 t))) x))
33.4b
(*.f64 x (fma.f64 (sqrt.f64 (/.f64 y z)) (sqrt.f64 (/.f64 y z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
7.7b
(-.f64 (/.f64 (*.f64 y x) z) (/.f64 (*.f64 t x) (-.f64 1 z)))
36.3b
(cbrt.f64 (*.f64 (*.f64 (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z)))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))) (*.f64 x (-.f64 (/.f64 y z) (/.f64 t (-.f64 1 z))))))
4.5b
(*.f64 x (fma.f64 (/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 z) (cbrt.f64 z))) (/.f64 (cbrt.f64 y) (cbrt.f64 z)) (neg.f64 (/.f64 t (-.f64 1 z)))))
Compiler

Compiled 191640 to 91147 computations (52.4% saved)

regimes7.6s (32%)

Accuracy

Total 1.3b remaining (97.3%)

Threshold costs 0b (0%)

Counts
386 → 3
Compiler

Compiled 70122 to 45988 computations (34.4% saved)

bsearch20.0ms (0.1%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify6.0ms (0%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
029116
151114
266114
379114
494114
599114
6101114
7100114

end190.0ms (0.8%)

Compiler

Compiled 427 to 247 computations (42.2% saved)

Profiling

Loading profile data...