Details

Time bar (total: 19.8s)

analyze2.4s (12.3%)

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%74.8%25.2%5
0%74.8%25.2%6
0%74.8%25.2%7
0%74.8%25.2%8
0%74.8%25.2%9
0%62.3%37.7%10
0%56.1%43.9%11
0%56.1%43.9%12
1.6%54.5%43.9%13
2.4%53.7%43.9%14
Compiler

Compiled 23 to 16 computations (30.4% saved)

sample91.0ms (0.5%)

Algorithm
intervals
Results
33.0ms256×body128valid
4.0ms40×body128nan
4.0ms33×body128invalid
Compiler

Compiled 51 to 37 computations (27.5% saved)

simplify329.0ms (1.7%)

Algorithm
egg-herbie
Rules
5327×fma-def_binary64
866×fma-neg_binary64
705×sub-neg_binary64
654×unsub-neg_binary64
445×+-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01624
13522
210122
326921
480520
5207920
6278720
7384820
8416420
9430620
10409020
11409420
12419020
13448820
14458120
15458720
16458720
17459320
18459920
19459920
20461720
21460120
22460120
23936420

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
0.1b
(fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.1b
(+.f64 (-.f64 (+.f64 (+.f64 x y) z) (*.f64 z (log.f64 t))) (*.f64 (-.f64 a 1/2) b))
Compiler

Compiled 120 to 79 computations (34.2% saved)

localize21.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series440.0ms (2.2%)

Counts
3 → 128
Calls

3 calls:

379.0ms
(fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
39.0ms
(-.f64 1 (log.f64 t))
21.0ms
(fma.f64 (-.f64 a 1/2) b (+.f64 x y))

rewrite13.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
17×*-un-lft-identity_binary64
16×add-sqr-sqrt_binary64
13×add-cube-cbrt_binary64
12×prod-diff_binary64
pow1_binary64
Counts
3 → 59
Calls

3 calls:

7.0ms
(-.f64 1 (log.f64 t))
1.0ms
(fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
1.0ms
(fma.f64 (-.f64 a 1/2) b (+.f64 x y))

simplify134.0ms (0.7%)

Algorithm
egg-herbie
Rules
700×fma-neg_binary64
593×exp-sum_binary64
523×fma-def_binary64
300×associate-+l+_binary64
285×sub-neg_binary64
Counts
187 → 110
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01442997
13182754
29182521
332682521
443792521
552212521

prune207.0ms (1%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1046110
Fresh101
Picked101
Done000
Total1066112
Error
0.0b
Counts
112 → 6
Alt Table
StatusErrorProgram
32.0b
(fma.f64 z (*.f64 (sqrt.f64 (-.f64 1 (log.f64 t))) (sqrt.f64 (-.f64 1 (log.f64 t)))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.1b
(-.f64 (+.f64 (*.f64 a b) (+.f64 y (+.f64 (*.f64 z (log.f64 (/.f64 1 t))) (+.f64 z x)))) (*.f64 1/2 b))
32.2b
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y))))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
0.1b
(fma.f64 z (-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.1b
(fma.f64 z (-.f64 (-.f64 1 (*.f64 (log.f64 (cbrt.f64 t)) 2)) (log.f64 (cbrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
Compiler

Compiled 2531 to 1254 computations (50.5% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series451.0ms (2.3%)

Counts
4 → 60
Calls

4 calls:

402.0ms
(fma.f64 z (-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
18.0ms
(-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (sqrt.f64 t)))
15.0ms
(log.f64 (sqrt.f64 t))
15.0ms
(-.f64 1 (log.f64 (sqrt.f64 t)))

rewrite56.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
89×*-un-lft-identity_binary64
78×prod-diff_binary64
72×add-sqr-sqrt_binary64
64×log-pow_binary64
51×pow1_binary64
Counts
4 → 187
Calls

4 calls:

19.0ms
(-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (sqrt.f64 t)))
8.0ms
(-.f64 1 (log.f64 (sqrt.f64 t)))
2.0ms
(log.f64 (sqrt.f64 t))
1.0ms
(fma.f64 z (-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))

simplify244.0ms (1.2%)

Algorithm
egg-herbie
Rules
647×fma-def_binary64
416×associate-*l*_binary64
359×exp-prod_binary64
342×associate-*r*_binary64
274×distribute-rgt-in_binary64
Counts
247 → 229
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01905001
13673786
211203246
343363246
450383246

prune506.0ms (2.5%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2482250
Fresh145
Picked101
Done000
Total2506256
Error
0.0b
Counts
256 → 6
Alt Table
StatusErrorProgram
32.2b
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
0.1b
(fma.f64 z (log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y))))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
0.1b
(fma.f64 z (-.f64 (-.f64 (-.f64 1 (log.f64 (sqrt.f64 t))) (log.f64 (fabs.f64 (cbrt.f64 t)))) (log.f64 (sqrt.f64 (cbrt.f64 t)))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.1b
(-.f64 (+.f64 (*.f64 a b) (+.f64 y (+.f64 (*.f64 z (log.f64 (/.f64 1 t))) (+.f64 z x)))) (*.f64 1/2 b))
0.1b
(fma.f64 z (-.f64 (-.f64 1 (*.f64 (log.f64 (cbrt.f64 t)) 2)) (log.f64 (cbrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
Compiler

Compiled 7518 to 3069 computations (59.2% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series1.0s (5.2%)

Counts
4 → 84
Calls

4 calls:

769.0ms
(fma.f64 z (log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
246.0ms
(log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t)))
11.0ms
(/.f64 (exp.f64 1) (sqrt.f64 t))
8.0ms
(/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))

rewrite149.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
516×times-frac_binary64
279×*-un-lft-identity_binary64
279×add-sqr-sqrt_binary64
279×add-cube-cbrt_binary64
264×sqrt-prod_binary64
Counts
4 → 378
Calls

4 calls:

23.0ms
(log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t)))
19.0ms
(/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))
7.0ms
(/.f64 (exp.f64 1) (sqrt.f64 t))
1.0ms
(fma.f64 z (log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))

simplify541.0ms (2.7%)

Algorithm
egg-herbie
Rules
558×log-div_binary64
499×associate-/l/_binary64
496×fma-def_binary64
337×times-frac_binary64
258×sub-neg_binary64
Counts
462 → 480
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
039812085
183511025
2175310216
3402010128
4495610128
5500010128

prune1.2s (6.3%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New4791480
Fresh235
Picked011
Done000
Total4815486
Error
0.0b
Counts
486 → 5
Alt Table
StatusErrorProgram
32.2b
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (sqrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
0.1b
(fma.f64 z (log.f64 (/.f64 (/.f64 (exp.f64 1) (sqrt.f64 t)) (sqrt.f64 t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.1b
(-.f64 (+.f64 (*.f64 a b) (+.f64 y (+.f64 (*.f64 z (log.f64 (/.f64 1 t))) (+.f64 z x)))) (*.f64 1/2 b))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y))))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
0.1b
(fma.f64 z (+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
Compiler

Compiled 14135 to 6638 computations (53% saved)

localize36.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (cbrt.f64 (E.f64)) t)
0.1b
(fma.f64 z (+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
0.4b
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t)))
1.6b
(cbrt.f64 (E.f64))

series3.9s (19.8%)

Counts
4 → 96
Calls

4 calls:

2.4s
(fma.f64 z (+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
1.2s
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t)))
272.0ms
(/.f64 (cbrt.f64 (E.f64)) t)
0.0ms
(cbrt.f64 (E.f64))

rewrite39.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
37×*-un-lft-identity_binary64
37×add-sqr-sqrt_binary64
37×add-cube-cbrt_binary64
36×times-frac_binary64
34×log-prod_binary64
Counts
4 → 113
Calls

4 calls:

15.0ms
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t)))
7.0ms
(/.f64 (cbrt.f64 (E.f64)) t)
1.0ms
(cbrt.f64 (E.f64))
1.0ms
(fma.f64 z (+.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64)))) (log.f64 (/.f64 (cbrt.f64 (E.f64)) t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))

simplify205.0ms (1%)

Algorithm
egg-herbie
Rules
607×fma-def_binary64
477×associate-+r+_binary64
370×fma-neg_binary64
295×distribute-rgt-in_binary64
287×+-commutative_binary64
Counts
209 → 201
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02304293
15353675
214803476
340853476
449923476
549933476
650623476

prune227.0ms (1.1%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2142216
Fresh123
Picked101
Done101
Total2174221
Error
0b
Counts
221 → 4
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (*.f64 a b) (+.f64 y (+.f64 (*.f64 z (log.f64 (/.f64 (exp.f64 1/3) t))) (+.f64 (*.f64 2/3 z) x)))) (*.f64 1/2 b))
0.1b
(-.f64 (+.f64 (*.f64 a b) (+.f64 y (+.f64 (*.f64 z (log.f64 (/.f64 1 t))) (+.f64 z x)))) (*.f64 1/2 b))
0.1b
(fma.f64 z (log.f64 (*.f64 (exp.f64 (*.f64 2 (log.f64 (cbrt.f64 (E.f64))))) (/.f64 (cbrt.f64 (E.f64)) t))) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y))))) (cbrt.f64 (fma.f64 z (-.f64 1 (log.f64 t)) (fma.f64 (-.f64 a 1/2) b (+.f64 x y)))))
Compiler

Compiled 5818 to 2331 computations (59.9% saved)

regimes5.7s (28.9%)

Accuracy

Total 0.1b remaining (87.8%)

Threshold costs 0.1b (87.8%)

Counts
220 → 1
Compiler

Compiled 83319 to 56978 computations (31.6% saved)

simplify6.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
02235
13635
24435
34835
45135
55235
65135

end11.0ms (0.1%)

Remove

(sort x y)

Compiler

Compiled 87 to 63 computations (27.6% saved)

sample1.7s (8.6%)

Algorithm
intervals
Results
770.0ms7998×body128valid
147.0ms1238×body128invalid
95.0ms1129×body128nan
1.0msbody1024valid
Compiler

Compiled 194 to 133 computations (31.4% saved)

Profiling

Loading profile data...