Algorithmics : the spirit of computing - HAREL (Addison-Wesley, 2004)