Has anybody else written something similar?

This is how far I got:

It’s working more or less. I’ve tested various sudoku variants. The UI needs some more work before the nine cells can be clicked.

Before solving or generating a puzzle, it calculates possibilities for interactions and conjugate eliminations. It also handles any naked and hidden subsets.

Speed is a little bit less then I hoped in advance.

Hopefully this can be used in order to explore Sudoku constraints and combinations.

Here’s a puzzle for a Sudoku constraint suggested by udosuk:

- Code: Select all
`A..|...|...`

.A.|...|...

..A|...|...

---+---+---

...|..A|...

...|.A.|...

...|A..|...

---+---+---

...|...|A..

...|...|.A.

...|...|..A

...|...|8..

9..|.4.|...

...|..9|2..

---+---+---

87.|.1.|...

...|...|.51

...|5..|62.

---+---+---

6..|...|...

...|2..|..4

...|.76|...

Here’s an Asterisk-X puzzle:

- Code: Select all
`...|...|...`

...|.A.|...

..A|...|A..

---+---+---

...|...|...

.A.|.A.|.A.

...|...|...

---+---+---

..A|...|A..

...|.A.|...

...|...|...

+ two main diagonals:

...|..3|...

9..|...|...

2.7|...|...

---+---+---

.3.|...|...

...|...|..5

...|...|...

---+---+---

14.|.2.|...

..6|.5.|...

.8.|...|.9.