Vous êtes un classificateur de trains qui observe des trains se déplaçant soit vers l'est soit vers l'ouest.
Chaque train est composé d'un ou plusieurs wagons, et chaque wagon est caractérisé par un ensemble de propriétés, représentées comme des atomes de base sur un ensemble fixe de prédicats.
La direction (vers l'est ou vers l'ouest) d'un train doit être déterminée à partir de sa composition.

Pour décrire les trains, nous définissons un ensemble de prédicats et de domaines de base :

- 'a_wagon(Train, Wagon)' : Indique que 'Wagon' fait partie du train 'Train'.
- 'numero_wagon(Wagon, Numero)' : Indique la position du wagon dans son train. 'Numero' est un entier positif.
- 'couleur_wagon(Wagon, Couleur)' : Indique la couleur du wagon. 'Couleur' peut être 'rouge', 'bleu', 'vert', 'jaune' ou 'blanc'.
- 'longueur_wagon(Wagon, Longueur)' : Indique la longueur du wagon. 'Longueur' peut être 'court' ou 'long'.
- 'a_paroi(Wagon, TypeParoi)' : Indique le type de paroi d'un wagon. 'TypeParoi' peut être 'complet' ou 'rampe'.
- 'a_toit(Wagon, TypeToit)' : Indique le type de toit du wagon. 'TypeToit' peut être 'fondation_toit', 'toit_solide', 'toit_renforce', 'toit_pointu' ou 'aucun'.
- 'a_essieux(Wagon, NbEssieux)' : Indique le nombre d'essieux du wagon. 'NbEssieux' peut être '2' ou '3'.

Vous disposez d'exemples positifs et négatifs sous la forme est(t) ou ouest(t) pour chaque train t, ainsi que de faits de base décrivant sa composition sur les prédicats ci-dessus.

est(train0).
a_wagon(train0, wagon0_1).
numero_wagon(wagon0_1, 1).
couleur_wagon(wagon0_1, jaune).
longueur_wagon(wagon0_1, court).
a_paroi(wagon0_1, rampe).
a_toit(wagon0_1, fondation_toit).
a_essieux(wagon0_1, 2).
a_wagon(train0, wagon0_2).
numero_wagon(wagon0_2, 2).
couleur_wagon(wagon0_2, blanc).
longueur_wagon(wagon0_2, long).
a_paroi(wagon0_2, complet).
a_toit(wagon0_2, toit_solide).
a_essieux(wagon0_2, 2).
a_wagon(train0, wagon0_3).
numero_wagon(wagon0_3, 3).
couleur_wagon(wagon0_3, vert).
longueur_wagon(wagon0_3, court).
a_paroi(wagon0_3, complet).
a_toit(wagon0_3, toit_renforce).
a_essieux(wagon0_3, 2).

est(train1).
a_wagon(train1, wagon1_1).
numero_wagon(wagon1_1, 1).
couleur_wagon(wagon1_1, bleu).
longueur_wagon(wagon1_1, long).
a_paroi(wagon1_1, complet).
a_toit(wagon1_1, fondation_toit).
a_essieux(wagon1_1, 3).
a_wagon(train1, wagon1_2).
numero_wagon(wagon1_2, 2).
couleur_wagon(wagon1_2, vert).
longueur_wagon(wagon1_2, long).
a_paroi(wagon1_2, complet).
a_toit(wagon1_2, fondation_toit).
a_essieux(wagon1_2, 2).

ouest(train2).
a_wagon(train2, wagon2_1).
numero_wagon(wagon2_1, 1).
couleur_wagon(wagon2_1, bleu).
longueur_wagon(wagon2_1, long).
a_paroi(wagon2_1, rampe).
a_toit(wagon2_1, toit_solide).
a_essieux(wagon2_1, 2).
a_wagon(train2, wagon2_2).
numero_wagon(wagon2_2, 2).
couleur_wagon(wagon2_2, rouge).
longueur_wagon(wagon2_2, court).
a_paroi(wagon2_2, complet).
a_toit(wagon2_2, toit_pointu).
a_essieux(wagon2_2, 2).
a_wagon(train2, wagon2_3).
numero_wagon(wagon2_3, 3).
couleur_wagon(wagon2_3, jaune).
longueur_wagon(wagon2_3, long).
a_paroi(wagon2_3, rampe).
a_toit(wagon2_3, aucun).
a_essieux(wagon2_3, 3).
a_wagon(train2, wagon2_4).
numero_wagon(wagon2_4, 4).
couleur_wagon(wagon2_4, jaune).
longueur_wagon(wagon2_4, court).
a_paroi(wagon2_4, complet).
a_toit(wagon2_4, toit_solide).
a_essieux(wagon2_4, 2).

est(train3).
a_wagon(train3, wagon3_1).
numero_wagon(wagon3_1, 1).
couleur_wagon(wagon3_1, bleu).
longueur_wagon(wagon3_1, long).
a_paroi(wagon3_1, complet).
a_toit(wagon3_1, toit_renforce).
a_essieux(wagon3_1, 3).
a_wagon(train3, wagon3_2).
numero_wagon(wagon3_2, 2).
couleur_wagon(wagon3_2, rouge).
longueur_wagon(wagon3_2, court).
a_paroi(wagon3_2, rampe).
a_toit(wagon3_2, aucun).
a_essieux(wagon3_2, 2).

ouest(train4).
a_wagon(train4, wagon4_1).
numero_wagon(wagon4_1, 1).
couleur_wagon(wagon4_1, blanc).
longueur_wagon(wagon4_1, long).
a_paroi(wagon4_1, complet).
a_toit(wagon4_1, toit_renforce).
a_essieux(wagon4_1, 2).
a_wagon(train4, wagon4_2).
numero_wagon(wagon4_2, 2).
couleur_wagon(wagon4_2, bleu).
longueur_wagon(wagon4_2, long).
a_paroi(wagon4_2, rampe).
a_toit(wagon4_2, toit_pointu).
a_essieux(wagon4_2, 2).
a_wagon(train4, wagon4_3).
numero_wagon(wagon4_3, 3).
couleur_wagon(wagon4_3, bleu).
longueur_wagon(wagon4_3, court).
a_paroi(wagon4_3, complet).
a_toit(wagon4_3, toit_pointu).
a_essieux(wagon4_3, 2).

ouest(train5).
a_wagon(train5, wagon5_1).
numero_wagon(wagon5_1, 1).
couleur_wagon(wagon5_1, vert).
longueur_wagon(wagon5_1, long).
a_paroi(wagon5_1, rampe).
a_toit(wagon5_1, toit_pointu).
a_essieux(wagon5_1, 3).
a_wagon(train5, wagon5_2).
numero_wagon(wagon5_2, 2).
couleur_wagon(wagon5_2, rouge).
longueur_wagon(wagon5_2, court).
a_paroi(wagon5_2, rampe).
a_toit(wagon5_2, toit_pointu).
a_essieux(wagon5_2, 2).
a_wagon(train5, wagon5_3).
numero_wagon(wagon5_3, 3).
couleur_wagon(wagon5_3, blanc).
longueur_wagon(wagon5_3, court).
a_paroi(wagon5_3, rampe).
a_toit(wagon5_3, fondation_toit).
a_essieux(wagon5_3, 2).
a_wagon(train5, wagon5_4).
numero_wagon(wagon5_4, 4).
couleur_wagon(wagon5_4, blanc).
longueur_wagon(wagon5_4, court).
a_paroi(wagon5_4, complet).
a_toit(wagon5_4, fondation_toit).
a_essieux(wagon5_4, 2).

est(train6).
a_wagon(train6, wagon6_1).
numero_wagon(wagon6_1, 1).
couleur_wagon(wagon6_1, blanc).
longueur_wagon(wagon6_1, court).
a_paroi(wagon6_1, complet).
a_toit(wagon6_1, toit_renforce).
a_essieux(wagon6_1, 2).
a_wagon(train6, wagon6_2).
numero_wagon(wagon6_2, 2).
couleur_wagon(wagon6_2, rouge).
longueur_wagon(wagon6_2, long).
a_paroi(wagon6_2, rampe).
a_toit(wagon6_2, fondation_toit).
a_essieux(wagon6_2, 2).

ouest(train7).
a_wagon(train7, wagon7_1).
numero_wagon(wagon7_1, 1).
couleur_wagon(wagon7_1, bleu).
longueur_wagon(wagon7_1, court).
a_paroi(wagon7_1, complet).
a_toit(wagon7_1, toit_pointu).
a_essieux(wagon7_1, 2).
a_wagon(train7, wagon7_2).
numero_wagon(wagon7_2, 2).
couleur_wagon(wagon7_2, vert).
longueur_wagon(wagon7_2, court).
a_paroi(wagon7_2, rampe).
a_toit(wagon7_2, aucun).
a_essieux(wagon7_2, 2).
a_wagon(train7, wagon7_3).
numero_wagon(wagon7_3, 3).
couleur_wagon(wagon7_3, blanc).
longueur_wagon(wagon7_3, long).
a_paroi(wagon7_3, rampe).
a_toit(wagon7_3, aucun).
a_essieux(wagon7_3, 3).

est(train8).
a_wagon(train8, wagon8_1).
numero_wagon(wagon8_1, 1).
couleur_wagon(wagon8_1, blanc).
longueur_wagon(wagon8_1, court).
a_paroi(wagon8_1, complet).
a_toit(wagon8_1, aucun).
a_essieux(wagon8_1, 2).
a_wagon(train8, wagon8_2).
numero_wagon(wagon8_2, 2).
couleur_wagon(wagon8_2, blanc).
longueur_wagon(wagon8_2, long).
a_paroi(wagon8_2, complet).
a_toit(wagon8_2, aucun).
a_essieux(wagon8_2, 2).
a_wagon(train8, wagon8_3).
numero_wagon(wagon8_3, 3).
couleur_wagon(wagon8_3, vert).
longueur_wagon(wagon8_3, long).
a_paroi(wagon8_3, rampe).
a_toit(wagon8_3, aucun).
a_essieux(wagon8_3, 3).

est(train9).
a_wagon(train9, wagon9_1).
numero_wagon(wagon9_1, 1).
couleur_wagon(wagon9_1, rouge).
longueur_wagon(wagon9_1, long).
a_paroi(wagon9_1, rampe).
a_toit(wagon9_1, toit_pointu).
a_essieux(wagon9_1, 2).
a_wagon(train9, wagon9_2).
numero_wagon(wagon9_2, 2).
couleur_wagon(wagon9_2, blanc).
longueur_wagon(wagon9_2, long).
a_paroi(wagon9_2, rampe).
a_toit(wagon9_2, toit_renforce).
a_essieux(wagon9_2, 3).
a_wagon(train9, wagon9_3).
numero_wagon(wagon9_3, 3).
couleur_wagon(wagon9_3, rouge).
longueur_wagon(wagon9_3, court).
a_paroi(wagon9_3, complet).
a_toit(wagon9_3, toit_renforce).
a_essieux(wagon9_3, 2).
a_wagon(train9, wagon9_4).
numero_wagon(wagon9_4, 4).
couleur_wagon(wagon9_4, bleu).
longueur_wagon(wagon9_4, long).
a_paroi(wagon9_4, rampe).
a_toit(wagon9_4, toit_pointu).
a_essieux(wagon9_4, 2).

est(train10).
a_wagon(train10, wagon10_1).
numero_wagon(wagon10_1, 1).
couleur_wagon(wagon10_1, jaune).
longueur_wagon(wagon10_1, court).
a_paroi(wagon10_1, rampe).
a_toit(wagon10_1, aucun).
a_essieux(wagon10_1, 2).
a_wagon(train10, wagon10_2).
numero_wagon(wagon10_2, 2).
couleur_wagon(wagon10_2, bleu).
longueur_wagon(wagon10_2, long).
a_paroi(wagon10_2, complet).
a_toit(wagon10_2, toit_pointu).
a_essieux(wagon10_2, 3).
a_wagon(train10, wagon10_3).
numero_wagon(wagon10_3, 3).
couleur_wagon(wagon10_3, bleu).
longueur_wagon(wagon10_3, long).
a_paroi(wagon10_3, complet).
a_toit(wagon10_3, toit_solide).
a_essieux(wagon10_3, 2).
a_wagon(train10, wagon10_4).
numero_wagon(wagon10_4, 4).
couleur_wagon(wagon10_4, bleu).
longueur_wagon(wagon10_4, long).
a_paroi(wagon10_4, complet).
a_toit(wagon10_4, toit_pointu).
a_essieux(wagon10_4, 3).

ouest(train11).
a_wagon(train11, wagon11_1).
numero_wagon(wagon11_1, 1).
couleur_wagon(wagon11_1, jaune).
longueur_wagon(wagon11_1, court).
a_paroi(wagon11_1, complet).
a_toit(wagon11_1, toit_solide).
a_essieux(wagon11_1, 2).
a_wagon(train11, wagon11_2).
numero_wagon(wagon11_2, 2).
couleur_wagon(wagon11_2, vert).
longueur_wagon(wagon11_2, court).
a_paroi(wagon11_2, complet).
a_toit(wagon11_2, toit_pointu).
a_essieux(wagon11_2, 2).
a_wagon(train11, wagon11_3).
numero_wagon(wagon11_3, 3).
couleur_wagon(wagon11_3, jaune).
longueur_wagon(wagon11_3, long).
a_paroi(wagon11_3, complet).
a_toit(wagon11_3, toit_renforce).
a_essieux(wagon11_3, 2).

ouest(train12).
a_wagon(train12, wagon12_1).
numero_wagon(wagon12_1, 1).
couleur_wagon(wagon12_1, bleu).
longueur_wagon(wagon12_1, long).
a_paroi(wagon12_1, complet).
a_toit(wagon12_1, toit_solide).
a_essieux(wagon12_1, 2).
a_wagon(train12, wagon12_2).
numero_wagon(wagon12_2, 2).
couleur_wagon(wagon12_2, bleu).
longueur_wagon(wagon12_2, long).
a_paroi(wagon12_2, complet).
a_toit(wagon12_2, toit_renforce).
a_essieux(wagon12_2, 3).
a_wagon(train12, wagon12_3).
numero_wagon(wagon12_3, 3).
couleur_wagon(wagon12_3, blanc).
longueur_wagon(wagon12_3, court).
a_paroi(wagon12_3, rampe).
a_toit(wagon12_3, toit_pointu).
a_essieux(wagon12_3, 2).

ouest(train13).
a_wagon(train13, wagon13_1).
numero_wagon(wagon13_1, 1).
couleur_wagon(wagon13_1, blanc).
longueur_wagon(wagon13_1, long).
a_paroi(wagon13_1, rampe).
a_toit(wagon13_1, aucun).
a_essieux(wagon13_1, 2).
a_wagon(train13, wagon13_2).
numero_wagon(wagon13_2, 2).
couleur_wagon(wagon13_2, vert).
longueur_wagon(wagon13_2, court).
a_paroi(wagon13_2, complet).
a_toit(wagon13_2, toit_pointu).
a_essieux(wagon13_2, 2).


Votre tâche consiste à formuler une hypothèse sous la forme d'une règle Prolog „est(T) :- Corps.“ qui distingue correctement les trains se dirigeant vers l'est de ceux se dirigeant vers l'ouest.
L'hypothèse doit être vraie pour tous les exemples positifs (c'est-à-dire les trains étiquetés est(t)) et fausse pour tous les exemples négatifs (c'est-à-dire les trains ouest(t)).
L'objectif est de trouver la règle correcte la plus courte, c'est-à-dire celle qui utilise le nombre minimal de littéraux dans le corps sans perdre de conditions nécessaires.
Votre règle ne peut utiliser que les prédicats définis dans l'ouverture ci-dessus et doit parfaitement séparer les trains vers l'est des trains vers l'ouest.
est(Train) :-
    forall(
        (a_wagon(Train, Wagon), a_toit(Wagon, toit_pointu)),
        longueur_wagon(Wagon, long)
    ).
est(train0).
a_wagon(train0, wagon0_1).
numero_wagon(wagon0_1, 1).
couleur_wagon(wagon0_1, jaune).
longueur_wagon(wagon0_1, court).
a_paroi(wagon0_1, rampe).
a_toit(wagon0_1, fondation_toit).
a_essieux(wagon0_1, 2).
a_wagon(train0, wagon0_2).
numero_wagon(wagon0_2, 2).
couleur_wagon(wagon0_2, blanc).
longueur_wagon(wagon0_2, long).
a_paroi(wagon0_2, complet).
a_toit(wagon0_2, toit_solide).
a_essieux(wagon0_2, 2).
a_wagon(train0, wagon0_3).
numero_wagon(wagon0_3, 3).
couleur_wagon(wagon0_3, vert).
longueur_wagon(wagon0_3, court).
a_paroi(wagon0_3, complet).
a_toit(wagon0_3, toit_renforce).
a_essieux(wagon0_3, 2).

est(train1).
a_wagon(train1, wagon1_1).
numero_wagon(wagon1_1, 1).
couleur_wagon(wagon1_1, bleu).
longueur_wagon(wagon1_1, long).
a_paroi(wagon1_1, complet).
a_toit(wagon1_1, fondation_toit).
a_essieux(wagon1_1, 3).
a_wagon(train1, wagon1_2).
numero_wagon(wagon1_2, 2).
couleur_wagon(wagon1_2, vert).
longueur_wagon(wagon1_2, long).
a_paroi(wagon1_2, complet).
a_toit(wagon1_2, fondation_toit).
a_essieux(wagon1_2, 2).

ouest(train2).
a_wagon(train2, wagon2_1).
numero_wagon(wagon2_1, 1).
couleur_wagon(wagon2_1, bleu).
longueur_wagon(wagon2_1, long).
a_paroi(wagon2_1, rampe).
a_toit(wagon2_1, toit_solide).
a_essieux(wagon2_1, 2).
a_wagon(train2, wagon2_2).
numero_wagon(wagon2_2, 2).
couleur_wagon(wagon2_2, rouge).
longueur_wagon(wagon2_2, court).
a_paroi(wagon2_2, complet).
a_toit(wagon2_2, toit_pointu).
a_essieux(wagon2_2, 2).
a_wagon(train2, wagon2_3).
numero_wagon(wagon2_3, 3).
couleur_wagon(wagon2_3, jaune).
longueur_wagon(wagon2_3, long).
a_paroi(wagon2_3, rampe).
a_toit(wagon2_3, aucun).
a_essieux(wagon2_3, 3).
a_wagon(train2, wagon2_4).
numero_wagon(wagon2_4, 4).
couleur_wagon(wagon2_4, jaune).
longueur_wagon(wagon2_4, court).
a_paroi(wagon2_4, complet).
a_toit(wagon2_4, toit_solide).
a_essieux(wagon2_4, 2).

est(train3).
a_wagon(train3, wagon3_1).
numero_wagon(wagon3_1, 1).
couleur_wagon(wagon3_1, bleu).
longueur_wagon(wagon3_1, long).
a_paroi(wagon3_1, complet).
a_toit(wagon3_1, toit_renforce).
a_essieux(wagon3_1, 3).
a_wagon(train3, wagon3_2).
numero_wagon(wagon3_2, 2).
couleur_wagon(wagon3_2, rouge).
longueur_wagon(wagon3_2, court).
a_paroi(wagon3_2, rampe).
a_toit(wagon3_2, aucun).
a_essieux(wagon3_2, 2).

ouest(train4).
a_wagon(train4, wagon4_1).
numero_wagon(wagon4_1, 1).
couleur_wagon(wagon4_1, blanc).
longueur_wagon(wagon4_1, long).
a_paroi(wagon4_1, complet).
a_toit(wagon4_1, toit_renforce).
a_essieux(wagon4_1, 2).
a_wagon(train4, wagon4_2).
numero_wagon(wagon4_2, 2).
couleur_wagon(wagon4_2, bleu).
longueur_wagon(wagon4_2, long).
a_paroi(wagon4_2, rampe).
a_toit(wagon4_2, toit_pointu).
a_essieux(wagon4_2, 2).
a_wagon(train4, wagon4_3).
numero_wagon(wagon4_3, 3).
couleur_wagon(wagon4_3, bleu).
longueur_wagon(wagon4_3, court).
a_paroi(wagon4_3, complet).
a_toit(wagon4_3, toit_pointu).
a_essieux(wagon4_3, 2).

ouest(train5).
a_wagon(train5, wagon5_1).
numero_wagon(wagon5_1, 1).
couleur_wagon(wagon5_1, vert).
longueur_wagon(wagon5_1, long).
a_paroi(wagon5_1, rampe).
a_toit(wagon5_1, toit_pointu).
a_essieux(wagon5_1, 3).
a_wagon(train5, wagon5_2).
numero_wagon(wagon5_2, 2).
couleur_wagon(wagon5_2, rouge).
longueur_wagon(wagon5_2, court).
a_paroi(wagon5_2, rampe).
a_toit(wagon5_2, toit_pointu).
a_essieux(wagon5_2, 2).
a_wagon(train5, wagon5_3).
numero_wagon(wagon5_3, 3).
couleur_wagon(wagon5_3, blanc).
longueur_wagon(wagon5_3, court).
a_paroi(wagon5_3, rampe).
a_toit(wagon5_3, fondation_toit).
a_essieux(wagon5_3, 2).
a_wagon(train5, wagon5_4).
numero_wagon(wagon5_4, 4).
couleur_wagon(wagon5_4, blanc).
longueur_wagon(wagon5_4, court).
a_paroi(wagon5_4, complet).
a_toit(wagon5_4, fondation_toit).
a_essieux(wagon5_4, 2).

est(train6).
a_wagon(train6, wagon6_1).
numero_wagon(wagon6_1, 1).
couleur_wagon(wagon6_1, blanc).
longueur_wagon(wagon6_1, court).
a_paroi(wagon6_1, complet).
a_toit(wagon6_1, toit_renforce).
a_essieux(wagon6_1, 2).
a_wagon(train6, wagon6_2).
numero_wagon(wagon6_2, 2).
couleur_wagon(wagon6_2, rouge).
longueur_wagon(wagon6_2, long).
a_paroi(wagon6_2, rampe).
a_toit(wagon6_2, fondation_toit).
a_essieux(wagon6_2, 2).

ouest(train7).
a_wagon(train7, wagon7_1).
numero_wagon(wagon7_1, 1).
couleur_wagon(wagon7_1, bleu).
longueur_wagon(wagon7_1, court).
a_paroi(wagon7_1, complet).
a_toit(wagon7_1, toit_pointu).
a_essieux(wagon7_1, 2).
a_wagon(train7, wagon7_2).
numero_wagon(wagon7_2, 2).
couleur_wagon(wagon7_2, vert).
longueur_wagon(wagon7_2, court).
a_paroi(wagon7_2, rampe).
a_toit(wagon7_2, aucun).
a_essieux(wagon7_2, 2).
a_wagon(train7, wagon7_3).
numero_wagon(wagon7_3, 3).
couleur_wagon(wagon7_3, blanc).
longueur_wagon(wagon7_3, long).
a_paroi(wagon7_3, rampe).
a_toit(wagon7_3, aucun).
a_essieux(wagon7_3, 3).

est(train8).
a_wagon(train8, wagon8_1).
numero_wagon(wagon8_1, 1).
couleur_wagon(wagon8_1, blanc).
longueur_wagon(wagon8_1, court).
a_paroi(wagon8_1, complet).
a_toit(wagon8_1, aucun).
a_essieux(wagon8_1, 2).
a_wagon(train8, wagon8_2).
numero_wagon(wagon8_2, 2).
couleur_wagon(wagon8_2, blanc).
longueur_wagon(wagon8_2, long).
a_paroi(wagon8_2, complet).
a_toit(wagon8_2, aucun).
a_essieux(wagon8_2, 2).
a_wagon(train8, wagon8_3).
numero_wagon(wagon8_3, 3).
couleur_wagon(wagon8_3, vert).
longueur_wagon(wagon8_3, long).
a_paroi(wagon8_3, rampe).
a_toit(wagon8_3, aucun).
a_essieux(wagon8_3, 3).

est(train9).
a_wagon(train9, wagon9_1).
numero_wagon(wagon9_1, 1).
couleur_wagon(wagon9_1, rouge).
longueur_wagon(wagon9_1, long).
a_paroi(wagon9_1, rampe).
a_toit(wagon9_1, toit_pointu).
a_essieux(wagon9_1, 2).
a_wagon(train9, wagon9_2).
numero_wagon(wagon9_2, 2).
couleur_wagon(wagon9_2, blanc).
longueur_wagon(wagon9_2, long).
a_paroi(wagon9_2, rampe).
a_toit(wagon9_2, toit_renforce).
a_essieux(wagon9_2, 3).
a_wagon(train9, wagon9_3).
numero_wagon(wagon9_3, 3).
couleur_wagon(wagon9_3, rouge).
longueur_wagon(wagon9_3, court).
a_paroi(wagon9_3, complet).
a_toit(wagon9_3, toit_renforce).
a_essieux(wagon9_3, 2).
a_wagon(train9, wagon9_4).
numero_wagon(wagon9_4, 4).
couleur_wagon(wagon9_4, bleu).
longueur_wagon(wagon9_4, long).
a_paroi(wagon9_4, rampe).
a_toit(wagon9_4, toit_pointu).
a_essieux(wagon9_4, 2).

est(train10).
a_wagon(train10, wagon10_1).
numero_wagon(wagon10_1, 1).
couleur_wagon(wagon10_1, jaune).
longueur_wagon(wagon10_1, court).
a_paroi(wagon10_1, rampe).
a_toit(wagon10_1, aucun).
a_essieux(wagon10_1, 2).
a_wagon(train10, wagon10_2).
numero_wagon(wagon10_2, 2).
couleur_wagon(wagon10_2, bleu).
longueur_wagon(wagon10_2, long).
a_paroi(wagon10_2, complet).
a_toit(wagon10_2, toit_pointu).
a_essieux(wagon10_2, 3).
a_wagon(train10, wagon10_3).
numero_wagon(wagon10_3, 3).
couleur_wagon(wagon10_3, bleu).
longueur_wagon(wagon10_3, long).
a_paroi(wagon10_3, complet).
a_toit(wagon10_3, toit_solide).
a_essieux(wagon10_3, 2).
a_wagon(train10, wagon10_4).
numero_wagon(wagon10_4, 4).
couleur_wagon(wagon10_4, bleu).
longueur_wagon(wagon10_4, long).
a_paroi(wagon10_4, complet).
a_toit(wagon10_4, toit_pointu).
a_essieux(wagon10_4, 3).

ouest(train11).
a_wagon(train11, wagon11_1).
numero_wagon(wagon11_1, 1).
couleur_wagon(wagon11_1, jaune).
longueur_wagon(wagon11_1, court).
a_paroi(wagon11_1, complet).
a_toit(wagon11_1, toit_solide).
a_essieux(wagon11_1, 2).
a_wagon(train11, wagon11_2).
numero_wagon(wagon11_2, 2).
couleur_wagon(wagon11_2, vert).
longueur_wagon(wagon11_2, court).
a_paroi(wagon11_2, complet).
a_toit(wagon11_2, toit_pointu).
a_essieux(wagon11_2, 2).
a_wagon(train11, wagon11_3).
numero_wagon(wagon11_3, 3).
couleur_wagon(wagon11_3, jaune).
longueur_wagon(wagon11_3, long).
a_paroi(wagon11_3, complet).
a_toit(wagon11_3, toit_renforce).
a_essieux(wagon11_3, 2).

ouest(train12).
a_wagon(train12, wagon12_1).
numero_wagon(wagon12_1, 1).
couleur_wagon(wagon12_1, bleu).
longueur_wagon(wagon12_1, long).
a_paroi(wagon12_1, complet).
a_toit(wagon12_1, toit_solide).
a_essieux(wagon12_1, 2).
a_wagon(train12, wagon12_2).
numero_wagon(wagon12_2, 2).
couleur_wagon(wagon12_2, bleu).
longueur_wagon(wagon12_2, long).
a_paroi(wagon12_2, complet).
a_toit(wagon12_2, toit_renforce).
a_essieux(wagon12_2, 3).
a_wagon(train12, wagon12_3).
numero_wagon(wagon12_3, 3).
couleur_wagon(wagon12_3, blanc).
longueur_wagon(wagon12_3, court).
a_paroi(wagon12_3, rampe).
a_toit(wagon12_3, toit_pointu).
a_essieux(wagon12_3, 2).

ouest(train13).
a_wagon(train13, wagon13_1).
numero_wagon(wagon13_1, 1).
couleur_wagon(wagon13_1, blanc).
longueur_wagon(wagon13_1, long).
a_paroi(wagon13_1, rampe).
a_toit(wagon13_1, aucun).
a_essieux(wagon13_1, 2).
a_wagon(train13, wagon13_2).
numero_wagon(wagon13_2, 2).
couleur_wagon(wagon13_2, vert).
longueur_wagon(wagon13_2, court).
a_paroi(wagon13_2, complet).
a_toit(wagon13_2, toit_pointu).
a_essieux(wagon13_2, 2).


est 240 1 jaune court rampe fondation_toit 2 2 blanc long complet toit_solide 2 3 vert court complet toit_renforce 2
est 152 1 bleu long complet fondation_toit 3 2 vert long complet fondation_toit 2
ouest 22 1 bleu long rampe toit_solide 2 2 rouge court complet toit_pointu 2 3 jaune long rampe aucun 3 4 jaune court complet toit_solide 2
est 38 1 bleu long complet toit_renforce 3 2 rouge court rampe aucun 2
ouest 55 1 blanc long complet toit_renforce 2 2 bleu long rampe toit_pointu 2 3 bleu court complet toit_pointu 2
ouest 177 1 vert long rampe toit_pointu 3 2 rouge court rampe toit_pointu 2 3 blanc court rampe fondation_toit 2 4 blanc court complet fondation_toit 2
est -32 1 blanc court complet toit_renforce 2 2 rouge long rampe fondation_toit 2
ouest 144 1 bleu court complet toit_pointu 2 2 vert court rampe aucun 2 3 blanc long rampe aucun 3
est 14 1 blanc court complet aucun 2 2 blanc long complet aucun 2 3 vert long rampe aucun 3
est 229 1 rouge long rampe toit_pointu 2 2 blanc long rampe toit_renforce 3 3 rouge court complet toit_renforce 2 4 bleu long rampe toit_pointu 2
est 35 1 jaune court rampe aucun 2 2 bleu long complet toit_pointu 3 3 bleu long complet toit_solide 2 4 bleu long complet toit_pointu 3
ouest 204 1 jaune court complet toit_solide 2 2 vert court complet toit_pointu 2 3 jaune long complet toit_renforce 2
ouest 28 1 bleu long complet toit_solide 2 2 bleu long complet toit_renforce 3 3 blanc court rampe toit_pointu 2
ouest 122 1 blanc long rampe aucun 2 2 vert court complet toit_pointu 2