Details

Time bar (total: 16.1s)

analyze1.5s (9.1%)

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)

sample7.5s (46.4%)

Results
3.5s2420×body2048valid
1.8s1976×body1024valid
916.0ms309×body4096valid
571.0ms969×body512valid
472.0ms2143×body128valid
180.0ms439×body256valid
Compiler

Compiled 101 to 80 computations (20.8% saved)

simplify36.0ms (0.2%)

Algorithm
egg-herbie
Rules
442×fma-def_binary64
259×associate-/l*_binary64
216×distribute-lft-in_binary64
212×associate-/r/_binary64
212×distribute-rgt-in_binary64
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
02437
14737
210637
324337
457637
5106237
6148535
7197335
8241831
9250531
10253731
11253731
Stop Event
saturated
Counts
1 → 2

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
47.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
48.3b
(*.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.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
Compiler

Compiled 174 to 132 computations (24.1% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.8b
(*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))
2.5b
(*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))
35.6b
(cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16))))
35.7b
(cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))

series73.0ms (0.5%)

Counts
4 → 144
Calls

4 calls:

26.0ms
(cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16))))
23.0ms
(cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))
13.0ms
(*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))
12.0ms
(*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))

rewrite58.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
968×prod-diff_binary64
159×add-sqr-sqrt_binary64
149×add-log-exp_binary64
149×log1p-expm1-u_binary64
149×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01648
132248
2384048
Stop Event
node limit
Counts
4 → 70
Calls

4 calls:

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

simplify75.0ms (0.5%)

Algorithm
egg-herbie
Rules
871×cancel-sign-sub-inv_binary64
481×associate-*r*_binary64
371×unswap-sqr_binary64
337×associate-*l*_binary64
270×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02443812
18243254
234173254
Stop Event
node limit
Counts
214 → 124

prune281.0ms (1.7%)

Pruning

28 alts after pruning (28 fresh and 0 done)

PrunedKeptTotal
New9628124
Fresh101
Picked101
Done000
Total9828126
Error
43.8b
Counts
126 → 28
Alt Table
StatusErrorProgram
49.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3)))))
48.5b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 2)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
53.2b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2))))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b))))))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
48.3b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 3) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 b (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 a t)))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x 1))
49.1b
(*.f64 (cos.f64 (cbrt.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.8b
(*.f64 (-.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))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
47.8b
(*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.5b
(*.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))))
50.9b
(*.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3) 1/3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (log.f64 (exp.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
49.3b
(*.f64 (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 1)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.3b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2))))
48.3b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
49.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (+.f64 (cos.f64 (*.f64 t (*.f64 b 1/16))) (*.f64 (*.f64 a (*.f64 (*.f64 t b) (sin.f64 (*.f64 t (*.f64 b 1/16))))) -1/8))))
48.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
48.3b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t b)))))
50.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3) 1/3))))
48.1b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3)))
Compiler

Compiled 6153 to 4300 computations (30.1% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.4b
(*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))
2.5b
(*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))
35.6b
(cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16))))
35.7b
(cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))

series35.0ms (0.2%)

Counts
2 → 56
Calls

2 calls:

23.0ms
(cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))
12.0ms
(*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))

rewrite44.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
854×log1p-expm1-u_binary64
854×expm1-log1p-u_binary64
484×prod-diff_binary64
97×add-sqr-sqrt_binary64
93×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
120224
2231624
Stop Event
node limit
Counts
2 → 35
Calls

2 calls:

43.0ms
(*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))
43.0ms
(cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))

simplify38.0ms (0.2%)

Algorithm
egg-herbie
Rules
552×associate-+l+_binary64
480×cancel-sign-sub-inv_binary64
304×associate--l+_binary64
252×associate-*r*_binary64
233×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01371797
14351417
217471285
Stop Event
node limit
Counts
91 → 61

prune412.0ms (2.6%)

Pruning

37 alts after pruning (37 fresh and 0 done)

PrunedKeptTotal
New10914123
Fresh42327
Picked101
Done000
Total11437151
Error
43.8b
Counts
151 → 37
Alt Table
StatusErrorProgram
49.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3)))))
48.5b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 2)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
53.2b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2))))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
48.3b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 3) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 b (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 a t)))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x 1))
50.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3) 1/3))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
49.1b
(*.f64 (cos.f64 (cbrt.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.0b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.8b
(*.f64 (-.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))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.4b
(*.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
47.8b
(*.f64 (cos.f64 (*.f64 1/16 (*.f64 t z))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
49.1b
(*.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))))
49.3b
(*.f64 (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 1)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))) 1)))
48.3b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.8b
(*.f64 (+.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 (*.f64 (sin.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 t (*.f64 y z))) -1/8)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
49.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (+.f64 (cos.f64 (*.f64 t (*.f64 b 1/16))) (*.f64 (*.f64 a (*.f64 (*.f64 t b) (sin.f64 (*.f64 t (*.f64 b 1/16))))) -1/8))))
48.1b
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3)))
48.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
48.3b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t b)))))
48.3b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2)))) 1)))
50.9b
(*.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3) 1/3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
Compiler

Compiled 7203 to 5197 computations (27.8% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)
1.4b
(*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))
29.3b
(cos.f64 (*.f64 z (*.f64 t 1/16)))
35.7b
(cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))

series620.0ms (3.9%)

Counts
2 → 60
Calls

2 calls:

616.0ms
(-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)
4.0ms
(cos.f64 (*.f64 z (*.f64 t 1/16)))

rewrite57.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
980×prod-diff_binary64
166×add-sqr-sqrt_binary64
159×expm1-log1p-u_binary64
158×log1p-expm1-u_binary64
156×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01822
134822
2407222
Stop Event
node limit
Counts
2 → 52
Calls

2 calls:

56.0ms
(-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)
56.0ms
(cos.f64 (*.f64 z (*.f64 t 1/16)))

simplify45.0ms (0.3%)

Algorithm
egg-herbie
Rules
623×times-frac_binary64
499×cancel-sign-sub-inv_binary64
350×associate-*r*_binary64
254×unswap-sqr_binary64
241×associate-*l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01742051
15731863
225801863
Stop Event
node limit
Counts
112 → 77

prune477.0ms (3%)

Pruning

48 alts after pruning (48 fresh and 0 done)

PrunedKeptTotal
New11721138
Fresh92736
Picked101
Done000
Total12748175
Error
42.6b
Counts
175 → 48
Alt Table
StatusErrorProgram
48.5b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 2)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 b (*.f64 1/16 t))))) 1)))
49.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3)))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
53.2b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2)))) 1)))
48.3b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 2))))
47.6b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))) 2)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
48.3b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 3) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x 1))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))) 3)))
47.7b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 1/16 z)))) 3) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.5b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 1)) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
48.3b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2)))) 1)))
47.7b
(*.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))))) 1) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
51.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 1 (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t b) (*.f64 t b))) (*.f64 (*.f64 (*.f64 t b) (*.f64 t b)) (+.f64 (*.f64 a 1/128) 1/512))))))
49.1b
(*.f64 (cos.f64 (cbrt.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.0b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.8b
(*.f64 (-.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))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.4b
(*.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (*.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 2) (+.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 1))))))
49.3b
(*.f64 (cos.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 1)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (fma.f64 (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) -1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))) 1)))
47.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t b)))))
48.3b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 b (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 a t))))))) 1)))
48.8b
(*.f64 (+.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 (*.f64 (sin.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 t (*.f64 y z))) -1/8)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
49.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (+.f64 (cos.f64 (*.f64 t (*.f64 b 1/16))) (*.f64 (*.f64 a (*.f64 (*.f64 t b) (sin.f64 (*.f64 t (*.f64 b 1/16))))) -1/8))))
48.4b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) 2) (cbrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) -1)))
47.1b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
50.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3) 1/3)))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3)))
47.7b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3)))) 1)))
49.1b
(*.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
50.9b
(*.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3) 1/3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.7b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))) 3)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
Compiler

Compiled 8374 to 6154 computations (26.5% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))
0.4b
(-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)
1.4b
(*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))
35.7b
(cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))

series589.0ms (3.7%)

Counts
1 → 36
Calls

1 calls:

589.0ms
(log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))

rewrite40.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
519×prod-diff_binary64
494×log-prod_binary64
191×expm1-udef_binary64
191×log1p-udef_binary64
167×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01115
122015
2250815
Stop Event
node limit
Counts
1 → 21
Calls

1 calls:

40.0ms
(log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))

simplify47.0ms (0.3%)

Algorithm
egg-herbie
Rules
624×associate-/l*_binary64
288×associate-*r*_binary64
272×unswap-sqr_binary64
218×cancel-sign-sub-inv_binary64
210×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01851773
16201655
226741575
Stop Event
node limit
Counts
57 → 40

prune410.0ms (2.5%)

Pruning

56 alts after pruning (56 fresh and 0 done)

PrunedKeptTotal
New13021151
Fresh123547
Picked101
Done000
Total14356199
Error
40.5b
Counts
199 → 56
Alt Table
StatusErrorProgram
49.0b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3)))))
48.5b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 2)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.1b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3))) 1)))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
48.3b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 2))))
47.6b
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))) 2)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.6b
(*.f64 1 (*.f64 x (fma.f64 (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) -1)))
48.2b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (-.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t b)))) (/.f64 1/8 (/.f64 (+.f64 1 (cos.f64 (*.f64 1/16 (*.f64 t b)))) (*.f64 (*.f64 t (sin.f64 (*.f64 1/16 (*.f64 t b)))) (*.f64 b a)))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3))))
48.3b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)))) 3) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x 1))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))) 3)))
47.7b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 t (*.f64 1/16 z)))) 3) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.5b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2)))) 1)))
47.5b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 1)) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
51.5b
(*.f64 1 (*.f64 x (-.f64 1 (fma.f64 1/128 (*.f64 (*.f64 a a) (*.f64 (*.f64 t b) (*.f64 t b))) (*.f64 (*.f64 (*.f64 t b) (*.f64 t b)) (+.f64 (*.f64 a 1/128) 1/512))))))
47.7b
(*.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))))) 1) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.1b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/16 (*.f64 t b))))) 1)))
47.4b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 1/8 (*.f64 a (*.f64 t b)))))) 1)))
47.1b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3)))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
47.2b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (*.f64 b (*.f64 1/8 a)) t)))) 1)))
48.6b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (+.f64 (log.f64 (hypot.f64 1 (sqrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))) (log.f64 (hypot.f64 1 (sqrt.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))) 1)))
49.1b
(*.f64 (cos.f64 (cbrt.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.0b
(*.f64 (cos.f64 (*.f64 1/8 (*.f64 t (*.f64 y z)))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.8b
(*.f64 (-.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))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.4b
(*.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))) 3)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (*.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 2) (+.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1) 1))))))
50.4b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3) 1/3)))) 1)))
47.6b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (+.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 1)) (cbrt.f64 (+.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 1)))) (log.f64 (cbrt.f64 (+.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 1))))) 1)))
49.1b
(*.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
47.6b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3)))) 1)))
47.1b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (cbrt.f64 (pow.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))) 3))) 1)))
50.9b
(*.f64 (cos.f64 (pow.f64 (pow.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z)) 3) 1/3)) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
53.0b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 2)))) 1)))
47.9b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (-.f64 (log.f64 2) (*.f64 (*.f64 (*.f64 t b) (*.f64 t b)) (+.f64 (*.f64 (*.f64 a a) 1/256) (+.f64 (*.f64 a 1/256) 1/1024))))) 1)))
48.1b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (fma.f64 (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) (sqrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) -1)))
47.7b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (cos.f64 (*.f64 1/16 (*.f64 t b)))))
48.8b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)) 3))))) 1)))
48.3b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 (fma.f64 y 1/8 1/16) z))))) (*.f64 x (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16))))))
48.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 b (+.f64 (*.f64 1/16 t) (*.f64 1/8 (*.f64 a t))))))) 1)))
48.8b
(*.f64 (+.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 (*.f64 (sin.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 t (*.f64 y z))) -1/8)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.4b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) 2) (cbrt.f64 (+.f64 (cos.f64 (*.f64 t (*.f64 b (fma.f64 a 1/8 1/16)))) 1)) -1)))
53.2b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (exp.f64 (log.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.6b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 3)) 1)))
46.3b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log.f64 2)) 1)))
47.7b
(*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
48.8b
(*.f64 (cos.f64 (*.f64 z (*.f64 t (fma.f64 y 1/8 1/16)))) (*.f64 x (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b)))))))
47.9b
(*.f64 (cos.f64 (*.f64 z (*.f64 t 1/16))) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))) 3)))) 1)))
48.5b
(*.f64 1 (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))))) 1)))
47.7b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 t (*.f64 1/16 z))) 3)) (*.f64 x (-.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (fma.f64 a 1/8 1/16) (*.f64 t b))))) 1)))
Compiler

Compiled 7878 to 5812 computations (26.2% saved)

regimes2.9s (17.9%)

Accuracy

Total 4.7b remaining (10.9%)

Threshold costs 0b (0%)

Counts
184 → 2
Compiler

Compiled 77229 to 59871 computations (22.5% saved)

bsearch9.0ms (0.1%)

Compiler

Compiled 33 to 26 computations (21.2% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
+-commutative_binary64
*-lft-identity_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04792
17192
27292
Stop Event
saturated

end860.0ms (5.3%)

Compiler

Compiled 1844 to 1450 computations (21.4% saved)

Profiling

Loading profile data...