Old ComputerScientist algorithm trick.
Basically, it's a way of looking for a needle in a haystack: you recursively search the entire haystack (to search some hay, split it in half and search each half), but before searching each bit, you see if you can rule it out a priori (typically, in optimisation problems, by showing that it cannot contain any solution better than the best one found so far).