Details

Time bar (total: 4.3s)

analyze119.0ms (2.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
49.9%49.9%0.1%3
49.9%49.9%0.1%4
49.9%49.9%0.1%5
74.9%25%0.1%6
74.9%25%0.1%7
74.9%25%0.1%8
87.4%12.5%0.1%9
87.4%12.5%0.1%10
87.4%12.5%0.1%11
93.6%6.2%0.1%12
93.6%6.2%0.1%13
93.6%6.2%0.1%14
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample840.0ms (19.6%)

Infinites
41.9% of outputs are infinite.
Results
736.0ms8256×body128valid
Compiler

Compiled 56 to 35 computations (37.5% saved)

simplify79.0ms (1.9%)

Algorithm
egg-herbie
Rules
802×fma-def_binary64
795×div-sub_binary64
536×times-frac_binary64
518×neg-mul-1_binary64
376×distribute-frac-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01220
12720
26520
312620
427820
560220
6131719
7285319
8444619
9474319
10499119

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
11.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
11.5b
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y))
18.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 99 to 58 computations (41.4% saved)

localize8.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
3.3b
(-.f64 (*.f64 z z) (*.f64 x x))
9.2b
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)

series32.0ms (0.8%)

Counts
2 → 60
Calls

2 calls:

26.0ms
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
6.0ms
(-.f64 (*.f64 z z) (*.f64 x x))

rewrite12.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
12×times-frac_binary64
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
difference-of-squares_binary64
Counts
2 → 53
Calls

2 calls:

5.0ms
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
3.0ms
(-.f64 (*.f64 z z) (*.f64 x x))

simplify84.0ms (2%)

Algorithm
egg-herbie
Rules
302×fma-neg_binary64
251×div-sub_binary64
208×associate-*l*_binary64
194×unswap-sqr_binary64
188×distribute-rgt-neg-out_binary64
Counts
113 → 89
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01051690
12541582
27051576
327571576
445641576
549071576

prune83.0ms (1.9%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New83689
Fresh101
Picked101
Done000
Total85691
Error
0b
Counts
91 → 6
Alt Table
StatusErrorProgram
0.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
30.3b
(*.f64 -1/2 (-.f64 (*.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))) (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)))) y))
0.4b
(*.f64 -1/2 (-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))) (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)))) (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)))) y))
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
0.1b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
11.5b
(*.f64 -1/2 (-.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 x x)) (/.f64 1 y)) y))
Compiler

Compiled 2019 to 699 computations (65.4% saved)

localize8.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 z x) y)
0.1b
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))

series35.0ms (0.8%)

Counts
2 → 64
Calls

2 calls:

21.0ms
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
14.0ms
(/.f64 (-.f64 z x) y)

rewrite20.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
41×add-sqr-sqrt_binary64
38×*-un-lft-identity_binary64
31×times-frac_binary64
22×add-cube-cbrt_binary64
19×associate-*l*_binary64
Counts
2 → 87
Calls

2 calls:

9.0ms
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
6.0ms
(/.f64 (-.f64 z x) y)

simplify79.0ms (1.8%)

Algorithm
egg-herbie
Rules
792×fma-def_binary64
705×div-sub_binary64
517×associate-*l/_binary64
373×associate-*r/_binary64
326×associate-/l*_binary64
Counts
151 → 127
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01542063
14941947
213891947
335961947
457921947

prune112.0ms (2.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1252127
Fresh325
Picked011
Done000
Total1285133
Error
0b
Counts
133 → 5
Alt Table
StatusErrorProgram
12.8b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 (/.f64 (-.f64 z x) y) (-.f64 (*.f64 x x) (*.f64 z z))) (-.f64 x z)) y))
0.1b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
0.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
0.3b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 z x)) (cbrt.f64 (-.f64 z x))) 1) (*.f64 (/.f64 (cbrt.f64 (-.f64 z x)) y) (+.f64 x z))) y))
Compiler

Compiled 2821 to 931 computations (67% saved)

localize8.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 y (-.f64 z x))
0.2b
(/.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))

series37.0ms (0.9%)

Counts
2 → 60
Calls

2 calls:

22.0ms
(/.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))
15.0ms
(/.f64 y (-.f64 z x))

rewrite32.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
174×times-frac_binary64
161×*-un-lft-identity_binary64
117×add-sqr-sqrt_binary64
79×add-cube-cbrt_binary64
26×associate-/r*_binary64
Counts
2 → 167
Calls

2 calls:

11.0ms
(/.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))
4.0ms
(/.f64 y (-.f64 z x))

simplify142.0ms (3.3%)

Algorithm
egg-herbie
Rules
498×times-frac_binary64
445×distribute-rgt-in_binary64
422×fma-def_binary64
405×distribute-lft-in_binary64
203×associate-/r/_binary64
Counts
227 → 241
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02695160
16185010
222164849
347854849
449874849

prune181.0ms (4.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New2401241
Fresh123
Picked011
Done011
Total2415246
Error
0b
Counts
246 → 5
Alt Table
StatusErrorProgram
12.8b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 (/.f64 (-.f64 z x) y) (-.f64 (*.f64 x x) (*.f64 z z))) (-.f64 x z)) y))
0.1b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
0.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
0.3b
(*.f64 -1/2 (-.f64 (*.f64 (*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z))) (/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x)))) y))
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
Compiler

Compiled 6038 to 1757 computations (70.9% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z))) (/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x))))
0.2b
(/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x)))
0.4b
(*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z)))
0.5b
(cbrt.f64 (+.f64 x z))

series369.0ms (8.6%)

Counts
4 → 120
Calls

4 calls:

298.0ms
(/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x)))
31.0ms
(*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z)))
21.0ms
(*.f64 (*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z))) (/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x))))
19.0ms
(cbrt.f64 (+.f64 x z))

rewrite400.0ms (9.3%)

Algorithm
rewrite-expression-head
Rules
525×times-frac_binary64
427×*-un-lft-identity_binary64
344×add-sqr-sqrt_binary64
235×add-cube-cbrt_binary64
202×cbrt-prod_binary64
Counts
4 → 464
Calls

4 calls:

209.0ms
(*.f64 (*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z))) (/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x))))
79.0ms
(*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z)))
9.0ms
(/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x)))
2.0ms
(cbrt.f64 (+.f64 x z))

simplify348.0ms (8.1%)

Algorithm
egg-herbie
Rules
589×associate-/l*_binary64
433×fma-def_binary64
351×associate-/r/_binary64
257×associate-/l/_binary64
211×*-commutative_binary64
Counts
584 → 737
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
069417897
1189715839
2484315837
3507915837

prune751.0ms (17.5%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New8490849
Fresh022
Picked011
Done022
Total8495854
Error
0b
Counts
854 → 5
Alt Table
StatusErrorProgram
12.8b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 (/.f64 (-.f64 z x) y) (-.f64 (*.f64 x x) (*.f64 z z))) (-.f64 x z)) y))
0.1b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
0.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
0.3b
(*.f64 -1/2 (-.f64 (*.f64 (*.f64 (cbrt.f64 (+.f64 x z)) (cbrt.f64 (+.f64 x z))) (/.f64 (cbrt.f64 (+.f64 x z)) (/.f64 y (-.f64 z x)))) y))
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
Compiler

Compiled 32772 to 9342 computations (71.5% saved)

regimes395.0ms (9.2%)

Accuracy

Total 0.1b remaining (70.1%)

Threshold costs 0.1b (70.1%)

Counts
58 → 1
Compiler

Compiled 8654 to 4847 computations (44% saved)

simplify3.0ms (0.1%)

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
01119
11719
22519
32919
43119
53119

end84.0ms (2%)

Compiler

Compiled 138 to 80 computations (42% saved)

Profiling

Loading profile data...