Details

Time bar (total: 19.9s)

analyze2.1s (10.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
49.9%49.9%0.3%8
49.9%49.9%0.3%9
49.9%49.9%0.3%10
49.9%49.9%0.3%11
49.9%49.9%0.3%12
49.9%49.9%0.3%13
74.8%24.9%0.3%14
Compiler

Compiled 34 to 27 computations (20.6% saved)

sample12.6s (63.5%)

Results
4.7s2354×body2048valid
3.2s2164×body128valid
2.3s1954×body1024valid
1.2s326×body4096valid
905.0ms952×body512valid
238.0ms506×body256valid
Compiler

Compiled 101 to 80 computations (20.8% saved)

simplify41.0ms (0.2%)

Algorithm
egg-herbie
Rules
442×fma-def_binary64
259×associate-/l*_binary64
218×*-commutative_binary64
216×distribute-lft-in_binary64
212×associate-/r/_binary64
Counts
1 → 2
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
02437
14737
210337
320037
444137
564037
682535
7109335
8115531
9123831
10127031
11127031
12125431

prune8.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
47.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
48.1b
(*.f64 (*.f64 x (cos.f64 (/.f64 (*.f64 (*.f64 (+.f64 (*.f64 y 2) 1) z) t) 16))) (cos.f64 (/.f64 (*.f64 (*.f64 (+.f64 (*.f64 a 2) 1) b) t) 16)))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
Compiler

Compiled 174 to 132 computations (24.1% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.4b
(*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))
3.2b
(*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))
33.8b
(cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))
34.5b
(cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))

series162.0ms (0.8%)

Counts
4 → 144
Calls

4 calls:

109.0ms
(cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))
24.0ms
(cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))
14.0ms
(*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))
14.0ms
(*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))

rewrite80.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
882×prod-diff_binary64
159×add-sqr-sqrt_binary64
149×add-log-exp_binary64
149×log1p-expm1-u_binary64
149×expm1-log1p-u_binary64
Counts
4 → 74
Calls

4 calls:

78.0ms
(*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))
78.0ms
(*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))
78.0ms
(cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))
78.0ms
(cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01648
132248
2369148
3514048
000
100

simplify92.0ms (0.5%)

Algorithm
egg-herbie
Rules
871×cancel-sign-sub-inv_binary64
479×associate-*r*_binary64
371×unswap-sqr_binary64
335×associate-*l*_binary64
270×fma-def_binary64
Counts
218 → 122
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02443812
17973254
231053254
351503254

prune323.0ms (1.6%)

Pruning

32 alts after pruning (32 fresh and 0 done)

PrunedKeptTotal
New9032122
Fresh101
Picked101
Done000
Total9232124
Error
43.0b
Counts
124 → 32
Alt Table
StatusErrorProgram
47.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.0b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (*.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.2b
(*.f64 (*.f64 x (cos.f64 (*.f64 (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 y t))) z))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.5b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 1)
51.7b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3) 1/3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))))) 1)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 b (*.f64 t (*.f64 a 1/8)))))
48.8b
(*.f64 (*.f64 x (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 1))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (log1p.f64 (expm1.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t z)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 3)))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (*.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 2)))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/16 (*.f64 t b))))
49.6b
(*.f64 (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.3b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))) 1))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 t (*.f64 (fma.f64 a 1/8 1/16) b))))
49.8b
(*.f64 (*.f64 x (cos.f64 (log.f64 (pow.f64 (pow.f64 (exp.f64 t) z) (fma.f64 y 1/8 1/16))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
49.0b
(*.f64 (*.f64 x (pow.f64 (sqrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
53.8b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 3)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
52.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)) 3) 1/3)))
48.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 1)))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t t) (*.f64 (*.f64 b b) (cos.f64 (*.f64 1/16 (*.f64 t b)))))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 b (sin.f64 (*.f64 1/16 (*.f64 t b))))))))))
47.7b
(*.f64 (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t b))) b))))))
Compiler

Compiled 6417 to 4317 computations (32.7% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))
2.4b
(*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))
33.8b
(cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))

series74.0ms (0.4%)

Counts
1 → 48
Calls

1 calls:

74.0ms
(*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))

rewrite49.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
565×log-prod_binary64
441×prod-diff_binary64
212×expm1-udef_binary64
212×log1p-udef_binary64
186×log-pow_binary64
Counts
1 → 19
Calls

1 calls:

48.0ms
(*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01216
124116
2268916
3511516
000
100

simplify86.0ms (0.4%)

Algorithm
egg-herbie
Rules
733×sub-neg_binary64
657×cancel-sign-sub-inv_binary64
480×associate--l+_binary64
291×associate-*r*_binary64
289×associate--r+_binary64
Counts
67 → 41
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01451853
14771637
219351437
345811437
454881437

prune299.0ms (1.5%)

Pruning

45 alts after pruning (45 fresh and 0 done)

PrunedKeptTotal
New8220102
Fresh62531
Picked101
Done000
Total8945134
Error
41.5b
Counts
134 → 45
Alt Table
StatusErrorProgram
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) 1)
47.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
62.0b
(*.f64 (log.f64 (pow.f64 (exp.f64 x) (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 1)
48.0b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) 1)
47.5b
(*.f64 (*.f64 x (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2) (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
58.8b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 2)) 1)
47.7b
(*.f64 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))))) 1)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
51.5b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3) 1/3))) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 b (*.f64 t (*.f64 a 1/8)))))
47.8b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 3) 1)
48.8b
(*.f64 (*.f64 x (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 1))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))
47.6b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) 1)
53.6b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) 1)
47.5b
(*.f64 (*.f64 x (log.f64 (exp.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (log1p.f64 (expm1.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
49.4b
(*.f64 (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3)))) 1)
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t z)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 3)))
53.7b
(*.f64 (*.f64 x (cos.f64 (exp.f64 (log.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
47.1b
(*.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x) 1)
48.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 1)))
53.3b
(*.f64 (*.f64 x (-.f64 1 (fma.f64 1/128 (*.f64 (*.f64 y y) (*.f64 (*.f64 t t) (*.f64 z z))) (*.f64 (*.f64 (*.f64 t t) (*.f64 z z)) (+.f64 (*.f64 1/128 y) 1/512))))) 1)
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t t) (*.f64 (*.f64 b b) (cos.f64 (*.f64 1/16 (*.f64 t b)))))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 b (sin.f64 (*.f64 1/16 (*.f64 t b))))))))))
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t b))) b))))))
57.3b
(*.f64 (exp.f64 (log.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (*.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 2)))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/16 (*.f64 t b))))
48.3b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))) 1))
48.8b
(*.f64 (*.f64 x (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 1/8 (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 y (*.f64 t z)))))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 t (*.f64 (fma.f64 a 1/8 1/16) b))))
57.2b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 3)) 1)
49.0b
(*.f64 (*.f64 x (pow.f64 (sqrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 3)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 y t))) z))) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
46.2b
(*.f64 x 1)
52.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)) 3) 1/3)))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.7b
(*.f64 (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
Compiler

Compiled 5978 to 4246 computations (29% saved)

localize2.0ms (0%)

prune71.0ms (0.4%)

Pruning

45 alts after pruning (44 fresh and 1 done)

PrunedKeptTotal
New000
Fresh04444
Picked011
Done000
Total04545
Error
41.5b
Counts
45 → 45
Alt Table
StatusErrorProgram
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) 1)
47.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
62.0b
(*.f64 (log.f64 (pow.f64 (exp.f64 x) (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 1)
48.0b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) 1)
47.5b
(*.f64 (*.f64 x (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2) (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
58.8b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 2)) 1)
47.7b
(*.f64 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))))) 1)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
51.5b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3) 1/3))) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 b (*.f64 t (*.f64 a 1/8)))))
47.8b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 3) 1)
48.8b
(*.f64 (*.f64 x (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 1))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))
47.6b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) 1)
53.6b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) 1)
47.5b
(*.f64 (*.f64 x (log.f64 (exp.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (log1p.f64 (expm1.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
49.4b
(*.f64 (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3)))) 1)
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t z)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 3)))
53.7b
(*.f64 (*.f64 x (cos.f64 (exp.f64 (log.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
47.1b
(*.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x) 1)
48.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 1)))
53.3b
(*.f64 (*.f64 x (-.f64 1 (fma.f64 1/128 (*.f64 (*.f64 y y) (*.f64 (*.f64 t t) (*.f64 z z))) (*.f64 (*.f64 (*.f64 t t) (*.f64 z z)) (+.f64 (*.f64 1/128 y) 1/512))))) 1)
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t t) (*.f64 (*.f64 b b) (cos.f64 (*.f64 1/16 (*.f64 t b)))))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 b (sin.f64 (*.f64 1/16 (*.f64 t b))))))))))
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t b))) b))))))
57.3b
(*.f64 (exp.f64 (log.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (*.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 2)))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/16 (*.f64 t b))))
48.3b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))) 1))
48.8b
(*.f64 (*.f64 x (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 1/8 (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 y (*.f64 t z)))))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 t (*.f64 (fma.f64 a 1/8 1/16) b))))
57.2b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 3)) 1)
49.0b
(*.f64 (*.f64 x (pow.f64 (sqrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 3)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 y t))) z))) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
46.2b
(*.f64 x 1)
52.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)) 3) 1/3)))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.7b
(*.f64 (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
Compiler

Compiled 2425 to 1838 computations (24.2% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x)
28.4b
(cos.f64 (*.f64 1/16 (*.f64 t z)))

series21.0ms (0.1%)

Counts
2 → 16
Calls

2 calls:

16.0ms
(*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x)
5.0ms
(cos.f64 (*.f64 1/16 (*.f64 t z)))

rewrite53.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
768×log1p-expm1-u_binary64
768×expm1-log1p-u_binary64
324×prod-diff_binary64
87×add-sqr-sqrt_binary64
83×associate-*r*_binary64
Counts
2 → 35
Calls

2 calls:

51.0ms
(*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x)
51.0ms
(cos.f64 (*.f64 1/16 (*.f64 t z)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
118021
2203621
3524521
000
100

simplify59.0ms (0.3%)

Algorithm
egg-herbie
Rules
948×distribute-rgt-neg-in_binary64
654×fma-neg_binary64
404×distribute-lft-neg-in_binary64
350×associate-*l*_binary64
315×associate-*r*_binary64
Counts
51 → 49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
042396
1121388
2395364
31734354
44110354
55382354

prune170.0ms (0.9%)

Pruning

50 alts after pruning (49 fresh and 1 done)

PrunedKeptTotal
New391049
Fresh43943
Picked101
Done011
Total445094
Error
41.4b
Counts
94 → 50
Alt Table
StatusErrorProgram
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) 1)
47.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 y (*.f64 t z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
62.0b
(*.f64 (log.f64 (pow.f64 (exp.f64 x) (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 1)
48.0b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.1b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) 3)) x) 1)
58.8b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) 2)) 1)
47.3b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) 1)
47.5b
(*.f64 (*.f64 x (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2) (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
47.7b
(*.f64 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))))) 1)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
51.5b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3) 1/3))) 1)
47.1b
(*.f64 (*.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 1/16 (*.f64 t z)))))) x) 1)
47.8b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16))))) 3) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 b (*.f64 t (*.f64 a 1/8)))))
48.8b
(*.f64 (*.f64 x (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 1))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))
53.6b
(*.f64 (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) 1)
47.0b
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) 2)) x) 1)
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (log1p.f64 (expm1.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))))
49.4b
(*.f64 (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)) 3)))) 1)
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t z)))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
57.1b
(*.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x))) 1)
47.6b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 3)))
53.7b
(*.f64 (*.f64 x (cos.f64 (exp.f64 (log.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))))) 1)
48.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 1)))
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))) 2)))
56.9b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x) 3)) 1)
58.5b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x) 2)) 1)
47.7b
(*.f64 (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 3))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t b))) b))))))
47.4b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x)) 3) 1)
57.3b
(*.f64 (exp.f64 (log.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))))) 1)
47.1b
(*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))))) 1) x) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 1/16 (*.f64 t b))))
60.3b
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) x) 3) 1/3) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (*.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)))) 2)))
51.2b
(*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 t t) (*.f64 z z)) -1/512 1) x) 1)
48.3b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16))) 2))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))) 1))
48.8b
(*.f64 (*.f64 x (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 1/8 (*.f64 (sin.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 y (*.f64 t z)))))) 1)
47.7b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (*.f64 t (*.f64 (fma.f64 a 1/8 1/16) b))))
49.0b
(*.f64 (*.f64 x (pow.f64 (sqrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 2)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
47.7b
(*.f64 (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (*.f64 t z) (fma.f64 y 1/8 1/16)))) 3)) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
48.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 y t))) z))) 1)
47.9b
(*.f64 (*.f64 x (cos.f64 (*.f64 t (*.f64 1/8 (*.f64 y z))))) (cos.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16))))
46.2b
(*.f64 x 1)
52.0b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (cos.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 t b) (fma.f64 a 1/8 1/16)) 3) 1/3)))
52.8b
(*.f64 (*.f64 x (cos.f64 (*.f64 (*.f64 z t) (fma.f64 y 1/8 1/16)))) (-.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))) (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t t) (*.f64 (*.f64 b b) (cos.f64 (*.f64 1/16 (*.f64 t b)))))) (*.f64 1/8 (*.f64 a (*.f64 t (*.f64 b (sin.f64 (*.f64 1/16 (*.f64 t b))))))))))
Compiler

Compiled 2072 to 1534 computations (26% saved)

regimes2.7s (13.7%)

Accuracy

Total 4.9b remaining (11.1%)

Threshold costs 0b (0%)

Counts
124 → 1
Compiler

Compiled 43429 to 33299 computations (23.3% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
041
171
261

end848.0ms (4.3%)

Compiler

Compiled 1305 to 1007 computations (22.8% saved)

Profiling

Loading profile data...