Sujet : Re: Sugurus
De : samuel_dot_devulder (at) *nospam* laposte_dot_net.invalid (Samuel DEVULDER)
Groupes : fr.sci.mathsDate : 31. Aug 2021, 09:33:48
Autres entêtes
Organisation : Aioe.org NNTP Server
Message-ID : <sgkphb$1g1$1@gioia.aioe.org>
References : 1 2 3 4 5
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.0.3
Le 31/08/2021 à 09:31, Jacques Mathon a écrit :
Le jeu me paraissait plus contraint... par le fait que les régions les plus petites (en nombre de cases) ne pouvaient contenir que les plus "petits" contenus.
Autrement dit, dans une case seule on ne peut mettre que "1" et pas les autres "chiffres".
Tu as raison, mais cela revient à dire que cette valeur est distincte de 2, 3, 4 et 5.
D'une façon ou d'une autre on arrive toujours à exprimer les contraintes sous forme de "equal/not equal".
Par exemple une region (donc 3 variables X, Y, Z) avec 3 valeur s'exprime par la résolution de ce système logique:
(
(X=1 and Y!=1 and Z!=1) or
(X=2 and Y!=2 and Z!=2) or
(X=3 and Y!=3 and Z!=3)
)
and
(
(Y=1 and Z!=1) or
(Y=2 and Z!=2) or
(Y=3 and Z!=3) or
)
and
(
Z=1 or
Z=2 or
Z=3
)
Bref, cela s'encode très bien sous la forme de prédicats Prolog, par exemple là:
https://pastebin.com/sKq1DRMkLe code Prolog est généré par ce script Lua que j'ai écrit rapidement(il est archi perfectible et ne m'aide qu'à expérimenter):
https://pastebin.com/uATrbBUDsam.