Details

Time bar (total: 6.7s)

analyze1.3s (18.6%)

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
12.5%87.4%0.1%7
18.7%81.1%0.1%8
26.5%72.9%0.5%9
38.2%60.7%1.1%10
41.7%54.9%3.4%11
47.6%47.4%5%12
53.4%39.4%7.2%13
54.9%34.5%10.6%14
Compiler

Compiled 20 to 15 computations (25% saved)

sample2.8s (41.7%)

Results
1.0s6263×body128valid
695.0ms1027×body1024valid
319.0ms1931×body128invalid
307.0ms636×body512valid
155.0ms222×body1024invalid
112.0ms237×body512invalid
101.0ms328×body256valid
53.0ms173×body256invalid
3.0msbody2048valid
Compiler

Compiled 40 to 30 computations (25% saved)

preprocess95.0ms (1.4%)

Algorithm
egg-herbie
Rules
820×unswap-sqr_binary64
674×associate-/l/_binary64
369×sqr-pow_binary64
227×*-commutative_binary64
161×associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03096
17696
219496
379096
4167996
5173096
6179796
7187496
8196196
9206796
10401696
11416496
12433996
13452196
14472196
15494796
033
133
Stop Event
unsound
node limit
Symmetry

(sort c s)

Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify66.0ms (1%)

Algorithm
egg-herbie
Rules
750×unswap-sqr_binary64
516×*-commutative_binary64
376×associate-/l/_binary64
309×sqr-pow_binary64
243×fabs-mul_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01324
13024
27224
325424
4114524
5212824
6332024
7339724
8349424
9362824
10381324
11406024
12440124
13479624
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
2.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
2.4b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
24.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
Compiler

Compiled 111 to 69 computations (37.8% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s)))
0.3b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
3.9b
(*.f64 x (*.f64 c s))

series169.0ms (2.5%)

Counts
3 → 108
Calls

27 calls:

16.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
c
-inf
16.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
s
-inf
16.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
s
inf
15.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
c
inf
15.0ms
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 x (*.f64 c s))))
c
0

rewrite58.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
699×log-prod_binary64
214×expm1-udef_binary64
214×log1p-udef_binary64
205×prod-diff_binary64
193×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01135
123635
2323735
Stop Event
node limit
Counts
3 → 84

simplify49.0ms (0.7%)

Algorithm
egg-herbie
Rules
866×associate-/l*_binary64
440×associate-/l/_binary64
361×cancel-sign-sub-inv_binary64
334×unswap-sqr_binary64
271×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0401776
11111774
23291774
316761769
Stop Event
node limit
Counts
192 → 101

prune144.0ms (2.1%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New11212124
Fresh011
Picked101
Done000
Total11313126
Error
1.5b
Counts
126 → 13
Alt Table
StatusErrorProgram
2.6b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))) 3)
14.3b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s x) (*.f64 (*.f64 s x) (*.f64 c c))))
14.6b
(*.f64 (/.f64 1 (*.f64 (*.f64 c s) (*.f64 x x))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
28.4b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 s 2) (pow.f64 x 2))))
3.0b
(/.f64 (cos.f64 (*.f64 2 x)) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 x (*.f64 c s))) 2) 3))
13.4b
(*.f64 (/.f64 1 x) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 c s) 2) x)))
24.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
2.2b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
2.2b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
2.4b
(pow.f64 (/.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) (cos.f64 (+.f64 x x))) -1)
16.4b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (cbrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))))
21.0b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) 3)))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
Compiler

Compiled 2963 to 1354 computations (54.3% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
0.2b
(pow.f64 (*.f64 x (*.f64 c s)) -2)
3.9b
(*.f64 x (*.f64 c s))

series163.0ms (2.4%)

Counts
2 → 72
Calls

18 calls:

17.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
s
-inf
16.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
c
-inf
16.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
c
inf
15.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
s
inf
15.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))
x
-inf

rewrite44.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
505×prod-diff_binary64
208×expm1-udef_binary64
208×log1p-udef_binary64
147×fma-def_binary64
124×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
124128
2317628
Stop Event
node limit
Counts
2 → 34

simplify45.0ms (0.7%)

Algorithm
egg-herbie
Rules
877×associate-/l*_binary64
437×associate-/l/_binary64
361×cancel-sign-sub-inv_binary64
355×unswap-sqr_binary64
271×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0361632
1991630
23231630
318261625
Stop Event
node limit
Counts
106 → 46

prune102.0ms (1.5%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New65469
Fresh3912
Picked101
Done000
Total691382
Error
0.0b
Counts
82 → 13
Alt Table
StatusErrorProgram
2.6b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))) 3)
14.3b
(/.f64 (cos.f64 (*.f64 x 2)) (*.f64 (*.f64 s x) (*.f64 (*.f64 s x) (*.f64 c c))))
24.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
2.2b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2))
20.0b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 x c) -2) (pow.f64 s -2)))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (/.f64 1 (*.f64 s (*.f64 x c))) (/.f64 1 (*.f64 s (*.f64 x c)))))
2.4b
(pow.f64 (/.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) (cos.f64 (+.f64 x x))) -1)
14.6b
(*.f64 (/.f64 1 (*.f64 (*.f64 c s) (*.f64 x x))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
16.4b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (cbrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))))
21.0b
(/.f64 (cos.f64 (*.f64 2 x)) (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) 3)))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
1.6b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
Compiler

Compiled 1739 to 859 computations (50.6% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
0.2b
(pow.f64 (*.f64 c (*.f64 s x)) -2)
3.6b
(*.f64 c (*.f64 s x))

series195.0ms (2.9%)

Counts
3 → 88
Calls

27 calls:

35.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
s
inf
17.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
x
-inf
16.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
c
0
16.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
s
0
15.0ms
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 c (*.f64 s x)) -2))
c
-inf

rewrite48.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
505×prod-diff_binary64
208×expm1-udef_binary64
208×log1p-udef_binary64
147×fma-def_binary64
124×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01135
124135
2317635
Stop Event
node limit
Counts
3 → 49

simplify49.0ms (0.7%)

Algorithm
egg-herbie
Rules
870×associate-/l*_binary64
435×associate-/l/_binary64
361×cancel-sign-sub-inv_binary64
339×unswap-sqr_binary64
271×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0381744
11051742
23301742
317061737
Stop Event
node limit
Counts
137 → 62

prune86.0ms (1.3%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New61162
Fresh21012
Picked101
Done000
Total641175
Error
0.0b
Counts
75 → 11
Alt Table
StatusErrorProgram
16.8b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 c -2) (pow.f64 (*.f64 s x) -2)))
16.4b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (cbrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))))
24.9b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (pow.f64 c 2) (*.f64 (*.f64 x (pow.f64 s 2)) x)))
2.2b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2))
20.0b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 (*.f64 x c) -2) (pow.f64 s -2)))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (/.f64 1 (*.f64 s (*.f64 x c))) (/.f64 1 (*.f64 s (*.f64 x c)))))
2.4b
(pow.f64 (/.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) (cos.f64 (+.f64 x x))) -1)
2.6b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))) 3)
14.6b
(*.f64 (/.f64 1 (*.f64 (*.f64 c s) (*.f64 x x))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
Compiler

Compiled 1546 to 774 computations (49.9% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
0.8b
(/.f64 1 (*.f64 x (*.f64 c s)))
0.9b
(/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s)))
3.9b
(*.f64 x (*.f64 c s))

series196.0ms (2.9%)

Counts
3 → 108
Calls

27 calls:

21.0ms
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
x
-inf
16.0ms
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
s
inf
16.0ms
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
c
0
16.0ms
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
s
-inf
16.0ms
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (/.f64 1 (*.f64 x (*.f64 c s))))
s
0

rewrite65.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
541×prod-diff_binary64
138×egg-rr
134×add-sqr-sqrt_binary64
124×add-cbrt-cube_binary64
124×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01249
126443
2392143
Stop Event
node limit
Counts
3 → 138

simplify57.0ms (0.8%)

Algorithm
egg-herbie
Rules
584×fma-def_binary64
558×cancel-sign-sub-inv_binary64
369×fma-neg_binary64
368×unswap-sqr_binary64
310×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0611907
11821901
25781897
326351895
Stop Event
node limit
Counts
246 → 161

prune171.0ms (2.5%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New2043207
Fresh2810
Picked101
Done000
Total20711218
Error
0.0b
Counts
218 → 11
Alt Table
StatusErrorProgram
2.8b
(*.f64 (/.f64 (cos.f64 (+.f64 x x)) (*.f64 x (*.f64 c s))) (*.f64 (/.f64 1 x) (pow.f64 (*.f64 c s) -1)))
2.6b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))) 3)
16.8b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (pow.f64 c -2) (pow.f64 (*.f64 s x) -2)))
16.4b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x x)) 2)) (cbrt.f64 (pow.f64 (*.f64 x (*.f64 c s)) 4))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 x (*.f64 c s)) -2))))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (pow.f64 (*.f64 s (*.f64 c x)) -2))
3.3b
(*.f64 (cos.f64 (+.f64 x x)) (*.f64 (/.f64 1 (*.f64 s (*.f64 x c))) (/.f64 1 (*.f64 s (*.f64 x c)))))
2.4b
(pow.f64 (/.f64 (pow.f64 (*.f64 x (*.f64 c s)) 2) (cos.f64 (+.f64 x x))) -1)
14.6b
(*.f64 (/.f64 1 (*.f64 (*.f64 c s) (*.f64 x x))) (/.f64 (cos.f64 (+.f64 x x)) (*.f64 c s)))
3.4b
(*.f64 (/.f64 (cos.f64 (*.f64 2 x)) (*.f64 c (*.f64 s x))) (/.f64 1 (*.f64 x (*.f64 c s))))
3.6b
(/.f64 (cos.f64 (*.f64 2 x)) (*.f64 (*.f64 x (*.f64 c s)) (*.f64 c (*.f64 s x))))
18.3b
(*.f64 (/.f64 (/.f64 1 c) (*.f64 s x)) (/.f64 1 (*.f64 x (*.f64 c s))))
Compiler

Compiled 4752 to 2118 computations (55.4% saved)

regimes547.0ms (8.1%)

Accuracy

Total 2.6b remaining (97.2%)

Threshold costs 0b (0%)

Counts
91 → 1
Compiler

Compiled 10588 to 7184 computations (32.1% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01118
11418
Stop Event
saturated

end289.0ms (4.3%)

Stop Event
fuel
Compiler

Compiled 285 to 183 computations (35.8% saved)

Profiling

Loading profile data...