Details

Time bar (total: 20.4s)

analyze3.1s (15.3%)

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
37.4%62.4%0.1%6
37.4%62.4%0.1%7
43.7%56.2%0.1%8
43.7%56.2%0.1%9
43.7%56.2%0.1%10
46.8%53%0.1%11
46.8%53%0.1%12
46.8%53%0.1%13
48.4%51.5%0.1%14
Compiler

Compiled 28 to 23 computations (17.9% saved)

sample6.9s (33.8%)

Results
3.6s2023×body1024valid
1.6s4652×body128valid
1.2s1070×body512valid
354.0ms507×body256valid
13.0msbody2048valid
Compiler

Compiled 83 to 68 computations (18.1% saved)

simplify124.0ms (0.6%)

Algorithm
egg-herbie
Rules
1043×associate-*l/_binary64
692×associate-/l/_binary64
651×associate-/r/_binary64
474×associate-/l*_binary64
398×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01837
13732
28332
320832
474232
5227332
6247432
7287532
8301532
9312632
10323432
11483532
12495332
13488032

prune6.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
8.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
8.1b
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
Compiler

Compiled 96 to 76 computations (20.8% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))
0.1b
(*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2)))
0.1b
(/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))
8.1b
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))

series375.0ms (1.8%)

Counts
4 → 120
Calls

4 calls:

221.0ms
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
111.0ms
(/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))
21.0ms
(*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))
21.0ms
(*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2)))

rewrite44.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
32×add-cbrt-cube_binary64
32×add-exp-log_binary64
23×pow1_binary64
15×cbrt-unprod_binary64
15×prod-exp_binary64
Counts
4 → 88
Calls

4 calls:

10.0ms
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
9.0ms
(*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2)))
8.0ms
(/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))
7.0ms
(*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))

simplify280.0ms (1.4%)

Algorithm
egg-herbie
Rules
836×fma-def_binary64
375×associate-*l*_binary64
303×fma-neg_binary64
300×associate-*r*_binary64
204×*-commutative_binary64
Counts
208 → 190
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03235501
18544903
233684868
349004868
449814868
549564868

prune375.0ms (1.8%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1855190
Fresh000
Picked101
Done000
Total1865191
Error
0.0b
Counts
191 → 5
Alt Table
StatusErrorProgram
20.0b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
48.1b
U
8.2b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
8.1b
(*.f64 (*.f64 -2 J) (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
42.8b
(neg.f64 U)
Compiler

Compiled 6462 to 4835 computations (25.2% saved)

localize24.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
0.1b
(*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))
0.1b
(/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))
8.1b
(*.f64 (*.f64 -2 J) (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))

series445.0ms (2.2%)

Counts
2 → 72
Calls

2 calls:

290.0ms
(*.f64 (*.f64 -2 J) (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
155.0ms
(*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))

rewrite13.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
16×add-cbrt-cube_binary64
16×add-exp-log_binary64
16×pow1_binary64
cbrt-unprod_binary64
prod-exp_binary64
Counts
2 → 44
Calls

2 calls:

6.0ms
(*.f64 (*.f64 -2 J) (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
4.0ms
(*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))

simplify202.0ms (1%)

Algorithm
egg-herbie
Rules
421×cancel-sign-sub-inv_binary64
309×fma-neg_binary64
287×associate-*l*_binary64
281×associate-*r*_binary64
213×*-commutative_binary64
Counts
116 → 132
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03205675
18705137
234075125
349845125
449745125

prune588.0ms (2.9%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New2134217
Fresh044
Picked101
Done000
Total2148222
Error
0.0b
Counts
222 → 8
Alt Table
StatusErrorProgram
25.0b
(*.f64 (*.f64 -2 J) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 2 J))))) 3)))
20.0b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
33.1b
(*.f64 (*.f64 -2 J) (log.f64 (exp.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
48.1b
U
8.2b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
15.1b
(*.f64 (*.f64 -2 J) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
42.8b
(neg.f64 U)
8.6b
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
Compiler

Compiled 8308 to 6148 computations (26% saved)

localize30.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
0.1b
(/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))
0.2b
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
8.0b
(sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))

series919.0ms (4.5%)

Counts
3 → 84
Calls

3 calls:

336.0ms
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
295.0ms
(sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
287.0ms
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))

rewrite55.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
27×pow1_binary64
26×add-cbrt-cube_binary64
26×add-exp-log_binary64
16×cbrt-unprod_binary64
16×prod-exp_binary64
Counts
3 → 70
Calls

3 calls:

21.0ms
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
16.0ms
(*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
2.0ms
(sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))

simplify295.0ms (1.4%)

Algorithm
egg-herbie
Rules
483×associate-*l*_binary64
379×associate-*r*_binary64
379×fma-neg_binary64
281×*-commutative_binary64
240×fma-def_binary64
Counts
154 → 169
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03767658
110566900
243216874
349816874

prune1.0s (5.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New3080308
Fresh077
Picked011
Done000
Total3088316
Error
0.0b
Counts
316 → 8
Alt Table
StatusErrorProgram
25.0b
(*.f64 (*.f64 -2 J) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 2 J))))) 3)))
20.0b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (sqrt.f64 (cos.f64 (/.f64 K 2)))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))
33.1b
(*.f64 (*.f64 -2 J) (log.f64 (exp.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
48.1b
U
8.2b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
15.1b
(*.f64 (*.f64 -2 J) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
42.8b
(neg.f64 U)
8.6b
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
Compiler

Compiled 16537 to 12534 computations (24.2% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
0.3b
(*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2))))
0.3b
(cbrt.f64 (cos.f64 (/.f64 K 2)))
8.1b
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))

series1.2s (5.8%)

Counts
4 → 96
Calls

4 calls:

429.0ms
(*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2))))
317.0ms
(cbrt.f64 (cos.f64 (/.f64 K 2)))
260.0ms
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
182.0ms
(*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))

rewrite72.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
64×pow1_binary64
59×add-exp-log_binary64
41×pow-prod-down_binary64
40×cbrt-unprod_binary64
40×prod-exp_binary64
Counts
4 → 121
Calls

4 calls:

23.0ms
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
13.0ms
(*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
10.0ms
(*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2))))
1.0ms
(cbrt.f64 (cos.f64 (/.f64 K 2)))

simplify242.0ms (1.2%)

Algorithm
egg-herbie
Rules
431×associate-*r*_binary64
427×associate-*l*_binary64
275×fma-neg_binary64
240×*-commutative_binary64
221×unswap-sqr_binary64
Counts
217 → 230
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04038197
110437036
240396902
351076902

prune831.0ms (4.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2762278
Fresh246
Picked011
Done011
Total2788286
Error
0.0b
Counts
286 → 8
Alt Table
StatusErrorProgram
33.1b
(*.f64 (*.f64 -2 J) (log.f64 (exp.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
8.7b
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 K 2)))) (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))))) (cbrt.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
8.3b
(*.f64 (*.f64 -2 J) (*.f64 (pow.f64 (pow.f64 (cos.f64 (*.f64 1/2 K)) 2) 1/3) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
48.1b
U
8.2b
(*.f64 (*.f64 (*.f64 (*.f64 -2 J) (cos.f64 (/.f64 K 2))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))) (sqrt.f64 (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))
15.1b
(*.f64 (*.f64 -2 J) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (/.f64 K 2)) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2))))))))
42.8b
(neg.f64 U)
8.6b
(*.f64 (*.f64 -2 J) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (cbrt.f64 (cos.f64 (/.f64 K 2)))) (*.f64 (cbrt.f64 (cos.f64 (/.f64 K 2))) (hypot.f64 1 (/.f64 U (*.f64 (cos.f64 (/.f64 K 2)) (*.f64 J 2)))))))
Compiler

Compiled 12600 to 9778 computations (22.4% saved)

regimes2.6s (12.5%)

Accuracy

Total 8.1b remaining (99.4%)

Threshold costs 0b (0%)

Counts
150 → 3
Compiler

Compiled 24992 to 19914 computations (20.3% saved)

bsearch265.0ms (1.3%)

Steps
ItersRangePoint
7
1.9873459916928516e+292
7.460192319163148e+293
7.956915989433689e+292
10
1.2722719712772294e+205
7.799093946539608e+220
1.2866515938766426e+220
Compiler

Compiled 4 to 3 computations (25% saved)

simplify7.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02548
13448
23548
33648
43748
53648

end379.0ms (1.9%)

Compiler

Compiled 293 to 233 computations (20.5% saved)

Profiling

Loading profile data...