Details

Time bar (total: 41.0s)

analyze987.0ms (2.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
12.5%87.2%0.3%6
12.5%87.2%0.3%7
12.5%87.2%0.3%8
18.7%81%0.3%9
18.7%56.1%25.2%10
18.7%56.1%25.2%11
18.7%37.4%43.9%12
18.7%37.4%43.9%13
18.7%37.4%43.9%14
Compiler

Compiled 25 to 18 computations (28% saved)

sample4.4s (10.7%)

Results
2.4s10104×body128invalid
1.9s8256×body128valid
Compiler

Compiled 74 to 53 computations (28.4% saved)

simplify73.0ms (0.2%)

Algorithm
egg-herbie
Rules
615×associate-/l/_binary64
552×associate-/r/_binary64
488×associate-*l/_binary64
352×associate-*r/_binary64
345×fma-def_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01826
13726
27824
318624
451724
5166424
6436224
7475024
8504524

prune7.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
21.3b
(*.f64 (*.f64 (pow.f64 a (-.f64 t 1)) (/.f64 (pow.f64 z y) (exp.f64 b))) (/.f64 x y))
1.4b
(/.f64 (*.f64 x (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))) y)
Compiler

Compiled 132 to 90 computations (31.8% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 t 1) (log.f64 a))
0.3b
(*.f64 y (log.f64 z))
0.8b
(exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))
1.0b
(/.f64 (*.f64 x (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))) y)

series2.8s (6.7%)

Counts
4 → 176
Calls

4 calls:

1.3s
(/.f64 (*.f64 x (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))) y)
976.0ms
(exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))
392.0ms
(*.f64 y (log.f64 z))
117.0ms
(*.f64 (-.f64 t 1) (log.f64 a))

rewrite75.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
32×add-sqr-sqrt_binary64
27×*-un-lft-identity_binary64
22×add-cube-cbrt_binary64
14×exp-sum_binary64
13×add-cbrt-cube_binary64
Counts
4 → 116
Calls

4 calls:

22.0ms
(*.f64 (-.f64 t 1) (log.f64 a))
20.0ms
(/.f64 (*.f64 x (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))) y)
13.0ms
(exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))
7.0ms
(*.f64 y (log.f64 z))

simplify400.0ms (1%)

Algorithm
egg-herbie
Rules
510×fma-neg_binary64
314×associate-*r*_binary64
302×associate-*l*_binary64
245×cancel-sign-sub-inv_binary64
170×times-frac_binary64
Counts
292 → 248
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03937243
18956044
233415911
345495911
449995911
549245911

prune504.0ms (1.2%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2444248
Fresh101
Picked101
Done000
Total2464250
Error
0.0b
Counts
250 → 4
Alt Table
StatusErrorProgram
29.6b
(+.f64 (*.f64 (/.f64 (pow.f64 z y) (*.f64 a (exp.f64 b))) (/.f64 x y)) (*.f64 (*.f64 (log.f64 a) t) (*.f64 (/.f64 (pow.f64 z y) (*.f64 a (exp.f64 b))) (/.f64 x y))))
18.0b
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
17.7b
(/.f64 (*.f64 x (*.f64 (pow.f64 z y) (pow.f64 a (+.f64 t -1)))) y)
1.4b
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
Compiler

Compiled 7250 to 3080 computations (57.5% saved)

localize36.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 y (log.f64 z))
0.3b
(expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))
0.8b
(exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))
1.0b
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)

series3.4s (8.2%)

Counts
2 → 132
Calls

2 calls:

2.1s
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
1.2s
(expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))

rewrite13.0ms (0%)

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

2 calls:

8.0ms
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
1.0ms
(expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))

simplify265.0ms (0.6%)

Algorithm
egg-herbie
Rules
996×times-frac_binary64
654×fma-def_binary64
180×associate-*r*_binary64
156×associate-*l*_binary64
152×fma-neg_binary64
Counts
166 → 122
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02335609
16444605
222344533
348864533
449894533

prune480.0ms (1.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2382240
Fresh213
Picked011
Done000
Total2404244
Error
0.0b
Counts
244 → 4
Alt Table
StatusErrorProgram
18.0b
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
1.4b
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
21.3b
(*.f64 (/.f64 x y) (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))))
18.2b
(/.f64 1 (/.f64 y (*.f64 (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))) x)))
Compiler

Compiled 7681 to 2968 computations (61.4% saved)

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 a (+.f64 t -1))
0.5b
(/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))
0.5b
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1))))
0.7b
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))

series4.3s (10.4%)

Counts
4 → 192
Calls

4 calls:

2.4s
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
1.5s
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1))))
355.0ms
(/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))
65.0ms
(pow.f64 a (+.f64 t -1))

rewrite806.0ms (2%)

Algorithm
rewrite-expression-head
Rules
2141×times-frac_binary64
946×add-sqr-sqrt_binary64
892×*-un-lft-identity_binary64
890×add-cube-cbrt_binary64
622×unpow-prod-down_binary64
Counts
4 → 985
Calls

4 calls:

213.0ms
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
28.0ms
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1))))
8.0ms
(/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))
6.0ms
(pow.f64 a (+.f64 t -1))

simplify2.0s (4.9%)

Algorithm
egg-herbie
Rules
618×associate-*r/_binary64
605×*-commutative_binary64
570×associate-/l/_binary64
282×associate-/r/_binary64
203×/-rgt-identity_binary64
Counts
1177 → 1775
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0195636831
1437836375
2481236315
3499736315
4497436315

prune5.3s (13%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New177411775
Fresh022
Picked011
Done011
Total177451779
Error
0b
Counts
1779 → 5
Alt Table
StatusErrorProgram
18.0b
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
18.1b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1)))) (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))) y))
1.4b
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
21.3b
(*.f64 (/.f64 x y) (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))))
18.2b
(/.f64 1 (/.f64 y (*.f64 (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))) x)))
Compiler

Compiled 63844 to 27004 computations (57.7% saved)

localize34.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1))))
0.5b
(/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))
0.5b
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1)))))
1.0b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1)))) (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))) y))

series4.8s (11.8%)

Counts
4 → 204
Calls

4 calls:

2.3s
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1)))) (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))) y))
1.7s
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1)))))
433.0ms
(/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))
358.0ms
(*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1))))

rewrite902.0ms (2.2%)

Algorithm
rewrite-expression-head
Rules
2818×times-frac_binary64
1221×add-sqr-sqrt_binary64
1214×*-un-lft-identity_binary64
1214×add-cube-cbrt_binary64
819×associate-*r*_binary64
Counts
4 → 1265
Calls

4 calls:

210.0ms
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1)))) (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))) y))
18.0ms
(/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1)))))
16.0ms
(*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1))))
11.0ms
(/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))

simplify2.1s (5.2%)

Algorithm
egg-herbie
Rules
665×associate-*r/_binary64
633×associate-/l/_binary64
589×associate-*l*_binary64
322×associate-/r/_binary64
222×/-rgt-identity_binary64
Counts
1469 → 2037
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0221857705
1512457705

prune4.9s (11.9%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New203702037
Fresh022
Picked011
Done022
Total203752042
Error
0b
Counts
2042 → 5
Alt Table
StatusErrorProgram
18.0b
(*.f64 x (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (pow.f64 a (+.f64 t -1)))) y))
18.1b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 a (-.f64 t 1)))) (/.f64 (/.f64 (pow.f64 z y) (/.f64 (exp.f64 b) (sqrt.f64 (pow.f64 a (+.f64 t -1))))) y))
1.4b
(/.f64 (*.f64 x (expm1.f64 (log1p.f64 (exp.f64 (-.f64 (+.f64 (*.f64 y (log.f64 z)) (*.f64 (-.f64 t 1) (log.f64 a))) b))))) y)
21.3b
(*.f64 (/.f64 x y) (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))))
18.2b
(/.f64 1 (/.f64 y (*.f64 (*.f64 (/.f64 (pow.f64 z y) a) (/.f64 (pow.f64 a t) (exp.f64 b))) x)))
Compiler

Compiled 92279 to 45651 computations (50.5% saved)

regimes2.3s (5.6%)

Accuracy

Total 0.9b remaining (99%)

Threshold costs 0.9b (99%)

Counts
127 → 1
Compiler

Compiled 35845 to 24143 computations (32.6% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01828
12828
23228
33428
43528
53328

end131.0ms (0.3%)

Compiler

Compiled 172 to 119 computations (30.8% saved)

Profiling

Loading profile data...