Details

Time bar (total: 6.0s)

analyze2.0s (33%)

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 24 to 16 computations (33.3% saved)

sample2.3s (37.9%)

Symmetry

(sort x y)

(sort z t)

(sort a b)

(sort c i)

Results
1.4s8256×body128valid
847.0ms5709×body128invalid
Compiler

Compiled 71 to 47 computations (33.8% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
58×fma-def_binary64
24×associate-+l+_binary64
22×associate-+r+_binary64
17×+-commutative_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01620
12816
26116
310516
412116
512316
612316

prune6.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
Compiler

Compiled 75 to 42 computations (44% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
0.0b
(fma.f64 x y (*.f64 z t))
0.0b
(fma.f64 a b (fma.f64 x y (*.f64 z t)))

series59.0ms (1%)

Counts
3 → 216
Calls

3 calls:

30.0ms
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
19.0ms
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
10.0ms
(fma.f64 x y (*.f64 z t))

rewrite2.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
3 → 30
Calls

3 calls:

0.0ms
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0ms
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
0.0ms
(fma.f64 x y (*.f64 z t))

simplify111.0ms (1.8%)

Algorithm
egg-herbie
Rules
864×unswap-sqr_binary64
587×fma-def_binary64
579×associate-+r+_binary64
555×associate-+l+_binary64
395×associate-*l*_binary64
Counts
246 → 75
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0612908
1952833
22242833
39252833
433162833
534612833
649722833

prune56.0ms (0.9%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New72375
Fresh000
Picked101
Done000
Total73376
Error
0.0b
Counts
76 → 3
Alt Table
StatusErrorProgram
0.0b
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
18.6b
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
27.4b
(fma.f64 c i (fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))
Compiler

Compiled 1345 to 294 computations (78.1% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
0.0b
(fma.f64 a b (fma.f64 t z (*.f64 c i)))

series47.0ms (0.8%)

Counts
2 → 168
Calls

2 calls:

30.0ms
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
17.0ms
(fma.f64 a b (fma.f64 t z (*.f64 c i)))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
2 → 20
Calls

2 calls:

0.0ms
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
0.0ms
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))

simplify62.0ms (1%)

Algorithm
egg-herbie
Rules
742×associate-+r+_binary64
693×associate-+l+_binary64
597×fma-def_binary64
389×associate-*l*_binary64
318×associate-*r*_binary64
Counts
188 → 46
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0482448
1772390
22032390
39642390
450832390

prune31.0ms (0.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New45146
Fresh112
Picked011
Done000
Total46349
Error
0.0b
Counts
49 → 3
Alt Table
StatusErrorProgram
0.0b
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
14.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
27.4b
(fma.f64 c i (fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))
Compiler

Compiled 793 to 163 computations (79.4% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))

series18.0ms (0.3%)

Counts
1 → 72
Calls

1 calls:

18.0ms
(fma.f64 y x (fma.f64 t z (*.f64 a b)))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 y x (fma.f64 t z (*.f64 a b)))

simplify101.0ms (1.7%)

Algorithm
egg-herbie
Rules
856×distribute-lft-in_binary64
856×distribute-rgt-in_binary64
738×unswap-sqr_binary64
622×distribute-rgt-out_binary64
293×fma-def_binary64
Counts
82 → 29
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
026916
140891
2108891
3458891
42769891
52858891
63195891
73568891
84046891
94162891
105253891

prune21.0ms (0.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New28129
Fresh011
Picked011
Done011
Total28432
Error
0b
Counts
32 → 4
Alt Table
StatusErrorProgram
0.0b
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
14.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
27.4b
(fma.f64 c i (fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))
28.1b
(fma.f64 t z (*.f64 y x))
Compiler

Compiled 478 to 130 computations (72.8% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x y (*.f64 z t))
0.0b
(fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))))
0.3b
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))
0.5b
(sqrt.f64 (fma.f64 x y (*.f64 z t)))

series104.0ms (1.7%)

Counts
3 → 136
Calls

3 calls:

75.0ms
(sqrt.f64 (fma.f64 x y (*.f64 z t)))
18.0ms
(fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))))
10.0ms
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))

rewrite12.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
29×add-sqr-sqrt_binary64
21×sqrt-prod_binary64
19×pow1_binary64
12×*-un-lft-identity_binary64
12×add-cube-cbrt_binary64
Counts
3 → 78
Calls

3 calls:

5.0ms
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))
1.0ms
(sqrt.f64 (fma.f64 x y (*.f64 z t)))
0.0ms
(fma.f64 a b (*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))))

simplify102.0ms (1.7%)

Algorithm
egg-herbie
Rules
405×associate-/r*_binary64
395×associate-+l+_binary64
346×fma-neg_binary64
338×unswap-sqr_binary64
288×*-commutative_binary64
Counts
214 → 129
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01312945
12912767
29042705
322512677
449132677
550752677

prune107.0ms (1.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2011202
Fresh101
Picked101
Done022
Total2033206
Error
0b
Counts
206 → 3
Alt Table
StatusErrorProgram
0.0b
(fma.f64 y x (fma.f64 a b (fma.f64 t z (*.f64 c i))))
14.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
0.0b
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
Compiler

Compiled 5728 to 1408 computations (75.4% saved)

regimes745.0ms (12.3%)

Accuracy

Total 0.0b remaining (93%)

Threshold costs 0.0b (93%)

Counts
49 → 1
Compiler

Compiled 15306 to 10142 computations (33.7% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01316
11416
21416

end128.0ms (2.1%)

Remove

(sort c i)

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 257 to 155 computations (39.7% saved)

Profiling

Loading profile data...