Details

Time bar (total: 2.5min)

analyze2.6s (1.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.6%0.4%0
0%99.6%0.4%1
0%99.6%0.4%2
0%99.6%0.4%3
0%99.6%0.4%4
0%99.6%0.4%5
0%99.6%0.4%6
0%99.6%0.4%7
0%99.6%0.4%8
0%99.6%0.4%9
0%99.6%0.4%10
0%99.6%0.4%11
0%99.6%0.4%12
0%99.6%0.4%13
0%99.6%0.4%14
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample1.8s (1.2%)

Results
1.6s8256×body128valid
46.0ms230×body128invalid
Compiler

Compiled 125 to 80 computations (36% saved)

simplify78.0ms (0.1%)

Algorithm
egg-herbie
Rules
572×unswap-sqr_binary64
494×fma-def_binary64
354×associate-+l+_binary64
294×*-commutative_binary64
253×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02735
14935
210335
330935
474435
5174235
6211535
7223235
8258235
9278435
10305435
11396435
12404335
13414435
14426635
15442635
16465635
17496435
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
25.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
25.8b
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
Compiler

Compiled 135 to 74 computations (45.2% saved)

localize17.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)
0.1b
(fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)
0.1b
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)
25.1b
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))

series6.2s (4.2%)

Counts
4 → 216
Calls

4 calls:

6.2s
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
42.0ms
(fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)
17.0ms
(fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)
9.0ms
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)

rewrite49.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
216×add-sqr-sqrt_binary64
201×log1p-expm1-u_binary64
201×expm1-log1p-u_binary64
200×add-cbrt-cube_binary64
199×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02074
141874
Stop Event
node limit
Counts
4 → 95
Calls

4 calls:

43.0ms
(fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)
43.0ms
(fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)
43.0ms
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)
43.0ms
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))

simplify368.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0514662970
Stop Event
node limit
Counts
311 → 184

prune824.0ms (0.5%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New16717184
Fresh000
Picked101
Done000
Total16817185
Error
8.1b
Counts
185 → 17
Alt Table
StatusErrorProgram
25.8b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
61.1b
(-.f64 (+.f64 (/.f64 t (*.f64 (pow.f64 y 3) a)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (*.f64 a y))) (+.f64 (/.f64 z a) (+.f64 (/.f64 (*.f64 y x) a) (*.f64 28832688827/125000 (/.f64 1 (*.f64 a (pow.f64 y 2)))))))) (+.f64 (*.f64 28832688827/125000 (/.f64 1 (*.f64 y (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i x) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 y z) (pow.f64 a 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 c (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 z b) (*.f64 y (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i z) (*.f64 (pow.f64 y 3) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 b (*.f64 (pow.f64 y 2) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c x) (*.f64 y (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 c z) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 c (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 t b) (*.f64 (pow.f64 y 4) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 b (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 b x) (pow.f64 a 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 a 2))) (+.f64 (/.f64 t (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 y 5) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c t) (*.f64 (pow.f64 y 5) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) x) (pow.f64 a 2)) (/.f64 (*.f64 i t) (*.f64 (pow.f64 y 6) (pow.f64 a 2)))))))))))))))))))))))
26.4b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) 2) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)) 2)) (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
30.1b
(/.f64 (fma.f64 y 28832688827/125000 t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
58.6b
(/.f64 (*.f64 (pow.f64 y 3) z) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
57.8b
(/.f64 (*.f64 (pow.f64 y 4) x) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y))))))
26.4b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))) 3)
60.2b
(-.f64 (+.f64 (*.f64 28832688827/125000 (/.f64 1 c)) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) z) c) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) x) c) (+.f64 (*.f64 54929528941/2000000 (/.f64 y c)) (/.f64 t (*.f64 c y)))))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 c 2) y))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) (*.f64 b x)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 3) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 4) z)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 t b) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 5) z) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 i (*.f64 y z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 (pow.f64 y 2) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 6) x) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 5) x)) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) (*.f64 b z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 y b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) (*.f64 i x)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (pow.f64 y 3) (pow.f64 c 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 2) b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 i t) (*.f64 (pow.f64 c 2) (pow.f64 y 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 4) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) t) (pow.f64 c 2)) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 c 2))))))))))))))))))))))
26.1b
(+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 2) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y))))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) z) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) x) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 t (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (*.f64 28832688827/125000 (/.f64 y (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))))))))
42.4b
(*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
50.1b
(-.f64 (+.f64 (/.f64 z y) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 y 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 y 2))) x))) (+.f64 (/.f64 (*.f64 a x) y) (+.f64 (/.f64 (*.f64 b x) (pow.f64 y 2)) (/.f64 (*.f64 a z) (pow.f64 y 2)))))
48.0b
(-.f64 (+.f64 (/.f64 z y) x) (/.f64 (*.f64 a x) y))
50.2b
x
25.8b
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))
44.0b
(-.f64 (+.f64 (/.f64 t i) (*.f64 28832688827/125000 (/.f64 y i))) (/.f64 (*.f64 c (*.f64 y t)) (pow.f64 i 2)))
44.0b
(/.f64 t i)
25.9b
(pow.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) -1)
Compiler

Compiled 42242 to 26893 computations (36.3% saved)

localize21.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)
0.2b
(pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)
18.5b
(cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000))
25.1b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))

series6.0s (4%)

Counts
3 → 136
Calls

3 calls:

5.8s
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
85.0ms
(pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)
53.0ms
(cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000))

rewrite38.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
242×add-sqr-sqrt_binary64
227×log1p-expm1-u_binary64
227×expm1-log1p-u_binary64
226×add-cbrt-cube_binary64
224×add-cube-cbrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02468
150268
Stop Event
node limit
Counts
3 → 60
Calls

3 calls:

36.0ms
(pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)
36.0ms
(cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000))
36.0ms
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))

simplify401.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05476163208817783
Stop Event
node limit
Counts
196 → 157

prune1.1s (0.7%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New2541255
Fresh11516
Picked011
Done000
Total25517272
Error
8.1b
Counts
272 → 17
Alt Table
StatusErrorProgram
25.8b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
61.1b
(-.f64 (+.f64 (/.f64 t (*.f64 (pow.f64 y 3) a)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (*.f64 a y))) (+.f64 (/.f64 z a) (+.f64 (/.f64 (*.f64 y x) a) (*.f64 28832688827/125000 (/.f64 1 (*.f64 a (pow.f64 y 2)))))))) (+.f64 (*.f64 28832688827/125000 (/.f64 1 (*.f64 y (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i x) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 y z) (pow.f64 a 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 c (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 z b) (*.f64 y (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i z) (*.f64 (pow.f64 y 3) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 b (*.f64 (pow.f64 y 2) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c x) (*.f64 y (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 c z) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 c (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 t b) (*.f64 (pow.f64 y 4) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 b (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 b x) (pow.f64 a 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 a 2))) (+.f64 (/.f64 t (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 y 5) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c t) (*.f64 (pow.f64 y 5) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) x) (pow.f64 a 2)) (/.f64 (*.f64 i t) (*.f64 (pow.f64 y 6) (pow.f64 a 2)))))))))))))))))))))))
26.4b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) 2) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)) 2)) (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
30.1b
(/.f64 (fma.f64 y 28832688827/125000 t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
27.9b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (*.f64 (pow.f64 y 2) x) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
44.0b
(-.f64 (+.f64 (/.f64 t i) (*.f64 28832688827/125000 (/.f64 y i))) (/.f64 (*.f64 c (*.f64 y t)) (pow.f64 i 2)))
26.4b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))) 3)
60.2b
(-.f64 (+.f64 (*.f64 28832688827/125000 (/.f64 1 c)) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) z) c) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) x) c) (+.f64 (*.f64 54929528941/2000000 (/.f64 y c)) (/.f64 t (*.f64 c y)))))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 c 2) y))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) (*.f64 b x)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 3) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 4) z)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 t b) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 5) z) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 i (*.f64 y z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 (pow.f64 y 2) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 6) x) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 5) x)) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) (*.f64 b z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 y b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) (*.f64 i x)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (pow.f64 y 3) (pow.f64 c 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 2) b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 i t) (*.f64 (pow.f64 c 2) (pow.f64 y 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 4) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) t) (pow.f64 c 2)) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 c 2))))))))))))))))))))))
58.6b
(/.f64 (*.f64 (pow.f64 y 3) z) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
26.1b
(+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 2) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y))))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) z) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) x) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 t (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (*.f64 28832688827/125000 (/.f64 y (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))))))))
42.4b
(*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
50.1b
(-.f64 (+.f64 (/.f64 z y) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 y 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 y 2))) x))) (+.f64 (/.f64 (*.f64 a x) y) (+.f64 (/.f64 (*.f64 b x) (pow.f64 y 2)) (/.f64 (*.f64 a z) (pow.f64 y 2)))))
48.0b
(-.f64 (+.f64 (/.f64 z y) x) (/.f64 (*.f64 a x) y))
50.2b
x
25.8b
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))
44.0b
(/.f64 t i)
25.9b
(pow.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) -1)
Compiler

Compiled 49416 to 31334 computations (36.6% saved)

localize21.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)
0.1b
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)
0.6b
(/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
24.8b
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))

series5.7s (3.8%)

Counts
2 → 156
Calls

2 calls:

5.5s
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))
251.0ms
(/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))

rewrite33.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
230×add-sqr-sqrt_binary64
213×add-cbrt-cube_binary64
213×log1p-expm1-u_binary64
213×expm1-log1p-u_binary64
211×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02254
145454
Stop Event
node limit
Counts
2 → 41
Calls

2 calls:

31.0ms
(/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
31.0ms
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))

simplify396.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0581870170
Stop Event
node limit
Counts
197 → 143

prune922.0ms (0.6%)

Pruning

17 alts after pruning (15 fresh and 2 done)

PrunedKeptTotal
New2041205
Fresh11415
Picked011
Done011
Total20517222
Error
8.1b
Counts
222 → 17
Alt Table
StatusErrorProgram
58.6b
(*.f64 (*.f64 (pow.f64 y 3) z) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))
25.8b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
61.1b
(-.f64 (+.f64 (/.f64 t (*.f64 (pow.f64 y 3) a)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (*.f64 a y))) (+.f64 (/.f64 z a) (+.f64 (/.f64 (*.f64 y x) a) (*.f64 28832688827/125000 (/.f64 1 (*.f64 a (pow.f64 y 2)))))))) (+.f64 (*.f64 28832688827/125000 (/.f64 1 (*.f64 y (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i x) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 y z) (pow.f64 a 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 c (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 z b) (*.f64 y (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (*.f64 (pow.f64 y 4) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 i z) (*.f64 (pow.f64 y 3) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 b (*.f64 (pow.f64 y 2) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c x) (*.f64 y (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 c z) (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 c (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 t b) (*.f64 (pow.f64 y 4) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 b (*.f64 (pow.f64 y 3) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 b x) (pow.f64 a 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 a 2))) (+.f64 (/.f64 t (*.f64 (pow.f64 y 2) (pow.f64 a 2))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 y 5) (pow.f64 a 2)))) (+.f64 (/.f64 (*.f64 c t) (*.f64 (pow.f64 y 5) (pow.f64 a 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) x) (pow.f64 a 2)) (/.f64 (*.f64 i t) (*.f64 (pow.f64 y 6) (pow.f64 a 2)))))))))))))))))))))))
26.4b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) 2) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)) 2)) (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
30.1b
(/.f64 (fma.f64 y 28832688827/125000 t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
27.9b
(/.f64 (fma.f64 y (*.f64 (cbrt.f64 (fma.f64 y (*.f64 (pow.f64 y 2) x) 28832688827/125000)) (pow.f64 (cbrt.f64 (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000)) 2)) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))
44.0b
(-.f64 (+.f64 (/.f64 t i) (*.f64 28832688827/125000 (/.f64 y i))) (/.f64 (*.f64 c (*.f64 y t)) (pow.f64 i 2)))
26.4b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))) 3)
60.2b
(-.f64 (+.f64 (*.f64 28832688827/125000 (/.f64 1 c)) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) z) c) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) x) c) (+.f64 (*.f64 54929528941/2000000 (/.f64 y c)) (/.f64 t (*.f64 c y)))))) (+.f64 (*.f64 28832688827/125000 (/.f64 i (*.f64 (pow.f64 c 2) y))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) (*.f64 b x)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 3) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 4) z)) (pow.f64 c 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 i (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 t b) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 5) z) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 i (*.f64 y z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 (pow.f64 y 2) a) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 6) x) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 y 5) x)) (pow.f64 c 2)) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) (*.f64 b z)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (*.f64 y b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) (*.f64 i x)) (pow.f64 c 2)) (+.f64 (*.f64 28832688827/125000 (/.f64 (pow.f64 y 3) (pow.f64 c 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (*.f64 (pow.f64 y 2) b) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 i t) (*.f64 (pow.f64 c 2) (pow.f64 y 2))) (+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 4) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 (pow.f64 y 2) t) (pow.f64 c 2)) (/.f64 (*.f64 y (*.f64 a t)) (pow.f64 c 2))))))))))))))))))))))
26.1b
(+.f64 (*.f64 54929528941/2000000 (/.f64 (pow.f64 y 2) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y))))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) z) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 (*.f64 (pow.f64 y 4) x) (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (+.f64 (/.f64 t (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))) (*.f64 28832688827/125000 (/.f64 y (+.f64 i (+.f64 (*.f64 (pow.f64 y 3) a) (+.f64 (*.f64 (pow.f64 y 2) b) (+.f64 (pow.f64 y 4) (*.f64 c y)))))))))))
42.4b
(*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (*.f64 (sqrt.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i))))
50.1b
(-.f64 (+.f64 (/.f64 z y) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) x) (pow.f64 y 2)) (+.f64 (*.f64 54929528941/2000000 (/.f64 1 (pow.f64 y 2))) x))) (+.f64 (/.f64 (*.f64 a x) y) (+.f64 (/.f64 (*.f64 b x) (pow.f64 y 2)) (/.f64 (*.f64 a z) (pow.f64 y 2)))))
48.0b
(-.f64 (+.f64 (/.f64 z y) x) (/.f64 (*.f64 a x) y))
50.2b
x
25.8b
(*.f64 (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t) (/.f64 1 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i)))
44.0b
(/.f64 t i)
25.9b
(pow.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) -1)
Compiler

Compiled 47564 to 30802 computations (35.2% saved)

localize19.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)
0.1b
(fma.f64 y (fma.f64 x y z) 54929528941/2000000)
0.3b
(pow.f64 (/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t)) -1)
25.2b
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t))

series2.1min (82.3%)

Calls

1 calls:

3.2s
(/.f64 (fma.f64 y (fma.f64 y (fma.f64 y (+.f64 y a) b) c) i) (fma.f64 y (fma.f64 y (fma.f64 y (fma.f64 x y z) 54929528941/2000000) 28832688827/125000) t))

Profiling

Loading profile data...