Sysudoku Traces

A distinctive feature of Systematic Sudoku is its efficient tracing.  A Sysudoku trace is a text recording of the solving actions, the effects, that follow logically from a solving event, the cause. The trace enables the reader to reproduce these follow up actions.

In the blog posts and Guide examples, trace pictures document the Sysudoku basic generation of candidates and the transitions from grid to grid in solution paths. Tracing is itself a solving tool. By tracking moves, it enables the human solver to fully exploit easier placements before undertaking harder ones.

Sysudoku traces record the solving moves very compactly, by including only the information required when the reader sees the grid at every move. With the current grid before you, if you are told that the next move is a new clue or slink in a box,  you don’t need to be told which cell of a box is affected by the move. The trace writer can also leave out the reason why the move can be made. That is to say, why it is a logical consequence rather than a guess. You read the move, determine the cell and supply the rationale. Reading Sysudoku traces is the best way to learn Sysudoku marking.

But how are you going to see the grid on every move? It isn’t practical to publish hundreds of 81 x 81 grids.  The answer is simple. To read a trace, you update your own copy of the grid at every move.

The Guide on the menu bar walks you through basic marking, with complete traces. If you have no experience with Sudoku, start with the beginner’s page.  With that much of a start, you can figure out almost everything in a Sysudoku trace on your own.  Look over the information below, however, and return to it as needed.

A trace is a record of causes and effects. Marking the solution is treating the current move as a cause, posting its effects on the grid and listing them in the trace.  The next marking step is to select the next cause. Effects become causes left to right on the list, but a cause selection process guarantees that all marking effects of each cause are processed before the next cause, if there is one, is selected.

Without actually reading them, lets interpret here what several review traces are saying. Our first example is the basic trace of puzzle 80 from the review of Worlds Hardest Sudoku Book, from the post of May 8, 2018. The puzzle itself is the left one at the end of the previous post of May 1.

This is a bypass trace. In the bypass, we seek only clues and other closed sets. With boxes identified by compass points and a center box C, clues are marked by the box and value. The top line of the trace carries the “first” causes, in numerical order.

The last, rightmost cause has two values for the South box. That marks a closed set, a naked pair. Actually, it was added before I realized the SouthEast 6 had triggered a collapse. The naked pair S79 was never used as a cause.

The second line has two effects from different causes. The first is another closed set. The unit in which it is closed is row 5.  The separator ‘s’ is needed between the row or column number and the closed set values. It stands for “subset”.

The effect of the Southeast box placement is a 3-fill (Beginning Basic). The square brackets signal that the three enclosed values are the missing three values to be placed in three cells of row 9. In this case the 3-fill is resolved by placements in the South and Southeast boxes.  We know that only the first effect became a cause before the collapse. The effects of this cause stretch down and across the page. We also know that its first effect, the Center box placement, had no resulting effect.

We can also see in this example how a trace keeps effects in reserve to become causes as needed. When an effect becomes a cause, all of its immediate effects go on its list. These effects get their turn at causing after all effects of causes earlier in the list have been processed.

You can also see where, when a list is fully “caused”, the solver/trace writer moves back up the chain to the first unsatisfied list to select the next cause.  This cause selection process makes a “tree traversal”, covering every possible effect until effects are no longer needed.

Another example trace from the World’s Hardest Sudoku Book review illustrates two more trace forms that occur in Sysudoku basic, the procedure for accumulating candidates.

The bypass gains only a pair of naked pairs. Next is box marking, which generates a list of first causes for each number. Clues are rare in box marking, but slink marks are frequent. Slinks are designated by ‘m’, an aligned triple across a chute, by ‘t’. In box marking and line marking, letters are added to designate naked (n)and hidden (h) closed sets.  A few other abbreviations are used occasionally, such as  ‘bxl’ for box/line interaction, and ‘hdx’ for hidden dublex.

In the line marking, lines with the fewest number of unfilled cells are selected  first, rows before columns. Therefore in the line marking trace, there is a list for each number of unfilled cells. In the above, line marking started with four, but the effects of filling column 8 and rows 3 and 5 reset the ordering. When the rows were all filled, all cells were filled, but line marking operations were completed on columns not yet reviewed for line slinks and closed sets, a process designated as closure, or “Close:”.

Traces are published in posts when necessary to document the involved follow up from placements and eliminations to the next grid diagram. These generally begin with a list of effects made clear by the text of the post.

The shape of a trace is very dependent on the ordering of effects in lists. If you are interested in checking your traces against Sysudoku posts, then  you get a better match by following the blog conventions. Otherwise it doesn’t matter.  In a list of effects, I put effects on the same value first, then by increasing value regardless of location, clues before subsets, and 3-fills last.

The Sysudoku Trial Trace

There is a specialized sysudokie trace that traverses lists breadth first, instead of depth first, and for a good reason. The trial trace lists one line of effects for each cause on each list on the same line, left to right, before going to the next line.

It explores all immediate effects on the same logical level (trace line) simultaneously, by completing only one line of effects before moving on to the next cause in the list. Considering a line to show a level of logic, this is casting for a contradiction in the smallest number of levels. Ultimately, most of the results will be discarded.  The point is to find the shortest logical path from the assertion on trial to a possible contradiction.

Here is a trial trace from the solving of Insane v.4, b.7, N.5 in review of the Insane collection of :

The trial is on the exact combination 834 in West box, column 1, where 4 is given. The effects of W8 continue only one level, but for W3, inferences run parallel in five directions. When a contradiction is found on the 6th level of inference, then we can demonstrate how many levels were actually required by following only the necessary paths.

Here the contradiction is a second 9 in row 3.

In Sysudoku, we display these shortest and simplest paths graphically with arrows clue to clue and dashed curves to necessary eliminations.

Here is the corresponding graphic display for this case.

If anything, this shows why the contraction could not be spotted without a traced trial.



2 Responses to Sysudoku Traces

  1. Georges Kaufman says:

    Not pertaining to this, I just wanted to post that I found an alternate solution to puzzle #6 in JB Nakamoto’s Extreme Level Diabolically Difficult Puzzles. Didn’t think that could happen!

    • Sudent says:

      It can happen, but very rarely does now, because puzzle composers can quickly check with their brute force solvers before publishing. More frequently, we make a tiny mistake in transcribing or loading the puzzle. Andrew Stuart’s Sudokuwiki solver has an option to run his brute solver and tell you how many solutions are in there. I say “brute force” because many solvers today emulate human solving, which is entirely different. As expected, they just give up when the multiple defeats all the programmed methods.

      Its interesting and fun to dig them out yourself, just once. Look at post 7/2/13 for a demo on using coloring trials to uncover multiples and display them.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s