Yogi wrote :The fact that this method is called Empty Rectangle seems to focus on the cells that are not possible for the candidate you are interested in, when the way they work is actually about the candidate cells and the shape they are arranged in.
Yogi, you and I are definitely on the same wavelength about the apparently confusing explanations of the so-called Empty Rectangle move. It used to be called a Hinge, which reflected the real issue of the focus digit (call it k) being confined to exactly one row and one column in the Hinge box. In fact, if there are two or three k's in the box, and they are all in one row or one column, there are 3 empty rectangles of K's in the box, but it is not suitable for the Hinge move. How ridiculous is that ?
Here is a method for finding suitable hinge boxes that is suitable for both solver programmers and pattern matching solvers (which I think you are).
1. Count the number of focus digits in the box. It must be 2, 3, 4 or 5.
2. Look for a mini-row in the box (intersection of the box and a row) that has at least one focus digit but not all of the focus digits.
3. Look for a mini-column in the box that has at least one focus digit but not all of the focus digits.
4. Add up the focus digits found in Steps 3 and 4.
5. Check whether the intersection of the mini-row and mini-column has a k or not.
6. If the intersection has a k, and the total k's in the mini-row and mini-column is one more than the number of k's in the box, then the box is a suitable hinge box.
If the intersection has no k, and the total k's in the mini-row and mini-column is equal to the number of k's in the box, then the box is a suitable hinge box.
This method works every time, with no exceptions. And guess what ? There is no mention of empty rectangles at all. They are not necessary. They are merely a distraction.
Well, I guess I've vented my spleen enough for one post. I wish you happy ER hunting, or I should say happy Hinge hunting.