Details

Time bar (total: 7.7s)

analyze5.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
99.8%0%0.2%1
Compiler

Compiled 18 to 12 computations (33.3% saved)

sample1.6s (20.9%)

Results
1.3s8256×body128valid
Compiler

Compiled 53 to 35 computations (34% saved)

simplify119.0ms (1.6%)

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

prune6.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
2.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
3.2b
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) (-.f64 (*.f64 z z) t)))
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
Compiler

Compiled 95 to 57 computations (40% saved)

localize16.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series74.0ms (1%)

Counts
2 → 72
Calls

2 calls:

64.0ms
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
10.0ms
(-.f64 t (*.f64 z z))

rewrite8.0ms (0.1%)

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:

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

simplify130.0ms (1.7%)

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

prune86.0ms (1.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New60464
Fresh101
Picked011
Done000
Total61566
Error
1.9b
Counts
66 → 5
Alt Table
StatusErrorProgram
22.6b
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
22.8b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
21.9b
(+.f64 (*.f64 4 (*.f64 y t)) (pow.f64 x 2))
22.3b
(*.f64 4 (*.f64 y (-.f64 t (*.f64 z z))))
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
Compiler

Compiled 1251 to 491 computations (60.8% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 4 (*.f64 y t))
0.8b
(+.f64 (*.f64 4 (*.f64 y t)) (pow.f64 x 2))

series24.0ms (0.3%)

Counts
2 → 9
Calls

2 calls:

19.0ms
(+.f64 (*.f64 4 (*.f64 y t)) (pow.f64 x 2))
6.0ms
(*.f64 4 (*.f64 y t))

rewrite17.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
add-log-exp_binary64
associate-*l*_binary64
Counts
2 → 34
Calls

2 calls:

8.0ms
(+.f64 (*.f64 4 (*.f64 y t)) (pow.f64 x 2))
7.0ms
(*.f64 4 (*.f64 y t))

simplify140.0ms (1.8%)

Algorithm
egg-herbie
Rules
725×fma-neg_binary64
506×associate-*l*_binary64
372×associate-*r*_binary64
288×distribute-rgt-in_binary64
268×distribute-lft-in_binary64
Counts
43 → 46
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
065477
1168448
2519441
31733441
43834441
54897441
64999441
74939441

prune69.0ms (0.9%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New45146
Fresh033
Picked101
Done011
Total46551
Error
1.9b
Counts
51 → 5
Alt Table
StatusErrorProgram
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
32.6b
(exp.f64 (log.f64 (fma.f64 x x (*.f64 4 (*.f64 y t)))))
22.6b
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
22.8b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
22.3b
(*.f64 4 (*.f64 y (-.f64 t (*.f64 z z))))
Compiler

Compiled 919 to 541 computations (41.1% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 4 (*.f64 y (-.f64 t (*.f64 z z))))
0.0b
(-.f64 t (*.f64 z z))
2.9b
(*.f64 y (-.f64 t (*.f64 z z)))

series41.0ms (0.5%)

Counts
2 → 72
Calls

2 calls:

21.0ms
(*.f64 4 (*.f64 y (-.f64 t (*.f64 z z))))
19.0ms
(*.f64 y (-.f64 t (*.f64 z z)))

rewrite20.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
25×distribute-lft-in_binary64
25×distribute-rgt-in_binary64
18×prod-diff_binary64
14×add-sqr-sqrt_binary64
11×*-un-lft-identity_binary64
Counts
2 → 75
Calls

2 calls:

8.0ms
(*.f64 4 (*.f64 y (-.f64 t (*.f64 z z))))
5.0ms
(*.f64 y (-.f64 t (*.f64 z z)))

simplify230.0ms (3%)

Algorithm
egg-herbie
Rules
379×distribute-rgt-in_binary64
358×distribute-lft-in_binary64
323×*-commutative_binary64
300×distribute-lft-neg-out_binary64
298×distribute-rgt-neg-out_binary64
Counts
147 → 117
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01432159
12991973
29221865
326641811
447251811
549841811
649951811
747871811

prune306.0ms (4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1453148
Fresh123
Picked101
Done011
Total1476153
Error
0.5b
Counts
153 → 6
Alt Table
StatusErrorProgram
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
22.7b
(*.f64 4 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z)))) (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z))))) (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z))))))
22.7b
(*.f64 4 (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (-.f64 t (*.f64 z z)))))
22.6b
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
22.8b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
40.3b
(*.f64 4 (*.f64 (*.f64 y (+.f64 (sqrt.f64 t) z)) (-.f64 (sqrt.f64 t) z)))
Compiler

Compiled 2636 to 935 computations (64.5% saved)

localize22.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 t (*.f64 z z))
0.1b
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
17.5b
(sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))

series325.0ms (4.2%)

Counts
2 → 80
Calls

2 calls:

287.0ms
(sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)))
38.0ms
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))

rewrite20.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt_binary64
21×sqrt-prod_binary64
18×pow1_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
Counts
2 → 68
Calls

2 calls:

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

simplify206.0ms (2.7%)

Algorithm
egg-herbie
Rules
617×cancel-sign-sub-inv_binary64
264×fma-neg_binary64
249×sub-neg_binary64
201×associate-*r*_binary64
187×unswap-sqr_binary64
Counts
148 → 147
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02545290
17844698
233384601
350584601

prune644.0ms (8.4%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New3460346
Fresh044
Picked011
Done011
Total3466352
Error
0.5b
Counts
352 → 6
Alt Table
StatusErrorProgram
2.4b
(fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))
22.7b
(*.f64 4 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z)))) (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z))))) (cbrt.f64 (*.f64 y (-.f64 t (*.f64 z z))))))
22.7b
(*.f64 4 (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (-.f64 t (*.f64 z z)))))
22.6b
(*.f64 (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (sqrt.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
22.8b
(cbrt.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x)) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))) (fma.f64 y (*.f64 4 (-.f64 t (*.f64 z z))) (*.f64 x x))))
40.3b
(*.f64 4 (*.f64 (*.f64 y (+.f64 (sqrt.f64 t) z)) (-.f64 (sqrt.f64 t) z)))
Compiler

Compiled 15171 to 7351 computations (51.5% saved)

regimes3.3s (42.9%)

Accuracy

Total 2.6b remaining (48.3%)

Threshold costs 0b (0%)

Counts
152 → 1
Compiler

Compiled 28927 to 19352 computations (33.1% saved)

simplify3.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

end243.0ms (3.2%)

Compiler

Compiled 191 to 100 computations (47.6% saved)

Profiling

Loading profile data...