Details

Time bar (total: 13.9s)

analyze715.0ms (5.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
25%74.9%0.1%7
43.7%56.2%0.1%8
62.4%37.4%0.1%9
65.5%34.3%0.1%10
71.8%27.7%0.5%11
79.2%19.7%1.1%12
80.2%18.7%1.1%13
82.8%15%2.2%14
Compiler

Compiled 15 to 11 computations (26.7% saved)

sample47.0ms (0.3%)

Algorithm
intervals
Results
19.0ms256×body128valid
1.0ms12×body128invalid
Compiler

Compiled 32 to 24 computations (25% saved)

simplify19.0ms (0.1%)

Algorithm
egg-herbie
Rules
44×fma-def_binary64
37×associate-*l*_binary64
36×associate-*r*_binary64
20×*-commutative_binary64
19×distribute-lft-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01016
12414
24114
39414
412214
514914
615314
714614

prune6.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
9.9b
Counts
3 → 1
Alt Table
StatusErrorProgram
9.9b
(/.f64 (/.f64 1 x) (*.f64 y (fma.f64 z z 1)))
Compiler

Compiled 50 to 34 computations (32% saved)

localize37.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
5.4b
(*.f64 y (fma.f64 z z 1))
5.7b
(/.f64 (/.f64 1 x) (*.f64 y (fma.f64 z z 1)))

series204.0ms (1.5%)

Counts
2 → 60
Calls

2 calls:

185.0ms
(/.f64 (/.f64 1 x) (*.f64 y (fma.f64 z z 1)))
19.0ms
(*.f64 y (fma.f64 z z 1))

rewrite28.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
31×times-frac_binary64
26×add-exp-log_binary64
20×add-sqr-sqrt_binary64
18×*-un-lft-identity_binary64
18×add-cube-cbrt_binary64
Counts
2 → 74
Calls

2 calls:

11.0ms
(/.f64 (/.f64 1 x) (*.f64 y (fma.f64 z z 1)))
5.0ms
(*.f64 y (fma.f64 z z 1))

simplify181.0ms (1.3%)

Algorithm
egg-herbie
Rules
469×associate-/r*_binary64
453×associate-*l*_binary64
414×associate-/l*_binary64
336×associate-/l/_binary64
297×associate-*r*_binary64
Counts
134 → 132
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01542203
13301967
211071965
339561963
444821963
548061963
649381963

prune287.0ms (2.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1257132
Fresh000
Picked101
Done000
Total1267133
Error
4.4b
Counts
133 → 7
Alt Table
StatusErrorProgram
51.8b
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 x)) y) (/.f64 (/.f64 1 (sqrt.f64 x)) (fma.f64 z z 1)))
9.7b
(/.f64 1 (*.f64 y (*.f64 (+.f64 1 (pow.f64 z 2)) x)))
8.0b
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
9.9b
(/.f64 (/.f64 1 x) (*.f64 (fma.f64 z z 1) y))
9.1b
(*.f64 (/.f64 1 y) (/.f64 (/.f64 1 x) (fma.f64 z z 1)))
10.5b
(/.f64 (/.f64 1 x) (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (fma.f64 z z 1))))
19.4b
(/.f64 (/.f64 1 x) (*.f64 (*.f64 (sqrt.f64 y) (hypot.f64 1 z)) (*.f64 (sqrt.f64 y) (hypot.f64 1 z))))
Compiler

Compiled 2422 to 1384 computations (42.9% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (/.f64 1 x) y)
7.9b
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))

series153.0ms (1.1%)

Counts
2 → 60
Calls

2 calls:

140.0ms
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
14.0ms
(/.f64 (/.f64 1 x) y)

rewrite98.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
468×times-frac_binary64
228×*-un-lft-identity_binary64
228×add-sqr-sqrt_binary64
228×add-cube-cbrt_binary64
56×associate-/l*_binary64
Counts
2 → 270
Calls

2 calls:

19.0ms
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
8.0ms
(/.f64 (/.f64 1 x) y)

simplify480.0ms (3.5%)

Algorithm
egg-herbie
Rules
603×fma-def_binary64
536×times-frac_binary64
385×associate-*l*_binary64
378×associate-/l/_binary64
368×associate-/l*_binary64
Counts
330 → 383
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02868112
16477481
216747473
339647471
446287471
549967471
649527471

prune679.0ms (4.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New3758383
Fresh516
Picked011
Done000
Total38010390
Error
0.0b
Counts
390 → 10
Alt Table
StatusErrorProgram
34.6b
(/.f64 (sqrt.f64 (/.f64 (/.f64 1 x) y)) (/.f64 (fma.f64 z z 1) (sqrt.f64 (/.f64 (/.f64 1 x) y))))
15.4b
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 y)) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (sqrt.f64 y)) (hypot.f64 1 z)))
4.8b
(*.f64 (/.f64 1 (hypot.f64 1 z)) (/.f64 (/.f64 1 (*.f64 y x)) (hypot.f64 1 z)))
2.7b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (/.f64 1 x))) (hypot.f64 1 z)) (/.f64 (/.f64 (cbrt.f64 (/.f64 1 x)) y) (hypot.f64 1 z)))
9.7b
(/.f64 1 (*.f64 y (+.f64 (*.f64 (pow.f64 z 2) x) x)))
8.0b
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
9.9b
(/.f64 (/.f64 1 x) (*.f64 (fma.f64 z z 1) y))
2.8b
(*.f64 (/.f64 (/.f64 1 x) (hypot.f64 1 z)) (/.f64 (/.f64 1 (hypot.f64 1 z)) y))
33.0b
(*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (hypot.f64 1 z)) (/.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (hypot.f64 1 z)))
2.1b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z)))
Compiler

Compiled 9086 to 5372 computations (40.9% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.5b
(cbrt.f64 y)
0.6b
(/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z))
1.0b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z)))

series990.0ms (7.1%)

Counts
4 → 96
Calls

4 calls:

662.0ms
(/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z))
194.0ms
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z)))
68.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
65.0ms
(cbrt.f64 y)

rewrite549.0ms (3.9%)

Algorithm
rewrite-expression-head
Rules
1554×times-frac_binary64
824×add-sqr-sqrt_binary64
692×*-un-lft-identity_binary64
676×add-cube-cbrt_binary64
304×cbrt-prod_binary64
Counts
4 → 792
Calls

4 calls:

166.0ms
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z)))
39.0ms
(/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z))
7.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
1.0ms
(cbrt.f64 y)

simplify1.1s (8%)

Algorithm
egg-herbie
Rules
463×*-commutative_binary64
423×associate-/l*_binary64
411×associate-*l*_binary64
400×associate-*r*_binary64
387×associate-/r*_binary64
Counts
888 → 1163
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
065531146
1181926882
2476426880
3505626880

prune2.6s (18.6%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New119431197
Fresh358
Picked011
Done011
Total1197101207
Error
0.0b
Counts
1207 → 10
Alt Table
StatusErrorProgram
34.6b
(/.f64 (sqrt.f64 (/.f64 (/.f64 1 x) y)) (/.f64 (fma.f64 z z 1) (sqrt.f64 (/.f64 (/.f64 1 x) y))))
15.4b
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 y)) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (sqrt.f64 y)) (hypot.f64 1 z)))
4.8b
(*.f64 (/.f64 1 (hypot.f64 1 z)) (/.f64 (/.f64 1 (*.f64 y x)) (hypot.f64 1 z)))
2.7b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (/.f64 1 x))) (hypot.f64 1 z)) (/.f64 (/.f64 (cbrt.f64 (/.f64 1 x)) y) (hypot.f64 1 z)))
1.8b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (sqrt.f64 (hypot.f64 1 z))) (/.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 x)) (sqrt.f64 (hypot.f64 1 z)))))
8.0b
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
9.7b
(/.f64 1 (*.f64 y (fma.f64 (*.f64 z z) x x)))
2.8b
(*.f64 (/.f64 (/.f64 1 x) (hypot.f64 1 z)) (/.f64 (/.f64 1 (hypot.f64 1 z)) y))
4.5b
(/.f64 (/.f64 (*.f64 (/.f64 1 y) (/.f64 1 x)) (hypot.f64 1 z)) (hypot.f64 1 z))
2.1b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (cbrt.f64 y)) (hypot.f64 1 z)))
Compiler

Compiled 44819 to 26535 computations (40.8% saved)

localize36.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 y)
0.5b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.6b
(cbrt.f64 x)
1.0b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (sqrt.f64 (hypot.f64 1 z))) (/.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 x)) (sqrt.f64 (hypot.f64 1 z)))))

series343.0ms (2.5%)

Counts
3 → 60
Calls

3 calls:

225.0ms
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (sqrt.f64 (hypot.f64 1 z))) (/.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 x)) (sqrt.f64 (hypot.f64 1 z)))))
64.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
54.0ms
(cbrt.f64 x)

rewrite736.0ms (5.3%)

Algorithm
rewrite-expression-head
Rules
2977×add-exp-log_binary64
1771×div-exp_binary64
1068×prod-exp_binary64
383×add-cbrt-cube_binary64
261×cbrt-undiv_binary64
Counts
3 → 560
Calls

3 calls:

127.0ms
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (sqrt.f64 (hypot.f64 1 z))) (/.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 x)) (sqrt.f64 (hypot.f64 1 z)))))
7.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
1.0ms
(cbrt.f64 x)

simplify886.0ms (6.4%)

Algorithm
egg-herbie
Rules
638×associate-*l/_binary64
576×associate-*r/_binary64
538×associate-/r/_binary64
418×associate-*r*_binary64
352×log-prod_binary64
Counts
620 → 632
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
055640299
198014626
2304912076
3426712076
4518512076

prune1.4s (10.1%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New7181719
Fresh167
Picked011
Done112
Total7209729
Error
0.0b
Counts
729 → 9
Alt Table
StatusErrorProgram
34.6b
(/.f64 (sqrt.f64 (/.f64 (/.f64 1 x) y)) (/.f64 (fma.f64 z z 1) (sqrt.f64 (/.f64 (/.f64 1 x) y))))
15.4b
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 y)) (hypot.f64 1 z)) (/.f64 (/.f64 (/.f64 1 x) (sqrt.f64 y)) (hypot.f64 1 z)))
4.8b
(*.f64 (/.f64 1 (hypot.f64 1 z)) (/.f64 (/.f64 1 (*.f64 y x)) (hypot.f64 1 z)))
2.7b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (/.f64 1 x))) (hypot.f64 1 z)) (/.f64 (/.f64 (cbrt.f64 (/.f64 1 x)) y) (hypot.f64 1 z)))
1.8b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (hypot.f64 1 z)) (*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (sqrt.f64 (hypot.f64 1 z))) (/.f64 (/.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 x)) (sqrt.f64 (hypot.f64 1 z)))))
8.0b
(/.f64 (/.f64 (/.f64 1 x) y) (fma.f64 z z 1))
2.8b
(*.f64 (/.f64 (/.f64 1 x) (hypot.f64 1 z)) (/.f64 (/.f64 1 (hypot.f64 1 z)) y))
4.5b
(/.f64 (/.f64 (*.f64 (/.f64 1 y) (/.f64 1 x)) (hypot.f64 1 z)) (hypot.f64 1 z))
4.8b
(/.f64 (/.f64 (/.f64 1 (*.f64 y x)) (hypot.f64 1 z)) (*.f64 (sqrt.f64 (hypot.f64 1 z)) (sqrt.f64 (hypot.f64 1 z))))
Compiler

Compiled 34821 to 19194 computations (44.9% saved)

regimes1.1s (8.1%)

Accuracy

Total 2.1b remaining (98.1%)

Threshold costs 0b (0%)

Counts
125 → 1
Compiler

Compiled 22747 to 16159 computations (29% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01644
12144
22044

end7.0ms (0.1%)

Compiler

Compiled 93 to 66 computations (29% saved)

sample1.2s (8.3%)

Algorithm
intervals
Results
391.0ms8000×body128valid
21.0ms482×body128invalid
Compiler

Compiled 248 to 183 computations (26.2% saved)

Profiling

Loading profile data...