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, vert).
longueur_wagon(wagon0_1, long).
a_paroi(wagon0_1, rampe).
a_toit(wagon0_1, fondation_toit).
a_essieux(wagon0_1, 3).
a_wagon(train0, wagon0_2).
numero_wagon(wagon0_2, 2).
couleur_wagon(wagon0_2, bleu).
longueur_wagon(wagon0_2, long).
a_paroi(wagon0_2, complet).
a_toit(wagon0_2, toit_pointu).
a_essieux(wagon0_2, 2).

est(train1).
a_wagon(train1, wagon1_1).
numero_wagon(wagon1_1, 1).
couleur_wagon(wagon1_1, jaune).
longueur_wagon(wagon1_1, long).
a_paroi(wagon1_1, complet).
a_toit(wagon1_1, toit_solide).
a_essieux(wagon1_1, 2).
a_wagon(train1, wagon1_2).
numero_wagon(wagon1_2, 2).
couleur_wagon(wagon1_2, vert).
longueur_wagon(wagon1_2, long).
a_paroi(wagon1_2, rampe).
a_toit(wagon1_2, aucun).
a_essieux(wagon1_2, 3).

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

est(train3).
a_wagon(train3, wagon3_1).
numero_wagon(wagon3_1, 1).
couleur_wagon(wagon3_1, vert).
longueur_wagon(wagon3_1, court).
a_paroi(wagon3_1, rampe).
a_toit(wagon3_1, fondation_toit).
a_essieux(wagon3_1, 2).
a_wagon(train3, wagon3_2).
numero_wagon(wagon3_2, 2).
couleur_wagon(wagon3_2, rouge).
longueur_wagon(wagon3_2, long).
a_paroi(wagon3_2, rampe).
a_toit(wagon3_2, aucun).
a_essieux(wagon3_2, 2).

est(train4).
a_wagon(train4, wagon4_1).
numero_wagon(wagon4_1, 1).
couleur_wagon(wagon4_1, jaune).
longueur_wagon(wagon4_1, court).
a_paroi(wagon4_1, complet).
a_toit(wagon4_1, aucun).
a_essieux(wagon4_1, 2).
a_wagon(train4, wagon4_2).
numero_wagon(wagon4_2, 2).
couleur_wagon(wagon4_2, jaune).
longueur_wagon(wagon4_2, long).
a_paroi(wagon4_2, rampe).
a_toit(wagon4_2, fondation_toit).
a_essieux(wagon4_2, 3).
a_wagon(train4, wagon4_3).
numero_wagon(wagon4_3, 3).
couleur_wagon(wagon4_3, blanc).
longueur_wagon(wagon4_3, long).
a_paroi(wagon4_3, complet).
a_toit(wagon4_3, toit_pointu).
a_essieux(wagon4_3, 3).
a_wagon(train4, wagon4_4).
numero_wagon(wagon4_4, 4).
couleur_wagon(wagon4_4, vert).
longueur_wagon(wagon4_4, long).
a_paroi(wagon4_4, complet).
a_toit(wagon4_4, toit_renforce).
a_essieux(wagon4_4, 3).

est(train5).
a_wagon(train5, wagon5_1).
numero_wagon(wagon5_1, 1).
couleur_wagon(wagon5_1, bleu).
longueur_wagon(wagon5_1, long).
a_paroi(wagon5_1, rampe).
a_toit(wagon5_1, toit_renforce).
a_essieux(wagon5_1, 3).
a_wagon(train5, wagon5_2).
numero_wagon(wagon5_2, 2).
couleur_wagon(wagon5_2, bleu).
longueur_wagon(wagon5_2, court).
a_paroi(wagon5_2, rampe).
a_toit(wagon5_2, toit_renforce).
a_essieux(wagon5_2, 2).
a_wagon(train5, wagon5_3).
numero_wagon(wagon5_3, 3).
couleur_wagon(wagon5_3, rouge).
longueur_wagon(wagon5_3, long).
a_paroi(wagon5_3, complet).
a_toit(wagon5_3, toit_solide).
a_essieux(wagon5_3, 2).
a_wagon(train5, wagon5_4).
numero_wagon(wagon5_4, 4).
couleur_wagon(wagon5_4, jaune).
longueur_wagon(wagon5_4, long).
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, rouge).
longueur_wagon(wagon6_1, long).
a_paroi(wagon6_1, complet).
a_toit(wagon6_1, toit_pointu).
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, toit_renforce).
a_essieux(wagon6_2, 3).
a_wagon(train6, wagon6_3).
numero_wagon(wagon6_3, 3).
couleur_wagon(wagon6_3, vert).
longueur_wagon(wagon6_3, court).
a_paroi(wagon6_3, complet).
a_toit(wagon6_3, aucun).
a_essieux(wagon6_3, 2).
a_wagon(train6, wagon6_4).
numero_wagon(wagon6_4, 4).
couleur_wagon(wagon6_4, bleu).
longueur_wagon(wagon6_4, long).
a_paroi(wagon6_4, rampe).
a_toit(wagon6_4, toit_solide).
a_essieux(wagon6_4, 2).

ouest(train7).
a_wagon(train7, wagon7_1).
numero_wagon(wagon7_1, 1).
couleur_wagon(wagon7_1, rouge).
longueur_wagon(wagon7_1, long).
a_paroi(wagon7_1, rampe).
a_toit(wagon7_1, aucun).
a_essieux(wagon7_1, 3).
a_wagon(train7, wagon7_2).
numero_wagon(wagon7_2, 2).
couleur_wagon(wagon7_2, bleu).
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, bleu).
longueur_wagon(wagon7_3, long).
a_paroi(wagon7_3, complet).
a_toit(wagon7_3, aucun).
a_essieux(wagon7_3, 2).

ouest(train8).
a_wagon(train8, wagon8_1).
numero_wagon(wagon8_1, 1).
couleur_wagon(wagon8_1, vert).
longueur_wagon(wagon8_1, long).
a_paroi(wagon8_1, rampe).
a_toit(wagon8_1, toit_renforce).
a_essieux(wagon8_1, 2).
a_wagon(train8, wagon8_2).
numero_wagon(wagon8_2, 2).
couleur_wagon(wagon8_2, blanc).
longueur_wagon(wagon8_2, court).
a_paroi(wagon8_2, rampe).
a_toit(wagon8_2, toit_renforce).
a_essieux(wagon8_2, 2).

ouest(train9).
a_wagon(train9, wagon9_1).
numero_wagon(wagon9_1, 1).
couleur_wagon(wagon9_1, blanc).
longueur_wagon(wagon9_1, court).
a_paroi(wagon9_1, complet).
a_toit(wagon9_1, fondation_toit).
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, fondation_toit).
a_essieux(wagon9_2, 2).

ouest(train10).
a_wagon(train10, wagon10_1).
numero_wagon(wagon10_1, 1).
couleur_wagon(wagon10_1, blanc).
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, vert).
longueur_wagon(wagon10_2, court).
a_paroi(wagon10_2, complet).
a_toit(wagon10_2, aucun).
a_essieux(wagon10_2, 2).

ouest(train11).
a_wagon(train11, wagon11_1).
numero_wagon(wagon11_1, 1).
couleur_wagon(wagon11_1, bleu).
longueur_wagon(wagon11_1, court).
a_paroi(wagon11_1, complet).
a_toit(wagon11_1, aucun).
a_essieux(wagon11_1, 2).
a_wagon(train11, wagon11_2).
numero_wagon(wagon11_2, 2).
couleur_wagon(wagon11_2, bleu).
longueur_wagon(wagon11_2, long).
a_paroi(wagon11_2, rampe).
a_toit(wagon11_2, aucun).
a_essieux(wagon11_2, 2).
a_wagon(train11, wagon11_3).
numero_wagon(wagon11_3, 3).
couleur_wagon(wagon11_3, bleu).
longueur_wagon(wagon11_3, court).
a_paroi(wagon11_3, rampe).
a_toit(wagon11_3, aucun).
a_essieux(wagon11_3, 2).
a_wagon(train11, wagon11_4).
numero_wagon(wagon11_4, 4).
couleur_wagon(wagon11_4, bleu).
longueur_wagon(wagon11_4, long).
a_paroi(wagon11_4, rampe).
a_toit(wagon11_4, aucun).
a_essieux(wagon11_4, 3).

ouest(train12).
a_wagon(train12, wagon12_1).
numero_wagon(wagon12_1, 1).
couleur_wagon(wagon12_1, blanc).
longueur_wagon(wagon12_1, long).
a_paroi(wagon12_1, complet).
a_toit(wagon12_1, aucun).
a_essieux(wagon12_1, 3).
a_wagon(train12, wagon12_2).
numero_wagon(wagon12_2, 2).
couleur_wagon(wagon12_2, rouge).
longueur_wagon(wagon12_2, court).
a_paroi(wagon12_2, complet).
a_toit(wagon12_2, aucun).
a_essieux(wagon12_2, 2).

ouest(train13).
a_wagon(train13, wagon13_1).
numero_wagon(wagon13_1, 1).
couleur_wagon(wagon13_1, vert).
longueur_wagon(wagon13_1, court).
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, rouge).
longueur_wagon(wagon13_2, long).
a_paroi(wagon13_2, complet).
a_toit(wagon13_2, aucun).
a_essieux(wagon13_2, 2).
a_wagon(train13, wagon13_3).
numero_wagon(wagon13_3, 3).
couleur_wagon(wagon13_3, jaune).
longueur_wagon(wagon13_3, long).
a_paroi(wagon13_3, rampe).
a_toit(wagon13_3, aucun).
a_essieux(wagon13_3, 3).


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) :-
    a_wagon(Train, CarA),
    a_wagon(Train, CarB),
    CarA \= CarB,
    a_toit(CarA, Roof1),
    a_toit(CarB, Roof2),
    Roof1 \= Roof2.
est(train0).
a_wagon(train0, wagon0_1).
numero_wagon(wagon0_1, 1).
couleur_wagon(wagon0_1, vert).
longueur_wagon(wagon0_1, long).
a_paroi(wagon0_1, rampe).
a_toit(wagon0_1, fondation_toit).
a_essieux(wagon0_1, 3).
a_wagon(train0, wagon0_2).
numero_wagon(wagon0_2, 2).
couleur_wagon(wagon0_2, bleu).
longueur_wagon(wagon0_2, long).
a_paroi(wagon0_2, complet).
a_toit(wagon0_2, toit_pointu).
a_essieux(wagon0_2, 2).

est(train1).
a_wagon(train1, wagon1_1).
numero_wagon(wagon1_1, 1).
couleur_wagon(wagon1_1, jaune).
longueur_wagon(wagon1_1, long).
a_paroi(wagon1_1, complet).
a_toit(wagon1_1, toit_solide).
a_essieux(wagon1_1, 2).
a_wagon(train1, wagon1_2).
numero_wagon(wagon1_2, 2).
couleur_wagon(wagon1_2, vert).
longueur_wagon(wagon1_2, long).
a_paroi(wagon1_2, rampe).
a_toit(wagon1_2, aucun).
a_essieux(wagon1_2, 3).

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

est(train3).
a_wagon(train3, wagon3_1).
numero_wagon(wagon3_1, 1).
couleur_wagon(wagon3_1, vert).
longueur_wagon(wagon3_1, court).
a_paroi(wagon3_1, rampe).
a_toit(wagon3_1, fondation_toit).
a_essieux(wagon3_1, 2).
a_wagon(train3, wagon3_2).
numero_wagon(wagon3_2, 2).
couleur_wagon(wagon3_2, rouge).
longueur_wagon(wagon3_2, long).
a_paroi(wagon3_2, rampe).
a_toit(wagon3_2, aucun).
a_essieux(wagon3_2, 2).

est(train4).
a_wagon(train4, wagon4_1).
numero_wagon(wagon4_1, 1).
couleur_wagon(wagon4_1, jaune).
longueur_wagon(wagon4_1, court).
a_paroi(wagon4_1, complet).
a_toit(wagon4_1, aucun).
a_essieux(wagon4_1, 2).
a_wagon(train4, wagon4_2).
numero_wagon(wagon4_2, 2).
couleur_wagon(wagon4_2, jaune).
longueur_wagon(wagon4_2, long).
a_paroi(wagon4_2, rampe).
a_toit(wagon4_2, fondation_toit).
a_essieux(wagon4_2, 3).
a_wagon(train4, wagon4_3).
numero_wagon(wagon4_3, 3).
couleur_wagon(wagon4_3, blanc).
longueur_wagon(wagon4_3, long).
a_paroi(wagon4_3, complet).
a_toit(wagon4_3, toit_pointu).
a_essieux(wagon4_3, 3).
a_wagon(train4, wagon4_4).
numero_wagon(wagon4_4, 4).
couleur_wagon(wagon4_4, vert).
longueur_wagon(wagon4_4, long).
a_paroi(wagon4_4, complet).
a_toit(wagon4_4, toit_renforce).
a_essieux(wagon4_4, 3).

est(train5).
a_wagon(train5, wagon5_1).
numero_wagon(wagon5_1, 1).
couleur_wagon(wagon5_1, bleu).
longueur_wagon(wagon5_1, long).
a_paroi(wagon5_1, rampe).
a_toit(wagon5_1, toit_renforce).
a_essieux(wagon5_1, 3).
a_wagon(train5, wagon5_2).
numero_wagon(wagon5_2, 2).
couleur_wagon(wagon5_2, bleu).
longueur_wagon(wagon5_2, court).
a_paroi(wagon5_2, rampe).
a_toit(wagon5_2, toit_renforce).
a_essieux(wagon5_2, 2).
a_wagon(train5, wagon5_3).
numero_wagon(wagon5_3, 3).
couleur_wagon(wagon5_3, rouge).
longueur_wagon(wagon5_3, long).
a_paroi(wagon5_3, complet).
a_toit(wagon5_3, toit_solide).
a_essieux(wagon5_3, 2).
a_wagon(train5, wagon5_4).
numero_wagon(wagon5_4, 4).
couleur_wagon(wagon5_4, jaune).
longueur_wagon(wagon5_4, long).
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, rouge).
longueur_wagon(wagon6_1, long).
a_paroi(wagon6_1, complet).
a_toit(wagon6_1, toit_pointu).
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, toit_renforce).
a_essieux(wagon6_2, 3).
a_wagon(train6, wagon6_3).
numero_wagon(wagon6_3, 3).
couleur_wagon(wagon6_3, vert).
longueur_wagon(wagon6_3, court).
a_paroi(wagon6_3, complet).
a_toit(wagon6_3, aucun).
a_essieux(wagon6_3, 2).
a_wagon(train6, wagon6_4).
numero_wagon(wagon6_4, 4).
couleur_wagon(wagon6_4, bleu).
longueur_wagon(wagon6_4, long).
a_paroi(wagon6_4, rampe).
a_toit(wagon6_4, toit_solide).
a_essieux(wagon6_4, 2).

ouest(train7).
a_wagon(train7, wagon7_1).
numero_wagon(wagon7_1, 1).
couleur_wagon(wagon7_1, rouge).
longueur_wagon(wagon7_1, long).
a_paroi(wagon7_1, rampe).
a_toit(wagon7_1, aucun).
a_essieux(wagon7_1, 3).
a_wagon(train7, wagon7_2).
numero_wagon(wagon7_2, 2).
couleur_wagon(wagon7_2, bleu).
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, bleu).
longueur_wagon(wagon7_3, long).
a_paroi(wagon7_3, complet).
a_toit(wagon7_3, aucun).
a_essieux(wagon7_3, 2).

ouest(train8).
a_wagon(train8, wagon8_1).
numero_wagon(wagon8_1, 1).
couleur_wagon(wagon8_1, vert).
longueur_wagon(wagon8_1, long).
a_paroi(wagon8_1, rampe).
a_toit(wagon8_1, toit_renforce).
a_essieux(wagon8_1, 2).
a_wagon(train8, wagon8_2).
numero_wagon(wagon8_2, 2).
couleur_wagon(wagon8_2, blanc).
longueur_wagon(wagon8_2, court).
a_paroi(wagon8_2, rampe).
a_toit(wagon8_2, toit_renforce).
a_essieux(wagon8_2, 2).

ouest(train9).
a_wagon(train9, wagon9_1).
numero_wagon(wagon9_1, 1).
couleur_wagon(wagon9_1, blanc).
longueur_wagon(wagon9_1, court).
a_paroi(wagon9_1, complet).
a_toit(wagon9_1, fondation_toit).
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, fondation_toit).
a_essieux(wagon9_2, 2).

ouest(train10).
a_wagon(train10, wagon10_1).
numero_wagon(wagon10_1, 1).
couleur_wagon(wagon10_1, blanc).
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, vert).
longueur_wagon(wagon10_2, court).
a_paroi(wagon10_2, complet).
a_toit(wagon10_2, aucun).
a_essieux(wagon10_2, 2).

ouest(train11).
a_wagon(train11, wagon11_1).
numero_wagon(wagon11_1, 1).
couleur_wagon(wagon11_1, bleu).
longueur_wagon(wagon11_1, court).
a_paroi(wagon11_1, complet).
a_toit(wagon11_1, aucun).
a_essieux(wagon11_1, 2).
a_wagon(train11, wagon11_2).
numero_wagon(wagon11_2, 2).
couleur_wagon(wagon11_2, bleu).
longueur_wagon(wagon11_2, long).
a_paroi(wagon11_2, rampe).
a_toit(wagon11_2, aucun).
a_essieux(wagon11_2, 2).
a_wagon(train11, wagon11_3).
numero_wagon(wagon11_3, 3).
couleur_wagon(wagon11_3, bleu).
longueur_wagon(wagon11_3, court).
a_paroi(wagon11_3, rampe).
a_toit(wagon11_3, aucun).
a_essieux(wagon11_3, 2).
a_wagon(train11, wagon11_4).
numero_wagon(wagon11_4, 4).
couleur_wagon(wagon11_4, bleu).
longueur_wagon(wagon11_4, long).
a_paroi(wagon11_4, rampe).
a_toit(wagon11_4, aucun).
a_essieux(wagon11_4, 3).

ouest(train12).
a_wagon(train12, wagon12_1).
numero_wagon(wagon12_1, 1).
couleur_wagon(wagon12_1, blanc).
longueur_wagon(wagon12_1, long).
a_paroi(wagon12_1, complet).
a_toit(wagon12_1, aucun).
a_essieux(wagon12_1, 3).
a_wagon(train12, wagon12_2).
numero_wagon(wagon12_2, 2).
couleur_wagon(wagon12_2, rouge).
longueur_wagon(wagon12_2, court).
a_paroi(wagon12_2, complet).
a_toit(wagon12_2, aucun).
a_essieux(wagon12_2, 2).

ouest(train13).
a_wagon(train13, wagon13_1).
numero_wagon(wagon13_1, 1).
couleur_wagon(wagon13_1, vert).
longueur_wagon(wagon13_1, court).
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, rouge).
longueur_wagon(wagon13_2, long).
a_paroi(wagon13_2, complet).
a_toit(wagon13_2, aucun).
a_essieux(wagon13_2, 2).
a_wagon(train13, wagon13_3).
numero_wagon(wagon13_3, 3).
couleur_wagon(wagon13_3, jaune).
longueur_wagon(wagon13_3, long).
a_paroi(wagon13_3, rampe).
a_toit(wagon13_3, aucun).
a_essieux(wagon13_3, 3).


est 158 1 vert long rampe fondation_toit 3 2 bleu long complet toit_pointu 2
est 133 1 jaune long complet toit_solide 2 2 vert long rampe aucun 3
est 24 1 bleu court rampe toit_pointu 2 2 jaune court rampe fondation_toit 2 3 bleu court rampe toit_pointu 2 4 blanc long complet aucun 2
est -45 1 vert court rampe fondation_toit 2 2 rouge long rampe aucun 2
est 218 1 jaune court complet aucun 2 2 jaune long rampe fondation_toit 3 3 blanc long complet toit_pointu 3 4 vert long complet toit_renforce 3
est 175 1 bleu long rampe toit_renforce 3 2 bleu court rampe toit_renforce 2 3 rouge long complet toit_solide 2 4 jaune long complet fondation_toit 2
est 141 1 rouge long complet toit_pointu 2 2 rouge long rampe toit_renforce 3 3 vert court complet aucun 2 4 bleu long rampe toit_solide 2
ouest 22 1 rouge long rampe aucun 3 2 bleu court rampe aucun 2 3 bleu long complet aucun 2
ouest 220 1 vert long rampe toit_renforce 2 2 blanc court rampe toit_renforce 2
ouest 189 1 blanc court complet fondation_toit 2 2 blanc long rampe fondation_toit 2
ouest -20 1 blanc court rampe aucun 2 2 vert court complet aucun 2
ouest 204 1 bleu court complet aucun 2 2 bleu long rampe aucun 2 3 bleu court rampe aucun 2 4 bleu long rampe aucun 3
ouest 154 1 blanc long complet aucun 3 2 rouge court complet aucun 2
ouest 187 1 vert court rampe aucun 2 2 rouge long complet aucun 2 3 jaune long rampe aucun 3