Forcing X-Chain
A Forcing X-Chain is an open single-digit forcing chain that alternates strong and weak links to propagate a candidate's truth value across the grid. A strong link means a digit is confined to exactly two cells in a house — one must be true. A weak link means a digit appears in multiple cells but at most one can be true. The chain starts at a cell where the candidate is assumed true (or false) and follows alternating links to a conclusion cell. If the chain reaches a cell where the candidate must be false, any cell that sees both the start and the conclusion can be eliminated.
What is a Forcing X-Chain?
A Forcing X-Chain is a single-digit forcing chain that does not form a closed loop. It operates on one candidate value throughout the entire chain. The chain is built from alternating strong and weak links on that digit. A strong link exists when a digit can only go in two cells within a house (row, column, or box) — exactly one must be true. A weak link exists when a digit appears in multiple cells in a house, but at most one can be true. The chain starts at a cell where you assume the candidate is either true or false, then follows the links: if the start cell is true, a weak link forces all other cells in that house to be false for the digit; a strong link then forces the other cell in its pair to be true; and so on. The chain continues until it reaches a conclusion. If the chain starts by assuming the candidate is true in the start cell and reaches a contradiction (the candidate must also be false somewhere it was forced true), the start cell cannot hold the candidate. If the chain starts by assuming the candidate is false and reaches a cell where it must be true, any cell that sees both the start and conclusion cells can be eliminated. Unlike X-Cycles, which are closed loops, Forcing X-Chains are open chains — they have a start and an end, and the elimination depends on what the chain proves at the end.
How to spot it
To find a Forcing X-Chain, pick a digit and scan for strong links — houses where that digit is confined to exactly two cells. Trace chains by alternating between strong and weak links: from a strong link, pick one end and assume the digit is true there; the weak link in that house forces the digit false in all other cells of the house; if one of those false cells is part of another strong link, the other cell in that pair must be true; continue alternating. The chain can also start by assuming a cell is false: if a cell with the candidate is the only non-eliminated candidate in a house, it must be true (a hidden single), which starts a chain. Look for chains that end at a cell where the conclusion contradicts the assumption, or where two branches converge on the same cell with the same polarity. The key difference from an X-Cycle is that the chain does not need to close — the elimination comes from the logical conclusion at the end of the chain, not from the bidirectional polarity of a loop.
The logic
A Forcing X-Chain works by propagating a truth value through alternating strong and weak links on a single digit. Assume the candidate is true in the start cell. A weak link in the same house forces the candidate false in all other cells of that house. If one of those false cells is part of a strong link (the digit has exactly two cells in another house), the other cell of that strong link must be true. From that true cell, another weak link forces false in its house, and so on. The chain alternates true and false at each step. If the chain reaches a cell that must be both true and false — a contradiction — the initial assumption was wrong, and the candidate can be eliminated from the start cell. Alternatively, if the chain starts by assuming the candidate is false in the start cell, and propagates to a cell where the candidate must be true, then any cell outside the chain that sees both the start (false) and conclusion (true) cells cannot hold the candidate — if it did, it would force the start cell true, contradicting the assumption. The logic is a direct application of strong-link and weak-link semantics, extended into an open chain rather than a closed loop.