Re: Sugurus

Liste des GroupesRevenir à fs maths 
Sujet : Re: Sugurus
De : samuel_dot_devulder (at) *nospam* laposte_dot_net.invalid (Samuel DEVULDER)
Groupes : fr.sci.maths
Date : 31. Aug 2021, 10:57:26
Autres entêtes
Organisation : Aioe.org NNTP Server
Message-ID : <sgkue5$hu3$1@gioia.aioe.org>
References : 1 2 3 4 5 6
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.0.3
Le 31/08/2021 à 10:33, Samuel DEVULDER a écrit :
 Bref, cela s'encode très bien sous la forme de prédicats Prolog, par exemple là:
https://pastebin.com/sKq1DRMk
 Le 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/uATrbBUD
Erratum, j'ai pasté une mauvaise version, voici la bonne version du générateur:
https://pastebin.com/uX9vz7Lu
qui donne ce genre de fichier Prolog:
----8<--------------------------------------------------------------
eq(X,X).
ne(X,X):-!,fail.
ne(_,_).
ex(_,[]).
ex(X,[X|_]):-!,false.
ex(X,[_|L]):-ex(X,L).
in(X,[X|L],L).
in(X,[Y|L],[Y|M]):-in(X,L,M).
match([],[]).
match([X|L],Q):-in(X,Q,M),match(L,M).
suguru([
[V1_1,V1_2,V1_3],
[V2_1,V2_2,V2_3],
[V3_1,V3_2,V3_3]]) :-
eq(V1_1, 1),
match([V1_2,V1_3], [1,2]),
match([V2_1,V3_1], [2,3]),
match([V2_2,V2_3,V3_2,V3_3], [1,2,3,4]),
ex(V1_2, [V2_2,V2_3]),
ex(V1_3, [V2_3]),
ex(V1_1, [V1_2,V2_2]),
ex(V2_1, [V2_2,V1_2,V3_2]),
ex(V3_1, [V3_2,V2_2]),
ex(V2_2, [V1_3]),
true.
describe:-write('solving...\n'),
write('+---+---+---+\n'),
write('| 1 |       |\n'),
write('+   +---+---+\n'),
write('|   |       |\n'),
write('+   +   +   +\n'),
write('|   |       |\n'),
write('+---+---+---+\n'),
true.
w([]).
w([X|L]):-write(X),write('\n'),w(L).
r:-reconsult(suguru).
h:-halt.
x:-describe,time(suguru(L)),w(L).
----8<--------------------------------------------------------------
Qui se résout très facilement:
----8<--------------------------------------------------------------
$ lua suguru.lua  > suguru.pl && swipl -s suguru.pl -t "x,fail;h"
Welcome to SWI-Prolog (Multi-threaded, 32 bits, Version 7.2.3)
Copyright (c) 1990-2015 University of Amsterdam, VU Amsterdam
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.
For help, use ?- help(Topic). or ?- apropos(Word).
solving...
+---+---+---+
| 1 |       |
+   +---+---+
|   |       |
+   +   +   +
|   |       |
+---+---+---+
% 1,162 inferences, 0.000 CPU in 0.000 seconds (0% CPU, Infinite Lips)
[1,2,1]
[3,4,3]
[2,1,2]
% 32 inferences, 0.000 CPU in 0.000 seconds (0% CPU, Infinite Lips)
----8<--------------------------------------------------------------
sam.

Date Sujet#  Auteur
27 Aug 21 * Sugurus39robby
28 Aug 21 +* Re: Sugurus32Stéphane CARPENTIER
28 Aug 21 i+* Re: Sugurus29Olivier Miakinen
28 Aug 21 ii+* Re: Sugurus14Stéphane CARPENTIER
29 Aug 21 iii`* Re: Sugurus13Olivier Miakinen
29 Aug 21 iii +- Re: Sugurus1robby
29 Aug 21 iii +- Re: Sugurus1Stéphane CARPENTIER
30 Aug 21 iii `* Re: Sugurus10Samuel DEVULDER
30 Aug 21 iii  +- Re: Sugurus1robby
30 Aug 21 iii  +* Re: Sugurus5Olivier Miakinen
30 Aug 21 iii  i`* Re: Sugurus4robby
30 Aug 21 iii  i `* Re: Sugurus3Samuel DEVULDER
31 Aug 21 iii  i  `* Re: Sugurus2robby
31 Aug 21 iii  i   `- Re: Sugurus1Samuel DEVULDER
31 Aug 21 iii  `* Re: Sugurus3robby
31 Aug 21 iii   `* Re: Sugurus2Samuel DEVULDER
31 Aug 21 iii    `- Re: Sugurus1Samuel DEVULDER
29 Aug 21 ii+* Re: Sugurus4robby
31 Aug 21 iii+- Re: Sugurus1Olivier Miakinen
31 Aug 21 iii`* Re: Sugurus2Samuel DEVULDER
1 Sep 21 iii `- Re: Sugurus1robby
31 Aug 21 ii`* Re: Sugurus10Samuel DEVULDER
31 Aug 21 ii +* Re: Sugurus5Jacques Mathon
31 Aug 21 ii i+* Re: Sugurus2Olivier Miakinen
31 Aug 21 ii ii`- Re: Sugurus1Jacques Mathon
31 Aug 21 ii i`* Re: Sugurus2Samuel DEVULDER
31 Aug 21 ii i `- Re: Sugurus1Samuel DEVULDER
31 Aug 21 ii `* Re: Sugurus4Olivier Miakinen
31 Aug 21 ii  `* Re: Sugurus3Samuel DEVULDER
31 Aug 21 ii   +- Re: Sugurus1robby
31 Aug 21 ii   `- Re: Sugurus1Olivier Miakinen
29 Aug 21 i`* Re: Sugurus2robby
29 Aug 21 i `- Re: Sugurus1Stéphane CARPENTIER
29 Aug 21 +- Re: Sugurus1robby
29 Aug 21 +- Amorce de Sudoku [était Re: Sugurus]1Samuel DEVULDER
30 Aug 21 `* Re: Sugurus4Samuel DEVULDER
30 Aug 21  +- Re: Sugurus1robby
30 Aug 21  `* Re: Sugurus2robby
30 Aug 21   `- Re: Sugurus1Samuel DEVULDER

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal