Sudoku Programmers Forum Index

 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister   ProfileProfile   Log inLog in          Games  Calendar

Log in to check your private messagesLog in to check your private messages   

A flower?

 
Post new topic   Reply to topic    Sudoku Programmers Forum Index -> Solving sudoku
View previous topic :: View next topic  
Author Message
foxglove

Joined: 04 Feb 2006
Posts: 42
:
Location: Portugal

Items
PostPosted: Wed Mar 08, 2006 11:23 pm    Post subject: A flower? Reply with quote

Paths, trees and flowers was the title of a breakthrough paper by Edmonds (1965) where some particular sub graphs he named blossoms were used in solving the “Maximum Cardinality Matching Problem” in general graphs.
It just happens that blossoms can be used as a very general structure that includes a great part of the known techiques for solving sudoku puzzles, from naked/hidden pairs to finned X-wings to super coloring and I think in general they are called XY cycles. (Corrections appreciated)
Excluded are: Swordfishes with more than 2-2-2 candidates. Bifurcations. Uniqueness tests.
The study and classification of these blossoms will certainly lead to the naming of more simple patterns and techniques. Or simplify some of the current confusion. (I guess)
Make a graph of candidates and join them with an edge if they are in some relation (same row, column, block or cell)
A <b>matching</b> is a graph where no vertex has more then one edge.
Here we restrict matching edges to "strong links" : where the two vertexes of the matching edge are the only two left candidates in a relation. Or edges in the "bivalue/bilocation plot"
Even with this restriction, (in most cases) in a sudoku without any singles there will be several possible matchings where some of the strong edges belong to one or another different matching. The non matching edges can be any edges.
An alternating path or cycle is a path/cycle where only the even (or odd) edges belong to M.
A blossom with respect to one of those matchings, <b>M</b> is an odd alternating cycle on
say 2k + 1 vertices containing k edges of M. The unique vertex of the cycle
with no edge of M in the cycle incident to it is called the base of the blossom.
Now comes the funny part:
Code:
Theorem:
the candidate that is a base of a blossom can be eliminated.

Proof:
where is Eppstein when we need him?

As far as real life algoritms go: a matching can be decided as you build a tree like in Edmonds blossom algorithm wich can be used for the search, with some modifications, because we don't care much about augmenting paths: we are looking for flowers!
Back to top
View user's profile Send private message Visit poster's website
foxglove

Joined: 04 Feb 2006
Posts: 42
:
Location: Portugal

Items
PostPosted: Thu Mar 09, 2006 12:39 pm    Post subject: An example of classification based on flowers Reply with quote

An example of classification based on flowers:

Length of the cycle containing the flower (L) = 3: a locked pair.

Is there an edge between the two vertexes connected to the base? Then the cycle is continuous.
L = 5, same digit, continuous : X-Wing
L = 5, same digit , discontinuos: Turbot
Here I can already hear people screaming. But this is what I mean maybe flowers can help simplify classifications.
Is it an X-wing with a fin or a turbot?

L = 5, different digits, matching edges in the same cell (between different digits)
XY Wing

L > 5
All the edges not belonging to the matching are strong?
same digit : Coloring.
different digits : super coloring
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Sudoku Programmers Forum Index -> Solving sudoku All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Sudoku Programmers topic RSS feed 


Powered by phpBB © 2001, 2005 phpBB Group

Igloo Theme Version 1.0 :: Created By: Andrew Charron