Details

Time bar (total: 10.0s)

analyze451.0ms (4.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%68.6%31.4%5
0%65.5%34.5%6
0%59.2%40.8%7
0%51.4%48.6%8
0%41.3%58.7%9
0%28.4%71.6%10
2.3%22.3%75.4%11
2.3%21%76.7%12
2.7%18%79.3%13
2.7%16.4%80.8%14
Compiler

Compiled 22 to 16 computations (27.3% saved)

sample117.0ms (1.2%)

Algorithm
intervals
Symmetry

(sort x y)

Results
25.0ms256×body128valid
13.0ms163×body128nan
0.0msbody128invalid
Compiler

Compiled 48 to 36 computations (25% saved)

simplify211.0ms (2.1%)

Algorithm
egg-herbie
Rules
2140×distribute-rgt-in_binary64
556×associate--r+_binary64
551×associate-+l+_binary64
551×unsub-neg_binary64
546×associate-+r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01625
12923
27223
316023
442623
5109723
6199423
7198123
8195623
9197223
10198723
11203723
12204423
13224823
14265123
15244723
16245923
17246523
18246523
19255723
20464923
21472023
22480223
23487823
24764323

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 76 to 46 computations (39.5% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series924.0ms (9.3%)

Counts
2 → 96
Calls

2 calls:

635.0ms
(fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))
289.0ms
(+.f64 (log.f64 (+.f64 x y)) (log.f64 z))

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
log-prod_binary64
pow1_binary64
distribute-lft-out_binary64
add-sqr-sqrt_binary64
Counts
2 → 40
Calls

2 calls:

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

simplify108.0ms (1.1%)

Algorithm
egg-herbie
Rules
819×fma-def_binary64
672×sub-neg_binary64
369×fma-neg_binary64
320×associate--l+_binary64
286×associate-+l+_binary64
Counts
136 → 150
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02693472
18373152
229533050
347463050
449723050

prune131.0ms (1.3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1455150
Fresh000
Picked101
Done000
Total1465151
Error
0.1b
Counts
151 → 5
Alt Table
StatusErrorProgram
53.6b
(log.f64 (*.f64 (pow.f64 t (-.f64 a 1/2)) (/.f64 (*.f64 z (+.f64 y x)) (exp.f64 t))))
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t))
41.7b
(*.f64 (sqrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (sqrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (cbrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t)))) (cbrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
34.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t)) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
Compiler

Compiled 4042 to 1744 computations (56.9% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t)
0.3b
(*.f64 a (log.f64 (/.f64 1 t)))
0.4b
(+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))
0.5b
(+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t)))))

series1.7s (16.6%)

Counts
4 → 76
Calls

4 calls:

840.0ms
(+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t)))))
519.0ms
(+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))
246.0ms
(*.f64 a (log.f64 (/.f64 1 t)))
56.0ms
(+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t)

rewrite36.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
85×log-prod_binary64
57×*-un-lft-identity_binary64
54×times-frac_binary64
54×add-sqr-sqrt_binary64
52×add-cube-cbrt_binary64
Counts
4 → 165
Calls

4 calls:

7.0ms
(+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t)))))
6.0ms
(*.f64 a (log.f64 (/.f64 1 t)))
6.0ms
(+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t)
5.0ms
(+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))

simplify172.0ms (1.7%)

Algorithm
egg-herbie
Rules
724×fma-neg_binary64
440×distribute-rgt-in_binary64
242×cancel-sign-sub-inv_binary64
239×sub-neg_binary64
221×unsub-neg_binary64
Counts
241 → 317
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
03094210
18133818
225293623
344693569
449813567
550453567

prune472.0ms (4.7%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New3116317
Fresh134
Picked011
Done000
Total31210322
Error
0b
Counts
322 → 10
Alt Table
StatusErrorProgram
53.6b
(log.f64 (*.f64 (pow.f64 t (-.f64 a 1/2)) (/.f64 (*.f64 z (+.f64 y x)) (exp.f64 t))))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 a (*.f64 (cbrt.f64 (neg.f64 (log.f64 t))) (cbrt.f64 (neg.f64 (log.f64 t))))) (cbrt.f64 (log.f64 (/.f64 1 t)))) t))
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t))
33.8b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 a) (*.f64 (neg.f64 (log.f64 t)) (sqrt.f64 a))) t))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 a) (cbrt.f64 a)) (*.f64 (neg.f64 (log.f64 t)) (cbrt.f64 a))) t))
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (+.f64 (*.f64 a (neg.f64 (log.f64 (*.f64 (cbrt.f64 t) (cbrt.f64 t))))) (*.f64 a (neg.f64 (log.f64 (cbrt.f64 t))))) t))
41.7b
(*.f64 (sqrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (sqrt.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
34.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t)) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
33.0b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
Compiler

Compiled 10442 to 5934 computations (43.2% saved)

localize25.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))
0.5b
(*.f64 (cbrt.f64 t) (cbrt.f64 t))
0.5b
(+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t)))))
0.6b
(cbrt.f64 t)

series67.0ms (0.7%)

Counts
2 → 24
Calls

2 calls:

37.0ms
(*.f64 (cbrt.f64 t) (cbrt.f64 t))
30.0ms
(cbrt.f64 t)

rewrite9.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
19×add-sqr-sqrt_binary64
19×cbrt-prod_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
pow1_binary64
Counts
2 → 55
Calls

2 calls:

6.0ms
(*.f64 (cbrt.f64 t) (cbrt.f64 t))
1.0ms
(cbrt.f64 t)

simplify65.0ms (0.7%)

Algorithm
egg-herbie
Rules
577×distribute-rgt-in_binary64
561×log-prod_binary64
538×distribute-lft-in_binary64
525×unswap-sqr_binary64
384×fma-def_binary64
Counts
79 → 74
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
058610
198554
2296516
3769502
41799410
54642410
64805410

prune394.0ms (3.9%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2801281
Fresh268
Picked101
Done011
Total2838291
Error
0b
Counts
291 → 8
Alt Table
StatusErrorProgram
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (+.f64 (*.f64 a (neg.f64 (log.f64 (pow.f64 t 2/3)))) (*.f64 a (neg.f64 (log.f64 (cbrt.f64 t))))) t))
53.6b
(log.f64 (*.f64 (pow.f64 t (-.f64 a 1/2)) (/.f64 (*.f64 z (+.f64 y x)) (exp.f64 t))))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t))
33.8b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 a) (*.f64 (neg.f64 (log.f64 t)) (sqrt.f64 a))) t))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 a) (cbrt.f64 a)) (*.f64 (neg.f64 (log.f64 t)) (cbrt.f64 a))) t))
34.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t)) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
33.0b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
Compiler

Compiled 11590 to 4228 computations (63.5% saved)

localize30.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))
0.5b
(+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t)))))
0.6b
(cbrt.f64 t)
6.1b
(pow.f64 t 2/3)

series56.0ms (0.6%)

Counts
1 → 12
Calls

1 calls:

55.0ms
(pow.f64 t 2/3)

rewrite2.0ms (0%)

Algorithm
rewrite-expression-head
Rules
pow-unpow_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
unpow-prod-down_binary64
add-cube-cbrt_binary64
Counts
1 → 19
Calls

1 calls:

1.0ms
(pow.f64 t 2/3)

simplify65.0ms (0.7%)

Algorithm
egg-herbie
Rules
612×fma-neg_binary64
320×log-prod_binary64
302×*-commutative_binary64
275×associate-*l*_binary64
234×exp-prod_binary64
Counts
31 → 27
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
043206
183203
2170200
3427174
41287174
53699156
64894156
74869156

prune314.0ms (3.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2160216
Fresh066
Picked011
Done011
Total2168224
Error
0b
Counts
224 → 8
Alt Table
StatusErrorProgram
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (+.f64 (*.f64 a (neg.f64 (log.f64 (pow.f64 t 2/3)))) (*.f64 a (neg.f64 (log.f64 (cbrt.f64 t))))) t))
53.6b
(log.f64 (*.f64 (pow.f64 t (-.f64 a 1/2)) (/.f64 (*.f64 z (+.f64 y x)) (exp.f64 t))))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) (cbrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
0.2b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 a (log.f64 (/.f64 1 t))) t))
33.8b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 a) (*.f64 (neg.f64 (log.f64 t)) (sqrt.f64 a))) t))
0.6b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 a) (cbrt.f64 a)) (*.f64 (neg.f64 (log.f64 t)) (cbrt.f64 a))) t))
34.7b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t)) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))) (fma.f64 (-.f64 a 1/2) (log.f64 t) (-.f64 (+.f64 (log.f64 (+.f64 x y)) (log.f64 z)) t))))
33.0b
(-.f64 (+.f64 (log.f64 (+.f64 y x)) (+.f64 (log.f64 z) (*.f64 1/2 (log.f64 (/.f64 1 t))))) (+.f64 (*.f64 (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a))) (sqrt.f64 (neg.f64 (*.f64 (log.f64 t) a)))) t))
Compiler

Compiled 8501 to 4422 computations (48% saved)

regimes2.8s (28.4%)

Accuracy

Total 0.2b remaining (83.8%)

Threshold costs 0.2b (83.8%)

Counts
182 → 1
Compiler

Compiled 70376 to 48814 computations (30.6% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
15×distribute-rgt-neg-in_binary64
13×cancel-sign-sub-inv_binary64
10×+-commutative_binary64
distribute-lft-neg-in_binary64
sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02033
13433
24933
37333
49233
510333
610533
710133

end7.0ms (0.1%)

Remove

(sort x y)

Compiler

Compiled 78 to 57 computations (26.9% saved)

sample1.8s (17.9%)

Algorithm
intervals
Results
772.0ms8000×body128valid
366.0ms4243×body128nan
3.0ms30×body128invalid
Compiler

Compiled 332 to 215 computations (35.2% saved)

Profiling

Loading profile data...