SUDOKU Set Theory

Peter van der Stok


The picture above shows me in "les Alberes", the most eastern part of the french Pyreneans, north of the vineyards of Banyuls-sur-Mer with a view on the mediterranean sea and the lighthouse of Cap Bear.

Below follows my analysis of the sudoku game. I used Set Theory to describe the properties of the game and a part of the strategies known to solve the game. Some strategies are in my opinion too complex for solving the game by hand. They are not discussed on this site.

Hope you like it.

The web site contains the following sections, explained in the introduction:

Introduction
Example Run
Terminology and Rules
Basic Strategies
Asymmetry Strategies
Chain Strategies
Popular Patterns
Glossary
Acknowledgements

Introduction

The sudoku game and its solution strategies are described in many websites and puzzle publications. Especially, the websites sudokuwiki.org, hodoku.sourceforge.net, and sudoku.megastar.fr present to my knowledge a rather complete description of the game and its solution strategies. This document takes a set theoretic approach to the sudoku game and its solution strategies. In the Example Run section a straightforward walk through a sudoku game is presented. It uses a simple rule (proven in Basic Strategies section) to arrive at a solution while using a minimum number of pencil marks. The solution rule can be applied to many sudoku puzzles ( level 7 or lower) to come to a satisfactory solution of the puzzle. In the Terminology and Rules section the notation and basic sudoku rules are presented to allow the explanation and proof of many sudoku solution strategies with the aid of the mathematical Set notation. In the Basic Strategies section and beyond the Set theoretical notation is used to introduce advanced sudoku solution strategies and prove them correct. In "formulas" sections formulas are joint to show that a completely formal description of the proof of sudoku strategies using Set theory is possible. In spite of the large number of solution strategies there are still games that can only be solved by searching through the whole solution space and cannot be solved with the known strategies. Also claims are made that some strategies are part of other proposed strategies without being clear if the claims are complete or possibly faulty. The Popular Patterns section gives insight in the more popular patterns and associated solution strategies and clarifies the relations between these solution strategies and the lemmas of the Terminology and Rules, Basic Strategies and Chain Strategies sections .

Writing this document has taught me that puzzles which need very elaborate patterns to solve the puzzle are far removed from the complexity sufferable by a sudoku adept who wants to stimulate his brains and is looking for entertainment. For these adepts the Example Run section is ideal. Readers interested in advanced sudoku strategies may find this document useful to think out other solutions strategies which are not a brute force solution space search. The lemmas formulated in this document constitute the basis of a computer program to solve sudoku games. In this respect this document is successful as the ensuing program comes close to solving as many sudoku examples as the solver in sudokuwiki.org. The program is available as an app that is in testing phase. If you want to participate in the testing send me an e-mail with your google account name and your google email address. Send to: info at the domain vanderstok.tech

Example Run

This section is composed of two subsections:
Giving Names identifies the components of the sudoku board and names them.
Solution Example uses the names to guide you through a step for step example run of the solution of a sudoku game.

Giving Names

Understanding the example run needs some terminology. Figure 1 is used to introduce the game. A sudoku board consists of 9 rows and 9 columns. In the column numbers are shown at the top of the board and the row numbers are shown on the left side of the board. The intersection of a column and a row defines a cell. At the left topmost corner cell C( 1, 1) exists with column number 1 and row number 1. The cells at the top row extends from column 1 to column 9 including the cells C(1,1) to C( 9, 1). Cells can contain a value ranging from 1 to 9. In addition to the rows and columns, 9 blocks are defined consisting of 9 cells. The blocks are identified in Figure 1 with B1 to B9.

Figure 1

All cells in column x are denoted with the symbol Kx. For example, all cells in column 7 are called K7. All cells in row y are denoted with the symbol Ry. For example all cells in row 4 are called R4.
The game starts with a sudoku board in which values are attributed to a set of cells. The aim is to find a solution by assigning values in the range from 1-9 to all remaining cells such that:
Pencil marks denote possible values to be assigned to a cell. They are filled into cells when knowledge is present to restrict solutions. An important concept to help the solution is the sub area composed of the cells belonging to a given column and a given block or belonging to a given row and a given block. In Figure 1, a sub area is shown composed of the cells in row R6 and block B4. Pencil marks with values ranging from 1 to 9 are used to pencil in tentative solutions. A pencil mark in a cell means that the value of the pencil mark may be assigned to the cell. A cell may contain several pencil marks. During the solution process in the next paragraph, pencil marks are penciled in the cells of a sub area. When the sub area is composed of a row Rx and a block Bi, the pencil marks can not be assigned as values to other cells in the block Bi or row Rx. The same is true for a sub area composed of a column Ky and a block Bj. The validity of this rule is explained in Basic Strategies section.

Solution Example

This section shows an example run to solve a game suggested in a Dutch newspaper the "VolksKrant" of 7 May 2026 with reference: Heavy Nr 3968. The chosen solution strategy is to inspect first all rows in groups of 3 and consecutively all columns in groups of 3 to reduce the number of cells to which a given value can be assigned. First the upper three rows R1, R2, and R3 are inspected to exploit relations between the three blocks B1, B2, and B3. The relation to be used is: When a given value is present in two rows in two horizontally aligned blocks then this value can only be assigned to the subset defined by the remaining row and block.

Figure 2, Volkskrant example

In Figure 2 the original game proposal is shown as published in the "Volkskrant". Starting off with cell C( 1, 1) in row R1, value 8 is present for further inspection. Value 8 is present in row R1 of block B1 and row R2 of block B2 and can only be set in the subset defined by row R3 and Block B3. The value 8 cannot be assigned to cells in column K9 because value 8 is already assigned to cell C( 9, 9) in column K9. Consequently, only column K8 in block B3 remains. The value 8 must be assigned to cell C( 8, 3). This is shown in the left side of Figure 3 below.

Figure 3

The next cell C( 2, 1) with the value 5 needs to be considered. Value 5 is not assigned to cells in block B2 and block B3, and is of no use at the moment. The next cell C( 2,2) contains the value 6. In block B2 value 6 is assigned to C( 5, 1), consequently the value 6 can only be assigned to cells in the sub area defined by row R3 and block B3. The only empty cell in the sub area is C( 9,3) and the value 6 is assigned to cell C( 9, 3) ( see Figure 3 right). The next and last cell C( 4, 1) in block B1 contains the value 7. Value 7 is also present in cell C( 4,1) of row R1. Row R8 is excluded by the presence of value 7 in cell C( 8, 6). Consequently, the value 7 can only be assigned to cells in the sub area defined by row R2 and block B3. The pencil mark 7 can be penciled into cells C( 7,2) and C( 9,2), as shown in the left side of In Figure 4.

Figure 4

Moving to block B2, the numbers 7, 6 and 8 are of no interest because they have been inspected while looking at block B1. Moving to block B3 the values 4 and 9 do not lead to sub areas with cells into which pencil marks can be penciled. Returning to block B1, the value 5 in cell C( 2, 1) has become interesting. Given that the sub area defined by R3 and B3 is completely filled, the value 5 can only be assigned to cells in row R2 of block B3. The pencil mark 5 is penciled into the sub area defined by row R2 and block B3 (shown in the right side of Figure 4).

Figure 5

After penciling pencil mark 5 into cells C(7, 2), C( 8,2) and C( 9,2), rows R1 and R2 are occupied by pencil mark 5 and row R3 remains. The pencil mark 5 can be penciled into the sub area defined by row R3 and block B2. These pencil marks are shown in the left side of Figure 5). After rows R1, R2, and R3, the rows R4, R5 and R6 are inspected, starting in block B4. Cell( 2, 4) contains the value 8. Moving to block block B6, the value 8 occupies columns K8 and K9 and row R4. Consequently the value 8 is assigned to cell C( 7,6) of block B6. (see the right side of Figure 5).

Figure 6

After this assignment, the value 8 occupies row R4 and R6. Value 8 can be penciled into cells C(4, 5) and C( 5,5) of the subarea defined by row R5 and block B5 with exception of column K6. This is shown in the left side of Figure 6. Continuing the inspection of Block B4, the cell C(3, 5) with value 4 is interesting. Value 4 occupies row R5 in block B4 and row R6 in block B5. Consequently, the pencil mark 4 can be penciled into cells of the sub area defined by Block B6 and row R4. Given that column K8 is occupied by the value 4, the pencil mark 4 is finally penciled into the cells C( 7, 4) and C( 9, 4). (see right side of Figure 6.)

Figure 7

In the last three rows R7, R8 and R9, the value 9 in cell C( 4, 8) is interesting. In block B9 column K7 is occupied by value 9. This leaves the sub area defined by row R7 an block B9. The pencil mark 9 can be penciled into cells C( 8, 7) and C( 9, 7). Given that now rows R7 and R8 are occupied by value 9, the pencil mark 9 can be penciled into cells C( 1,9) and C( 3,9) of the sub area defined by row R9 and block B7. (See the left side of Figure 7.) Inspecting rows R7, R8, and R9, the cell C(9, 9) contains the value 8 in row R9, and the columns K1 and K2 also contain the value 8, therefore cell C( 3,8) is the only cell in block B7 to which value 8 can be assigned (left side of Figure 7).

In rows R4, R5, and R6 we have forgotten cell C( 5, 4)) with the value 7 in block B5. Given that the value 7 is also present in row R6 of block B6, the pencil mark 7 can be penciled into the cells C( 1, 5) and C( 2,5) , as shown in the right side of Figure 7. The assignment of value 8 to cell C( 3, 8), allows pencilling of pencil mark 8 into the sub area defined by block B8 and row R7. (See the right side of Figure 7.) After inspection of the rows, the columns need to be inspected. The first cell in block B1 that leads to penciling in pencil marks is cell C( 2, 2) with value 6. In block B7 only column K1 allows the assignment of value 6. Consequently, pencil mark 6 can be penciled into the sub area defined by block B7 and column K1 with the exception of row R9 occupied by value 6 in cell C( 8, 9). Because columns K1 and K2 are occupied by value 6, the pencil mark 6 also can be penciled into the sub area defined by column K3 and block B4. (see right side of Figure 7.)

Figure 8

Moving to column K9, the next cell of interest is cell C( 9, 3) with the value 6. Given that column K8 also contains value 6, the value 6 must be assigned to cell C( 7, 4). This assignment removes the pencil mark 4 from cell C( 7, 4). Only one cell C( 9, 4) remains in block B6 with pencil mark 4. As consequence cell C( 9, 4) must be assigned the value 4. Another consequence is that the pencil mark 4 can be penciled into cells C( 7, 8) and C( 7,9), as shown in the left part of Figure 8. After systematically inspecting the rows and columns, the next phase is looking at the individual cells to determine if they warrant an assignment or penciling in this stage of the game. This is done by inspecting cells in the rows or columns with the lowest number of unassigned cells. For example, row R9 can be inspected. By trying to assign the value 3 to any of the cells in row R9, it transpires that the value 3 cannot be assigned to cells C( 4, 9) and C( 7, 9), which leaves penciling of the pencil mark 3 into the cells of the sub area defined by row R9 and block B7. The pencil mark 3 is penciled into the cells C( 1, 9) and C( 3, 9). In cells C( 1, 9) and C( 3, 9) we have a pair of cells into which a pair of pencil marks is penciled . No other pencil marks can be penciled into these two cells. The result is shown in the right part of Figure 8.

Figure 9

Rows R9 and R7 contain the value 3. The pencil mark 3 can be penciled into the sub area defined by block B8 and row R8. These are the cells C( 6, 8) and C( 5, 8). In block B4, the value 6 must be assigned to cell C( 3, 6) because the pencil mark 6 in cell C(3, 4) has been removed by assigning value 6 to cell C( 7, 4). In block B5 the pencil mark 6 is penciled into the cells C( 4, 5) and C( 6, 5) in the sub area defined by block B5 and row R5. The presence of value 6 in column K5 prevents the penciling of pencil mark 6 into cell C( 5, 5). This is shown in the left part of Figure 9. Inspection of the value 5 in column K2 shows that in block B7 a pencil mark 5 can only be penciled into the cells in row R1. Consequently, the pencil mark 5 is penciled into the sub area defined by column K1 and block B7. In block B4, the pencil mark 1 can only be penciled into the cells C( 1,5 ) and C( 1, 6) of the sub area defined by column K1 and block B4, because value 1 occupies row R4 and column K2. Given that the value 1 now occupies columns K1 and K2, pencil mark 1 can be penciled into the sub area defined by block B1 and column K3. The assignments are shown in the right side of Figure 9.

Figure 10

The sub area defined by column K2 and block B7 is left open. The remaining pencil marks 4 and 7 are penciled into cells C( 2, 7) and C( 2, 8). Because value 7 occupies column K2, the pencil mark 7 must be removed from cell C( 2, 5). Only one pencil mark 7 remains in cell C( 1, 5) of row R5. Therefore the value 7 is assigned to cell C( 1, 5). The removal of pencil mark 1 from cell C( 1, 5) signifies that the value 1 must be assigned to cell C( 1, 6). Value 1 now occupies rows R6 and R4. Pencil mark 1 is penciled into the sub area defined by block B6 and row R5. These assignments are shown in the left part of Figure 10.

Value 4 occupies columns K2 and K3. Therefore, pencil mark 4 is penciled into the sub area defined by column K1 and block B1. ( see left side of Figure 10.) Looking at column K2, it transpires that the value 9 cannot be assigned to cell C( 2, 3) and value 9 can only be assigned to cells C( 2, 5) and C( 2, 6). Consequently, pencil mark 9 is penciled into the sub area defined by block B4 and column K2. ( See the right side of Figure 10.)

Figure 11

Inspecting row R4 it transpires that value 9 cannot be assigned to cells C( 1, 4) and C( 4, 4). Value 9 must be assigned to cell C( 8, 4). This assignment removes pencil mark 9 from cell C( 8, 7), and value 9 must be assigned to cell C( 9, 7). This is shown in the left side of Figure 11.

In row R4 value 3 cannot be assigned to cell C( 4, 4). Consequently, value 3 can only be assigned to cell C( 1, 4) and finally value 2 must be assigned to cell C( 4, 4). ( See right side of Figure 11.) Value 2 occupies block B5 and column K4; thus, pencil mark 2 can be penciled into the sub area defined by block B2 and column K6. ( See right side of Figure 11.)

Figure 12

Value 2 occupies rows R4 and R5, which means that value 2 must be assigned to cell C( 2, 6). The remaining pencil mark 9 of cell C( 2, 5) must be assigned as value to cell C( 2, 5). The value 3 must be assigned to the remaining cell C( 2, 3) in column K2. The value 2 occupies columns K2 and K3, thus the pencil mark 2 must be penciled into the sub area defined by column K1 and block B1. In the same way the pencil mark 9 is penciled into the sub area defined by column K3 and block B1. The presence of value 9 in rows R4 and R5 means that value 9 is assigned to cell C( 6, 6). Cell C( 9, 6) is the remaining cell in row R6, and value 5 is the remaining value of row R6. Thus the value 5 is assigned to the cell C( 9, 6). Finally the pencil mark 3 is penciled into the sub area defined by row R5 and block B6. The presence of value 5 in rows R4 and R6 has as consequence that pencil mark 5 is penciled into the sub area defined by block B5 and row R5. All these pencil marks and assignments are shown in the left side of Figure 12.

The presence of value 9 in row R3 and columns K4 and K6, means that value 9 must be assigned to cell C( 5,2). Consequently, value 9 must also be assigned to cell C( 3, 1). Because the pencil mark 1 in cell ( 3, 2) is the only remaining one in the sub area, the value 1 is assigned to cell C( 3, 2). The occupation of row R2 by value 1 has as consequence that the pencil mark 1 is penciled into the sub area defined by row R1 and block B3. Consequently, the pencil mark 1 is also penciled into the sub area defined by row R3 and block B2. The presence of value 7 in column K8 and in row R9 means that pencil mark 7 can be penciled into the sub area defined by row R8 and block B9. The presence of value 7 in row R8 and row R9 has as consequence that value 7 is assigned to cell C( 2, 7). Value 4 is assigned to cell C( 2, 8) because 4 is the remaining pencil mark in the sub area defined by column K2 and block B7. This assignment removes the pencil mark 4 from cell C( 7, 8). All changes are shown in the right side of Figure 12.

Figure 13

Inspecting block B2, we see that the value 3 occupies column K4 and row R3. This means that the value 3 must be assigned to the only remaining cell C( 6, 1). The only cell in row R1 to which the value 2 can be assigned is cell C ( 9, 1). Consequently, the value 2 is assigned to cell C( 9,1) and value 1 must be assigned to cell C( 7, 1). Pencil mark 2 is removed from cell C( 9, 2). These modification are shown in the left side of Figure 13. In column K6 the value 2 can only be assigned to cell C( 6,3) because value 2 occupies columns K5 and K4, thus necessitating the assignment of the value 2 to cell C( 6, 3). Given that all numbers with exception of number 4 are assigned to block B2, value 4 must be assigned to cell C( 4, 2). These assignments are shown in the right side of Figure 13.

Figure 14

Value 4 occupies row 8 and columns K4 and K5. This singles out cell C( 6, 7), and value 4 is assigned to cell C 6, 7). Inspecting row R9, it transpires that value 4 can only be assigned to cell C( 7, 9) and consequently, the remaining value 5 in row R9 must be assigned to cell C( 4, 9). The removal of pencil mark 5 from cell C( 4, 3) by the assignment of value 5 to cell C( 4, 9) leads to the assignment of value 5 to cell C( 5, 3). Value 5 occupies columns K4 and K5, and thus value 5 must be assigned to cell C( 6, 5). The latter assignment removes pencil marks 5 from cells C( 5, 5) and C( 4, 5). These changes are shown in the left side of Figure 14.

The value 1 must be assigned to cell C( 4, 3). Similarly, the value 1 must be assigned to cell C( 5, 7), and value 6 must be assigned to cell C( 6, 8). Cell( 4,7) is the remaining unassigned cell in block B8 which leads to the assignment of value 8 to cell C( 4, 7). ( See the right side of Figure 14.)

Figure 15

The presence of value 6 in rows R8 and R9 forces the assignment of value 6 to cell C( 1, 7), and the assignment of value 5 to cell C( 1, 8) as last remaining unassigned cell of block B7. Value 5 must be assigned to cell C( 8, 7) and consecutively value 5 must be assigned to cell C( 7, 2). The last unassigned cell in column K7 is cell C( 7, 8) which necessitates the assignment of value 7 to cell C( 7, 8). (left side of Figure 15.)

It is now quite straightforward to fill in the values into the remaining unassigned cells leading to the solution in the right side of Figure 15.

Terminology and Rules

This section is divided in two subsections:
The Presentation of Sudoku Board section identifies all components of the sudoku board and the rules which govern the sudoku board.
The Formulas section formalizes the rules of the former section with mathematical formulas based on Set Theory.

Presentation of Sudoku Board

This section introduces the terminology and sudoku rules used throughout this document.

A Sudoku board is a 9x9 matrix. The board is subdivided into 3 types of partially overlapping areas: a block, a row, and a column. The board contains 9 columns, 9 rows, and 9 blocks identified with the numbering shown in Figure 1 repeated. An area is a set of 9 cells. A cell C(k, r) is uniquely identified by the pair column number and row number ( k, r), with 0 < k, r < 10. The block number (b) is derived from the column- and row- numbers by the formula:
b = BF(k, r) = 1+⌊ (k-1)/3⌋ +⌊ (r-1)/3⌋ *3.
Consequently, any cell is part of a row-, column- or block-area, notated with Rx, Kx, and Bx respectively and area number x. A subarea SA (Bb, Kk), is the non-empty intersection of block Bb and column Kk, or SA(Bb, Rr) is the non-empty intersection of block Bb and row Rr. The associated area AA(k, r) of cell C(k, r) is the union of the column Kk, the row Rr and the block Bb with b = BF( k, r). Figure 1 repeated shows the column, row, and sub areas on a sudoku board. The names B1 to B9 show the block numbering.

Figure 1 repeated

In Figure 1 repeated, the associated area AA( 7, 4) is composed of column K7, row R4, and block B6; the subarea SA( B4, R6) is the set of cells: { C( 1, 6), C( 2, 6), C( 3, 6)}.
A value of a given cell is a number between 1 and 9. A cell contains at most one value. To find the solution of a game, the concept of candidate is introduced. A candidate for a given cell is a number that can be assigned as value to that cell. Every cell C(k, r) without assigned value contains a Candidate Set C(k, r).CS. The candidate set C(k, r).CS contains a subset of all natural numbers smaller than 10 minus the values assigned to the cells in the associated area AA( k, r) and minus the numbers removed with the strategies explained in the next sections. A value is assigned to a cell without value by choosing a candidate from the candidate set of the cell and setting the value equal to the chosen candidate, after which the candidate set is set to empty.

A cell C( k1, r1) is visible to cell C( k2, r2) when k1 = k2 (situated in same column), or r1 = r2 (situated in the same row) of BF( k1, r1) = BF( k2,r2)( situated in the same block).

Two cells C1 and C2 are neighbours when they are not identical and they are part of the same subarea.

A sudoku board obeys one essential rule:

Sudoku rule: A value assigned to a given cell C(k, r) occurs exactly once in the associated area AA( k, r).

A value obeying the Sudoku rule is called a valid value.

A solution is a sudoku board in which values are assigned to all cells.

A valid solution is a solution that obeys the sudoku rule. Valid solutions exist. A straightforward solution is shown in Figure 16.

Figure 16, simple example valid solution

A Game is a board where values are assigned to a subset of the cells. A valid game is a game in which valid values are assigned to the cells such that a valid solution can be reached.
Solving a game means assigning valid values to cells and reducing the number of candidates per cell. In the next chapters strategies are introduced that assist solving the game. For a strategy it must be proven that: Theorem 1: A cell without value and with an empty set of candidates is part of an invalid game.
Proof:
Suppose there is a cell C without value and with C.CS empty. That means that for every area A in the associated area of C there are at most 8 cells to which values can be assigned and no value can be assigned to C. Consequently, a solution cannot be reached because there is a cell to which no value is assigned, and the game is invalid.
QED

Figure 17 shows a valid game with assigned valid values (large numbers) and candidates (small numbers).
When within an area, a candidate occurs only once, it is called a hidden singleton. In Figure 17, the candidate 7 of cell C(3, 4) is a hidden singleton both in column K3, and in block B4.
A naked singleton is a candidate in a candidate set with size 1. In Figure 17, candidate 1 in cell C(8,4) is a naked singleton. A naked singleton is not necessarily a hidden singleton, and vice versa, as shown in Figure 17.

Figure 17, game with valid values and candidates

Formulas

Some definitions and formulas are presented to formalize the contents of this section.
P = { 1,2,3,4,5,6,7,8,9} is the set of numbers used for the values and candidates of the cells, and the identification of rows, columns, and blocks.
An area is a set of cells.
Description Corresponding Symbol(s)
Cell in Sudoku BoardC
Cell with column number k and row number r C( k, r)
Candidate set of cell C C.CS
Value assigned to cell C C.V
Set of all cells in a board BRD = { C(i,j) | i,j ∈ P}
Row area with number r Rr = { C(i,j) | i,j ∈ P ∧ j = r }
Column area with number k Kk = { C(i,j) | i,j ∈ P ∧ i = k}
Block area with number b Bb = { C(i,j) | i,j ∈ P ∧ b = BF( i, j)}
Set of all row areas SR = { Rr | r ∈ P}
Set of all column areas SK = { Kk | k ∈ P}
Set of all block areas SB = { Bb | b ∈ P};
Set of all areas in board AB = SR ∪ SB ∪ SK
Set of all column- and row- areas in board AKR = SR ∪ SK
Associated area for cell C( k, r) AA( k, r) = { C(i,j) | i,j ∈ P ∧ b = BK( k, r) ∧ C(i,j) ∈ {Bb ∪ Kk ∪ Rr}
Sub area of column/row A and block B SA( A, b) = { C | C ∈ A ∩ B}
Sudoku rule Rule ⇔ (∀ x,k,r ∈ P| (C(k,r).V = x)⇒ N{C|C∈ AA(k,r) ∧ C.V=x)} = 1)
Sudoku solution sol ⇔(∀ C ∈ BRD:( ∃ x ∈ P: C.V = x))
Valid solution val ⇔ sol ∧ rule
Visible cells C( k1, r1) and C( k2, r2) visible ( C(k1, r1), C( k2, r2)) ⇔ (k1=k2) ∨ (r1=r2) ∨ BF((k1,r1) = BF(k2,r2))
Neighbouring cells C1 and C2 NB( C1, C2) ⇔ (∃ A ∈ AKR, ∃ B ∈ SB: C1, C2 ∈ SA( A, B))

Basic Strategies

THe Basic Concepts section introduces the basic concepts to specify the five basic strategies: Naked Singleton, Hidden Singleton, Naked Candidate Set, Hidden Candidate Set, Pointing Column/Row, and Claiming Column/Row.
The Revisiting Example Run section lays the connection between the Pointing Column/Row section and the Example Run section.
The Formulas section formalizes the contents of this section with matthematical formulas based on Set Theory.

Basic Concepts

Using the notation of the former section the following definitions are used in this section: See Figure 18, where four groups are shown. Each group is the intersection of a row or column with a block, where the candidate sets of the cells in the group contain a given candidate ( 4, 2, or 3) . Each group in the figure can be identified as a pointing row, a pointing column, a claiming row, or a claiming column. The encircled candidates can be removed, according to the strategies explained in the next sections.

Figure 18, concepts in this section

To generalize the concepts of naked and hidden singleton, the following concepts are introduced:
In Figure 17, for Q = {7}, the set M = {C(3,4)} is a major area in column K3 and in block B4. Given that size of Q is equal to the size of M, M is a hidden area with one candidate 7. In Figure 17, for Q = {1}, the set m = {C( 8, 4)} is a minor area in column K8, row R4, and block B6. Given that the size of Q is equal to the size of m, m is a naked area with one candidate 1.

Figure 19, naked and hidden areas

In Figure 19, candidate area CA( K4, 7) is given by {C(4,1), C(4,3)}, and candidate area CA( K4, 1) is also given by {C(4,1), C(4,3)}. For candidate set Q = {1 ,7} a major area M = {C(4,1), C(4,3)}exists because Q is a subset of both candidate sets C(4,1).CS and C(4,3).CS. Given that the size of M is equal to the size of Q, M is a hidden area. Accordingly, in Figure 19, minor area m = { C( 4, 8), C( 5, 8), C(7,8)} exists for candidates set Q = { 2, 3, 4} because the candidate sets C(4,8).CS, C(5,8).CS, and C(7,8).CS are subsets of Q. Given that the size of Q is equal to the size of m, m is a naked area. The strategies explained below show that the encircled candidates in Figure 19 can be removed.

Naked Singleton

For example see C( 8,4) for candidate 1 in Figure 19.

Lemma 1: When a candidate x is a singleton in cell C , then the candidate x can be assigned as valid value to cell C.
Proof:
Assume cell C(k, r) is a naked singleton with candidate x. From the value assignation process, it follows that x is the only candidate that can be assigned as value to cell C(k, r). The value x of cell C(k, r) is invalid when number x is assigned as value to any of the other cells belonging to the associated area AA( k, r). This is impossible because when x is assigned to any cell in AA( k, r), then x is also removed from C( k, r).CS according to the sudoku rule. Consequently, x is a valid value. When candidate x is assigned as value to C( k, r), the candidate x is removed from the candidate set of all cells in AA( k, r). When a candidate set of a cell in AA( k, r) has become empty, the game is invalid according to Theorem 1. In a valid game none of the candidate sets of the cells in AA( k, r) becomes empty. Consequently, x can be assigned as valid value to C( k, r).
QED

Hidden Singleton

For example see C( 3,4) for candidate 7 in column 3 in Figure 19.

Lemma 2: When a candidate x is a hidden singleton in cell C , then the candidate x can be assigned as valid value to cell C.
Proof:
Suppose there is a cell C(k, r) in area A, with x in its candidate set C(k ,r).CS, and the number of cells C in area A with x in their area set C.CS is equal to one . When x is not assigned as valid value to C(k, r), no cell in area A will have a value x and no valid solution is reached. The assignment of x as value to C( k, r) removes candidate x from candidate sets of the cells in the associated area AA( k, r). When a candidate set of a cell in AA( k, r) becomes empty by the removal of x, the game is not a valid one according to Theorem 1. In a valid game none of the candidate sets of the cells in AA( k, r) becomes empty. Consequently, x can be assigned as valid value to C( k, r).
QED

Naked Candidate Set

For example see Figure 19 for candidate set Q = { 2, 3, 4} and naked area N( R8, Q) = { C( 4, 8), C( 5, 8), C( 7,8)}.

Lemma 3: When a candidate set Q exists with naked area N( A, Q), then all candidates of Q can be removed from the candidate set of all cells within area A - N( A, Q).
Proof:
Assume a candidate set Q, and an area A for which its naked area N( A, Q) exists, with size S : 0 < S < 9. Given that the size of Q is equal to the size of N( A, Q), the numbers in Q suffice to assign a different candidate from Q as value to all cells of N( A, Q). The assignment of the S numbers to the S cells of N( A, Q) has as consequence that the candidates in Q are removed from the candidate sets of the cells in area A - N( A, Q). When S = 1, the proof of Lemma 1 applies. Suppose S > 1. It is unknown which candidate of Q is assigned to any cell in N( A, Q). Therefore, the candidates of Q cannot be removed from the associated areas AA( i, j) belonging to the cells C( i, j) in the naked area N( A, Q).
When by assigning the S numbers in Q to the S cells in N( A, Q), one of the candidate sets of a cell in A – N( A, Q) becomes empty, the game is an invalid one according to . Assuming Theorem 1, a valid game, for any cell in N( A, Q) the S numbers in Q represent valid values for the cells in N(A, Q), and the 9-S numbers in P-Q represent valid values for the cells in A-N( A, Q). Therefore, all candidates of Q can be removed from the candidate set of all cells within area A - N( A, Q).
QED

Hidden Candidate Set

For example see Figure 19 for candidate set Q = { 1, 7} and Hidden area H( K4, Q) = { C(4,1), C(4,3)}.

Lemma 4: When a candidate set Q exists with hidden area H( A, Q) in area A, then all candidates not belonging to Q can be removed from all cells in H( A, Q).
Proof:
Given that the size of Q is equal to the size of H( A, Q), the numbers in Q suffice to assign a value to all cells of H( A, Q). The assignment of the S numbers as value to the S cells of H( A, Q) has as consequence that for the cells in H( A, Q) the candidates which are not in Q can not be assigned and can be removed from the candidate sets. When S = 1, the proof of Lemma 2 applies.
Suppose S > 1. It is unknown which number of Q is assigned to any cell in H( A, Q). Therefore, the candidates in Q cannot be removed from the candidate set of any cell in H( A, Q). The removal of the candidates in P-Q from the candidate sets of the cells in H( A, Q), creates a reduced set MR( A, Q). When one of the candidate sets in MR( A, Q) is an empty candidate set, the game is an invalid one according to Theorem 1.
Assuming a valid game, the candidate set of the cells in MR( A, Q) are subsets of Q and represents the valid S values that can be assigned to the S cells in H( A, Q). The candidate sets of the cells in A – H( A, Q) have not been modified. Therefore, all candidates not belonging to Q can be removed from the candidate sets of all cells in H( A, Q).
QED

Pointing Column/Row

Lemma 5a: When for block B, row R, and candidate x, a Pointing Row of group G( B, R, x) exists, all candidates x can be removed from the candidate sets of the cells in row R minus the subarea SA( B, R).
Proof:
For given block B and row R, assume that the Pointing Row for candidate x exists in the subset SA(B, R). The candidate set of the cells in subarea SA( B, Ri) with Ri ≠ R do not contain x. Consequently, none of the cells in the subareas SA( B, Ri), with Ri ≠ R, can be assigned the value x. Valid value x must be assigned to the cells in subarea SA( B, R). Given that x must be assigned to cells in block B, the candidate x cannot be assigned as value to any of the cells in the subsets SA(Bb, R), with Bb ≠ B. It follows that the candidate x can be removed from the candidate set of all cells in the subsets SA(Bb, R), with Bb ≠ B without consequence to the solution. When after the removal of x from the candidate set of the involved cells, a candidate set has become empty, the game is invalid. In a valid game none of the candidate sets become empty. Consequently, the lemma is correct.
QED

Lemma 5b: When for block B, row R, and candidate x, a Pointing Row of group G( B, R, x) exists, all candidates x can be removed from the candidate sets of the cells in row R minus the subarea SA( B, R).
Proof:
Similar to Lemma 5a, where R is replaced by K, and Ri is replaced with Kj.
QED

Lemma 5: When for block B, row/column RK, and candidate x, a Pointing Row/Column of group G( B, RK, x) exists, all candidates x can be removed from the candidate sets of the cells in row/column RK minus the subarea SA( B, RK).
Proof:
Lemma 5a and Lemma 5b prove the lemma.
QED

Claiming Column/Row

Lemma 6a: When for block B, row R, and candidate x, a claiming Row R of group G( B, R, x) exists, all candidates x can be removed from the candidate sets of the cells in block B minus the subarea SA( B, R).
Proof:
Similar to Lemma 5a with R and B reversed.
QED

Lemma 6b: When for block B, column K, and candidate x, a claiming Column of group G( B, K, x) exists, all candidates x can be removed from the candidate sets of the cells in block B minus the subarea SA( B, K).
Proof:
Similar to Lemma 6a, with R replaced by K.
QED

Lemma 6: When for block B, row/column RK, and candidate x, a claiming Row/Column RK of group G( B, RK, x) exists, all candidates x can be removed from the candidate sets of the cells in block B minus the subarea SA( B, RK).
Proof:
Lemma 6a and Lemma 6b prove the lemma.
QED

Revisiting Example Run.

In the Example Run section use is made of Lemma 6. In the example run for a given number x, a column K or row R is found such that the there is only one block B to which the pencil mark can be penciled. The pencil mark x is penciled into the free cells of sub area SA( B, K) or SA( B, R). In this case we are confronted with a claiming column or claiming row, the value x cannot be assigned to any other cell in block B.
For example in the left side of Figure 9, the pencil mark 1 is penciled into cells C( 1, 5) and cell C( 1, 6) of the sub area defined by column K1 and block B4. The value 1 cannot be assigned to any of the other cells of block B4, because we are faced with a claiming column. When in the right side of Figure 9 the pencil mark 1 is removed from cell C( 1, 5), the value 1 can only be assigned to cell C( 1, 6) with the remaining pencil mark.

Formulas.

Some definitions and formulas to formalize the contents of this section.
For given area A ∈ AB, block B ∈ SB, column K ∈ SK, row R ∈ SR, candidate set Q, and candidate x:
Description Corresponding Symbol(s)
major area, candidate set Q, area AM(A,Q) = {C | C ∈ A ∧ Q ⊆ C.CS}
minor area, candidate set Q, area A {C | C ∈ A ∧ C.CS ⊆ Q}
hiddenarea, candidate set Q, areaA H(A,Q) ⇔ M(A,Q) ∧ (|M(A,Q)| = |Q|)
naked area, candidate set Q, area A N(A,Q) ⇔ m(A,Q) ∧ (|m(A,Q)| = |Q|)
Candidate Area, candidate x CA(A,x) = {C| C ∈ A ∧ x ∈ C.CS}
group in columnG( B, K, x) = { C| C ∈ (SA(K,B) ∩ CA(K,x))}
group in row G( B, R, x) = { C| C ∈ (SA(R,B) ∩ CA(R,x))}
Lemma 3 N(A,Q) ⇒ (∀ x ∈ Q, ∀ C ∈ (A-m(A,Q):x ∉ C.CS)
Lemma 4 H(A,Q) ⇒ (∀ x ∈ (P-Q), ∀ C ∈ M(A,Q): x ∉ C.Cs
Lemma 5a (CA(R,x) = G(B,R,x)) ⇒(∀ C ∈ (B-CA(R,x)): x ∉ C.CS)
Lemma 5b (CA(K,x) = G(B,K,x)) ⇒(∀ C ∈ (B-CA(K,x)): x ∉ C.CS)
Lemma 6a (CA(B,x) = G(B,R,x)) ⇒(∀ C ∈ (R-CA(B,x)): x ∉ C.CS)
Lemma 6b (CA(B,x) = G(B,K,x)) ⇒(∀ C ∈ (K-CA(B,x)): x ∉ C.CS)

Asymmetry Strategies

The Unique rectangle is identified to be a one of the patterns to prevent multiple solutions of the sudoku game. The Unique Rectangle Properties section specifies the properties of a Unique Rectangle after which the five Unique Rectangle versions are discussed in: Unique Rectangle Version 1, Unique Rectangle Version 2, Unique Rectangle Version 3, Unique Rectangle Version 4, Hidden Rectangle, and Diagonal Rectangle.
The Formulas section formalizes the contents of this section with mathematical formulas based on Set Theory.

Unique Rectangle Properties.

A number of strategies is based on the property that the sudoku game is constructed to have only one solution. This property has as consequence that in valid games no symmetric solutions are possible. The associated strategy is called Unique Rectangle (UR).
The building block of a Unique Rectangle is a naked pair within the subarea of a given row and a given block or within the subarea of a given column and a given block.

Figure 20, Unique rectangle for candidates 2,5

In Figure 20, a classic often occurring example is shown. The unique Rectangle is given by the set { C(4,7), C(6,7), C(4,4), C(6,4)}. The naked pair (C( 4, 7), C( 6,7)) lies in the subarea SA( B8, R7). The candidates 2, and 5 are placed in the rows R4 and R7, and the columns K4 and K6. One pair is part of block B8 and the other pair is part of block B5. In block B8 two choices of value selection are possible: (1) assigning the value of 5 to C(4,7) and the value of 2 to C(6,7); or (2) assigning the value of 2 to C(4,7) and the value of 5 to C(6,7). Assigning the values 2 and 5 to the cells in row R4 then leads to two symmetric solutions which are to be avoided. Removing the symmetry is only possible by assigning the value of 3 to C(4,4) and consequently assigning the value of 5 to C(4,3). The latter assignment fixes the value of 2 to C(4,7) and the value of 5 to C(6,7). The concept of neighbour is important for unique rectangles. Two cells are neighbours when they are part of the same subarea. The unique rectangle UR is defined with a set of four cells {u1, u2, u3, u4} and two UR candidates x and y such that ( see Figure 21):

Figure 21, example of two Unique Rectangles

Two examples are shown in Figure 21 A lemma on the property of a naked pair is needed first.

Lemma 7: In naked pair C1 and C2 with candidates x and y, such that C1.CS=C2Cs = {x, y}, assigning x to C1 implies assigning y to C2 and vice versa.
Proof:
Assume the candidate x is assigned to cell C1. From the sudoku rule follows that C2 becomes a singleton with candidate y. From Lemma 1 it follows that y is assigned as value to C2. The same applies when the candidate y is assigned to cell C1, or candidates x or y are assigned to cell C2.
QED


First, we prove that by assigning the two candidates as value to the four cells of an Unique Rectangle, more than one solution is possible.

Lemma 8: When the candidate set of the cells of an Unique Rectangle is equal to the same candidate pair (x, y), then there are at least two solutions for the game.
Proof:
Without loss of generality assume that x is assigned as value to u1. Given that u1 and u2 constitute a naked pair, the value y must be assigned as value to u2 (Lemma 7). Using only the values x and y, the value y must be assigned to cell u3, and the value x must be assigned to cell u4 ( Lemma 1). Suppose that a second solution is created by assigning y as value to u1, according to Lemma 7, x must be assigned as value to u2, x must be assigned as value to cell u3 and y must be assigned to cell u4. To create two solutions the candidates and values of all other cells must not be affected by this exchange between x and y. According to Lemma 3, the candidates of a naked pair in area A1, can be freely exchanged between the cells of the naked pair without affecting the values and candidate sets of the other cells in area A1. The cells are also member of two blocks to be split in two cases:
  • (case 1) the pair (u1, u3) is member of a block B1 and pair (u2, u4) is member of another block B2, and
  • (case 2) the pair (u1, u2) is member of a block B1 and pair (u3, u4) is member of another block B2.
In either case one pair constitutes a naked pair in block B1 and the other pair constitutes a naked pair in block B2.
Consider case 1, according to Lemma 3 the candidates x and y can be freely assigned as value to u1 or to u3 without affecting the values and the candidate sets in the block. Same is true for the cells u2 and u4 in the other block.
Consider case 2, according to Lemma 3 the candidates x and y can be freely assigned as value to u1 or to u2 without affecting the values and the candidate sets in the block. Same is true for the cells u3 and u4 in the other block.
Combining the two cases, proves that at least two solutions are possible in the discussed Unique Rectangle configuration.
QED


The following sections discuss candidate elimination for different versions of the Unique Rectangle (UR) under the assumption that only one solution exists for the game.

Unique Rectangle version 1


A unique rectangle version 1 is a unique rectangle where the candidate set of one cell in the ceiling contains more than two candidates.

Lemma 9:In a unique rectangle with candidate set { x, y} and one cell Cu, in the ceiling CU, with a candidate set larger than 2, the candidates x and y can be removed from the candidate set of Cu.
Proof:
Without loss of generality assume that Cu is the ceiling cell u3. Assume x is assigned as value to u1, then to avoid a symmetric solution, another candidate than x or y from the candidate set of u3 must be assigned as value to u3. Assume y is assigned as value to u1, then to avoid a symmetric solution, another candidate than x or y from the candidate set of u3 must be assigned as value to u3. In both cases x and y are never assigned as value to u3. Consequently, the candidates x and y can be removed from the candidate set of u3.
QED

In Figure 22 an unique rectangle version1 is shown with candidates 2 and 5, base { C( 1, 2), C( 1, 5)}, and ceiling {C( 3, 2), C( 3, 5)}. The cell C( 3, 5) is the only cell with a candidate set larger than 2. Following Lemma 9, candidates 2 and 5 can be removed from the candidate set of cell C( 3, 5).

Unique Rectangle version 2


An unique rectangle version 2 is a unique rectangle with one additional candidate assigned to the candidate set of the cells in the ceiling.

Figure 22, Unique Rectangles V1 and V2


Lemma 10: In an unique rectangle with candidates ( x, y) in the candidate set of cells in the base and candidates ( x, y, z) in the candidate set of the cells in the ceiling, the candidate z can be removed from the area A2 - {u3,u4} and when u3 and u4 are neighbours in block Bz, z can also be removed from candidate set of the cells in block Bz - {u3,u4}.
Proof:
As proven in Lemma 9, it is sufficient that a candidate z different from x and y can be assigned as value to a cell in the ceiling. Assume the candidate z is assigned as value to a cell u3. Area A2 is part of the associated area of u3. According to the sudoku rule the candidate z can be removed from the candidate set of all the cells in A2 with exception of u3. Assume the candidate z is assigned as value to a cell u4. Accordingly, the candidate z can be removed from the candidate set of all the cells in A2 with exception of u3. Combining the assumptions, the candidate z can be removed from the candidate set of all the cells in A2 with exception of u3 and u4. Suppose that u3 and u4 are neighboring nodes in block Bz. Area Bi is part of the associated area of both u3 and u4. According to the sudoku rule assigning z to u3 or to u4 means that the candidate z can be removed from the candidate set of all cells in Bz with exception of cells u3 and u4.
QED

In Figure 22 a unique rectangle version2 is shown with candidates 1 and 4, base { C( 4, 8), C( 6, 8)}, and ceiling {C( 4, 4), C( 6, 4)}. The extra candidate 3 is present in the candidate set of the cells in the ceiling. Because candidate 3 is assigned as value to the candidate set of either C( 4, 4) or C( 6, 4), candidate 3 can be removed from the other cells in row R4. Additionally, C( 4, 4) and C( 6, 4) are neighbours in block B5, and candidate 3 can be removed from the candidate set of all additional cells in B5 with exception of u3 and u4.

Unique Rectangle version 3


In Unique Rectangle version 3 the ceiling cells contain next to the two candidates ( x, y) a set of additional candidates, called Q, such that a naked candidate set can be found for Q in the ceiling area A2.

Figure 23, Unique Rectangle version 3

Given Unique Rectangle UR = {u1, u2, u3, u4} with the set of candidates XY = { x, y}. The set Q with size S, is given by the union of u3.CS and u4.CS minus the set XY, such that naked areas N( A2 - {u3}, Q) and N( A2 - {u4}, Q) exist.
In Figure 23, two examples of Unique rectangle version 3 are shown.

Lemma 11: Suppose a UR exists with candidate set XY, and a ceiling {u3,u4} in area A2. Assume a candidate set Q with size S, such that Q is the union u3.CS and u4.CS minus XY. When N(A2 - {u3}, Q) and N(A2 - {u4}, Q) exist, then all values of Q can be removed from the candidate set of the cells in area A2 - { N(A2 - {u3}, Q) ∪ N(A2 - {u4}, Q) }.
Proof:
Given Unique Rectangle UR with ceiling { u3, u4} in area A2, and candidate set XY. Define the set Q as the union of u3.CS and u4.CS minus the set XY. To prevent symmetric solutions a value different from x and y must assigned to either u3 or u4. Consequently, the set XY can be removed from the candidate set of u3 or from the candidate set of u4. When XY is removed from u3, or XY is removed from u4, N( A2, Q) exists in both cases. Applying Lemma 3, proves the lemma in this case.
QED

Unique Rectangle version 4


The existence of a strong link in one of the UR candidates between u1 and u3 or between u2 and u4 specifies UR version 4. Suppose that for candidates x or y there is a strong link in x or y between u1 and u3. In that case x or y can be removed from u4.
In Figure 24 there are two Unique Rectangles:
The following lemma can be formulated.

Lemma 12 For a given Unique Rectangle UR and candidates x, y constituting the naked pair in the base, the presence of a strong link in x between cells u1 and u3 allows the removal of candidate y from u4.
Proof:
Suppose candidate y is assigned as value to u4. Candidate x remains to be assigned as value to u2 and consequently candidate y must be assigned as value to u1. The strong link in x between u1 and u3 forces candidate x to be assigned as value to u3. The result is an unwanted symmetry. To prevent the symmetry, candidate y must be removed from the candidate set of u4.
QED

The same lemma can be formulated for the presence of a strong link in y between cells u1 and u3, allowing the removal of candidate x from u4.
The same lemma can be formulated for the presence of a strong link in x between cells u2 and u4, allowing the removal of candidate y from u3.
The same lemma can be formulated for the presence of a strong link in y between cells u2 and u4, allowing the removal of candidate x from u3.

Figure 24, Unique Rectangle version 4

Hidden Rectangle


A Unique Rectangle is called hidden when:
A consequence is that the base set is not a naked pair. The rules to eliminate a candidate is identical to the one applied for the Unique Rectangle version 4. Considering a strong link in one of the candidates x or y, the following lemma can be proven.

Lemma 13: For a given Unique Rectangle UR and candidate set XY given by { x, y}, and only cell u1 has a candidate set of size 2, the presence of a strong link in x between cells u2 and u4 allows the removal of candidate y from the candidate set of u3.
Proof:
Suppose the candidate y is assigned as value to u3. Given that u3 and u1 share area A3, and candidates x, y are the only candidates in the candidate set of u1, y is removed from the candidate set of u1 according to the sudoku rule. The candidate x in u1 constitutes a singleton. According to Lemma 1, x must be assigned as value to cell u1. Because u1 and u2 share area A1, x must be removed from the candidate set of u2 according to the sudoku rule. Given that there is a strong link in x between u2 and u4, the value x must be assigned as value to u4. That represents exactly one of the unwanted symmetric solutions. Consequently, y cannot be assigned as value to u3, and can be removed from the candidate set of u3.
QED

The lemma is also true when u2 has a candidate set of 2, with a strong link between u3 and u1. Without change to the proof x and y can be freely exchanged.

Diagonal Rectangle


The diagonal rectangle is quite similar to unique rectangle version 1 with the difference that the candidate sets of the diagonal contain the set XY = { x, y} and the other cells contain the set XYZ = { x, y, z}. Two cases:
  1. candidate sets of u1 and u4 contain the set XY, and the candidate sets of u2 and u3 contain the set XYZ,
  2. or the candidate sets of u1 and u4 contain the set XYZ, and the candidate sets of u2 and u3 contain the set XY.

Figure 25, Diagonal Rectangle

See Figure 25 for two diagonal rectangles wit XY = {2,5} and with XY = {1,4}.
Consider Figure 25 with the set XY = { 1, 4}, unique rectangle U = {C(4,8), C( 6,8), C( 4, 4), C(6,4)} and the diagonal candidate 7. To prevent double solutions the candidate 7 must be assigned as value to either C(6,4) or C(4,8). Given the sudoku rule, the candidate 7 can be removed from cell C(6,9) that shares column K6 with cell C(6,4) and shares block B8 with cell C(4,8); and 7 can removed from C(4,6) that shares block B8 with cell C(6,4) and shares column K4 with cell C(4,8).
First we define de Diagonal Unique Rectangle DUR like the UR is defined at the beginning of Asymmetry Strategies. The diagonal unique rectangle DUR is defined with a set of four cells {u1, u2, u3, u4} and two DUR candidates x and y such that:
Given the set XYZ = { x, y, z}.

Lemma 14: Given DUR with { u1, u2, u3, u4} and candidate sets XY = { x, y} and XYZ = { x, y, z}, where u1.CS = u4.CS = XYZ, and u2.CS = u3.CS = XY. The candidate z can be removed from the candidate set of the cells which are members of the two areas to which both u1 and u4 belong.
Proof:
Assume candidate z is assigned as value to either u1 or u4. Consider the two separate cases where u1 and u2 are neighbours, or u1 and u3 are neighbours.
Suppose u1 and u2 are neighbours. Consider two separate blocks B12 and B34, such that u1 and u2 are members in block B12 and u3 and u4 are members in block B34. According to the definition of the DUR, a subarea SA( A1, B12) exists. According to the sudoku rule candidate z is removed from the candidate sets of the cells in areas A1 when z is assigned as value to u1. Similarly, candidate z can be removed from the candidate set of all cells in area B12 when z is assigned as value to u4. In both cases, the candidate z is removed from the candidate set of all cells in subarea SA( A1, B13).
Suppose u1 and u3 are neighbours. Consider two separate blocks B13 and B24, such that u1 and u3 are members of block B12 and u2 and u4 are members of block B24. Similarly, the candidate z can be removed from the candidate set of all cells in subarea SA( A2, B24).
QED

Lemma 15: Given DUR with { u1, u2, u3, u4} and candidate sets XY = { x, y} and XYZ = { x, y, z}, where u1.CS = u4.CS = XY, and u2.CS = u3.CS = XYZ. The candidate z can be removed from the candidate set of the cells which are members of the two areas to which both u2 and u3 belong.
Proof:
Similar to Lemma 14
QED

Formulas


The section concludes with some formulas to describe Unique Rectangles. Three candidates x, y, and z are given, where set XY= { x, y} is the candidate pair present in the candidate set of the four constituting cells and the set XYZ = { x, y, z} can be present in the candidate set of some constituting cells.
Use the function NB( C1, C2), defined in “Formulas” of “Terminology and Rules” section, to specify when two cells C1 and C2 are neighbours (situated in the same subarea). The function BB(C) is introduced to specify the block area to which a cell C belongs.

Description Corresponding formula
Block of C( k, r) {C(i,j)| i,j ∈ P ∧ BF(i,j) = BF(k,r)}
cells of UR U ≝ {u1(k1,r1),u2(k2,r3), u3(k3,r3), u4(k4,r4)}
neighbours in A1 nb12 ⇔ NB( u1, u2)
neighbours in A3 nb13 ⇔ NB( u1, u3)
base is row br ⇔ (∃ A ∈ SR: u1 ∈ A \and; u2 ∈ A)
base is columnbk ⇔ (∃ A ∈ SK: u1 ∈ A \and; u2 ∈ A)
UR definition UR ⇔ ( ∃ U: XY ⊆ U1.CS ∧ XY ⊆ u2.CS ∧ XY ⊆ u3.CS ∧ XY ⊆ u4.CS) ∧ (nb12 ∨ nb13) ∧ (br ∨ bk)
Lemma 9 (UR ∧ (|u1.CS| = 2) ∧ (|u2.CS| = 2) ∧ (|u3.CS| = 2) ∧ (|u4.CS| > 3)) ⇒ ((XY ∩ u4.CS) = ∅)
Lemma 10 (UR ∧ (|u1.CS| = 2) ∧ (|u2.CS| = 2) ∧ (u3.CS = XYZ) ∧ (u4.CS = XYZ)) ⇒ (∀ C ∈ A2 - {u3,u4}: x ∉ C.CS) ∧ NB(u3,u4))) ⇒( ∀ C: C ∈ BB(u3)-{u3,u4}: z ∉ C.CS)
Lemma 11 N(A2-{u3},Q) ⇔(∀ C ∈ (A2 = {u3}):(Q ∩ C.CS) = ∅)
Lemma 12 (UR ∧ ( ∃ x ∈ XY: N({C| C ∈ A2 ∧ x ∈ C.CS} = 2) ⇒ y ∉ u4.CS
Lemma 13 (CA(B,x) = G(B,R,x)) ⇒(∀ C ∈ (R-CA(B,x)): x ∉ C.CS)
DUR definition 1 DUR1 ≝ (∃U:XYZ ⊆ u1.CS ∧ XY ⊆ u2.CS ∧ XY ⊆ u3.CS ∧ XYZ ⊆ u4.CS ∧ (nb12 ∨ nb13) ∧ (br ∨ bk))
Lemma 14 DUR1 ⇒ (∀ C: visible(C, u1) ∨ visible(C, u4) : z ∉ C.CS
DUR definition 2 DUR2 ≝ (∃U:XY ⊆ u1.CS ∧ XYZ ⊆ u2.CS ∧ XYZ ⊆ u3.CS ∧ XY ⊆ u4.CS ∧ (nb12 ∨ nb13) ∧ (br ∨ bk))
Lemma 15 DUR2 ⇒ (∀ C: visible(C, u2) ∨ visible(C, u3) : z ∉ C.CS

Chain Stategies

The Chain Properties section introduces the link and endpoint concepts necessary to construct chains and analyse their properties.
The Link, Segment and Chain sectionexplains how chains are built up from links and specifies the properties of "e;nice chains"e;.
The Open Nice Chain section explains the properties of open nice chains.
The Looped Nice Chain section explains the properties of looped nice chains.
The Link extensions section extends the link concepts for additional types of endpoints.
The Formulas section formalizes the contents of this section with mathematical formulas based on Set Theory.

Chain Properties


This section explains how chains of cells can be used to solve the sudoku game. The section first introduces links and then shows how chains are composed of links. The properties of chains are introduced and used to eliminate candidates from the candidate set of cells.
The link concept is introduced to express a relation: Two types of links are introduced: a cell-link and an area-link. Each link can be strong or weak.

Link property: A link has only meaning for cells with a candidate set size larger than 1.

A link has two endpoints: Two endpoints are visible when they are part of the same area-link. To reason about the reduction of the candidates, the concepts of "on" and "off" are introduced. The endpoint of a link is on when the candidate of the endpoint's cell is hypothetically assigned as value to the cell. An endpoint is off when the candidate of the endpoint's cell is hypothetically removed from the candidate set of the cell. The next subsection discusses strategies that exploit the setting of endpoints to on or off.

Link, Segment and Chain


In this section segments are constructed from links, and chains are constructed from segments. This section discusses and proves properties of links, segments, and chains.

Lemma 16: When an endpoint of a strong area-link is on, the other endpoint is off and vice versa.
Proof:
Given area A and candidate x, suppose there is a strong area-link with endpoints e1(C1,x) and e2(C2,x), with C1, C2 in area A. When the candidate x is assigned as value to cell C1, the candidate x must be removed from the candidate set of cell C2 following the sudoku rule. It follows that endpoint e1 being on, implies endpoint e2 being off. The same reasoning applies when the candidate x is assigned to cell C2. Suppose the candidate x is removed from the candidate set of C1. In that case C2 has become a naked singleton in A and only x can be assigned as value to C2 (Lemma 1). It follows that endpoint e1 being off implies endpoint e2 being on. The same reasoning applies when x is removed from the candidate set of C2.
QED

Lemma 17: When an endpoint of a strong cell-link is on, the other endpoint is off and vice versa.
Proof:
Given cell C with two candidates x, y, with x ≠ y, defining the existence of a strong cell-link in cell C, with two endpoints e1( C, x) and e2( C, y). Suppose that candidate x is assigned as value to cell C. In a strong cell-link assigning the candidate x as value to cell C, implies per definition the removal of the candidate y from the candidate set of cell C. Consequently, endpoint e1 being on, implies endpoint e2 being off. The same reasoning applies to endpoint e2 being on. Suppose the candidate x is removed from the candidate set of cell C. In that case, cell C contains a naked singleton with candidate y, and y can be assigned as value to cell C (Lemma 1). It follows that endpoint e1 being off implies endpoint e2 being on. The same reasoning applies to endpoint e2 being off.
QED

Lemma 18: When an endpoint of a strong link is on, the other endpoint is off and vice versa.
Proof:
Combination of Lemma 16 and Lemma 17 proofs this lemma.
QED

Lemma 19: When an endpoint of a weak area-link is on, the other endpoint is off; when the endpoint of a weak area-link is off, the other endpoint is undefined.
Proof:
Given area A and candidate x, suppose there is a weak area-link with endpoints e1(C1,x) and e2(C2,x), with C1, C2 in area A. Given the weak link in A, there are l cells in A, with l > 2, where x is member of the candidate set. When the candidate x is assigned as value to cell C1, the candidate x is removed from the candidate set of all cells in area A (sudoku rule). Consequently, candidate x is also removed from the candidate set of cell C2. It follows that endpoint e1 being on, implies endpoint e2 being off. The same reasoning applies when candidate x is assigned as value to the cell C2 of endpoint e2.
Suppose x is removed from the candidate set of cell C1 of endpoint e1. There are l-1 > 1 cells in area A remaining with candidate x in their candidate set. To any of the cells in A with the exclusion of C1 the candidate x may be assigned as value. Consequently, it cannot be decided whether the candidate x will be assigned as value to cell C2, or that x is assigned as value to another cell in A. In conclusion, the hypothetical state of e2 is undefined. It follows that the endpoint e1 being off, leaves endpoint e2 undefined. The same reasoning applies when x is removed from candidate set of cell C2.
QED

Lemma 20: When an endpoint of a weak cell-link is on, the other endpoint is off; when the endpoint of a weak cell-link is off, the other endpoint is undefined.
Proof:
Given cell C with candidates x, y, with x ≠ y, defining the existence of a weak cell-link in cell C, with two endpoints e1( C, x) and e2( C, y). Given the weak link in cell C, there are l candidates, with l > 2, in the candidate set of cell C. Suppose the candidate x is assigned as value to cell C, then all other candidates are removed from the candidate set of cell C (per definition). Consequently, y is also removed from the candidate set of cell C, and endpoint e2 is off. It follows that endpoint e1 being on, implies endpoint e2 being off. The same reasoning applies when candidate y of endpoint e2 is assigned as value to cell C.
Suppose x is removed from the candidate set of cell C. There are l-1 > 1 candidates remaining in the candidate set of cell C. Any of the remaining candidates of the candidate set of cell C may be assigned as value to cell C. Consequently, it cannot be decided whether candidate y or another candidate will be assigned as value to cell C. In other words, the hypothetical state of endpoint e2 is undefined. It follows that endpoint e1 being off, leaves endpoint e2 undefined. The same reasoning applies when y is removed from candidate set of cell C.
QED

Lemma 21: When an endpoint of a weak link is on, the other endpoint is off; when the endpoint of a weak link is off, the other endpoint is undefined.
Proof:
Combination of Lemma 19 and Lemma 20 proofs this lemma.
QED

The different states are resumed in Figure 26. When one endpoint of a link is on, the other endpoint is off for weak and strong links. When an endpoint of a strong link is off, the other endpoint is on.

Figure 26, on/off settings on link and segment

Segments are constructed as building blocks for chains to allow reasoning about the reduction of candidates. A segment is a sequence of two area-links or one area link and a cell-link:


Lemma 22: Two aligned links which share an endpoint constitute a segment.
Proof:
Consider two links l1 and l2 which share the endpoint ep(C, x). Without losing generality assume that link l1 is an area-link with area A1 and has a second endpoint with the same candidate x: ep( C1, x). Link l2 can be an area-link with area A2, A2 ≠ A1, or a cell-link.
Suppose l2 is an area link: it has a second endpoint with the same candidate x: ep(C2,x). Therefore, a link l2 is composed of cells C and C2 with candidate x. Consequently, l1 and l2 constitute a segment.
Suppose l2 is a cell-link. The size of the candidate set of C is larger than 1 (link property). Consequently, there is a second candidate y in the candidate set of C such that candidates x and y compose a link l2 with endpoints ep( C, x) and ep( C, y). Consequently, l1 and l2 constitute a segment.
QED

Corollary: In a segment of two area links, the endpoints of the links share the same candidate.

The endpoints of the links of the segment that are not shared are called the endpoints of the segment. In a nice segment there is a strong link connected to a weak link. Figure 26 shows that only two endpoint settings of the four possible nice segment settings are interesting.
The endpoint of a segment with a cell that is part of a strong link is called a strong segment endpoint.
The endpoint of a segment with a cell that is part of a weak link is called a weak segment endpoint.

Lemma 23: Setting the cell of the strong segment endpoint of a nice segment to off, sets the cell of the weak segment endpoint to off.
Proof:
see the segment setting in Figure 26.
QED

Lemma 24: Setting the cell of the weak segment endpoint of a nice segment to on, sets the cell of the strong segment endpoint to on.
Proof:
see the segment setting in Figure 26.
QED

The concept of chain is introduced. A chain is a sequence of links. A chain has two endpoints: the endpoints that are not shared by two links in the chain.

A nice chain is a chain such that any two connected links constitute a nice segment.
An even-length chain has an even number of links.
An odd-length chain has an odd number of links.
The endpoint of a chain with a cell that is part of a strong link is called a strong endpoint.
The endpoint of a chain with a cell that is part of a weak link is called a weak endpoint.
Figure 27 illustrates the properties of a chain based on the properties of the participating links.

Lemma 25: A sequence of two nice segments constitutes an even length nice chain when the weak link of one segment is connected to the strong link of the other segment.
Proof:
A segment is composed of two links. A sequence of two segments constitutes and even-length chain of size 4. The proof runs the same as the proof of Lemma 22, where the endpoint ep( C, x) connects the two segments.
QED

Lemma 26: An even-length nice chain has a strong endpoint and a weak endpoint.
Proof:
Induction over the number of links is used. In the case of a chain with one segment, the statement is trivially true. Consider a nice chain of two segments. The chain is a sequence segment1 and segment2. Segment1 is a sequence of link1 and link2, and Segment 2 is a sequence of link3 and link4. According to the definition of chain, link2 and link3 also form a segment. Suppose link1 is a weak link, then link 2 is a strong link followed by a weak link l3 and concluding with strong link l4. Suppose link1 is a strong link, then link2 is a weak link followed by a strong link l3 and concluding with a weak link l4. Which proves the statement for a chain of two sequential segments.
Assume the statement is true for a even-length nice chain of n sequential segments. Suppose the last link of the chain is called ln and the first one is called l1. Segment n+1 is composed of a sequence of two links lk and ll. According to the definition of nice chain the sequence of links ln and ll is also a segment. Suppose link l1 is weak, then link ln is strong, followed by a weak link lk and concluding with a strong link ll. Suppose link l1 is strong, then weak ln is weak, followed by a strong link lk and concluding with a weak link ll. In conclusion, an even length nice chain has one weak endpoint and one strong endpoint.
QED

Lemma 27: For an even-length nice chain, setting the cell of the strong endpoint to off, sets the cell of the weak endpoint to off.
Proof:
Induction over the number of segments is used. Suppose the nice chain contains one segment. According to Lemma 23, setting the strong endpoint to off, sets the weak endpoint to off.
Suppose the nice chain is composed of two segments s1 and s2. According to Lemma 26 there is a strong endpoint and a weak endpoint of the chain. According to Lemma 21, when the strong endpoint of s1 is off, the weak endpoint of s1 is off. The strong endpoint of s2 is also off because the endpoints share the same cell. According to Lemma 21 the strong endpoint of s2 being off, has as consequence that the weak endpoint of s2 is off.
Consequently the strong endpoint of the chain being off, sets the weak endpoint of the chain to off.
Suppose Lemma 27 is true for a nice chain of length 2n, then following the same proof as for a chain of length 2, Lemma 27 is also true for a chain of length 2(n+1).
QED

Figure 27, even and odd length nice chains


Lemma 28: For an even-length nice chain, setting the cell of the weak end-point to on, sets the cell of the strong endpoint to on.
Proof:
Using Lemma 24 and Lemma 26 the same proof is followed as for Lemma 27.
QED

Lemma 29: The endpoints of a odd-length nice chain both belong to a strong or a weak link.
Proof:
An odd-length nice chain is an even length nice chain with the addition of a weak link when the start endpoint is weak, and the addition of a strong link when the start endpoint is strong. The remainder of the proof runs the same as for Lemma 26.
QED

Lemma 30: For an odd-length nice chain, setting the cell of a weak endpoint to on sets the cell of the other endpoint to off.
Proof:
Same proof as Lemma 28.
QED

Lemma 31: For an odd-length nice chain, setting the cell of a strong endpoint to off, sets the cell of the other endpoint to on.
Proof:
Same proof as Lemma 27.
QED

Concluding, the following theorem can be formulated for odd and even length chains:

Theorem 2: Setting the one endpoint of a chain to on/off results in the following consequences for the second endpoint:

Proof:
Combining Lemma 27, Lemma 28, Lemma 30, and Lemma 31 proves the theorem.
QED


A nice chain including cell-links is called an Alternating Inference Chain or AIC. Due to the presence of the cell-links, an AIC can include links with different candidates.

Example links and segments appear in the even-length nice chain of Figure 27.

Figure 28, nice chain composed of cell-links and area-links


A notation is introduced to present the chain in a more compact form: ( cell).

  1. A cell is represented with its coordinates ( k, r). for example (7, 1).
  2. A link is bracketed in <> containing a letter S, W (Weak, Strong) followed by one candidate number for an area-link, for example ; or followed by two candidate numbers for a cell-link, for example .

The chain in Figure 28 is written as:

(7,1)<S7>(8,3)<W7,5>(8,3)<S5>(8,9)<W5>(9,8)<S5,9>(9,8)<W9>(3,8)<S9,5>(3,8)<W5>(3,2).

To eliminate candidates using nice chains, two different configurations need to be considered:

Open Nice Chain


This section proves and discusses the conditions under which candidates can be removed given the properties of an open nice chain.

EndPoint Visibility


Consider given candidate x, and three different endpoints e1, e2 and e,

Lemma 32: When e1(C1,x) and e2(C2,x) are strong endpoints of an odd-length nice chain and both are visible to a cell C via candidate x, then x can be removed from the candidate set of C.
Proof:
Suppose an open odd-length nice chain with strong endpoints. According to theorem 2, the chain has the property that when one endpoint is on the other endpoint is off. Suppose, that both endpoints, e1 and e2, are visible to endpoint e( C, x) such that cells C and C1 are visible in area A1 and cells C and C2 are visible in area A2. According to Theorem 2, when e1 is on, e2 is off and when e1 is off then e2 is on. When endpoint e is visible to both end points e1 and e2, it follows that when e1 is on, x must be removed from the candidate set of C (sudoku rule). Similarly, when e2 is on, x also must be removed from the candidate set of C. In all cases, x can be removed from the candidate set of cell C.
QED

Figure 29, Two open AIC chains with 7 to be removed in C( 2, 7), 1 in C(5,2) and 4 in C(5,5)

Figure 29 shows an example of an open AIC chain specified as:
(2,3)<S7,5>(2,3)<W5>(2,4)<S5,8>(2,4)<W8>(2,9)<S8>(3,9)<W8,5>(3,9)<S5>(6,9)<W5>(4,7)<S5,7>(4,7).
The chain starts at C( 2, 3) with candidate 7 and strong link with candidate 5 in C( 2, 3). The chain ends at C( 4, 7) with a strong link with candidate 7. Considering the candidate 7, cell C( 2, 7) is visible to endpoint ep1(C(2,3),7) via column K2, and visible to endpoint ep2(( C(4,7),7) via row R7. In accordance with lemma 32, candidate 7 can be removed from the candidate set of C( 2, 7).

Lemma 33: When e1(C1,y) and e2(C2,x) with x ≠ y are strong endpoints of an odd-length nice chain where cells C1 and C2 are visible to each other, x can be removed from the candidate set of C1 and y can be removed from the candidate set of C2
Proof:
Assume e1 to be on, y is assigned as value to C1 and x is removed from the candidate set of C1. According to the sudoku rule y is removed from the candidate set of C2. Assume e1 to be off, then e2 is on, and x is assigned as value to C2, and x is removed from the candidate set of C1. Consequently, x is never assigned as value to C1. The same reasoning can be done with e2 which implies that y is never assigned as value to C2. Consequently x can be removed from the candidate set of C1 and y can be removed from the candidate set of C2.
QED

Figure 29 shows another AIC chain specified as:
(5,3)<S4>6,2)<W4>(8,2)<S4>(8,5)<W4,1>(8,5)<S1>(5,5).
The chain starts at C(5,3) with candidate 4 and strong link to C(6,2). The chain ends at C(5, 5) with candidate 1 and a strong link. The cell C( 5,5) is visible to cell C(5,3) in column K5. According to lemma 33 candidate 1 can be removed in C( 5,3) and candidate 4 can be removed in C( 5,5).

Forcing Chain


An important concept is the forcing chain, which uses Theorem 2.
The forcing chain starts at one endpoint called the source and ends at the other endpoint called the destination. Forcing chains lead to candidate elimination in three configurations: Cell forcing, Area forcing, and Candidate forcing.
The forcing is based on odd length AIC chains with weak endpoints. An odd length chain is started from a given endpoint that is on, called the source. Multiple chains can be constructed from the source to as many endpoints called the destination. According to Theorem 2, the destination is off. The interesting case is when a subset of the destinations.


Lemma 34: When an area forcing or cell forcing set of chains exists, the candidate of the source can be removed.
Proof:
Suppose a set of area forcing chains exists with destination area A and destination candidate x. When the source is on, all destinations are off. The number of destinations is equal to the number of cells in a given area A with x in their candidate set. The consequence is that x is never assigned to a cell in A and none of the cells in A will have a value assigned. Consequently, no valid solution exists when the source is on. That means that the source must be off, and the candidate of the source can be removed from the candidate set of the cell of the source.
Suppose a set of cell forcing chains exists with destination cell C. When the source is on, all destinations are off. The number of destinations is equal to the size of the candidate set of C. The consequence is that no candidate can be assigned to C. Consequently, no valid solution exists when the source is on. That means that the source must be off, and the candidate of the source can be removed from the candidate set of the cell of the source.
QED

The candidate forcing is based on two AIC chains: one of odd length with weak endpoints and the other of even length AIC with a weak endpoint at the source. The source of the two chains is the same. The interesting case is when two destinations:


Lemma 35: When a candidate forcing set of chains exist, the candidate of the source can be removed.
Proof:
When the source is on, according to Theorem 2 the odd length chain forces the destination to off, and also according to theorem 2 the chain with the even length chain forces the destination to on. This constitutes a contradiction and an impossible situation. That means that the source must be off, and the candidate of the source can be removed from the candidate set of the cell of the source.
QED

Below examples of the three forcing chains will be shown.

Figure 30, Two cell forcing chains

Cell Forcing:
Suppose there is a cell C1 with n > 1 candidates in its candidate set. Suppose for every candidate x in C1.CS there is an odd length nice chain with a weak source ep(C1,x), ending at the same weak destination endpoint ep(C2, y). For every chain Theorem 2 states that with ep(C1,x) being on, ep(C2,y) must be off. At least one endpoint ep(C1, x) of the n nice chains is on. Consequently, the destination endpoint must be off. In conclusion, the candidate y can be removed from the candidate set of C2.An example is shown in Figure 30, from the candidates 6 and 8 in source cell C( 4, 4) two chains emanate ending at candidate 3 of destination cell C( 6, 8). The chains are:
Two odd length nice chains with weak starting points being on, both lead to setting candidate 3 in cell C(8,8) to off. At least one candidate in cell C(4,4) being on means that 3 can be removed from the candidate set of C( 8, 8). Following the chains in the opposite direction leads to the same result. Suppose there is a cell C1 with n > 1 candidates in its candidate set. Suppose there are n odd length nice chains starting at the same weak endpoint ep( C2, y) and ending at all a weak endpoints ep(C1,x) for every candidate x. When ep( C2, y) is on, then endpoints ep( C1, x) are off for all candidates x in candidate set C1.CS. This leads to an invalid game and must be excluded. Consequently, ep( C2, y) is off , and candidate y can be removed from the candidate set of cell C2.

Figure 31, two area forcing chains

Area Forcing:
Suppose a given candidate x is member of the candidate set of all cells Ca sharing the same area A. Suppose that from every weak source endpoint ep( Ca, x) there is an odd length nice chain ending at the same weak destination endpoint ep( Cd, y). When one of the endpoints ep( Ca, x) is on the endpoint ep( Cd, y) is off (Theorem 2). Given that at least one endpoint ep( Ca, x) is on, the endpoint ep( Cd, y) must be off. In conclusion y can be removed from the candidate set of cell Cd. An example is shown in Figure 31, where two cells with candidate 5 exist in the row R4. Two chains are shown emanating from the two candidates 5 in row R4. Two odd length nice chains with weak starting points being on, both lead to setting candidate 5 in cell C(2,8) to off. At least one candidate in the row R4 being on means that 5 can be removed from the candidate set of C( 6, 8).
The opposite is also true. Suppose a given candidate y is member of the candidate set of all cells Ca sharing the same area A. Suppose that from one weak source endpoint ep( Cs, x) there is an odd length nice chain ending at all weak destination endpoint ep( Ca, y). When ep( Cs, x) is on, all destination endpoints ep( Ca, y) are off. Consequently, the value y is assigned to none of the cells in area A. This contradicts the sudoku rule and consequently ep( Cs, x) must be off and candidate x can be removed from the candidate set of cell Cs.

Figure 32, Two candidate forcing chains

Candidate Forcing:
Suppose two nice chains (Ch1, Ch2) starting from the same source endpoint ep(Cs, x) with candidate x ending at the same destination endpoint ep( Cd, y) with candidate y. Assume chain Ch1 being an odd length chain starting with a weak link, and chain Ch2 being an even length chain starting with a strong link. When ep( Cs, x) is on for chain Ch1, then ep(Cd, y) is off (Theorem 2)). Similarly, when ep( Cs, x) is off for chain Ch2, ep( Cd, y) must be off. In both cases ep(Cs, x) being on or off, ep( Cd, y) must be off.
.An example is shown in Figure 32, with one candidate 6 in cell C( 5, 3). Two chains are shown emanating from the candidate 6.
One odd length nice chain with weak source endpoint being on, leads to the destination endpoint ep( C( 6, 8), 6) to off. One even length chain with strong starting point off, leads to setting endpoint ep( C(6, 8), 6) to off. The endpoint ep( C( 5,3), 6) being either on or off means that 6 can be removed from the candidate set of C( 6, 8).

Looped Nice Chain


A chain is looped when all endpoints share two links. Two cases need to be considered: a looped nice chain of even length or a looped nice chain of odd length.

Odd length looped nice chain


Odd length looped nice chains have one endpoint where both links are weak (strong). This endpoint is called the breaking point. A breaking point is strong (weak) when both links are strong (weak).

Lemma 36: When for given candidate x and cell C, an odd-length looped chain exists with a strong breaking point ep( C, x), the candidate x can be assigned as value to cell C.
Proof:
Consider a nice chain with odd length n, with a strong breaking point ep( C, x). Label all endpoints sequentially from e(0) = ep( C, x) to e(n)= ep( C, x).
Suppose e(0) to be off. According to Theorem 2) e(n) is on. Endpoint e(0) being e(n) leads to a contradiction. In conclusion e(0) cannot be off.
Suppose e(0) to be on. According to Figure 26, e(2) is undecided. Suppose e(2) is off, then according to Theorem 2) e(n) is off, leading to a contradiction. Suppose e(2) is on. Continue this reasoning for all even numbered endpoints until e(n-1). The state of e(n-1) is necessarily chosen to be off from which follows that e(n) is on. Consequently, e(0) must be set on, and x can be set as valid value to cell C.
QED

Lemma 37: When for given candidate x and cell C, an odd-length looped chain exists with a weak breaking point ep( C, x), the candidate x can be removed from the candidate set of cell C.
Proof:
Consider a nice chain with odd length n, with a weak breaking point ep( C, x). Label the endpoints of all links sequentially from e(0) = ep( C, x) to e(n)= ep( C, x).
Suppose e(0) to be on. From Theorem 2 it follows that e(n) is off, contradicting the assumption. Suppose e(0) to be off. According to Figure 26, e(1) is undecided. Suppose e(1) to be off, according to Theorem 2 e(n) is off. Endpoints e(0) and e(n) being the same, leads the conclusion that in a valid game the endpoint e(0) must be off, and consequently x can be removed from the candidate set of cell C.
QED

Even length looped nice chain


This subsection presents lemmas for the even length looped nice chain.

Lemma 38: For every link in an even length nice chain, one endpoint of the link is on and the other endpoint is off.
Proof:
When a chain has even length, every cell is an endpoint of a weak link in one direction and of a strong link in the opposite direction. Without loss of generality choose an endpoint e in the chain. According to Theorem 2, setting e to on, and following the chain according to the weak link, has as consequence that e is on. Similarly, according to Theorem 2, setting e to >b>off following the strong link has as consequence that e is off. Consequently, for every link in the chain, one endpoint of the link is on and the other is off. Every endpoint in the chain can be either on or off.
QED

Lemma 39: For all weak area-links with given candidate x and area A, that are part of an even length looped nice chain, the candidate x can be removed from the candidate set of all cells in A with the exception of the endpoints.
Proof:
Given the area A, and candidate x of a weak link that is part of the chain, Lemma 38 states that one of endpoints of the link is on. Consequently, x must be off for all cells in A with the exclusion of the endpoints (sudoku rule). According to the definition of off, x can be removed from the candidate set of all cells in A with the exception of the endpoints.
QED

Lemma 40: For all weak cell-links in an even length looped nice chain with endpoints ex( C, x) and ey( C, y) all candidates with the exception of x and y can be removed from the candidate set of cell C.
Proof:
Consider a weak cell-link with cell C and link endpoints ex( C, x) and ey( C, y), respectively. According to Lemma 38, either ex is on, or ey is on, consequently, all other candidates in the candidate set of C can be removed.
QED

Link extensions


The concept of link can be extended to include the group and naked area concepts (See Basic Strategies section).

Group Endpoint


The area-link definition of Link, Segment and Chain can be extended with a group, G( B, RK, x) where the group is defined by the candidate x and the intersection of a block B with a row or a column RK, given by subarea SA(B, RK) (see See Basic Strategies section).
For given candidate x, a link in row/column RK, exists between: The link involving a group has a new endpoint called group endpoint, defined by the group. A group endpoint G( B, RK, x) is on when the candidate x is assigned as valid value to one of the cells in the group. A group endpoint is off when x is removed from the candidate set of all cells in the group. The compact chain notation (column, row) is extended with G(A, B).
  1. A group endpoint is represented in a chain with its column/row area and block area for example G( K1, B3).

For textual purposes the notation e(C, x) for an area endpoint is extended with a group endpoint e(G, x).

Figure 33, Group links

Four groups are shown in Figure 33: one is the group_3 in subarea SA( B4, R4) with candidate 3 and size 3; the second is the group_2 in subarea SA( B8, K4) with candidate 2 and size 2. The third group_8a with candidate 8 in subarea SA( B3, K7) and the fourth group group_8b with candidate 8 in subarea SA( B9, K7). A strong link l1 exists between the group_2 and cell C( 4, 3). Link l1 being the only link for candidate 2 in column K4. A strong link l2 exists between group_3 and cell C( 2,6). Link l2 being the only link for candidate 3 in block B4. A strong link exists between group_8a and group_8b being the only link for candidate 8 in column K7. Weak links exist between cell C( 9,4), cell C( 6, 4), and group_3. Weak links exist between cell C( 6, 7), cell C( 5, 9), and group_2. Weak links exist between cell C( 8, 9) and group_8b and between cell C( 9, 2) and group_8a. In Figure 33, five example segments are shown:

An extension of Lemma 18 and Lemma 21 is needed with a group as endpoint. The terms area endpoint and group endpoint are used to distinguish the endpoints. A strong area link exists between a cell C in area RK and group G( RK, B, x) when in RK the number of cells C with x in its candidate set is equal to "size of the group" + 1. A strong area link exists between a cell C in area B and group G( RK, B, x) when in B the number of cells C with x in its candidate set is equal to "size of the group" + 1.
A strong area link exists between two groups G1( RK, B1) and G2( RK, B2) when the number of cells with x in its candidate set is equal to the size of G1 plus the size of G2.
For the following two lemmas consider two groups G1( RK1, B1, x) and G2( RK2, B2, x): such that RK1 = RK2 and B1 ≠ B2; or RK1 ≠ RK2 and B1 = B2. And consider group G( RK, B, x) and cell C such that x is a member of the candidate set of C, and C is member of RK-B or is member of B-RK.

Lemma 41: When the group endpoint of a strong area-link is on the other endpoint is off and vice versa.
Proof:
Two strong links are considered:
a) group endpoint e1( G, x) linked to area endpoint e( C, x).
b) group endpoint e1( G1, x) linked to group endpoint e2( G2, x).
Ad (a): Suppose there is a strong area-link between group endpoint e1(G, x) and area endpoint e(C, x), with cell C in RK-B. The candidate x can be assigned as value to cells Cg in the group G or to cell C and nowhere else in RK. When e1(G, x) is on, the candidate x is assigned as value to a given cell Cg of the group G, and the candidate x must be removed from the candidate set of cell C following the sudoku rule in area RK. It follows that endpoint e1 being on, implies endpoint e being off. When e( C, x) is on, the candidate x is assigned as value to cell C. Following the sudoku rule in RK, x must be removed from the candidate set of all cells in RK and consequently from all cells in the group G. It follows that endpoint e being on, implies endpoint e1 being off. Suppose e1( G, x) is off. The candidate x is removed from the candidate set of all cells Cg in the group G. In that case C has become a singleton in RK and x must be assigned as value to C (Lemma 1). It follows that endpoint e1 being off implies endpoint e being on. Suppose e( C, x) is off. The candidate x is removed from the candidate set of C, and x can be assigned to any cell Cg in the group G. When x is assigned as value to one given cell in the group G, the endpoint e1 is on. It follows that endpoint e being off, endpoint e1 is on. The same reasoning applies with cell C in B - RK, exchanging B with RK in the proof. Ad ( b) Suppose for given x, there is a strong area-link between group endpoints e1(G1, x) and e2(G2, x). Assume also RK1 = RK2 and B1 ≠ B2. Without loss of generality only the setting of e1 needs to be considered. Suppose e1 is on, that means that x is assigned as value to a cell in group G1. Consequently, all other cells in RK1 are off, including the cells in group G2. It follows that e1 being on implies e2 being off.
Suppose e1 is off. That means that x is removed from the candidate set of all cells in group G1. The remaining cells in RK1 are cells in group G2. In a valid game candidate x is assigned to any of the remaining cells and thus to one of the cells of group G2. It follows that group endpoint e1 being off, implies group endpoint e2 being on.
The same reasoning applies when RK1 ≠ RK2 and B1 = B2, exchanging RK1 with B1 in the proof..
QED

An extension of Lemma 21 is needed as well with a group as endpoint.

Lemma 42: When the group endpoint of a weak area-link is on, the other endpoint is off; when the group endpoint of a weak area-link is off, the other endpoint is undefined and vice-versa.
Proof:
Suppose there is a weak area link between group endpoint e1( G, x) and area endpoint e( C, x) with cell C in RK-B.
The candidate x can be assigned as value to cells Cg in the group G or to cell C. When the candidate x is assigned as value to a given cell Cg of the group, the candidate x must be removed from the candidate set of cell C in row/column RK following the sudoku rule. It follows that endpoint e1 being on, implies endpoint e being off. When the candidate x is assigned as value to cell C, x must be removed from the candidate set of all cells Cg in the group G in row/column RK following the sudoku rule. It follows that endpoint e being on, implies endpoint e1 being off.
Suppose the candidate x is removed from the candidate set of all cells Cg in the group G. In that case x can be assigned as value to any cell in RK and is not necessarily assigned as value to C. It follows that endpoint e1 being off implies endpoint e being undefined. When x is removed from the candidate set of C, x can be assigned to any cell in RK and is not necessarily assigned as value to any cell Cg in group G. It follows that endpoint e being off, endpoint e1 is undefined.
The same reasoning applies when cell C is member of B-RK, exchanging row/column RK with block B.
QED

Naked-plus Endpoint


The area-link definition of Group Endpoint section can be extended with a naked-plus area N+ similar to the group extension of Group Endpoint section. The naked-plus area N+( A, Q, y) is defined as an extension to naked area N( A, Q), (see section 4.3), where next to the candidate set Q an additional candidate y exists, not present in Q. In the area N( A, Q) at least one extension cell C+ exists where y is part of the candidate set of C+. The size of N+ is equal to the size of Q. N+ is an example of an Almost Locked Set (ALS) (see section Almost Locked Set). Next to the naked-plus area the extension area E( A, y) is defined consisting of all extension cells C+ with y in their candidate set which are part of N+. In Figure 34 two N+ examples are shown:
  1. the N+ area with Q = { 4, 5, 6} is defined by set {C(4,6), C(5,6), C(7,6)} and additional candidate 8 in cell C( 7, 6). The extension area E( R6, 8) is defined by {C+( 7, 6)}. The removal of candidate 8 from cell C( 7, 6) leads to the emergence of a naked area N in row R6, with candidate set Q = { 4, 5, 6}.
  2. the N+ area with Q = {2,3,4} is defined by set { C( 2,2), C( 2,3), C( 2, 4)} and additional candidate 1 in the candidate set of cells C( 2, 2) and C( 2, 3). The extension area E( K2, 1) is defined by {C+( 2, 2), C+( 2, 3)}. The removal of candidate 1 from the candidate set of cells C( 2, 2) and C( 2, 3) leads to the emergence of a naked area N in column K2 with candidate set Q = {2,3,4}.

For given area A, for all x which are member of Q, and candidate y not in Q, a strong area-link is defined between:

For given area A and given candidate x in Q, a weak area link is defined between:

A weak area link in y not member of Q, is defined between:

Remark that a chain involving a naked-plus area is forcibly an AIC-chain because the strong link in the naked-plus area involves two candidates: one candidate in Q, and one candidate y which is not a member of Q.
The chain endpoints can be extended with a naked-plus endpoint and an extension endpoint. A naked-plus endpoint with candidate set Q,
An extension endpoint with candidate y,

The compact chain notation (column, row)<link>, and G(A, B)<link> can be extended with N(A, Q)<link> and E( A, y)<link>
  1. A naked-plus endpoint is represented in a chain with its area A, its naked candidate set Q, as N( A, Q).
  2. An extension endpoint is represented in a chain with its area A, its external candidate y as E( A, y).

For textual notation the naked-plus endpoint is represented as e( N+, x), where x is a member of Q. The extension endpoint is represented as e( E, y), where y is the external value and E contains all cells C+ which are part of N+ and where y is part of the candidate set of C+.
A strong link is defined between the naked-plus endpoint and the external endpoint. In given area A, weak links are defined between the naked-plus endpoint and endpoints e( C, x) where x is a member of Q, and C is a member of area ( A - N+). For all C+ weak links are defined between e(C+, y) and e( C, y) for all e( C, y) which are visible to e( C+, y).

Figure 34, Naked-plus links

In Figure 34, two N+ areas exist:
  1. First N+ area consists of three cells C( 2, 2), C( 2,3) and C( 2,4), with Q = {4,2,3} and external candidate y = 1. In area K2 the extension endpoint of e( E, 1) consists of the two endpoints e(C+( 2,2), 1)and e(C+( 2, 3),1). A strong link exists between the naked-plus endpoint e(N+, Q) and the extension endpoint e( E, 1). A weak link exists between naked-plus endpoint e(N+, 3) and the endpoint e(C( 2, 8), 3) where 3 is a member of Q. Weak links exist between endpoints e( C( 3, 1), 1) and e( C( 2,7), 1) on one side and the two endpoint e(C+( 2,2), 1) and e(C+( 2, 3),1) of extension endpoint E( K2, 1) on the other side. Both endpoints e( C( 3, 1), 1) and e( C( 2,7), 1) are visible to cells C+(2,2) and C+(2,3), and external candidate y=1 is a member of all candidate sets. The following segments are possible:
    • (3,1)<W1>E(K2,1)<S1,3>N(K2,{2,3,4})<W3>(2,8)
    • (2,7)<W1>E(K2,1)<S1,3>N(K2,{2,3,4})<W3>(2,8)
  2. The second N+ area consists of three cells C(4,6), C(5,6)) and C(7,6) with Q = {4,5,6) and external candidate y = 8. A strong link exists between extension endpoint e( E, 8) and the naked-plus endpoint e( N+, 8) in R6. Additionally, for all candidates x in Q, weak links exist between naked-plus endpoint e( N+, x) and external endpoints e( C(3,6), x)) and e(C(9,6),x) where x is a member of Q and x is a member of the candidate set of cells C( 3,6) and C( 9,6). Weak links exist between extension endpoint e( E, 8) and area endpoints e(C( 7,1),8), e(C(7,2),8) and e(C(9,6),8), because the cells C(7,1), C( 7,2) and C(9,6) are visible to cell C+(7,6), and external candidate y = 8 is a member of the candidate set of these cells. The following segments are possible with x a member of Q:
    • (3,6)<W4>N(R6,{4,5,6})<S4,8>E(R6,8)<W8>(7,1)
    • (3,6)<W4>N(R6,{4,5,6})<S4,8>E(R6,8)<W8>(7,2)
    • (3,6)<W4>N(R6,{4,5,6})<S4,8>E(R6,8)<W8>(9,6)
    • (9,6)<Wx>N(R6,{4,5,6})<Sx,8>E(R6,8)<W8>(7,1)
    • (9,6)<Wx>N(R6,{4,5,6})<Sx,8>E(R6,8)<W8>(7,2)
The Lemma 18 must be extended with a naked-plus endpoint and an extension endpoint. The terms extension endpoint and naked-plus endpoint are used to distinguish the endpoints.

Lemma 43: When the naked-plus endpoint of a strong link is on, the corresponding extension endpoint is off and vice versa.
Proof:
Assume the existence of a naked-plus area N+( A, Q, y). Suppose one of the extension cells C+ is a member of naked-plus area N+ and external candidate y, not part of Q, is present in C+.CS. In addition, suppose there is a strong link in area A between naked-plus endpoint e1( N+, Q), and an extension endpoint e2( E, y).
When the naked-plus endpoint e1 is on, all candidates in Q are assigned to as many cells C in N+. This implies that a candidate from Q is assigned to all cells C+ and y is removed from the candidate set of all cells C+. From the on/off definition of the extension endpoint follows that the extension endpoint e2 is off.
When the naked-plus endpoint e1 is off, all candidates in Q are removed from the candidate set of one of the cells C in N+. When the candidate y is not part of cell C, the candidate set becomes empty, leading to an impossible situation. When the candidate y is part of the candidate set of a cell C+ this cell C+ becomes a singleton in y after removal of Q. According to Lemma 1, y is assigned as valid value to C+ which means that e2 is on according to the definition.
When the extension endpoint e2 is on, y is assigned as valid value to a cell C+ in E. Consequently, no candidate from Q can be assigned as value to C+. Because C+ is also a member of N+ there is a cell C+ in N+ where the intersection of the candidate set of C+ with Q is empty. According to the definition, endpoint e1 is off. It follows that when extension endpoint e2 is on, naked-plus endpoint e1 is off.
When the extension endpoint e2 is off, y has been removed from the candidate set of all C+. Per definition N+ has become a naked area, and e1 is on.
QED

The Lemma 21 also needs to be extended for a naked endpoint. The terms area endpoint and naked-plus endpoint are used to distinguish the endpoints.

Lemma 44: When the naked-plus endpoint of a weak link is on, the corresponding area endpoints are off; when the naked-plus endpoint of a weak link is off, the corresponding area endpoints are undefined and vice-versa.
Proof:
For given area A, suppose there is a weak link in area A between naked-plus endpoint e1( N+, Q), with candidate set Q, and a candidate x in Q, and area endpoint e2(C, x) with C in (A - N+).
Suppose that naked-plus endpoint e1 is on. All candidates x in Q have been assigned as value to all cells in N. Consequently all candidates x in Q are removed from the candidate set of the cells in area( A - N+). Candidate x is accordingly removed from the candidate set of C. It follows that e2 is off.
Suppose that area endpoint e2 is on. The candidate x in Q has been assigned as value to C. Consequently, x is removed from the candidate set of all cells in A. In particular x is removed from the candidate set of all cells in N. Suppose y is not assigned to a cell C+. Then the number of candidates to be assigned to the cells in N+ is smaller than the size of N+, leading to an invalid game because one of the candidate sets becomes empty.Therefore y has to be assigned to one of the cells C+ of N+, thus rendering the candidate set of C+ empty. The intersection of Q with the candidate set of cell C+ is empty; according to the definition the endpoint e1 is off.
Suppose that naked-plus endpoint e1 is off. According to the definition there is one cell such that the candidate set of C does not contain any candidate from Q. This is only valid for a cell C+ in N+ that has candidate y in its candidate set, otherwise there is a cell with an empty candidate set. Because there may be more than one cell in A with x in its candidate set, x need not be assigned to C. Consequently the state of e2 is undefined.
Suppose that area endpoint e2 is off. The candidate x in Q can be assigned to a cell in N+ or to another cell in A. Consequently the state of e1 is undefined..
QED

Visibility Extensions



The visibility of a cell to a chain as defined in Endpoint Visibility section, needs to include the group endpoint, the naked-plus endpoint and the extension endpoint of the chain.

Formulas


A link for candidate x has two endpoints. And endpoint can be an area end-point, a cell endpoint, a group endpoint, a naked-plus endpoint, or an extension endpoint. Use is made of the formulas of Terminology and Rules sections and Basic Stratgies section.
A minor-plus area is defined as extension to the m( A, Q) definition:
m+( A, Q, y) = {C|C ∈ A ∧ C.CS-{y} ⊆ Q}

For given area A and candidate set Q, candidate y not in Q, a naked-plus area N+( A, Q, y) is defined as:
N+(A,Q,y) ⇔ (m+ (A,Q,y) ∧ |m(A,Q)|= |Q|)

The extension area E( A, y) is defined as:
E( A, y) ={C+| y ∈ C+.CS ∧ (∃N+: C+∈ N+)}

An item can be a cell, group, naked-plus area, or Extension area.
Links between items are defined as shown in the table below with L( item<candidate> item).

Description Corresponding formula
two cellsL(C1<x>C2) ⇔ (∃A ∈ AB: C1 ≠ C2 ∧C1,C2 ∈ A ∧ x ∈ C1.CS ∧ x ∈ C2.CS)
one cell L(C < x,y > C) ⇔ ( x,y ∈ C.Cs ∧ x ≠ y)
group and cell L(G(B,RK,x) < x > C) ⇔(C ∈ ((RK ∪ B) - (RK ∩ B)) ∧ x ∈ C.CS)
group and group (L(G(B1,RK,x) < x > G(B2,RK,x)) ⇔(∃ C1 ∈ (B1 ∩ RK) ∧ ∃ C2 ∈ (B2 ∩ RK): x ∈ C1.CS ∧ x ∈ C2.CS)
naked-plus and cell L( C < x > N+(A,Q,y)⇔ (C ∈ (A - N+) ∧ (x ∈ (C.CS ∩ Q))
extension and cell L(C < y > E(A,y)) ⇔ (∀C+ ∈ N+, y ∈ C+.CS: visible(C, C+))


Strong links are defined as special links:

Description Corresponding formula
two cellsL(C1<Sx>C2) ⇔ L(C1<x>C2) ∧ N{C | C ∈ A ∧ x ∈ C.CS} = 2
one cell L(C < Sx,y > C) ⇔ L(C < x,y > C) ∧ N{z | z ∈ C>CS} = 2
group and cell L(G(B,RK,x) < Sx > C) ⇔ L(G(B,RK,x) < x > C) ∧ (N{C | C ∈ RK ∧ x ∈ C.CS} = N{C | C ∈ G(B,RK,x) ∧ c ∈ C.CS} + 1)
group and group (L(G(B1,RK,x) < Sx > G(B2,RK,x)) ⇔ (L(G(B1,RK,x) < x > G(B2,RK,x)) ∧ (N{C|C∈RK ∧ x∈C.CS} = N{C|C∈G(B1,RK,x)} + N{C|C∈ G(B2,RK,x)})
naked-plus and extension L( E(A,y) < Sy,x > N+(A,Q,y)) ⇔ ∃ x ∈ Q:N+(A,Q,y) ∧ (∃ C+ ∈ N+|y ∈ C+.CS)


on/off states are defined.
The endpoints ep1 and ep2 of a link have state ( on, off) for given row/column RK, area A, block B, candidate x, and candidate set Q.

Description Corresponding formula
cell C on(C,x) ⇔ C.V = x
group G(B,RK,x) on(G(B,RK,x)) ⇔ (∃ C ∈ (B ∩ RK): C.V = x)
naked-plus N+(A,Q,y) on(N+(A,Q,y)) ⇔ (∀ x ∈ Q: (∃ C ∈ N+: C.V = x))
Extension E(A,Q) on(E(A,Q)) ⇔ (∃ C+ ∈ N+: C+.V = y)
cell Coff(C,x) ⇔ x ∉ C.CS
group G(B,RK,x) off(G(B,RK,x)) ⇔ (∃ C ∈ (B ∩ RK): x ∉ C.CS)
naked-plus N+(A,Q,y) off(N+(A,Q,y)) ⇔ (∀ x ∈ Q: (∃ C ∈ N+:C.CS ∩ Q = ∅))
Extension E(A,Q) off(E(A,Q)) ⇔ (∃ C+ ∈N+:y ∉ C+.CS)


For two given candidates x, y, a chain is a sequence of links: Chain = (L0L1,L2.....Ln)
Two sequential links with shared cell C are notated as: (Li,Li+1) = (C1<x>C, C<x>C2).

A nice chain is a chain such that any two sequential links: (Li,Li+1) = (C1<x>C2,C2<Sx>C3) or (C1<Sx>C2,C2<x>C3) or (C1<x>C2,C2<Sx,y>C2) or (C1<Sx>C2,C2<x,y>C2) or (C1<x,y>C1,C1<Sy>C2) or (C1<Sx,y>C1,C1<y>C2).

A nice chain is identified with square brackets [] specifying:

Nice chain = [ep(Cs,x), ep(Ce,y),weak/strong/even ], where looped nice chains come in three categories:

Description Corresponding formula
looped odd-length nice chain with strong breakpoint [ep(Cs,x), ep(Ce,y), strong] ∧ (Cs = Ce)
looped odd-length nice chain with weak breakpoint [ep(Cs,x), ep(Ce,y), strong] ∧ (Cs = Ce)
looped even-length nice chain [ep(Cs,x), ep(Ce,y), even] ∧ (Cs = Ce)


Lemmas are formally described for given link L(C1<x>C2), given chain [ep(Cs,x),ep(Cy,y), weak/strong/even], given area A, and candidates x, y.

Description Corresponding formula
Lemma 21, L(C1<x>C2) on(ep(C1,x) ⇒ off(ep(C2,x))
Lemma 21, L(C1<Sx>C2) (on(ep(C1,x)) ⇔ off(ep(C2,x))) ∧ (on(ep(C2,x)) ⇔ off(ep(C1,x)))
Theorem 2,[ep(Cs,x), ep(Ce,y),weak] on(ep(Cs,x) ⇒ off(ep(Ce,y))
Theorem 2,[ep(Cs,x), ep(Ce,y),strong] on(ep(Cs,x) ⇒ on(ep(Ce,y))
Lemma 32,[ep(Cs,x), ep(Ce,y),strong] (visible(ep(Ce,x,C) ∧ visible(ep(Cs,x), C) ⇒ x ∉ C.CS
Lemma 33,[ep(Cs,x), ep(Ce,y),strong] ((x ≠ y) ∧ (visible(Cs,Ce) ⇒ ((y ∉Cp.CS) ∧(x ∉ Ce.CS))
Lemma 34 ∀ Ce ∈ A: ∃ [ep(Cs,x),ep(Ce,y),weak]:x ∉ Cs.CS
Lemma 35 ∃ [ep(Cs,x),ep(Ce,y), strong] : x ∉ Cs.CS
Lemma 36,[ep(Cs,x), ep(Ce,y),strong] (Cs = Ce ∧ x = y) ⇒ Cs.V = x
Lemma 37,[ep(Cs,x), ep(Ce,y),weak] (Cs = Ce ∧ x = y) ⇒ x ∉ Cs.CS
Lemma 38 ∀ L(C1<z>C2) ∈ [ep(Cs,x),ep(Ce,y), even]:(on(ep(C1,z) ⇔ off(ep(C2,z))) ∧ (on(ep(C2,z)) ⇔ off(ep(C1,z)))
Lemma 39 ∀ L(C1<z>C2) ∈ [ep(Cs,x),ep(Ce,y), even]: ∀ A ∈ AB: C1 ∈ A ∧ C2 ∈ A:∀ C ∈ (A - {C1, C2}):x ∉ C.CS
Lemma 40 ∀ L(C1<p,q>C2) ∈ [ep(Cs,x),ep(Ce,y), even]: ∀ z ∈ C.CS-{p,q}: z ∉ C.CS


Popular Patterns

Many patterns are widely discussed because they can be easily recognized in a game. The Derived Patterns section below discusses most patterns and how they relate to a chain pattern. The Independent Patterns section discusses patterns which stand on their own which could not be related to a chain pattern.

Derived Patterns


This section discusses strategies which are derived from the chain strategies discussed in the Chains section.

X-Chain


A chain with no cell links or naked-plus links is called an X-chain. Because there are no cell-links or naked-plus links, the candidate of the links in the chain is always the same. All the strategies cited above for AIC chains are trivially valid for X-chain.

X-Wing


A special case of the X-Chain is the X-wing consisting of four area-links. The X-Wing is based on the two parallel rows and two parallel columns. Two links in the row/column are strong and the other two links in the column/row are weak. When the strong links lie in a row the weak links lie in column; and vice-versa. The X-Wing represents an even length looped nice X-Chain, where each link area is either a row, or a column. The X-Wing can easily be spotted in a game. For the two weak links with candidate x, it holds that all candidates x can be removed from the cells in the areas of the weak links, with exclusion of the cells constituting the X-Chain (Lemma 40). An example of an X-Wing is shown in Figure 35 with candidate 1.
The X-chain in Figure 35 can be written as (1,9)<S1>(9,9)<W1>(9,3)<S1>(1,3)<W1>(1,9).
Strong links exist for candidate 1 in rows 3 and 9. Weak links exist for candidate 1 in columns 1 and 9. Consequently the candidate 1 can be removed from the candidate sets of the cells in column 1 and column 9, with exception of the cells constituting the X-Wing. Special cases of the X-Wing is the finned X-Wing and the sashimi X-Wing which involve groups, discussed below.

Finned X-Wing


A finned X-Wing has the basic structure of a standard X-Wing (a candidate appears in exactly two cells in each of two rows, and those four cells form a rectangle in two columns). The key difference is that there is at least one extra candidate in a "finn" cell, which is located in the same block as one of the X-Wing&apot;s cells but is not part of the main X-Wing rectangle.
The finned X-Wing is a special case of the X-Wing where one of the cells of the X-Wing is replaced with a group. However, the chain is not looped any more because the weak link between the group and the start of the chain does not exist. The group is placed either in a row or in a column supporting one of the two strong links of the X-Wing. The chain is an open even length chain and the cells which are visible to both endpoints can be removed. Consequently the cells in the block of the group which are visible to the other endpoint of the chain can be removed (Lemma 32). Figure 35 shows a finned X-Wing with candidate 2.
The chain can be written as (7,4)<W2>(7,8)<S2>(5,8)<W2>G(R4,B5).
The chain starts at cell C( 7, 4) followed by a weak link to cell C( 7, 8), a strong link to endpoint cell C( 5, 8) and concludes at the group in row R4 and block B5. Candidate 2 can be removed from the candidate set of cell C( 5, 6) because it is visible to cell C( 5, 8) via Column 5 and visible to all cells of the group via block B5.

Figure 35, X-Wing in 1, finned X-Wing in 2, and sashimi X-Wing in 5

Sashimi X-Wing


The sashimi X-Wing is a X-Wing where the one of the corners is displaced along the strong link within the block, such that the strong link remains. The sashimi X-Wing is not a loop because the displaced corner breaks the loop. An example is shown in Figure 35 for candidate 5. The X-Wing corner that was originally present in cell C( 6, 2) has been displaced to cell C( 5, 2) over the area R2.
The chain can be written as (5,2)<S5>(3,2)<W5>(3,5)<S5>(6,5).
Another version of the Sashimi X-Wing is one where the displaced corner cell is replaced by a group along the strong link and within the block, while leaving the original corner cell empty. In Figure 35 this can be realized by adding a candidate 5 in cell C( 4,2).
The chain starts at cell C( 6, 5) with a strong link to cell C( 3, 5), a weak link to cell C( 3, 2) and concludes at C( 5, 2) with a strong link. The chain is an odd length X-chain with strong endpoints. The candidates 5 of cells C( 6, 1) and cell C( 6, 3) are visible to C( 5, 2) via block B2 and to cell C( 6, 5) via column K6. According to Lemma 32 the candidate 5 can be removed from the candidate sets of cells C( 6, 1) and cell C( 6, 3).

Skyscraper


The skyscraper pattern consists of a given candidate to be present in only two Cells in two Rows (columns) where one Cell in the first Row (column) and one Cell in the second Row (column) belong to the same Column (row). For given candidate x, two rows (or columns) contain only two candidates in other words have strong links. In addition two of those candidates are in the same column (or row). An example is shown in Figure 36 using the candidate 1. The pattern is quite similar to the sashimi X-Wing. The pattern can be represented with an AIC chain given by:
(3,3)<S1>(3,8)<W1>(8,8)<S1>(1,8).
This represents an odd length AIC chain with strong endpoints. Consequently the candidate 1 can be removed from the cells which are visible to the endpoints ep( C(3,3),1) and ep( C(8,1), 1). The candidate 1 can be removed from the candidate set of cells C( 1, 1), C( 2,1) and C( 7, 3).

Figure 36, Skyscraper

XY-Chain


A special AIC-chain is the XY-chain. The XY-chain interconnects cells with a candidate size of 2. The cell links are strong, while the area links are weak. The rules for removal of candidates in the areas of the weak links is essential for XY-chain loops. The rules for the removal of candidates for an open XY-chain with an even number of links and strong endpoints holds as well. In Figure 37, an example of a looped XY chain is shown with chain:
(5,4)<S5,1>(5,4)<W1>(5,8)<S1,2>(5,8)<W2>(6,9)<S2,3>(6,9)<W3>(9,9)<S3,4>(9,9)<W4>(9,4)<S4,5>(9,4)<W5>(5,4).
As a consequence:

Figure 37, XY-wing and looped XY-chain

XY-Wing


An XY-Wing is a three-cell pattern: a pivot cell and two wing cells, each holding exactly two candidates. The pivot shares one candidate with each wing; both wings share a third candidate. XY-wing is a special case of an open XY-chain with 3 strong cell links. In Figure 37, cell C( 7,3) is the pivot, and cells C( 1, 3) and C( 9,1 1) represent the wings. The XY-wing in Figure 37 is specified by the open XY-chain:

(1,3)<S5,6>(1,3)<W6>(7,3)<S6,3>(7,3)<W3>(9,1)<S3,5>(9,1)

This is an odd length AIC chain with strong endpoints.

XYZ-Wing


The XYZ-wing is a special AIC-chain including a naked-plus area ( see section 6.4.2). It includes three cells with 3 candidates {x, y, z} with one candidate say z that is part of the candidate set of all three cells. The pivot cell, Cp( kp, rp) has a candidate set that is equal to {x, y, z}, while the candidate set of the other two wing cells C1(k1,r1) and C2(k2,r2) are respectively {x, z} and (y, z}. C1 and Cp are member of one area A1, while C2 and Cp are member of a different area A2. Two naked-plus areas are possible for two different sets of Q:
  1. given by the set Q = {x, z} and extension candidate y in area A1; defining segment (k2, r2)<Wy>E(A1,y)<Sy,x>N(A1,{x,z})<Wx>(k1, r1).
  2. given by the set Q = {y, z} and extra candidate x in area A2: Defining the segment (k1,r1)<Wx>E(A2,x)<S x,y>N(A2,{ y, z})<Wy>(k2, r2).
Given that in both wings with 2 candidates in their candidate set exist, strong links exist in the wing cells between the two candidates:
(k1,r1)<S z,x>(k1,r1) and (k2,r2)<S z,y>(k2,r2).
In case 1) an AIC is given by:
(k1,r1)<S z,x>(k1,r1)<Wx>E(A2, x)<S x,y>N(A2,{y, z})<Wy>(k2,r2)<S y,z>(k2,r2)
In case 2) An AIC is given by:
(k2,r2)<S z,y>(k2,r2<Wy>)E(A1,y)<S y,x>N(A1, {x, z})<Wx>(k1,r1)<S x,z>(k1,r1).
In both cases there is an odd length nice AIC with strong endpoints. All cells in the intersection of areas A1 and A2 are visible to both C1 and C2. Applying Lemma 32, candidate z can be removed from all cells in the intersection of areas A1 and A2. In Figure 38, the XYZ-wing is shown with pivot cell Cp(7,6) and candidate set {5,6,7} and cell C1(2,6) with candidate set {7, 6} and cell C2(9,4) with candidate set {5, 7}. An AIC chain with odd number of links and weak endpoint exists:
(2,6)<S 7,6>(2,6)<W6>E(B6,6)<S 6,5>N(B6, { 7,5})<W5>(9,4)<S 5,7>(9,4)
According to Lemma 32, when candidate 7 is on in C(2,6), then candidate 7 is off in cell C(9,4), and vice versa. Consequently candidate 7 can be removed from all cells that are visible to cells C(2,6) and C(9,4), which means all the cells in the intersection of R6 and B6.

Figure 38, XYZ wing with pivot cell C(7, 6) and candidate set {5,6,7}

Almost Locked Set (ALS)


An almost locked set is a set S of cells in a given area A, where the number of candidates of the union of the candidate sets of the cells in S is equal to the size of set S + 1. An ALS is the same as the naked-plus area. A combination of two ALS is used to eliminate candidates from related candidate sets. The concept of Restricted Common Candidate (RCC) is introduced. For two different ALS, ALS1 with set Q1, and ALS2 with set Q2, the RCC is candidate x such that for all cells C1 in ALS1 with endpoints ep( C1, x), all cells C2 in ALS2 with endpoint ep( C2, x), the endpoints ep( C1, x) are visible to endpoints ep( C2,x) and vice versa. Assume there also is candidate z that is a member of both Q1 and Q2. When x is assigned to a cell in ASL2, the candidates in Q1 are assigned to all cells in ASL1, and when x is assigned to a cells in ASL1, the candidates in Q2 are assigned to all cells in ASL2. The candidate z is assigned as valid value to one of the cells in either ASL1 or ASL2. Given there is a cell C that is not a member of ASL1 or ASL2, but with the candidate z in C.CS. Supposing the endpoint ep(C, z) sees all endpoints ep(C1, z) and ep(C2, z). Because z is assigned to either one of the cells C1 or to one of the cells C2, the candidate z can be removed from the candidate set of C.
Figure 39 shows an example of two ALS's. One ALS with Q = {4,5,6} occupies the cells C(4, 6), C( 5,6) and C(7, 6) with external candidate 8. The other ALS with Q = {1,5,3} occupies cells C(7, 2), C( 9, 2) and C(9, 3) with external candidate 8. The RCC is given by candidate 8 represented with a triangle. The candidate 5 in cell C(9, 6) is visible to all endpoints containing the candidate 5 in both ALS's. These endpoints are ep(C4, 6), 5), ep( C(5, 6), 5), ep(C(7, 6)), ep(C9, 2), 5) and ep(C(9,3), 5). The candidate 5 in cell C( 9, 6) can be removed. The ALS pattern is equivalent to an open AIC where there is a weak link with candidate y between two naked-plus endpoints N( A1, Q1, y) and N+( A2, Q2, y). A given x in both Q1 and Q2 and member of the candidate set of cell C can be removed from C when is a member of area A1 and area A2, as explained in the Visibility Extensions section where visibility to naked-endpoints is explained. In Figure 39 the odd AIC chain with strong endpoints is given by:
N(R6,Q1)<S 5,8>E(R6,8)<W8>E(B3,8)<S 8,5>N(B3, Q2).
The candidate set of cell C( 9, 6) contains candidate 5 and is visible to all cells with candidate 5 in both naked-plus areas N( R6, Q1, 8) and N+( B3, Q2, 8). Thus candidate 5 can be removed from cell C( 9, 6).

Figure 39, ALS example

Empty Rectangle


he Empty Rectangle (ER) is a manifestation of a looped X-chain with a group. It is relatively easy to spot and therefore worthwhile as solution technique. When a given candidate x occurs more than two times in a block and is restricted to one row and one column, an ER exists. The ER is composed of four cells with a candidate set that does not contain x. Remark, values may be assigned to none, a part, or all four of the four ER cells. The four ER cells are pairwise aligned in two rows and two columns. In Figure 40 the Empty Rectangle configurations are shown. The empty cells show the column and row where at least three candidates x can be found. The empty cells are tagged with Empty Rectangle Lines (ERL). The filled cells cannot contain the candidate x. The row and column intersect at one point, Empty Rectangle Intersection (ERI), indicated with a "+" sign. Because there are more than two candidates x, a column or row tagged with an ERL will contain a group. According to Lemma 41 the group has a strong link with the other cells in the block containing x.

Figure 40, Empty Rectangles (ER) with their ER Lines (ERL)

The pattern consists of finding a strong link in x in a row or column outside the ER block such that one of the cells of the link is visible to the ERI cell. Assume a strong link exists between cells C1 and C2 such that cells C1 are visible to the ERI. When there is a cell C3 that is visible to cell C2 and the ERI, a X-cycle in candidate x can be constructed with two weak links at cell C3. According to Lemma 37, x can be removed from the candidate set of cell C3.
In Figure 41 an empty rectangle is shown with the accompanying odd-length looped chain with candidate 4. The empty rectangle is situated in block B6. The ERL's are drawn in column K9 and row R6. The ERI is found at cell C(9, 6). Accordingly, the three candidates 4 are found in column K9 and row R6. A strong link in 4 is found between cells C(4, 6) and C( 4, 9) where C(4, 6) is visible to the ERI C( 9, 6). The group in 4 is formed by C(9, 6) and C( 7, 6). A strong link exists between cell C( 9,4) and the group. The looped chain is specified as:
(9,9)<W4>(9,4)<S4>G(R6, 4)<W4>(4,6)<S4>(4,9)<W4>(9,9).
Leading to an odd-length looped chain with a weak breakpoint. According to Lemma 37, the candidate x can be removed from the candidate set of C(9,9).

Figure 41 Example of empty rectangle, candidate 4, and looped chain

Independent Patterns


This section discusses popular patterns which cannot readily be expressed in chains.

Swordfish


A SwordFish is a is a 3x3 nine cell pattern where a candidate is found on three different rows (columns) which line up in a column( row). An example is shown in Figure 42 using candidate 2. Cells are found in the 3 columns Ki with i = 1,2,3 and in no other column. They are aligned in rows Ri, with i = 1,2,3. Each of the three columns contain exactly three cells with the candidate 2 in their candidate set. The rows may contain cells outside the three columns with the candidate 2 in their candidate set.
The consequence of this pattern that at the three intersections of the columns and the rows the candidate 2 can be assigned as valid value. The candidate 2 can be removed from the candidate set of all other cells in the rows. For example in Figure 42, candidate 2 is assigned as valid value to cells C(2, 4), C( 6, 6) and C( 9, 9) and candidate 2 is removed from the candidate set of cells C(1, 4), C( 4,4), C( 8,6), and C(5, 9).

Figure 42, Swordfish example

The swordfish pattern for a column is defined as:


Lemma 45: A (column) swordfish pattern has as consequence that candidate x can be removed from the candidate set of all cells in all rows Ri with exception of the pattern cells.
Proof:
Without loss of generality choose a column Kx with x=1,2,3, and set the value of one cell Cx in row Rx, with x = 1,2,3, equal to x. The consequence is that all candidates x in row Rx are removed following the sudoku rule. Given that within the three columns, x is present in 2 or three rows, the possibility exists that there is a column Ky with y = 1,2 3 and y ≠ x, with one cell Cy with x in its candidate set. This implies that Cy is a singleton and x must be assigned as value to Cy. In the latter case one cell Cz remains with a singleton in x, and x must be assigned as value to Cz. Suppose that after assigning x as value to Cx two columns remain with each two cells with x in their candidate set. This is necessarily the X-Wing pattern which necessitates the assigning of x to the cells in both remaining columns.
Independent of the choice of Cx, x is assigned as value to a cell in each of the three columns and has as consequence the removal of the candidate x from the three corresponding rows.
QED

Lemma 46: A row swordfish pattern has as consequence that the candidate x can be removed from the candidate set of all cells in all columns Ki with exception of the pattern cells.
Proof:
Same as proof of Lemma 45, with columns and rows interchanged
QED

Jellyfish


A jellyfish extends the swordfish with a 4x4 pattern. The candidate elimination and proof is the same as in the Swordfish section with the number of colmns (rows) equal to 4 instead of 3.

BUG + 1


This pattern is based on the assumption cited in Asymmetry Strategies that there is only one solution and symmetry should be avoided.
BUG stands for Bi-value Universal Grave. It is has two properties:
  1. Every cell has only two candidates
  2. A given candidate appears twice in an area or not at all.
When the candidate set of all non-assigned cells has size 2, and every candidate appears exactly twice in any row, column, and block the game has two solutions. By simply assigning one value from the pair in a candidate set, a solution can be found. Another solution is then found by reversing the selection, leading to two solutions.
A game with one solution in which the size of the candidate set of the unassigned cells is equal to two, needs at least one cell, C, with a candidate set of size 3. Elimination of candidates is found by looking at the weak links in the associated area of C. When for a given candidate out of the set of 3, there is a an area with a weak link, then this candidate must be assigned as value to the cell C.

Glossary

Symbol Explanation
P the set of numbers 1,2,3,4,5,6,7,8,9 used to identify areas and candidates
C identifies a cell in the sudoku board.
r identifies a row with number r
k identifies a column with number k
b identifies a block with number b
C( k, r) identifies the cell with column number k and row number r.
C.CS is the candidate set of cell C.
C.V is the value assigned to cell C.
Rr is the area of cells in row r.
Kk is the area of cells in column k.
Bb is the area of cells in block b.
A identifies an area which can be a row Rr, a column Kk or a block Bb.
x, y, z, q are candidates in the candidate set of a cell
XY is the set of candidates { x, y}
XYZ is the set of candidates { x, y, z}
AA( k, r) is the associated area of cell C( k, r).
SA( A, B) is the set of cells in the intersection of area A and block B.
CA( x, A) is the set of cells within area A which contain x in its candidate set.
Q is the candidate set of a major, minor or naked area.
M( A, Q) is the major area with candidate set Q in area A.
m( A, Q) is the minor area with candidate set Q in area A.
N( A, Q) is the naked area with candidate set Q in area A.
H( A, Q) is the hidden area with candidate set Q in area A.
N+( A, Q, y) is the naked-plus area composed of N( A, Q) and additional candidate y not in Q.
E( A, y) is the extension area accompanying naked plus are N+(A, Q, y) and is composed of the cells C+ which are part of N+, and where y is part of C+.CS.
G( B, RK, x) is the group of cells belonging to SA( RK, B) with x in its candidate set.
UR Unique Rectangle
ER Empty Rectangle
ERL Empty Rectangle Lines


Acknowledgements

The sites sudokuwiki.org and sudoku.megastar.fr have inspired me to look in closer detail at the sudoku game and its strategies. This text discusses most of the strategies explained by those sites. The intention of this text is to explain the relations between the strategies and the common set theory reasoning underlying them.