Per tal d'establir a on hi ha un senyal de splicing utilitzarem matrius de pesos (position weight matrices-PWMs): una pels senyals dels donors i una altra pels senyals dels acceptors. Aquestes matrius estaran enregistrades en fitxers de text d'un format determinat per tal que el nostre programa pugui llegir-les.
Considerem que tenim una matriu de pesos per identificar un senyal de splicing, donor o acceptor, que denotarem per M. Assumim que aquesta matriu està organitzada en 4 files, una per a cada nucleòtid A,C,G,T i m columnes, una per a cada posició del senyal, on les posicions aniran desde 0 fins a m-1. Ens referirem a una posició particular de la matriu indexant primer les files, i després les columnes. D'aquesta manera M(C-5) es refereix al pes associat al nucleòtid C quan el trobem a la sisena posició dins el senyal.
Considerem que tenim una seqüència emmagatzemada en un vector s, tal que si la seqüència té n bases, el vector estarà indexat per les posicions 0 a n-1, i ens referirem a una base en particular com, per exemple, s(7) que especifica la vuitena base de la seqüència emmagatzemada al vector s. D'aquesta manera, la puntuació d'un possible senyal de splicing serà calculada sumant els pesos de la matriu que corresponen a un tros de seqüència que comença a la posició p i que estem examinant com a possible senyal de splicing:
Donada una seqüència amb n bases podrem puntuar un màxim de n-m+1 possibles senyals de splicing. Decidirem quins d'aquests senyals poden ser realment considerats com a tals d'acord amb un llindar en la puntuació, tal que només aquells trossos de seqüència que donen una puntuació superior al llindar seran considerats com a senyals de splicing.
Aquesta divergència es determina mitjançant la ponderació dels codons observats a la seqüència que analitzem, d'acord amb una taula de l'ús dels codons a les regions codificants de l'organisme que estem analitzant. Donat un fragment de seqüència que es troba entre dos senyals de splicing, contra més codons observem que, d'acord amb la taula, apareixen freqüentment en regions codificants, direm que més gran serà el seu potencial codificant, i per tant serà més plausible que aquest fragment de seqüència correspongui a un exó.
Considerem una taula d'ús de codons que denotarem per T, i que estarà indexada pels codons de forma que T(ACT) es referirà a la proporció, en l'interval [0-1], d'ús del codó ACT en les regions codificants de l'organisme del qual s'ha derivat aquesta taula T. Assumim que tenim una seqüència emmagatzemada en format FASTA, i que volem calcular el biaix codificant d'una regió de q bases que va desde la posició p fins a la posició p+q-1 al vector s que emmagatzema la seqüència. Aquest biaix el calcularem com la raó de versemblança (o likelihood ratio) entre les proporcions esperades, que obtenim a partir de T, dels codons observats, i l'assumpció d'uniformitat per la qual la proporció esperada d'un codó qualsevol és 1/64:
Els productes a l'expressió (1) donaran com a resultat números extremadament petits, per tant haurem de treballar amb el logaritme de l'expressió anterior.
Quan predim un exó cal anotar la seva pauta de lectura, a més a més de les corresponents posicions d'inici i final. Com que aquesta pauta ve determinada per la divisió dels nucleòtids en codons, caldrà primer determinar quines divisions en codons són correctes. Una divisió correcta en codons és aquella en què només podem trobar un codó de stop com a últim codú. Per tant caldrà trobar primer tots els possibles codons de stop i això ens determinarà el que es coneix com open reading frames (ORFs), o pautes obertes de lectura, que no són res més que parts de la seqüència que al dividir-les en codons, només podem trobar un codó de stop com a últim codú. Un cop tenim els ORFs, podrem anotar la pauta de lectura als exons que hem predit dins aquest ORF.
A més a més, respecte a l'exó d'inici, i a l'exó de final, del gen (coneguts com a First i Terminal, respectivament) cal tenir en compte que el primer estarà determinat per un senyal de donor aparellat amb un codó d'inici (ATG), mentre que el segon estarà determinat per un senyal de acceptor aparellat amb un codó de stop (TAA, TGA, TAG). Idealment, a part d'exons interns, hauríem d'intentar predir exons d'inici (First) i de final (Terminal).