
Dokumentation: Sudoku
Get Sudoku Puzzle
This program contains several thousand Sudoku puzzles. You can choose difficulty level: Simple, Easy, Medium, Hard or Diabolic. Additionally one can create own puzzle by choosing Empty or import one.
After getting new Sudoku puzzle you see a picture like this:
The number of the current puzzle in our system is also shown:
You can always get this puzzle back by activating the Get it button.
Test Area
Clicking on the digit buttons in the Test Area shows all possible positions where this digit is not yet colliding with already existing values. The button and the fields turn yellow. If all the 9 values are placed, the button turns red.
Clicking on the Hint button in the Test Area gives a Hint on next possible placement.
Clicking on the Analyze button in the Test Area shows all possible values in the empty fields.
Clicking on the Solution button in the Test Area shows the solution to the current puzzle.
Show possible positions
Clicking on the digits in the Test Area area shows all positions where this digit is not yet colliding with already existing values:
As can be seen there is a row and a sector, where there is only one possible placement of chosen digit.
Get Hint
Clicking on the Hint button in the Test Area gives in green a Hint on next possible placement:
A text box shows, explaining why the value can be placed:
All other possible placements of the chosen value are shown in yellow and the possible values in all empty fields are also shown
If the program cannot find logical explanation for next placement, the fields with only 2 possible values are shown. This gives a possibility to export the current state of the puzzle and chose one of possible values. If an error is encountered, impoting the exported value gives possibility to continue with the second value.
Analyze
Clicking on the Analyze button in the Test Area shows all possible values in the empty fields:
Solution
Clicking on the Solution button in the Test Area shows the solution for offered sudoku puzzles. This does not work for imported puzzles.
Import / Export
Clicking on the Export button extracts the current state of the puzzle:
From the same box you can import previously exported sudoku's or puzzles from other sources. The format for import is following:
 Empty fields shall be coded as 0 or  sign
 The known values shall be placed in their positions
 Each row shall be delimited with new line
 Spaces can be placed between elements
History
Sudoku (数独, sūdoku), also known as Number Place or Nanpure, is a logicbased placement puzzle. The aim of the puzzle is to enter a numerical digit from 1 through 9 in each cell of a 9×9 grid made up of 3×3 subgrids (called "regions"), starting with various digits given in some cells (the "givens"); each row, column, and region must contain only one instance of each numeral. Completing the puzzle requires patience and logical ability.
Completed sudoku puzzles constitute a type of Latin square, but with the additional constraint on the contents of individual regions. Leonhard Euler is sometimes cited as the source of the puzzle based on his work with Latin squares, but Euler made no changes to their rules, and examples of such squares were engraved in ancient architecture as numerological talismans. Arabic numerologists had already compiled an exhaustive list of order 3 through order 9 GraecoLatin squares in the Jabirean Corpus by 990 AD.
The modern puzzle Sudoku was invented in Indianapolis in 1979 by Howard Garns. Garns contributed his puzzles to Dell Magazines, which published them under the moniker "Number Place". Interest in Sudoku surged from a revival in Japan in 1986, when puzzle publisher Nikoli discovered the game in older Dell publications, and republished the format leading to widespread international popularity in 2005.
Courtesy Wikipedia, the free encyclopedia
Introduction
The name "Sudoku" is the Japanese abbreviation of a longer phrase, "Suuji wa dokushin ni kagiru" (数字は独身に限る), meaning "the digits must remain single". It is a trademark of puzzle publisher Nikoli Co. Ltd. in Japan. In English it is usually spoken with an Anglicised pronunciation. Other Japanese publishers refer to the puzzle as Number Place, the original U.S. title, or as "Nampure" for short. Some nonJapanese publishers spell the title as "Su Doku".
The numerals in Sudoku puzzles are used for convenience; arithmetic relationships between numerals are irrelevant. Any set of distinct symbols will do; letters, shapes, or colours may be used without altering the rules. In fact, ESPN published Sudoku puzzles substituting the positions on a baseball field for the numbers 19. Dell Magazines, the puzzle's originator, has been using numerals for Number Place in its magazines since they first published it in 1979.
The attraction of the puzzle is that the rules are simple, yet the line of reasoning required to solve the puzzle may be complex. The level of difficulty can be selected to suit the audience. The puzzles are often available free from published sources and may be custommade using software.
Courtesy Wikipedia, the free encyclopedia
Solution methods
Scanning
Scanning is performed at the outset and throughout the solution. Scans need be performed only once in between analyses. Scanning consists of two techniques:
 Crosshatching: the scanning of rows to identify which line in a region may contain a certain numeral by a process of elimination. The process is repeated with the columns. For fastest results, the numerals are scanned in order of their frequency. It is important to perform this process systematically, checking all of the digits 1–9.

The 3×3 region in the topright corner must contain a 5. By hatching across and up from 5s located elsewhere in the grid, the solver can eliminate all the empty cells in the topright corner which cannot contain a 5. This leaves only one possible cell for a 5 (highlighted in green).

 Counting 1–9 in regions, rows, and columns to identify missing numerals. Counting based upon the last numeral discovered may speed up the search. It also can be the case, particularly in tougher puzzles, that the best way to ascertain the value of a cell is to count in reverse—that is, by scanning the cell's region, row, and column for values it cannot be, in order to see what remains.
Advanced solvers look for "contingencies" while scanning, narrowing a numeral's location within a row, column, or region to two or three cells. When those cells lie within the same row and region, they can be used for elimination during crosshatching and counting. Puzzles solved by scanning alone without requiring the detection of contingencies are classified as "easy;" more difficult puzzles cannot be solved by basic scanning alone.

Marking up
Scanning stops when no further numerals can be discovered, making it necessary to engage in logical analysis. One method to guide the analysis is to mark candidate numerals in the blank cells. There are two popular notations: subscripts and dots.
 In the subscript notation the candidate numerals are written in subscript in the cells. However, original puzzles printed in a newspaper usually are too small to accommodate more than a few digits of normal handwriting. Thus, solvers often create a larger copy of the puzzle.

A method for marking likely numerals in a single cell by the placing of pencil dots. To reduce the number of dots used in each cell, the marking would only be done after as many numbers as possible have been added to the puzzle by scanning. Dots are erased as their corresponding numerals are eliminated as candidates.

 The second notation uses a pattern of dots in each square, where the dot position indicates a number from 1 to 9. The dot notation can be used on the original puzzle. Dexterity is required in placing the dots, since misplaced dots or inadvertent marks inevitably lead to confusion and may not be easily erased.
An alternative technique is to "mark up" the numerals that a cell cannot be. A cell will start empty and as more constraints become known, it will slowly fill until only one mark is missing. Assuming no mistakes are made and the marks can be overwritten with the value of a cell, there is no longer a need for any erasures.

Analysis
The two main approaches to analysis are "candidate elimination" and "whatif".
Candidate elimination
In "candidate elimination", progress is made by successively eliminating candidate numerals from cells to leave one choice. After each answer has been achieved, another scan may be performed—usually checking to see the effect of the contingencies. One method works by identifying "matched cells". If precisely two cells within a scope (a particular row, column, or region) contain the same two candidate numerals (p,q), or if precisely three cells within a scope contain the same three candidate numerals (p,q,r), these cells are said to be matched. The placement of these numerals anywhere else within that same scope would make a solution impossible; thus, the candidate numerals (p,q,r) scope can be deleted. When all else fails, ask the question, 'Would entering the eliminated numeral prevent completion of the other necessary placements?' If the answer to the question is 'Yes,' then the candidate numeral in question can be eliminated.
The "whatif" approach
In the "whatif" approach (also called "guessandcheck", "bifurcation", "backtracking" and "Ariadne's thread"), a cell with two candidate numerals is selected, and a guess is made. The steps are repeated unless a duplication is found or a cell is left without a possible candidate, in which case the alternative candidate must be the solution. For each cell's candidate, the question is posed: 'will entering a particular numeral prevent completion of the other placements of that numeral?' If the answer is 'yes', then that candidate can be eliminated. The whatif approach requires a pencil and eraser or a good layout memory.
Computer solutions
Computers are, of course, capable of exhaustively searching a Sudoku puzzle for its solution(s). However, in general this sort of approach will only be achievable in reasonable time if (a) the puzzle is relatively small in size (order3 or 4, for example), and/or (b) the puzzle has a relatively high proportion of the cells already filled in correctly. Indeed, from a Computer Science perspective, Sudoku has been proven to belong in the class of NPComplete problems, implying that we cannot hope to find a polynomially bounded algorithm (i.e. a program that will always be able to return the correct answer in a reasonable amount of time) for all possible puzzles.
Given the above, there are two general approaches taken in the creation of serious Sudokusolving programs: Human solving methods and rapidstyle methods.
p>Humanstyle solvers will typically operate by maintaining a markup matrix, and search for contingencies, matched cells, and other elements that a human solver can utilize in order to determine and exclude cell values.
Many rapidstyle solvers employ backtracking searches, with various pruning techniques also being used in order to help reduce the size of the search tree. Note, however, that regardless of whether pruning methods are used or not, it is still the case that this sort of methodology might still take an unreasonable amount of time for many larger Sudoku problems. One alternative to this method is to empoly stochasticbased optimisation methods instead such as Simulated Annealing, which has recently been shown to perform well on various instances of orders 3, 4 and 5.
Finally, another alternative uses finite domain constraint programming. A constraint program specifies the constraints of the puzzle (the fact that every number in each row, each column, and each 3×3 region must be unique, and the provided "givens"); a finitedomain solver applies the constraints successively to narrow down the solution space until a solution is found. Backtracking or stochastic optimisation techniques may be applied when alternate values cannot be excluded.
Rapid solvers are preferred for trialanderror puzzlecreation algorithms, which allow for testing large numbers of partial problems for validity in a short time; humanstyle solvers can be employed by handcrafting puzzlesmiths for their ability to rate the challenge of a created puzzle and show the actual solving process their target audience can be expected to follow.
Courtesy Wikipedia, the free encyclopedia
Difficulty ratings
The difficulty of a puzzle is based on the relevance and the positioning of the given numbers rather than their quantity. Surprisingly, the number of givens does not always reflect a puzzle's difficulty. Computer solvers can estimate the difficulty for a human to find the solution, based on the complexity of the solving techniques required. Some online versions offer several difficulty levels.
Most publications sort their Sudoku puzzles into four or five rating levels, although the actual cutoff points and the names of the levels themselves can vary widely. Typically, however, the titles are synonyms of "easy", "intermediate", "hard", and "challenging". Another approach is to rely on the experience of a group of human test solvers. Puzzles can be published with a median solving time rather than an algorithmically defined difficulty level.
Courtesy Wikipedia, the free encyclopedia
Construction
Building a Sudoku puzzle can be performed by predetermining the locations of the givens and assigning them values only as needed to make deductive progress. This technique gives the constructor greater control over the flow of puzzle solving, leading the solver along the same path the compiler used in building the puzzle. Great caution is required, however, as failing to recognize where a number can be logically deduced at any point in construction—regardless of how tortuous that logic may be—can result in an unsolvable puzzle when defining a future given contradicts what has already been built. Building a Sudoku with symmetrical givens is a simple matter of placing the undefined givens in a symmetrical pattern to begin with.
Nikoli Sudoku are handconstructed, with the author being credited; the givens are always found in a symmetrical pattern. Dell Number Place Challenger (see Variants below) puzzles also list authors. The Sudoku puzzles printed in most UK newspapers are apparently computergenerated but employ symmetrical givens; The Guardian famously claimed that because they were handconstructed, their puzzles would contain "imperceptible witticisms" that would be very unlikely in computergenerated Sudoku.
Courtesy Wikipedia, the free encyclopedia
Variants
Even though the 9×9 grid with 3×3 regions is by far the most common, variations abound: sample puzzles can be 4×4 grids with 2×2 regions; 5×5 grids with pentomino regions have been published under the name Logi5; the World Puzzle Championship has previously featured a 6×6 grid with 2×3 regions and a 7×7 grid with six heptomino regions and a disjoint region. Larger grids are also possible, with Daily SuDoku's 16×16grid Monster SuDoku, the Times likewise offers a 12×12grid Dodeka sudoku with 12 regions each being 4×3, Dell regularly publishing 16×16 Number Place Challenger puzzles (the 16×16 variant often uses 1 through G rather than the 0 through F used in hexadecimal), and Nikoli proffering 25×25 Sudoku the Giant behemoths.

A nonomino Sudoku puzzle, sometimes also known as a Jigsaw Sudoku, for instance in the Sunday Telegraph
An extraregions Sudoku puzzle (Source: NRC Handelsblad)

Another common variant is for additional restrictions to be enforced on the placement of numbers beyond the usual row, column, and region requirements. Often the restriction takes the form of an extra "dimension"; the most common is for the numbers in the main diagonals of the grid to also be required to be unique. The aforementioned Number Place Challenger puzzles are all of this variant, as are the Sudoku X puzzles in the Daily Mail, which use 6×6 grids.
Puzzles constructed from multiple Sudoku grids are common. Five 9×9 grids which overlap at the corner regions in the shape of a quincunx is known in Japan as Gattai 5 (five merged) Sudoku. In The Times and The Sydney Morning Herald this form of puzzle is known as Samurai SuDoku. Puzzles with twenty or more overlapping grids are not uncommon in some Japanese publications. Often, no givens are to be found in overlapping regions. Sequential grids, as opposed to overlapping, are also published, with values in specific locations in grids needing to be transferred to others.
Alphabetical variations have also emerged; there is no functional difference in the puzzle unless the letters spell something. Some variants, such as in the TV Guide, include a word reading along a main diagonal, row, or column once solved; determining the word in advance can be viewed as a solving aid. The Code Doku devised by Steve Schaefer has an entire sentence embedded into the puzzle; the Super Wordoku from Top Notch embeds two 9letter words, one on each diagonal. It is debatable whether these are true Sudoku puzzles: although they purportedly have a single linguistically valid solution, they cannot necessarily be solved entirely by logic, requiring the solver to determine the embedded words. Top Notch claims this as a feature designed to defeat solving programs.
Here are some of the more notable singleinstance variations:
 A threedimensional Sudoku puzzle was invented by Dion Church and published in the Daily Telegraph in May 2005
 The 2005 U.S. Puzzle Championship includes a variant called Digital Number Place: rather than givens, most cells contain a partial given—a segment of a number, with the numbers drawn as if part of a sevensegment display.
 The online journal Speculative Grammarian has published a number of linguisticsthemed Sudokulike puzzles called LingDoku, which require the solver to solve for two variables at once, including a simple 3x3 puzzle, and a slightly more complicated 4x4 puzzle.
A new variant without any given numbers for start comes up this summer (2006) from India by Yoogi Games, named GreaterThan or Comparison Sudoku. All rules of a standard Sudoku are the same, but you have to find out by comparisons the sequence of the digits (or letters if you want, but the symbols used must be in ascending order) from one through nine for each region. Therefore, each cell's border line inside every region is notched in the meaning of < (less than) – or vice versa.
Courtesy Wikipedia, the free encyclopedia
Mathematics of Sudoku
A completed Sudoku grid is a special type of Latin square with the additional property of no repeated values in any 3×3 block. The number of classic 9×9 Sudoku solution grids was shown in 2005 by Bertram Felgenhauer and Frazer Jarvis to be 6,670,903,752,021,072,936,960 (sequence A107739 in OEIS) : this is roughly 0.00012% the number of 9×9 Latin squares. Various other grid sizes have also been enumerated. The number of essentially different solutions, when symmetries such as rotation, reflection and relabelling are taken into account, was shown by Ed Russell and Frazer Jarvis to be just 5,472,730,538 (sequence A109741 in OEIS). Both results have been confirmed by independent authors.
The maximum number of givens provided while still not rendering the solution unique is four short of a full grid; if two instances of two numbers each are missing and the cells they are to occupy form the corners of an orthogonal rectangle, and exactly two of these cells are within one region, there are two ways the numbers can be assigned. Since this applies to Latin squares in general, most variants of Sudoku have the same maximum. The inverse problem—the fewest givens that render a solution unique—is unsolved, although the lowest number yet found for the standard variation without a symmetry constraint is 17, a number of which have been found by Japanese puzzle enthusiasts, and 18 with the givens in rotationally symmetric cells.
Courtesy Wikipedia, the free encyclopedia
