Details

Time bar (total: 15.2s)

analyze1.6s (10.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.6%0.4%0
0%99.6%0.4%1
0%99.6%0.4%2
0%99.6%0.4%3
0%99.6%0.4%4
0%99.6%0.4%5
0%99.6%0.4%6
0%99.6%0.4%7
0%74.7%25.3%8
0%74.7%25.3%9
0%65.4%34.6%10
0%51.4%48.6%11
0%51.4%48.6%12
0%51.4%48.6%13
0%51.4%48.6%14
Compiler

Compiled 30 to 21 computations (30% saved)

sample4.6s (30.3%)

Symmetry

(sort z t a)

Results
2.4s11377×body128invalid
2.1s8255×body128valid
2.0msbody1024valid
Compiler

Compiled 89 to 62 computations (30.3% saved)

simplify79.0ms (0.5%)

Algorithm
egg-herbie
Rules
2664×associate-+l+_binary64
1041×associate-+r+_binary64
923×+-commutative_binary64
750×fma-def_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02130
14126
210926
337626
4111826
5159226
6169826
7169826
8169826
9169826
10270626
11295826
12295826
13291026
14291026
15254026
16252426

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
Compiler

Compiled 99 to 61 computations (38.4% saved)

localize22.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
0.1b
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))
0.1b
(fma.f64 x (log.f64 y) z)

series1.0s (6.9%)

Counts
3 → 180
Calls

3 calls:

782.0ms
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))
156.0ms
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
103.0ms
(fma.f64 x (log.f64 y) z)

rewrite7.0ms (0%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
add-log-exp_binary64
distribute-lft-out_binary64
fma-def_binary64
add-sqr-sqrt_binary64
Counts
3 → 41
Calls

3 calls:

5.0ms
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
0.0ms
(fma.f64 x (log.f64 y) z)
0.0ms
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))

simplify82.0ms (0.5%)

Algorithm
egg-herbie
Rules
561×distribute-rgt-in_binary64
559×associate-+r+_binary64
534×distribute-lft-in_binary64
432×fma-def_binary64
406×associate--l+_binary64
Counts
221 → 106
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01373890
13593777
210863403
350433403

prune110.0ms (0.7%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1033106
Fresh000
Picked101
Done000
Total1043107
Error
0.1b
Counts
107 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (fma.f64 x (log.f64 y) z) (+.f64 t a))))
32.2b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (*.f64 (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)) (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
0.1b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
Compiler

Compiled 2654 to 938 computations (64.7% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (log.f64 c) b) z))
0.0b
(+.f64 (*.f64 (log.f64 c) b) z)
0.2b
(*.f64 (log.f64 c) b)
0.2b
(*.f64 (log.f64 y) x)

series1.1s (7.3%)

Counts
4 → 94
Calls

4 calls:

595.0ms
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (log.f64 c) b) z))
222.0ms
(*.f64 (log.f64 c) b)
194.0ms
(*.f64 (log.f64 y) x)
98.0ms
(+.f64 (*.f64 (log.f64 c) b) z)

rewrite18.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64
11×add-log-exp_binary64
10×pow1_binary64
associate-*l*_binary64
*-un-lft-identity_binary64
Counts
4 → 72
Calls

4 calls:

5.0ms
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (log.f64 c) b) z))
5.0ms
(*.f64 (log.f64 c) b)
3.0ms
(+.f64 (*.f64 (log.f64 c) b) z)
3.0ms
(*.f64 (log.f64 y) x)

simplify104.0ms (0.7%)

Algorithm
egg-herbie
Rules
614×fma-neg_binary64
581×fma-def_binary64
578×unsub-neg_binary64
319×distribute-rgt-in_binary64
297×*-commutative_binary64
Counts
166 → 128
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01461822
13831679
210341674
332591674
449921674
549721674

prune162.0ms (1.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1226128
Fresh112
Picked101
Done000
Total1247131
Error
0.0b
Counts
131 → 7
Alt Table
StatusErrorProgram
34.6b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (sqrt.f64 b)) (sqrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
32.2b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (*.f64 (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)) (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
0.3b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
34.1b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (sqrt.f64 (log.f64 c)) (*.f64 (sqrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (cbrt.f64 (log.f64 c)) (cbrt.f64 (log.f64 c))) (*.f64 (cbrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
37.5b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
Compiler

Compiled 4142 to 1560 computations (62.3% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x))
0.3b
(*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x)))
0.4b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.6b
(cbrt.f64 x)

series788.0ms (5.2%)

Counts
4 → 72
Calls

4 calls:

506.0ms
(*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x)))
211.0ms
(*.f64 (*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x))
37.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
34.0ms
(cbrt.f64 x)

rewrite25.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
26×pow1_binary64
25×add-sqr-sqrt_binary64
22×cbrt-prod_binary64
20×add-exp-log_binary64
16×*-un-lft-identity_binary64
Counts
4 → 103
Calls

4 calls:

8.0ms
(*.f64 (*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x))
7.0ms
(*.f64 (log.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 x)))
4.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
1.0ms
(cbrt.f64 x)

simplify111.0ms (0.7%)

Algorithm
egg-herbie
Rules
629×unswap-sqr_binary64
471×distribute-rgt-in_binary64
444×distribute-lft-in_binary64
416×*-commutative_binary64
408×log-prod_binary64
Counts
175 → 154
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01201805
12441524
28801413
314151385
446841385
549741385

prune491.0ms (3.2%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1882190
Fresh156
Picked101
Done000
Total1907197
Error
0.0b
Counts
197 → 7
Alt Table
StatusErrorProgram
34.6b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (sqrt.f64 b)) (sqrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
32.2b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (*.f64 (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)) (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
0.3b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
34.1b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (sqrt.f64 (log.f64 c)) (*.f64 (sqrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (cbrt.f64 (log.f64 c)) (cbrt.f64 (log.f64 c))) (*.f64 (cbrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x)) (cbrt.f64 x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (*.f64 (log.f64 y) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 x)))) (cbrt.f64 x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
Compiler

Compiled 7029 to 2484 computations (64.7% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x)) (cbrt.f64 x))
0.4b
(*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x))
0.4b
(*.f64 (log.f64 y) (cbrt.f64 x))
0.6b
(cbrt.f64 x)

series1.3s (8.3%)

Counts
3 → 72
Calls

3 calls:

539.0ms
(*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x))
437.0ms
(*.f64 (log.f64 y) (cbrt.f64 x))
239.0ms
(*.f64 (*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x)) (cbrt.f64 x))

rewrite21.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
20×pow1_binary64
19×add-exp-log_binary64
18×associate-*r*_binary64
14×add-sqr-sqrt_binary64
10×cbrt-prod_binary64
Counts
3 → 74
Calls

3 calls:

7.0ms
(*.f64 (*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x)) (cbrt.f64 x))
5.0ms
(*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x))
4.0ms
(*.f64 (log.f64 y) (cbrt.f64 x))

simplify114.0ms (0.8%)

Algorithm
egg-herbie
Rules
439×distribute-rgt-in_binary64
411×distribute-lft-in_binary64
361×*-commutative_binary64
310×log-prod_binary64
229×associate-*l*_binary64
Counts
146 → 115
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01131984
12551565
28531426
312791426
439041363
549161363
649931363

prune299.0ms (2%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1690169
Fresh066
Picked011
Done000
Total1697176
Error
0.0b
Counts
176 → 7
Alt Table
StatusErrorProgram
34.6b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (sqrt.f64 b)) (sqrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
32.2b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (*.f64 (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)) (sqrt.f64 (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
0.3b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (log.f64 c) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b)) z)))) (*.f64 1/2 (log.f64 c))))
34.1b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (sqrt.f64 (log.f64 c)) (*.f64 (sqrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 (*.f64 (cbrt.f64 (log.f64 c)) (cbrt.f64 (log.f64 c))) (*.f64 (cbrt.f64 (log.f64 c)) b)) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (*.f64 (*.f64 (log.f64 y) (cbrt.f64 x)) (cbrt.f64 x)) (cbrt.f64 x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
0.2b
(fma.f64 y i (-.f64 (+.f64 a (+.f64 t (+.f64 (*.f64 (*.f64 (log.f64 y) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 x)))) (cbrt.f64 x)) (+.f64 (*.f64 (log.f64 c) b) z)))) (*.f64 1/2 (log.f64 c))))
Compiler

Compiled 6050 to 2039 computations (66.3% saved)

regimes2.3s (15%)

Accuracy

Total 0.0b remaining (44.6%)

Threshold costs 0.0b (44.6%)

Counts
127 → 1
Compiler

Compiled 52130 to 33007 computations (36.7% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02033
13133
23933
34333
44633
54733
64633

end745.0ms (4.9%)

Compiler

Compiled 392 to 234 computations (40.3% saved)

Profiling

Loading profile data...