Details

Time bar (total: 8.2s)

analyze2.4s (29.2%)

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
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0%99.7%0.3%11
0%99.7%0.3%12
1.2%98.5%0.3%13
1.8%97.9%0.3%14
Compiler

Compiled 25 to 18 computations (28% saved)

sample76.0ms (0.9%)

Algorithm
intervals
Results
22.0ms256×body128valid
7.0ms138×body128invalid
Compiler

Compiled 56 to 42 computations (25% saved)

simplify74.0ms (0.9%)

Algorithm
egg-herbie
Rules
258×cancel-sign-sub-inv_binary64
149×sub-neg_binary64
148×distribute-rgt-in_binary64
133×unsub-neg_binary64
120×associate--r+_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01825
13325
27325
313825
426625
549925
667825
786725
8101325
9103325
10104325
11104425
12104425
13104425
1493725

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.0b
Counts
1 → 1
Alt Table
StatusErrorProgram
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Compiler

Compiled 48 to 34 computations (29.2% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
0.0b
(/.f64 (*.f64 a b) 4)
0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))

rewrite136.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
20×add-log-exp_binary64
17×*-un-lft-identity_binary64
14×cancel-sign-sub-inv_binary64
12×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
Counts
4 → 81
Calls

4 calls:

13.0ms
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
10.0ms
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
5.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
4.0ms
(/.f64 (*.f64 a b) 4)
Compiler

Compiled 2172 to 1040 computations (52.1% saved)

series319.0ms (3.9%)

Error
0.0b
Counts
4 → 108
Calls

4 calls:

126.0ms
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
99.0ms
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
51.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
15.0ms
(/.f64 (*.f64 a b) 4)
Compiler

Compiled 3739 to 2629 computations (29.7% saved)

simplify134.0ms (1.6%)

Algorithm
egg-herbie
Rules
440×distribute-rgt-in_binary64
413×distribute-lft-in_binary64
378×associate-*l/_binary64
370×associate-/l*_binary64
130×cancel-sign-sub-inv_binary64
Counts
189 → 134
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01753409
14723342
214283291
348113291
450123291

prune67.0ms (0.8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1313134
Fresh000
Picked011
Done000
Total1314135
Error
0b
Counts
135 → 4
Alt Table
StatusErrorProgram
28.0b
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))) (/.f64 (*.f64 a b) 4)) c)
29.9b
(+.f64 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
28.2b
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
Compiler

Compiled 1643 to 808 computations (50.8% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
0.3b
(*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))
1.1b
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))
1.1b
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))

rewrite153.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
32×add-sqr-sqrt_binary64
24×sqrt-prod_binary64
21×pow1_binary64
16×sqrt-div_binary64
14×add-cube-cbrt_binary64 *-un-lft-identity_binary64
Counts
4 → 100
Calls

4 calls:

16.0ms
(*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))
8.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
5.0ms
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))
5.0ms
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))
Compiler

Compiled 3610 to 1708 computations (52.7% saved)

series229.0ms (2.8%)

Error
0b
Counts
4 → 80
Calls

4 calls:

58.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
54.0ms
(*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))
52.0ms
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))
51.0ms
(sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))
Compiler

Compiled 4738 to 3158 computations (33.3% saved)

simplify122.0ms (1.5%)

Algorithm
egg-herbie
Rules
612×distribute-rgt-in_binary64
584×distribute-lft-in_binary64
481×associate-*l*_binary64
372×associate-*r*_binary64
175×distribute-rgt-out_binary64
Counts
180 → 117
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01093360
12243107
26543011
321322928
449972928

prune64.0ms (0.8%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1170117
Fresh022
Picked011
Done011
Total1174121
Error
0b
Counts
121 → 4
Alt Table
StatusErrorProgram
28.0b
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))) (/.f64 (*.f64 a b) 4)) c)
29.9b
(+.f64 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
28.2b
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
Compiler

Compiled 1882 to 917 computations (51.3% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
0.1b
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
0.1b
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
0.3b
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))

rewrite177.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
34×sqrt-prod_binary64
32×add-sqr-sqrt_binary64 *-un-lft-identity_binary64
21×pow1_binary64
16×sqrt-div_binary64
14×add-cube-cbrt_binary64
Counts
4 → 107
Calls

4 calls:

28.0ms
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
10.0ms
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
9.0ms
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
5.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
Compiler

Compiled 4914 to 2361 computations (52% saved)

series502.0ms (6.1%)

Error
0b
Counts
4 → 128
Calls

4 calls:

139.0ms
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
136.0ms
(sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))))
128.0ms
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
62.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
Compiler

Compiled 9939 to 6260 computations (37% saved)

simplify217.0ms (2.6%)

Algorithm
egg-herbie
Rules
684×distribute-rgt-in_binary64
648×distribute-lft-in_binary64
212×cancel-sign-sub-inv_binary64
129×distribute-rgt-neg-in_binary64
123×associate-*r*_binary64
Counts
235 → 116
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01717052
14296641
213736488
348256457
449666457

prune72.0ms (0.9%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1160116
Fresh011
Picked011
Done022
Total1164120
Error
0b
Counts
120 → 4
Alt Table
StatusErrorProgram
28.0b
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))) (/.f64 (*.f64 a b) 4)) c)
29.9b
(+.f64 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
28.2b
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
Compiler

Compiled 2777 to 1367 computations (50.8% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 (*.f64 a b) 4)
0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
0.3b
(pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)
35.3b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3))

rewrite109.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
12×add-cube-cbrt_binary64 cbrt-prod_binary64 add-sqr-sqrt_binary64 *-un-lft-identity_binary64
10×add-exp-log_binary64 add-cbrt-cube_binary64
add-log-exp_binary64 unpow-prod-down_binary64 cube-prod_binary64
pow1_binary64
cube-div_binary64
Counts
4 → 80
Calls

4 calls:

7.0ms
(pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)
6.0ms
(cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3))
5.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
4.0ms
(/.f64 (*.f64 a b) 4)
Compiler

Compiled 2136 to 1133 computations (47% saved)

series268.0ms (3.2%)

Error
0b
Counts
4 → 102
Calls

4 calls:

120.0ms
(pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)
57.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))
52.0ms
(cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3))
17.0ms
(/.f64 (*.f64 a b) 4)
Compiler

Compiled 4552 to 3361 computations (26.2% saved)

simplify171.0ms (2.1%)

Algorithm
egg-herbie
Rules
433×*-commutative_binary64
305×unswap-sqr_binary64
252×associate-/l*_binary64
242×distribute-rgt-in_binary64
238×associate-*l/_binary64
Counts
182 → 131
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01634058
14053764
213363739
338993739
449393739
549813739

prune51.0ms (0.6%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1310131
Fresh000
Picked011
Done033
Total1314135
Error
0b
Counts
135 → 4
Alt Table
StatusErrorProgram
28.0b
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))) (sqrt.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)))) (/.f64 (*.f64 a b) 4)) c)
29.9b
(+.f64 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) 3)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
28.2b
(*.f64 (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))) (sqrt.f64 (+.f64 c (+.f64 (*.f64 (*.f64 a b) -1/4) (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16))))))
Compiler

Compiled 1324 to 668 computations (49.5% saved)

regimes1.3s (16.1%)

Accuracy

Total 0.0b remaining (2.9%)

Threshold costs 0.0b (2.9%)

Compiler

Compiled 23549 to 16581 computations (29.6% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64 +-commutative_binary64
sub-neg_binary64
neg-mul-1_binary64 neg-sub0_binary64
distribute-rgt-neg-in_binary64 distribute-lft-neg-in_binary64
distribute-neg-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01825
12525
23225
34225
44925
55425
65625
75625

end49.0ms (0.6%)

Remove

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 168 to 119 computations (29.2% saved)

sample1.5s (17.6%)

Algorithm
intervals
Results
463.0ms8000×body128valid
212.0ms3996×body128invalid
Compiler

Compiled 187 to 129 computations (31% saved)

Profiling

Loading profile data...