function [prob] = viterbone(t,P0,oss,A,C)

 global del;
for j = 1:4
    
% All'istante t==1 mi trovo nella situazione iniziale e associo la 
% prob.iniziale P0. La prob. di essere in uno dei quattro stati viene poi 
% moltiplicata per la prob della matrice C.    
   
    if t==1 
        for i=1:4                      
            del(i,t)=P0(i)*C(i,oss(t));
        end
    else
        % Ricalcolo la prob e lo stato della sequenza per ogni istante 
        % in base al risultato ottenuto all'istante t-1.
        for i=1:4
            vett(i)=del(i,t-1)*A(i,j);
        % Scelgo sempre lo stato con la massima probabilità   
            del(j,t)=max(vett)*C(j,oss(t));
        end
        
    end
    
    
prob(j)=del(j,t);

end

end