Details

Time bar (total: 14.6s)

analyze1.9s (13%)

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
0%99.9%0.1%6
0%99.9%0.1%7
25%74.9%0.1%8
54.6%45.2%0.1%9
56.2%43.7%0.1%10
62.4%37.4%0.1%11
65.9%33.9%0.1%12
66.3%33.5%0.1%13
69%30.8%0.1%14
Compiler

Compiled 20 to 15 computations (25% saved)

sample215.0ms (1.5%)

Algorithm
intervals
Results
163.0ms156×body1024valid
28.0ms51×body512valid
7.0ms37×body128valid
4.0ms12×body256valid
Compiler

Compiled 42 to 32 computations (23.8% saved)

simplify91.0ms (0.6%)

Algorithm
egg-herbie
Rules
645×associate-/r*_binary64
634×sqr-pow_binary64
394×associate-*l*_binary64
373×cube-prod_binary64
368×*-commutative_binary64
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01426
12618
24018
36818
414118
534818
6105518
7179618
8248418
9269718
10296818
11331118
12370518
13460318
14479918

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.2b
Counts
2 → 2
Alt Table
StatusErrorProgram
4.3b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Compiler

Compiled 80 to 55 computations (31.3% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.1b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))

rewrite88.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
24×add-sqr-sqrt_binary64
19×times-frac_binary64
19×*-un-lft-identity_binary64
19×add-cube-cbrt_binary64
13×associate-*l*_binary64
Counts
3 → 73
Calls

3 calls:

6.0ms
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
3.0ms
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.0ms
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
Compiler

Compiled 1423 to 244 computations (82.9% saved)

series233.0ms (1.6%)

Error
0.1b
Counts
3 → 39
Calls

3 calls:

102.0ms
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
57.0ms
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
35.0ms
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
Compiler

Compiled 2819 to 1896 computations (32.7% saved)

simplify174.0ms (1.2%)

Algorithm
egg-herbie
Rules
798×fma-def_binary64
399×cancel-sign-sub-inv_binary64
220×associate-*r*_binary64
196×fma-neg_binary64
177×associate-/l*_binary64
Counts
112 → 96
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03133443
18253193
231713178
349273178
449933178
549993178
649633178

prune105.0ms (0.7%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New851196
Fresh101
Picked101
Done000
Total871198
Error
0b
Counts
98 → 11
Alt Table
StatusErrorProgram
1.2b
(*.f64 (/.f64 (/.f64 (sin.f64 ky) (*.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
3.2b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
7.3b
(*.f64 (/.f64 (sin.f64 ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (sin.f64 th))
1.0b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (sin.f64 ky)) (cbrt.f64 (sin.f64 ky))) (*.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (*.f64 (sin.f64 th) (/.f64 (cbrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
33.3b
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
0.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (*.f64 (sin.f64 th) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
33.4b
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))) (sin.f64 th))
1.4b
(*.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (cbrt.f64 (sin.f64 th)) (cbrt.f64 (sin.f64 th)))) (cbrt.f64 (sin.f64 th)))
1.3b
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
Compiler

Compiled 2545 to 979 computations (61.5% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.1b
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
0.3b
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))

rewrite86.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
24×add-sqr-sqrt_binary64
19×times-frac_binary64
19×*-un-lft-identity_binary64
19×add-cube-cbrt_binary64
13×associate-*r*_binary64
Counts
3 → 73
Calls

3 calls:

6.0ms
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
3.0ms
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
0.0ms
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Compiler

Compiled 1423 to 244 computations (82.9% saved)

series253.0ms (1.7%)

Error
0b
Counts
3 → 44
Calls

3 calls:

102.0ms
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
82.0ms
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
37.0ms
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Compiler

Compiled 3148 to 2100 computations (33.3% saved)

simplify141.0ms (1%)

Algorithm
egg-herbie
Rules
798×fma-def_binary64
431×cancel-sign-sub-inv_binary64
222×associate-*r*_binary64
220×fma-neg_binary64
185×neg-mul-1_binary64
Counts
117 → 59
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03063724
18143466
230823447
347823447
450013447

prune55.0ms (0.4%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New57259
Fresh4610
Picked011
Done000
Total61970
Error
0b
Counts
70 → 9
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
7.3b
(*.f64 (/.f64 (sin.f64 ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (sin.f64 th))
0.3b
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
33.3b
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
0.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (*.f64 (sin.f64 th) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
3.2b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
33.4b
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))) (sin.f64 th))
26.7b
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))
Compiler

Compiled 1614 to 821 computations (49.1% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
0.2b
(/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
0.2b
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
0.4b
(*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))

rewrite121.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
32×add-exp-log_binary64
28×add-sqr-sqrt_binary64
22×*-un-lft-identity_binary64
21×add-cube-cbrt_binary64
20×times-frac_binary64
Counts
4 → 107
Calls

4 calls:

8.0ms
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
6.0ms
(*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
2.0ms
(/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
0.0ms
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Compiler

Compiled 2137 to 762 computations (64.3% saved)

series284.0ms (1.9%)

Error
0b
Counts
4 → 49
Calls

4 calls:

110.0ms
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
58.0ms
(*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
44.0ms
(/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
38.0ms
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Compiler

Compiled 3459 to 2365 computations (31.6% saved)

simplify160.0ms (1.1%)

Algorithm
egg-herbie
Rules
446×cancel-sign-sub-inv_binary64
379×associate-*r*_binary64
329×associate-*l*_binary64
244×fma-neg_binary64
232×*-commutative_binary64
Counts
156 → 122
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03564201
19553822
236963822
349323822
449503822

prune67.0ms (0.5%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1220122
Fresh077
Picked011
Done011
Total1229131
Error
0b
Counts
131 → 9
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
7.3b
(*.f64 (/.f64 (sin.f64 ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (sin.f64 th))
0.3b
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
33.3b
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
0.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (*.f64 (sin.f64 th) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
3.2b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
33.4b
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))) (sin.f64 th))
26.7b
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))
Compiler

Compiled 2176 to 979 computations (55% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
0.3b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
0.3b
(/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))

rewrite145.0ms (1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
92×add-sqr-sqrt_binary64
84×times-frac_binary64
61×*-un-lft-identity_binary64
61×add-cube-cbrt_binary64
51×sqrt-prod_binary64
Counts
4 → 172
Calls

4 calls:

16.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
4.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
4.0ms
(/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
1.0ms
(sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
Compiler

Compiled 4572 to 534 computations (88.3% saved)

series358.0ms (2.5%)

Error
0b
Counts
4 → 52
Calls

4 calls:

107.0ms
(/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
99.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
66.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
46.0ms
(sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
Compiler

Compiled 4591 to 3031 computations (34% saved)

simplify224.0ms (1.5%)

Algorithm
egg-herbie
Rules
938×times-frac_binary64
338×associate-*r*_binary64
325×*-commutative_binary64
277×fma-neg_binary64
263×associate-*l*_binary64
Counts
224 → 130
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04438713
112527847
244317845
360797845

prune94.0ms (0.6%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1291130
Fresh156
Picked011
Done022
Total1309139
Error
0b
Counts
139 → 9
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
7.3b
(*.f64 (/.f64 (sin.f64 ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (sin.f64 th))
0.3b
(*.f64 (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
0.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (*.f64 (sin.f64 th) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
3.2b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
33.4b
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))) (sin.f64 th))
1.3b
(/.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
26.7b
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))
Compiler

Compiled 3199 to 1126 computations (64.8% saved)

regimes3.0s (20.7%)

Accuracy

Total 0.2b remaining (87.8%)

Threshold costs 0.2b (87.8%)

Compiler

Compiled 46801 to 26611 computations (43.1% saved)

simplify4.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01218
11518
21418

end0.0ms (0%)

Compiler

Compiled 14 to 9 computations (35.7% saved)

sample6.7s (46.1%)

Algorithm
intervals
Results
5.0s4698×body1024valid
846.0ms1417×body512valid
220.0ms1351×body128valid
195.0ms521×body256valid
30.0ms13×body2048valid
Compiler

Compiled 213 to 128 computations (39.9% saved)

Profiling

Loading profile data...