Path: csiph.com!usenet.pasdenom.info!news.redatomik.org!newsfeed.xs4all.nl!newsfeed1.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.038 X-Spam-Evidence: '*H*': 0.92; '*S*': 0.00; 'patterns': 0.04; 'mathematics': 0.05; 'laura': 0.07; 'strict': 0.07; 'subset': 0.09; 'python': 0.11; 'suggest': 0.14; '(published': 0.16; 'define,': 0.16; 'finds': 0.16; 'header:in-reply-to:1': 0.16; 'heads.': 0.16; 'press,': 0.16; 'wrote:': 0.18; 'solution.': 0.20; 'written': 0.21; '>>>': 0.22; 'to:name:python-list@python.org': 0.22; 'mathematical': 0.24; "world's": 0.24; '---': 0.24; 'solutions.': 0.26; 'am,': 0.29; 'mode': 0.30; 'fast.': 0.31; 'oversight': 0.31; 'another': 0.32; 'problem': 0.35; 'version': 0.36; 'really': 0.36; 'behind': 0.37; 'error.': 0.37; 'jason': 0.38; 'solving': 0.38; 'to:addr:python-list': 0.38; 'does': 0.39; 'though,': 0.39; 'to:addr:python.org': 0.39; 'university': 0.39; 'called': 0.40; 'even': 0.60; 'skip:u 10': 0.60; 'dave': 0.60; 'problems.': 0.60; 'interested,': 0.61; '(that': 0.65; 'finish': 0.65; 'talking': 0.65; 'charset:windows-1252': 0.65; 'wish': 0.70; 'analysis': 0.75; 'trial': 0.83; 'header:mime-version:1': 0.84; 'angel': 0.91; 'hardest': 0.91; 'besides,': 0.93 X-SENDER-IP: [213.112.62.184] X-LISTENER: [smtp.bredband.net] X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2C8AQCg9BZVPLg+cNUNT4Q0hkDFAQKBcAEBAQEBAQYBAQEBOIRQAQEEOEARCxgJFg8JAwIBAgExFAYNBgIBAReIGbE6mi4BAQEBAQUBAQEBAR2LKYR/hC0BBK8FhBFugkMBAQE X-IPAS-Result: A2C8AQCg9BZVPLg+cNUNT4Q0hkDFAQKBcAEBAQEBAQYBAQEBOIRQAQEEOEARCxgJFg8JAwIBAgExFAYNBgIBAReIGbE6mi4BAQEBAQUBAQEBAR2LKYR/hC0BBK8FhBFugkMBAQE X-IronPort-AV: E=Sophos;i="5.11,485,1422918000"; d="scan'208";a="851357441" Subject: Re: Sudoku solver references: <87r3sdnw5t.fsf@elektro.pacujo.net> <87fv8sndw1.fsf@elektro.pacujo.net> <551557B3.5090102@davea.name> <87twx6lf15.fsf@elektro.pacujo.net> <55156489.9050200@davea.name> From: Virgil Stokes To: "python-list@python.org" Date: Sat, 28 Mar 2015 19:36:44 +0100 user-agent: Mozilla/5.0 (Windows NT 6.0; rv:37.0) Gecko/20100101 Thunderbird/37.0 mime-version: 1.0 in-reply-to: <55156489.9050200@davea.name> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.19 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 33 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1427568892 news.xs4all.nl 2965 [2001:888:2000:d::a6]:38853 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:88235 On 27-Mar-2015 15:09, Dave Angel wrote: > On 03/27/2015 09:56 AM, Marko Rauhamaa wrote: >> "Frank Millman" : >> >>> So what I am talking about is called a "satisfactory" puzzle, which is >>> a subset of a "proper" puzzle. >> >> That is impossible to define, though, because some people are mental >> acrobats and can do a lot of deep analysis in their heads. What's >> satisfactory to you may not be satisfactory to me. >> >> Besides, looking for "satisfactory" patterns can involve a truckload of >> trial and error. >> > > I know, let's use "regular expressions" > > If you are interested, I have written a python (wxPython GUI) for solving Sudoku problems. It even has a "hint" mode that can be used to lead you to a solution. I have tested it on the world's hardest Sudoku (published by a Finish mathematician) and it solves it very fast. I have also written another version that finds ALL the solutions to any Sudoku problem (that has a solution) using an LP approach --- this is non-trivial. However, I have not been able to give a strict mathematical proof that it does indeed find all solutions. If you wish to really understand the mathematics behind Sudoku then I suggest the book "Taking Sudoku Seriously" by Jason Rosenhouse and Laura Taalman (Oxford University Press, 2011). Unfortunately, they do not consider the LP approach in this book (an oversight IMHO). --V. Stokes