Details

Time bar (total: 11.8s)

analyze941.0ms (8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
6.2%82.7%11.1%10
12.5%73.7%13.8%11
15.6%59.5%25%12
17.9%53.3%28.8%13
22.4%47.2%30.4%14
Compiler

Compiled 18 to 12 computations (33.3% saved)

sample1.5s (13.1%)

Results
948.0ms8256×body128valid
362.0ms3115×body128invalid
Compiler

Compiled 53 to 35 computations (34% saved)

simplify63.0ms (0.5%)

Algorithm
egg-herbie
Rules
853×fma-neg_binary64
525×fma-def_binary64
182×cancel-sign-sub-inv_binary64
160×associate-*l*_binary64
154×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01219
12517
27217
322717
451217
5104417
6143617
7149217
8157317
9161517
10163117
11163117
12155017

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
5.3b
Counts
3 → 1
Alt Table
StatusErrorProgram
5.3b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
Compiler

Compiled 61 to 35 computations (42.6% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 t (*.f64 z z))
4.9b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))

series36.0ms (0.3%)

Counts
2 → 72
Calls

2 calls:

31.0ms
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
5.0ms
(-.f64 t (*.f64 z z))

rewrite4.0ms (0%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
fma-neg_binary64
Counts
2 → 31
Calls

2 calls:

2.0ms
(-.f64 t (*.f64 z z))
0.0ms
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))

simplify75.0ms (0.6%)

Algorithm
egg-herbie
Rules
703×distribute-rgt-in_binary64
653×distribute-lft-in_binary64
495×fma-neg_binary64
369×exp-prod_binary64
193×fma-def_binary64
Counts
103 → 64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0801591
11871301
24311282
315351282
445881282
550851282

prune41.0ms (0.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New59564
Fresh000
Picked011
Done000
Total59665
Error
4.6b
Counts
65 → 6
Alt Table
StatusErrorProgram
5.3b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
6.4b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
41.8b
(pow.f64 x 2)
24.7b
(fma.f64 y (*.f64 4 (/.f64 (-.f64 (*.f64 t t) (pow.f64 z 4)) (fma.f64 z z t))) (*.f64 x x))
17.3b
(fma.f64 x x (*.f64 4 (*.f64 y t)))
37.0b
(*.f64 4 (*.f64 y t))
Compiler

Compiled 1243 to 495 computations (60.2% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
0.6b
(*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
1.4b
(cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))
4.9b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))

series595.0ms (5%)

Counts
3 → 144
Calls

3 calls:

401.0ms
(*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
161.0ms
(cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))
33.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))

rewrite20.0ms (0.2%)

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:

6.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
4.0ms
(*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
1.0ms
(cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))

simplify518.0ms (4.4%)

Algorithm
egg-herbie
Rules
478×*-commutative_binary64
220×+-commutative_binary64
212×cancel-sign-sub-inv_binary64
207×fma-def_binary64
195×sub-neg_binary64
Counts
237 → 282
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0112819837
1396819315
2508219315

prune910.0ms (7.7%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New5672569
Fresh134
Picked011
Done011
Total5687575
Error
4.6b
Counts
575 → 7
Alt Table
StatusErrorProgram
5.3b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
6.4b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
41.8b
(pow.f64 x 2)
24.7b
(fma.f64 y (*.f64 4 (/.f64 (-.f64 (*.f64 t t) (pow.f64 z 4)) (fma.f64 z z t))) (*.f64 x x))
46.8b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 4 (*.f64 y (*.f64 z z)))) 2)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
37.0b
(*.f64 4 (*.f64 y t))
24.3b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
Compiler

Compiled 51492 to 29880 computations (42% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
0.5b
(pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)
1.4b
(cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))
4.9b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))

series523.0ms (4.4%)

Counts
2 → 96
Calls

2 calls:

486.0ms
(pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)
38.0ms
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))

rewrite17.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
13×add-exp-log_binary64
12×sqrt-prod_binary64
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
Counts
2 → 65
Calls

2 calls:

8.0ms
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
3.0ms
(pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)

simplify167.0ms (1.4%)

Algorithm
egg-herbie
Rules
639×times-frac_binary64
526×associate-/l*_binary64
416×associate-/r*_binary64
355×fma-def_binary64
169×*-commutative_binary64
Counts
161 → 182
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05129569
117208579
254338579

prune873.0ms (7.4%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New5621563
Fresh044
Picked011
Done022
Total5628570
Error
4.6b
Counts
570 → 8
Alt Table
StatusErrorProgram
5.3b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
6.4b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
41.8b
(pow.f64 x 2)
24.5b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3))) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
24.7b
(fma.f64 y (*.f64 4 (/.f64 (-.f64 (*.f64 t t) (pow.f64 z 4)) (fma.f64 z z t))) (*.f64 x x))
46.8b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 4 (*.f64 y (*.f64 z z)))) 2)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
37.0b
(*.f64 4 (*.f64 y t))
24.3b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
Compiler

Compiled 48992 to 28486 computations (41.9% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)))
0.5b
(pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)
1.4b
(cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))
4.9b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))

series169.0ms (1.4%)

Counts
1 → 48
Calls

1 calls:

169.0ms
(*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)))

rewrite97.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
364×cbrt-prod_binary64
205×add-sqr-sqrt_binary64
152×sqrt-prod_binary64
116×cube-prod_binary64
116×unpow-prod-down_binary64
Counts
1 → 208
Calls

1 calls:

23.0ms
(*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)))

simplify291.0ms (2.5%)

Algorithm
egg-herbie
Rules
415×associate-*l*_binary64
412×times-frac_binary64
349×fma-def_binary64
320×associate-/r*_binary64
290×associate-/l*_binary64
Counts
256 → 217
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
055817382
1167716013
2539516013

prune2.7s (22.5%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New123001230
Fresh044
Picked011
Done033
Total123081238
Error
4.6b
Counts
1238 → 8
Alt Table
StatusErrorProgram
5.3b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
6.4b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
41.8b
(pow.f64 x 2)
24.5b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3))) (cbrt.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)))) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
24.7b
(fma.f64 y (*.f64 4 (/.f64 (-.f64 (*.f64 t t) (pow.f64 z 4)) (fma.f64 z z t))) (*.f64 x x))
46.8b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 4 (*.f64 y (*.f64 z z)))) 2)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
37.0b
(*.f64 4 (*.f64 y t))
24.3b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))) 3)) (cbrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
Compiler

Compiled 154637 to 86722 computations (43.9% saved)

regimes2.1s (17.5%)

Accuracy

Total 0.8b remaining (12.9%)

Threshold costs 0.8b (12.9%)

Counts
148 → 1
Compiler

Compiled 76528 to 42509 computations (44.5% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01117
11717
22417
32817
43017
53017

end141.0ms (1.2%)

Compiler

Compiled 299 to 166 computations (44.5% saved)

Profiling

Loading profile data...