функцию
Function PrevColCor%(z%,i%)
If z=1 Return True
If p(z-1,i)=p(z-1,i+1)
Return True
EndIf
Return False
End Function
в первом методе можно выродить до проверки тождества
p(z-1,i)=p(z-1,i+1)
если матрица слева имеет буферный столбец забитый одинаковыми значениями (в том же б3д можно было сдлать именно так).
Также, используемую в семпле сортировку методом пузырька можно заменить на другую, исходя из априорных данных об упорядоченности.