Details

Time bar (total: 5.5s)

analyze1.2s (22.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%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
28.1%68.6%3.3%10
29.6%65.5%4.9%11
32%61.7%6.3%12
35.5%56.9%7.6%13
48%38.7%13.4%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample1.6s (28.9%)

Symmetry

(sort d2 d4)

Results
1.0s8256×body128valid
295.0ms2428×body128invalid
Compiler

Compiled 59 to 35 computations (40.7% saved)

simplify92.0ms (1.7%)

Algorithm
egg-herbie
Rules
1400×fma-neg_binary64
654×fma-def_binary64
233×sub-neg_binary64
210×unsub-neg_binary64
158×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01219
13214
29413
326313
465513
5155613
6169113
7150013
8150013
9273913
10270713
11270713
12263213

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
Compiler

Compiled 92 to 53 computations (42.4% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))

series16.0ms (0.3%)

Counts
1 → 48
Calls

1 calls:

16.0ms
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))

rewrite11.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity_binary64
associate-*r*_binary64
add-sqr-sqrt_binary64
distribute-lft-out--_binary64
distribute-lft-out_binary64
Counts
1 → 27
Calls

1 calls:

9.0ms
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))

simplify77.0ms (1.4%)

Algorithm
egg-herbie
Rules
617×distribute-rgt-in_binary64
603×distribute-lft-in_binary64
446×fma-neg_binary64
407×associate-*l*_binary64
313×associate-*r*_binary64
Counts
75 → 55
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0711262
11951056
2718940
33249940
44599940
54980940

prune29.0ms (0.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New54155
Fresh011
Picked011
Done000
Total54357
Error
0b
Counts
57 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
1.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))) (cbrt.f64 (*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1))))) (cbrt.f64 (*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))))
Compiler

Compiled 925 to 211 computations (77.2% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
0.0b
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))
0.0b
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))

series38.0ms (0.7%)

Counts
3 → 132
Calls

3 calls:

19.0ms
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
12.0ms
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))
7.0ms
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))

rewrite18.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
19×add-log-exp_binary64
add-sqr-sqrt_binary64
diff-log_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
3 → 64
Calls

3 calls:

6.0ms
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
5.0ms
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))
3.0ms
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))

simplify89.0ms (1.6%)

Algorithm
egg-herbie
Rules
713×associate-*l*_binary64
685×fma-def_binary64
488×fma-neg_binary64
459×distribute-rgt-in_binary64
440×distribute-lft-in_binary64
Counts
196 → 127
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01282558
13612139
212302096
349662096
452292096

prune99.0ms (1.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1261127
Fresh101
Picked011
Done011
Total1273130
Error
0b
Counts
130 → 3
Alt Table
StatusErrorProgram
1.2b
(-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 d1))
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
Compiler

Compiled 2616 to 493 computations (81.2% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 d1))
0.3b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
0.5b
(*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
1.4b
(cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))

series977.0ms (17.9%)

Counts
4 → 192
Calls

4 calls:

530.0ms
(*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
368.0ms
(cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))
53.0ms
(-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 d1))
25.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))

rewrite75.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
84×associate-*l/_binary64
68×cbrt-div_binary64
35×flip--_binary64
35×flip3--_binary64
32×frac-times_binary64
Counts
4 → 131
Calls

4 calls:

20.0ms
(-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 d1))
16.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
11.0ms
(*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
5.0ms
(cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))

simplify286.0ms (5.2%)

Algorithm
egg-herbie
Rules
429×*-commutative_binary64
215×+-commutative_binary64
202×cancel-sign-sub-inv_binary64
202×sub-neg_binary64
192×fma-def_binary64
Counts
323 → 370
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0108215622
1338914272
2485813953
3495713953

prune520.0ms (9.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New5700570
Fresh000
Picked011
Done022
Total5703573
Error
0b
Counts
573 → 3
Alt Table
StatusErrorProgram
1.2b
(-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (cbrt.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 d1))
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
Compiler

Compiled 38168 to 15850 computations (58.5% saved)

regimes235.0ms (4.3%)

Accuracy

Total 0.0b remaining (65.7%)

Threshold costs 0.0b (65.7%)

Counts
51 → 1
Compiler

Compiled 4513 to 2554 computations (43.4% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11513
22313
32713
42913
52913

end54.0ms (1%)

Remove

(sort d2 d4)

Compiler

Compiled 118 to 63 computations (46.6% saved)

Profiling

Loading profile data...