It was presented by Brams and Kilgour and Klamler[1] and simplified and extended by Aziz.
[2] The undercut procedure requires only the following weak assumptions on the people: It is not assumed that agents have responsive preferences.
The divide-and-choose protocol requires one person to cut the resource to two equal pieces.
In the worst case, the agents may have to evaluate all possible bundles, so the run-time might be exponential in the number of items.
This is not surprising, since the undercut procedure can be used to solve the partition problem: assume both agents have identical and additive valuations and run the undercut procedure; if it finds an envy-free allocation, then this allocation represents an equal partition.
The undercut procedure can also work when the agents have unequal entitlements.
This phase may make the division procedure more efficient: the contested pile may be smaller than the original set of items, so it may be easier to calculate and report the almost-equal-cuts.