Details

Time bar (total: 1.6min)

analyze2.7s (2.8%)

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
24.9%74.7%0.4%8
24.9%74.7%0.4%9
24.9%74.7%0.4%10
24.9%49.8%25.3%11
24.9%49.8%25.3%12
24.9%49.8%25.3%13
24.9%49.8%25.3%14
Compiler

Compiled 30 to 21 computations (30% saved)

sample7.9s (8.1%)

Symmetry

(sort z t a)

Results
4.8s16879×body128invalid
2.8s8256×body128valid
Compiler

Compiled 89 to 62 computations (30.3% saved)

simplify106.0ms (0.1%)

Algorithm
egg-herbie
Rules
2664×associate-+l+_binary64
1041×associate-+r+_binary64
923×+-commutative_binary64
750×fma-def_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02130
14126
210926
337626
4111826
5159226
6169826
7169826
8169826
9169826
10270626
11295826
12295826
13291026
14291026
15254026
16252426

prune7.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
Compiler

Compiled 99 to 61 computations (38.4% saved)

localize26.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 x (log.f64 y) z) t)
0.0b
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
0.1b
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))
0.1b
(fma.f64 x (log.f64 y) z)

series2.0s (2.1%)

Counts
4 → 228
Calls

4 calls:

1.3s
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))
287.0ms
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
242.0ms
(+.f64 (fma.f64 x (log.f64 y) z) t)
176.0ms
(fma.f64 x (log.f64 y) z)

rewrite21.0ms (0%)

Algorithm
rewrite-expression-head
Rules
15×*-un-lft-identity_binary64
11×add-log-exp_binary64
fma-def_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
Counts
4 → 59
Calls

4 calls:

13.0ms
(+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)
4.0ms
(+.f64 (fma.f64 x (log.f64 y) z) t)
1.0ms
(fma.f64 x (log.f64 y) z)
1.0ms
(fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))

simplify190.0ms (0.2%)

Algorithm
egg-herbie
Rules
676×fma-neg_binary64
616×distribute-rgt-in_binary64
580×distribute-lft-in_binary64
507×fma-def_binary64
416×associate--l+_binary64
Counts
287 → 140
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01564579
14144467
212014079
349064071
455534071

prune227.0ms (0.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1364140
Fresh000
Picked011
Done000
Total1365141
Error
0.1b
Counts
141 → 5
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
46.5b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) z)) (sqrt.f64 (fma.f64 x (log.f64 y) z)) t) a)))
30.9b
(fma.f64 y i (*.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.0b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
48.4b
(fma.f64 y i (cbrt.f64 (pow.f64 (+.f64 (fma.f64 (log.f64 c) (-.f64 b 1/2) (fma.f64 (log.f64 y) x z)) (+.f64 a t)) 3)))
Compiler

Compiled 3647 to 1277 computations (65% saved)

localize28.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (log.f64 y) z)
0.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.5b
(*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.7b
(cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))

series19.4s (19.8%)

Counts
3 → 252
Calls

3 calls:

11.1s
(*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
6.8s
(cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
1.4s
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))

rewrite60.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64
24×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×pow1/3_binary64
14×*-un-lft-identity_binary64
Counts
3 → 93
Calls

3 calls:

14.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
9.0ms
(*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
1.0ms
(cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))

simplify1.1s (1.2%)

Algorithm
egg-herbie
Counts
345 → 220
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06834104870

prune5.3s (5.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New4435448
Fresh303
Picked011
Done011
Total4467453
Error
0.0b
Counts
453 → 7
Alt Table
StatusErrorProgram
1.2b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.0b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
31.3b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
1.2b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
1.0b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
1.6b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
Compiler

Compiled 126464 to 74104 computations (41.4% saved)

localize56.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
0.5b
(*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.5b
(cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.7b
(cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))

series22.0s (22.5%)

Counts
2 → 168
Calls

2 calls:

14.8s
(cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
7.2s
(cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))

rewrite5.0ms (0%)

Algorithm
rewrite-expression-head
Rules
10×cbrt-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 27
Calls

2 calls:

2.0ms
(cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))

simplify892.0ms (0.9%)

Algorithm
egg-herbie
Counts
195 → 151
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0696898708

prune10.3s (10.6%)

Pruning

11 alts after pruning (8 fresh and 3 done)

PrunedKeptTotal
New7274731
Fresh044
Picked011
Done022
Total72711738
Error
0.0b
Counts
738 → 11
Alt Table
StatusErrorProgram
1.6b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
31.3b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
1.2b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.0b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.3b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))))
31.3b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
1.2b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
1.0b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
1.1b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))))
3.4b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
Compiler

Compiled 306496 to 176341 computations (42.5% saved)

localize61.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.5b
(cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))
0.5b
(cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
0.7b
(cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))

series5.8s (5.9%)

Counts
1 → 84
Calls

1 calls:

5.8s
(cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))

rewrite4.0ms (0%)

Algorithm
rewrite-expression-head
Rules
cbrt-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
rem-cbrt-cube_binary64
pow3_binary64
Counts
1 → 12
Calls

1 calls:

3.0ms
(cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))

simplify365.0ms (0.4%)

Algorithm
egg-herbie
Rules
851×fma-def_binary64
456×associate-/l*_binary64
260×times-frac_binary64
75×sqr-pow_binary64
58×sub-neg_binary64
Counts
96 → 134
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0311035318
1563135318

prune16.0s (16.3%)

Pruning

11 alts after pruning (7 fresh and 4 done)

PrunedKeptTotal
New104601046
Fresh077
Picked011
Done033
Total1046111057
Error
0.0b
Counts
1057 → 11
Alt Table
StatusErrorProgram
1.6b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
31.3b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
1.2b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.0b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))
1.3b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))))
31.3b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
1.2b
(fma.f64 y i (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))
0.1b
(fma.f64 y i (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))
1.0b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
1.1b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))) (cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))))
3.4b
(fma.f64 y i (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))) (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a)))))))) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 b 1/2) (log.f64 c) (+.f64 (+.f64 (fma.f64 x (log.f64 y) z) t) a))))))
Compiler

Compiled 452621 to 251752 computations (44.4% saved)

regimes2.6s (2.6%)

Accuracy

Total 0.0b remaining (34.9%)

Threshold costs 0.0b (34.9%)

Counts
76 → 1
Compiler

Compiled 57512 to 27708 computations (51.8% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01826
12326
22426
32326

end666.0ms (0.7%)

Remove

(sort z t a)

Compiler

Compiled 1217 to 530 computations (56.5% saved)

Profiling

Loading profile data...