La maggior parte dei programmi di allineamento multiplo crea gli allineamenti in passi successivi, allineando due sequenze alla volta.
Per esempio, immaginiamo di voler allineare le sequenze:
> seq1
GAAAACCCCCCCCCCC
> seq2
GAAACCCCCCCCCCCC
> seq3
GAAACCCCCCCCTCCC
> seq4
GAAACCCCACCCCCCC
L'algoritmo allinearį le sequenze coppia per coppia: seq1 con seq2, seq3 con seq4, etc.... (il numero di comparazioni varia da algoritmo ad algoritmo).
Dopodiché, utilizzerį gli allineamenti a coppie per generare l'allineamento multiplo.
Il problema di "Once a gap, always a gap" č che se si crea un gap in uno degli allineamenti a coppie iniziali, questo gap rimarrį incluso nell'allineamento multiplo finale.
Per esempio, nel caso delle sequenze 1 e 2 di qui sopra, si creerebbe un gap nella quarta posizione:
GAAAACCCCCCCCCCC
GAAA-CCCCCCCCCCC
Questo gap in realtį č un errore, perché guardando alle altre sequenze, sembra essere piś probabile che una A si sia mutata in C, piuttosto che una delezione. Peró, a seconda di come funziona l'algoritmo, il gap si potrebbe propagare nell'allineamento finale:
GAAAACCCCCCCCCCC
GAAA-CCCCCCCCCCCC
GAAA-CCCCCCCCTCCC
GAAA-CCCCACCCCCCC
L'esempio che ho fatto forse non č perfetto, peró se hai dubbi chiedi pure.