Yin Yang
Shade the board so each colour forms one connected group and every 2×2 contains both colours.
Parameters
No parameters. It applies to the whole declared board and uses the shared shading answer.
Maths
Class: existential.
The shared predicates define the notation and every named predicate.
connected({c ∈ C: shaded(c)}) ∧ connected({c ∈ C: ¬shaded(c)})
∧ ∀r ∈ [0,rows−1): ∀k ∈ [0,cols−1):
(∃a ∈ window2(r,k): shaded(a)) ∧ (∃b ∈ window2(r,k): ¬shaded(b))
Both colours are nonempty and orthogonally connected; every 2×2 contains both colours. This is a general authoring-library rule over the one typed shading answer, rather than a newly recognised decoded constraint.
Example
---
format: open-rules
title: Yin Yang example
setter: Example
source: ""
case: ""
library: https://rules.sudoku-sleuth.com/
status: read
board:
rows: 2
cols: 2
symbols:
- 1
- 2
- 3
- 4
---
```rules
yin-yang
```
Satisfies the rule: r1c1=1, r1c2=2, r2c1=3, r2c2=4; shaded cells r1c1-r1c2. Each colour forms one connected row.
Breaks the rule: r1c1=1, r1c2=2, r2c1=3, r2c2=4; shaded cells r1c1-r2c2. Each colour is separated diagonally.