Table 1

The pseudocode of the motif extraction algorithm.

Main()
Iterate(m, B, Result)
{
{
Result ← {};
G:l     m' m;
B ← {mi|mi is a cell};
G:2     For each b = Extract(B) with
For each m = Extract(B)
G:3        ((b ~-compatible m'
Iterate(m, B, Result);
          OR (m' ~-compatible b))
Result Result;
G:4              If (m' ~-compatible b)
}
G:5                 mt m' ~ b;

G:6                 If Nodelnconsistent(mt) exit;

G:7                 If (|m'| = |b|) B B - {b};

G:8                 If (|| ≤ K)

G:9                    m' mt;

G:10                    Iterate(m', B, Result);

G:11              If (b ~-compatible m')

G:12                 mt b ~ m';

G:13                 If Nodelnconsistent(mt) exit;

G:14                 If (|m'| = |b|) B B - {b};

G:15                 If (|| ≥ K)

G:16                    m' mt;

G:17                    Iterate(m', B, Result);

G:18              For each r Result with r = m'

G:19                 If (m' is not maximal w.r.t. r) return;

G:20              Result Result ⋃ {m'};

}

Apostolico et al. Algorithms for Molecular Biology 2006 1:4   doi:10.1186/1748-7188-1-4