algorithme public