function checkReductionsSignificance(actuals, algorithmResults, algorithmResultsWithPruning, currentErrorMeasure)

% define a variable to keep the MMRE results for each algorithm
MREResults = -1 * ones(size(algorithmResults,1),size(actuals,1));
MREResultsWithPruning = -1 * ones(size(algorithmResults,1),size(actuals,1));

% process each algorithm's results to find the MRE values
for i = 1:size(algorithmResults,1)
   MREResults(i,:) = abs(actuals' - algorithmResults(i,:))./actuals';
   MREResultsWithPruning(i,:) = abs(actuals' - algorithmResultsWithPruning(i,:))./actuals';
end


% define win tie loss variables
win = zeros(size(algorithmResults,1),1);
tie = zeros(size(algorithmResults,1),1);
loss = zeros(size(algorithmResults,1),1);

% start calculating win tie loss values
for i = 1:size(algorithmResults,1)
    eval(['[P,H] = ranksum(MREResults(',num2str(i),',:),MREResultsWithPruning(',num2str(i),',:));']);
    if H == 0   % if they are the same
        eval(['tie(',num2str(i),') = tie(',num2str(i),') +1;']);
    else
        % calculate mdiean values
        eval(['mdmrei = median(MREResults(',num2str(i),',:));']);
        eval(['mdmrej = median(MREResultsWithPruning(',num2str(i),',:));']);
        if mmrei < mmrej
            eval(['win(',num2str(i),') = win(',num2str(i),') -1;']);
            eval(['loss(',num2str(i),') = loss(',num2str(i),') +1;']);
        else
            eval(['win(',num2str(i),') = win(',num2str(i),') +1;']);
            eval(['loss(',num2str(i),') = loss(',num2str(i),') -1;']);
        end
    end
end

[currentErrorMeasure ': win: ' num2str(win') ' tie: ' num2str(tie') ' loss: ' num2str(loss')]

end