Add binary_search function