Du bist ein Zugklassifizierer, der Züge beobachtet, die entweder nach Osten oder nach Westen fahren.
Jeder Zug besteht aus einem oder mehreren Wagen, und jeder Wagen ist durch eine Menge von Eigenschaften charakterisiert, die als Grundatome über eine feste Menge von Prädikaten dargestellt werden.
Die Fahrtrichtung (nach Osten oder nach Westen) eines Zuges soll aus seiner Zusammensetzung bestimmt werden.

Um die Züge zu beschreiben, definieren wir eine Menge von Prädikaten und Grunddomänen (Wertebereiche):

- 'hat_wagen(Zug, Wagen)': Gibt an, dass 'Wagen' Teil des Zuges 'Zug' ist.
- 'wagen_nummer(Wagen, WagenNummer)': Gibt die Position des Wagens innerhalb seines Zuges an. 'WagenNummer' ist eine positive ganze Zahl.
- 'wagen_farbe(Wagen, Farbe)': Gibt die Farbe des Wagens an. 'Farbe' kann 'rot', 'blau', 'gruen', 'gelb' oder 'weiss' sein.
- 'wagen_laenge(Wagen, Laenge)': Gibt die Länge des Wagens an. 'Laenge' kann entweder 'kurz' oder 'lang' sein.
- 'hat_wand(Wagen, WandTyp)': Gibt den Wandtyp eines Wagens an. 'WandTyp' kann entweder 'voll' oder 'gelaender' sein.
- 'hat_dach(Wagen, DachTyp)': Gibt den Dachtyp des Wagens an. 'DachTyp' kann 'dach_fundament', 'festes_dach', 'verstrebtes_dach', 'spitzdach' oder 'keine' sein.
- 'hat_rad(Wagen, RadAnzahl)': Gibt die Anzahl der Radsätze des Wagens an. 'RadAnzahl' kann entweder '2' oder '3' sein.
- 'hat_ladung(Wagen, LadungsTyp)': Gibt den Typ der Ladung des Wagens an. 'LadungsTyp' kann 'blaue_box', 'goldene_vase', 'fass', 'diamant', 'metall_topf', 'ovale_vase' oder 'keine' sein (wenn LadungsAnzahl = 0, ist keine Ladung vorhanden).
- 'ladungs_nummer(Wagen, LadungsAnzahl)': Gibt an, wie viele Ladungsobjekte geladen sind. 'LadungsAnzahl' kann '0', '1', '2' oder '3' sein.

Du erhältst positive und negative Beispiele in der Form ost(t) oder west(t) für jeden Zug t, zusammen mit Hintergrundwissen, das aus Grundfakten über die obigen Prädikate besteht und seine Zusammensetzung beschreibt.

ost(zug0).
hat_wagen(zug0, wagen0_1).
wagen_nummer(wagen0_1, 1).
wagen_farbe(wagen0_1, blau).
wagen_laenge(wagen0_1, kurz).
hat_wand(wagen0_1, gelaender).
hat_dach(wagen0_1, dach_fundament).
hat_rad(wagen0_1, 2).
hat_ladung(wagen0_1, keine).
ladungs_nummer(wagen0_1, 0).
hat_wagen(zug0, wagen0_2).
wagen_nummer(wagen0_2, 2).
wagen_farbe(wagen0_2, gruen).
wagen_laenge(wagen0_2, lang).
hat_wand(wagen0_2, gelaender).
hat_dach(wagen0_2, dach_fundament).
hat_rad(wagen0_2, 3).
hat_ladung(wagen0_2, metall_topf).
ladungs_nummer(wagen0_2, 1).
hat_wagen(zug0, wagen0_3).
wagen_nummer(wagen0_3, 3).
wagen_farbe(wagen0_3, weiss).
wagen_laenge(wagen0_3, kurz).
hat_wand(wagen0_3, gelaender).
hat_dach(wagen0_3, spitzdach).
hat_rad(wagen0_3, 2).
hat_ladung(wagen0_3, metall_topf).
ladungs_nummer(wagen0_3, 2).
hat_wagen(zug0, wagen0_4).
wagen_nummer(wagen0_4, 4).
wagen_farbe(wagen0_4, blau).
wagen_laenge(wagen0_4, lang).
hat_wand(wagen0_4, gelaender).
hat_dach(wagen0_4, dach_fundament).
hat_rad(wagen0_4, 2).
hat_ladung(wagen0_4, ovale_vase).
ladungs_nummer(wagen0_4, 2).

ost(zug1).
hat_wagen(zug1, wagen1_1).
wagen_nummer(wagen1_1, 1).
wagen_farbe(wagen1_1, rot).
wagen_laenge(wagen1_1, kurz).
hat_wand(wagen1_1, gelaender).
hat_dach(wagen1_1, spitzdach).
hat_rad(wagen1_1, 2).
hat_ladung(wagen1_1, goldene_vase).
ladungs_nummer(wagen1_1, 2).
hat_wagen(zug1, wagen1_2).
wagen_nummer(wagen1_2, 2).
wagen_farbe(wagen1_2, gruen).
wagen_laenge(wagen1_2, lang).
hat_wand(wagen1_2, voll).
hat_dach(wagen1_2, dach_fundament).
hat_rad(wagen1_2, 3).
hat_ladung(wagen1_2, blaue_box).
ladungs_nummer(wagen1_2, 2).
hat_wagen(zug1, wagen1_3).
wagen_nummer(wagen1_3, 3).
wagen_farbe(wagen1_3, weiss).
wagen_laenge(wagen1_3, kurz).
hat_wand(wagen1_3, voll).
hat_dach(wagen1_3, dach_fundament).
hat_rad(wagen1_3, 2).
hat_ladung(wagen1_3, diamant).
ladungs_nummer(wagen1_3, 1).
hat_wagen(zug1, wagen1_4).
wagen_nummer(wagen1_4, 4).
wagen_farbe(wagen1_4, gruen).
wagen_laenge(wagen1_4, kurz).
hat_wand(wagen1_4, voll).
hat_dach(wagen1_4, verstrebtes_dach).
hat_rad(wagen1_4, 2).
hat_ladung(wagen1_4, ovale_vase).
ladungs_nummer(wagen1_4, 1).

ost(zug2).
hat_wagen(zug2, wagen2_1).
wagen_nummer(wagen2_1, 1).
wagen_farbe(wagen2_1, gelb).
wagen_laenge(wagen2_1, kurz).
hat_wand(wagen2_1, gelaender).
hat_dach(wagen2_1, spitzdach).
hat_rad(wagen2_1, 2).
hat_ladung(wagen2_1, metall_topf).
ladungs_nummer(wagen2_1, 2).
hat_wagen(zug2, wagen2_2).
wagen_nummer(wagen2_2, 2).
wagen_farbe(wagen2_2, blau).
wagen_laenge(wagen2_2, lang).
hat_wand(wagen2_2, gelaender).
hat_dach(wagen2_2, dach_fundament).
hat_rad(wagen2_2, 3).
hat_ladung(wagen2_2, fass).
ladungs_nummer(wagen2_2, 1).
hat_wagen(zug2, wagen2_3).
wagen_nummer(wagen2_3, 3).
wagen_farbe(wagen2_3, rot).
wagen_laenge(wagen2_3, lang).
hat_wand(wagen2_3, gelaender).
hat_dach(wagen2_3, festes_dach).
hat_rad(wagen2_3, 3).
hat_ladung(wagen2_3, fass).
ladungs_nummer(wagen2_3, 1).

ost(zug3).
hat_wagen(zug3, wagen3_1).
wagen_nummer(wagen3_1, 1).
wagen_farbe(wagen3_1, rot).
wagen_laenge(wagen3_1, kurz).
hat_wand(wagen3_1, gelaender).
hat_dach(wagen3_1, spitzdach).
hat_rad(wagen3_1, 2).
hat_ladung(wagen3_1, ovale_vase).
ladungs_nummer(wagen3_1, 2).
hat_wagen(zug3, wagen3_2).
wagen_nummer(wagen3_2, 2).
wagen_farbe(wagen3_2, weiss).
wagen_laenge(wagen3_2, lang).
hat_wand(wagen3_2, voll).
hat_dach(wagen3_2, festes_dach).
hat_rad(wagen3_2, 3).
hat_ladung(wagen3_2, keine).
ladungs_nummer(wagen3_2, 0).
hat_wagen(zug3, wagen3_3).
wagen_nummer(wagen3_3, 3).
wagen_farbe(wagen3_3, gruen).
wagen_laenge(wagen3_3, lang).
hat_wand(wagen3_3, gelaender).
hat_dach(wagen3_3, keine).
hat_rad(wagen3_3, 3).
hat_ladung(wagen3_3, keine).
ladungs_nummer(wagen3_3, 0).

west(zug4).
hat_wagen(zug4, wagen4_1).
wagen_nummer(wagen4_1, 1).
wagen_farbe(wagen4_1, blau).
wagen_laenge(wagen4_1, kurz).
hat_wand(wagen4_1, voll).
hat_dach(wagen4_1, spitzdach).
hat_rad(wagen4_1, 2).
hat_ladung(wagen4_1, fass).
ladungs_nummer(wagen4_1, 2).
hat_wagen(zug4, wagen4_2).
wagen_nummer(wagen4_2, 2).
wagen_farbe(wagen4_2, gelb).
wagen_laenge(wagen4_2, lang).
hat_wand(wagen4_2, gelaender).
hat_dach(wagen4_2, festes_dach).
hat_rad(wagen4_2, 3).
hat_ladung(wagen4_2, ovale_vase).
ladungs_nummer(wagen4_2, 1).

west(zug5).
hat_wagen(zug5, wagen5_1).
wagen_nummer(wagen5_1, 1).
wagen_farbe(wagen5_1, gruen).
wagen_laenge(wagen5_1, kurz).
hat_wand(wagen5_1, gelaender).
hat_dach(wagen5_1, keine).
hat_rad(wagen5_1, 2).
hat_ladung(wagen5_1, keine).
ladungs_nummer(wagen5_1, 0).
hat_wagen(zug5, wagen5_2).
wagen_nummer(wagen5_2, 2).
wagen_farbe(wagen5_2, gelb).
wagen_laenge(wagen5_2, lang).
hat_wand(wagen5_2, voll).
hat_dach(wagen5_2, verstrebtes_dach).
hat_rad(wagen5_2, 3).
hat_ladung(wagen5_2, ovale_vase).
ladungs_nummer(wagen5_2, 3).

west(zug6).
hat_wagen(zug6, wagen6_1).
wagen_nummer(wagen6_1, 1).
wagen_farbe(wagen6_1, gelb).
wagen_laenge(wagen6_1, lang).
hat_wand(wagen6_1, voll).
hat_dach(wagen6_1, keine).
hat_rad(wagen6_1, 3).
hat_ladung(wagen6_1, blaue_box).
ladungs_nummer(wagen6_1, 2).
hat_wagen(zug6, wagen6_2).
wagen_nummer(wagen6_2, 2).
wagen_farbe(wagen6_2, gruen).
wagen_laenge(wagen6_2, kurz).
hat_wand(wagen6_2, gelaender).
hat_dach(wagen6_2, festes_dach).
hat_rad(wagen6_2, 2).
hat_ladung(wagen6_2, ovale_vase).
ladungs_nummer(wagen6_2, 2).

west(zug7).
hat_wagen(zug7, wagen7_1).
wagen_nummer(wagen7_1, 1).
wagen_farbe(wagen7_1, rot).
wagen_laenge(wagen7_1, kurz).
hat_wand(wagen7_1, gelaender).
hat_dach(wagen7_1, dach_fundament).
hat_rad(wagen7_1, 2).
hat_ladung(wagen7_1, keine).
ladungs_nummer(wagen7_1, 0).
hat_wagen(zug7, wagen7_2).
wagen_nummer(wagen7_2, 2).
wagen_farbe(wagen7_2, gruen).
wagen_laenge(wagen7_2, lang).
hat_wand(wagen7_2, voll).
hat_dach(wagen7_2, spitzdach).
hat_rad(wagen7_2, 3).
hat_ladung(wagen7_2, blaue_box).
ladungs_nummer(wagen7_2, 2).
hat_wagen(zug7, wagen7_3).
wagen_nummer(wagen7_3, 3).
wagen_farbe(wagen7_3, rot).
wagen_laenge(wagen7_3, lang).
hat_wand(wagen7_3, gelaender).
hat_dach(wagen7_3, festes_dach).
hat_rad(wagen7_3, 2).
hat_ladung(wagen7_3, ovale_vase).
ladungs_nummer(wagen7_3, 2).

ost(zug8).
hat_wagen(zug8, wagen8_1).
wagen_nummer(wagen8_1, 1).
wagen_farbe(wagen8_1, rot).
wagen_laenge(wagen8_1, kurz).
hat_wand(wagen8_1, gelaender).
hat_dach(wagen8_1, spitzdach).
hat_rad(wagen8_1, 2).
hat_ladung(wagen8_1, keine).
ladungs_nummer(wagen8_1, 0).
hat_wagen(zug8, wagen8_2).
wagen_nummer(wagen8_2, 2).
wagen_farbe(wagen8_2, rot).
wagen_laenge(wagen8_2, lang).
hat_wand(wagen8_2, voll).
hat_dach(wagen8_2, festes_dach).
hat_rad(wagen8_2, 2).
hat_ladung(wagen8_2, blaue_box).
ladungs_nummer(wagen8_2, 1).
hat_wagen(zug8, wagen8_3).
wagen_nummer(wagen8_3, 3).
wagen_farbe(wagen8_3, rot).
wagen_laenge(wagen8_3, lang).
hat_wand(wagen8_3, voll).
hat_dach(wagen8_3, dach_fundament).
hat_rad(wagen8_3, 3).
hat_ladung(wagen8_3, keine).
ladungs_nummer(wagen8_3, 0).
hat_wagen(zug8, wagen8_4).
wagen_nummer(wagen8_4, 4).
wagen_farbe(wagen8_4, weiss).
wagen_laenge(wagen8_4, kurz).
hat_wand(wagen8_4, gelaender).
hat_dach(wagen8_4, verstrebtes_dach).
hat_rad(wagen8_4, 2).
hat_ladung(wagen8_4, ovale_vase).
ladungs_nummer(wagen8_4, 1).

west(zug9).
hat_wagen(zug9, wagen9_1).
wagen_nummer(wagen9_1, 1).
wagen_farbe(wagen9_1, rot).
wagen_laenge(wagen9_1, lang).
hat_wand(wagen9_1, voll).
hat_dach(wagen9_1, verstrebtes_dach).
hat_rad(wagen9_1, 3).
hat_ladung(wagen9_1, goldene_vase).
ladungs_nummer(wagen9_1, 2).
hat_wagen(zug9, wagen9_2).
wagen_nummer(wagen9_2, 2).
wagen_farbe(wagen9_2, blau).
wagen_laenge(wagen9_2, kurz).
hat_wand(wagen9_2, voll).
hat_dach(wagen9_2, festes_dach).
hat_rad(wagen9_2, 2).
hat_ladung(wagen9_2, fass).
ladungs_nummer(wagen9_2, 2).

ost(zug10).
hat_wagen(zug10, wagen10_1).
wagen_nummer(wagen10_1, 1).
wagen_farbe(wagen10_1, gelb).
wagen_laenge(wagen10_1, kurz).
hat_wand(wagen10_1, voll).
hat_dach(wagen10_1, spitzdach).
hat_rad(wagen10_1, 2).
hat_ladung(wagen10_1, goldene_vase).
ladungs_nummer(wagen10_1, 2).
hat_wagen(zug10, wagen10_2).
wagen_nummer(wagen10_2, 2).
wagen_farbe(wagen10_2, weiss).
wagen_laenge(wagen10_2, kurz).
hat_wand(wagen10_2, gelaender).
hat_dach(wagen10_2, keine).
hat_rad(wagen10_2, 2).
hat_ladung(wagen10_2, metall_topf).
ladungs_nummer(wagen10_2, 1).
hat_wagen(zug10, wagen10_3).
wagen_nummer(wagen10_3, 3).
wagen_farbe(wagen10_3, blau).
wagen_laenge(wagen10_3, lang).
hat_wand(wagen10_3, gelaender).
hat_dach(wagen10_3, keine).
hat_rad(wagen10_3, 2).
hat_ladung(wagen10_3, keine).
ladungs_nummer(wagen10_3, 0).

ost(zug11).
hat_wagen(zug11, wagen11_1).
wagen_nummer(wagen11_1, 1).
wagen_farbe(wagen11_1, rot).
wagen_laenge(wagen11_1, lang).
hat_wand(wagen11_1, voll).
hat_dach(wagen11_1, dach_fundament).
hat_rad(wagen11_1, 2).
hat_ladung(wagen11_1, fass).
ladungs_nummer(wagen11_1, 1).
hat_wagen(zug11, wagen11_2).
wagen_nummer(wagen11_2, 2).
wagen_farbe(wagen11_2, blau).
wagen_laenge(wagen11_2, lang).
hat_wand(wagen11_2, gelaender).
hat_dach(wagen11_2, verstrebtes_dach).
hat_rad(wagen11_2, 2).
hat_ladung(wagen11_2, metall_topf).
ladungs_nummer(wagen11_2, 2).
hat_wagen(zug11, wagen11_3).
wagen_nummer(wagen11_3, 3).
wagen_farbe(wagen11_3, rot).
wagen_laenge(wagen11_3, lang).
hat_wand(wagen11_3, gelaender).
hat_dach(wagen11_3, dach_fundament).
hat_rad(wagen11_3, 2).
hat_ladung(wagen11_3, metall_topf).
ladungs_nummer(wagen11_3, 2).
hat_wagen(zug11, wagen11_4).
wagen_nummer(wagen11_4, 4).
wagen_farbe(wagen11_4, gruen).
wagen_laenge(wagen11_4, lang).
hat_wand(wagen11_4, gelaender).
hat_dach(wagen11_4, festes_dach).
hat_rad(wagen11_4, 2).
hat_ladung(wagen11_4, fass).
ladungs_nummer(wagen11_4, 3).

ost(zug12).
hat_wagen(zug12, wagen12_1).
wagen_nummer(wagen12_1, 1).
wagen_farbe(wagen12_1, blau).
wagen_laenge(wagen12_1, kurz).
hat_wand(wagen12_1, voll).
hat_dach(wagen12_1, dach_fundament).
hat_rad(wagen12_1, 2).
hat_ladung(wagen12_1, blaue_box).
ladungs_nummer(wagen12_1, 2).
hat_wagen(zug12, wagen12_2).
wagen_nummer(wagen12_2, 2).
wagen_farbe(wagen12_2, gruen).
wagen_laenge(wagen12_2, kurz).
hat_wand(wagen12_2, gelaender).
hat_dach(wagen12_2, verstrebtes_dach).
hat_rad(wagen12_2, 2).
hat_ladung(wagen12_2, blaue_box).
ladungs_nummer(wagen12_2, 2).
hat_wagen(zug12, wagen12_3).
wagen_nummer(wagen12_3, 3).
wagen_farbe(wagen12_3, gruen).
wagen_laenge(wagen12_3, lang).
hat_wand(wagen12_3, voll).
hat_dach(wagen12_3, dach_fundament).
hat_rad(wagen12_3, 2).
hat_ladung(wagen12_3, fass).
ladungs_nummer(wagen12_3, 2).
hat_wagen(zug12, wagen12_4).
wagen_nummer(wagen12_4, 4).
wagen_farbe(wagen12_4, gruen).
wagen_laenge(wagen12_4, kurz).
hat_wand(wagen12_4, voll).
hat_dach(wagen12_4, verstrebtes_dach).
hat_rad(wagen12_4, 2).
hat_ladung(wagen12_4, diamant).
ladungs_nummer(wagen12_4, 2).

west(zug13).
hat_wagen(zug13, wagen13_1).
wagen_nummer(wagen13_1, 1).
wagen_farbe(wagen13_1, gruen).
wagen_laenge(wagen13_1, kurz).
hat_wand(wagen13_1, voll).
hat_dach(wagen13_1, festes_dach).
hat_rad(wagen13_1, 2).
hat_ladung(wagen13_1, metall_topf).
ladungs_nummer(wagen13_1, 2).
hat_wagen(zug13, wagen13_2).
wagen_nummer(wagen13_2, 2).
wagen_farbe(wagen13_2, rot).
wagen_laenge(wagen13_2, lang).
hat_wand(wagen13_2, voll).
hat_dach(wagen13_2, verstrebtes_dach).
hat_rad(wagen13_2, 3).
hat_ladung(wagen13_2, blaue_box).
ladungs_nummer(wagen13_2, 2).

west(zug14).
hat_wagen(zug14, wagen14_1).
wagen_nummer(wagen14_1, 1).
wagen_farbe(wagen14_1, rot).
wagen_laenge(wagen14_1, lang).
hat_wand(wagen14_1, voll).
hat_dach(wagen14_1, spitzdach).
hat_rad(wagen14_1, 3).
hat_ladung(wagen14_1, keine).
ladungs_nummer(wagen14_1, 0).
hat_wagen(zug14, wagen14_2).
wagen_nummer(wagen14_2, 2).
wagen_farbe(wagen14_2, gruen).
wagen_laenge(wagen14_2, kurz).
hat_wand(wagen14_2, gelaender).
hat_dach(wagen14_2, verstrebtes_dach).
hat_rad(wagen14_2, 2).
hat_ladung(wagen14_2, keine).
ladungs_nummer(wagen14_2, 0).
hat_wagen(zug14, wagen14_3).
wagen_nummer(wagen14_3, 3).
wagen_farbe(wagen14_3, gelb).
wagen_laenge(wagen14_3, lang).
hat_wand(wagen14_3, voll).
hat_dach(wagen14_3, dach_fundament).
hat_rad(wagen14_3, 3).
hat_ladung(wagen14_3, fass).
ladungs_nummer(wagen14_3, 2).

west(zug15).
hat_wagen(zug15, wagen15_1).
wagen_nummer(wagen15_1, 1).
wagen_farbe(wagen15_1, rot).
wagen_laenge(wagen15_1, lang).
hat_wand(wagen15_1, gelaender).
hat_dach(wagen15_1, keine).
hat_rad(wagen15_1, 2).
hat_ladung(wagen15_1, blaue_box).
ladungs_nummer(wagen15_1, 2).
hat_wagen(zug15, wagen15_2).
wagen_nummer(wagen15_2, 2).
wagen_farbe(wagen15_2, rot).
wagen_laenge(wagen15_2, lang).
hat_wand(wagen15_2, gelaender).
hat_dach(wagen15_2, festes_dach).
hat_rad(wagen15_2, 3).
hat_ladung(wagen15_2, fass).
ladungs_nummer(wagen15_2, 1).


Deine Aufgabe besteht darin, eine Hypothese in Form einer Prolog-Regel der Form „ost(T) :- Rumpf.“ zu formulieren, die nach Osten fahrende von nach Westen fahrenden Zügen korrekt unterscheidet.
Die Hypothese muss für alle positiven Beispiele (d. h. Züge, die als ost(t) gekennzeichnet sind) wahr und für alle negativen Beispiele (d. h. west(t)-Züge) falsch sein.
Ziel ist es, die kürzeste korrekte Regel zu finden, das heißt eine, die mit der geringstmöglichen Anzahl von Rumpfliteralen auskommt, ohne Bedingungen zu verlieren.
Deine Regel darf nur die in der obigen Grammatik definierten Prädikate verwenden und muss nach Osten fahrende von nach Westen fahrenden Zügen perfekt trennen.
ost(Zug) :-
    hat_wagen(Zug, CarA), hat_wagen(Zug, CarB),
    CarA \= CarB,
    wagen_nummer(CarA, N1), wagen_nummer(CarB, N2),
    (N2 =:= N1+1 ; N2 =:= N1-1),
    hat_rad(CarA, W),
    hat_rad(CarB, W).
ost(zug0).
hat_wagen(zug0, wagen0_1).
wagen_nummer(wagen0_1, 1).
wagen_farbe(wagen0_1, blau).
wagen_laenge(wagen0_1, kurz).
hat_wand(wagen0_1, gelaender).
hat_dach(wagen0_1, dach_fundament).
hat_rad(wagen0_1, 2).
hat_ladung(wagen0_1, keine).
ladungs_nummer(wagen0_1, 0).
hat_wagen(zug0, wagen0_2).
wagen_nummer(wagen0_2, 2).
wagen_farbe(wagen0_2, gruen).
wagen_laenge(wagen0_2, lang).
hat_wand(wagen0_2, gelaender).
hat_dach(wagen0_2, dach_fundament).
hat_rad(wagen0_2, 3).
hat_ladung(wagen0_2, metall_topf).
ladungs_nummer(wagen0_2, 1).
hat_wagen(zug0, wagen0_3).
wagen_nummer(wagen0_3, 3).
wagen_farbe(wagen0_3, weiss).
wagen_laenge(wagen0_3, kurz).
hat_wand(wagen0_3, gelaender).
hat_dach(wagen0_3, spitzdach).
hat_rad(wagen0_3, 2).
hat_ladung(wagen0_3, metall_topf).
ladungs_nummer(wagen0_3, 2).
hat_wagen(zug0, wagen0_4).
wagen_nummer(wagen0_4, 4).
wagen_farbe(wagen0_4, blau).
wagen_laenge(wagen0_4, lang).
hat_wand(wagen0_4, gelaender).
hat_dach(wagen0_4, dach_fundament).
hat_rad(wagen0_4, 2).
hat_ladung(wagen0_4, ovale_vase).
ladungs_nummer(wagen0_4, 2).

ost(zug1).
hat_wagen(zug1, wagen1_1).
wagen_nummer(wagen1_1, 1).
wagen_farbe(wagen1_1, rot).
wagen_laenge(wagen1_1, kurz).
hat_wand(wagen1_1, gelaender).
hat_dach(wagen1_1, spitzdach).
hat_rad(wagen1_1, 2).
hat_ladung(wagen1_1, goldene_vase).
ladungs_nummer(wagen1_1, 2).
hat_wagen(zug1, wagen1_2).
wagen_nummer(wagen1_2, 2).
wagen_farbe(wagen1_2, gruen).
wagen_laenge(wagen1_2, lang).
hat_wand(wagen1_2, voll).
hat_dach(wagen1_2, dach_fundament).
hat_rad(wagen1_2, 3).
hat_ladung(wagen1_2, blaue_box).
ladungs_nummer(wagen1_2, 2).
hat_wagen(zug1, wagen1_3).
wagen_nummer(wagen1_3, 3).
wagen_farbe(wagen1_3, weiss).
wagen_laenge(wagen1_3, kurz).
hat_wand(wagen1_3, voll).
hat_dach(wagen1_3, dach_fundament).
hat_rad(wagen1_3, 2).
hat_ladung(wagen1_3, diamant).
ladungs_nummer(wagen1_3, 1).
hat_wagen(zug1, wagen1_4).
wagen_nummer(wagen1_4, 4).
wagen_farbe(wagen1_4, gruen).
wagen_laenge(wagen1_4, kurz).
hat_wand(wagen1_4, voll).
hat_dach(wagen1_4, verstrebtes_dach).
hat_rad(wagen1_4, 2).
hat_ladung(wagen1_4, ovale_vase).
ladungs_nummer(wagen1_4, 1).

ost(zug2).
hat_wagen(zug2, wagen2_1).
wagen_nummer(wagen2_1, 1).
wagen_farbe(wagen2_1, gelb).
wagen_laenge(wagen2_1, kurz).
hat_wand(wagen2_1, gelaender).
hat_dach(wagen2_1, spitzdach).
hat_rad(wagen2_1, 2).
hat_ladung(wagen2_1, metall_topf).
ladungs_nummer(wagen2_1, 2).
hat_wagen(zug2, wagen2_2).
wagen_nummer(wagen2_2, 2).
wagen_farbe(wagen2_2, blau).
wagen_laenge(wagen2_2, lang).
hat_wand(wagen2_2, gelaender).
hat_dach(wagen2_2, dach_fundament).
hat_rad(wagen2_2, 3).
hat_ladung(wagen2_2, fass).
ladungs_nummer(wagen2_2, 1).
hat_wagen(zug2, wagen2_3).
wagen_nummer(wagen2_3, 3).
wagen_farbe(wagen2_3, rot).
wagen_laenge(wagen2_3, lang).
hat_wand(wagen2_3, gelaender).
hat_dach(wagen2_3, festes_dach).
hat_rad(wagen2_3, 3).
hat_ladung(wagen2_3, fass).
ladungs_nummer(wagen2_3, 1).

ost(zug3).
hat_wagen(zug3, wagen3_1).
wagen_nummer(wagen3_1, 1).
wagen_farbe(wagen3_1, rot).
wagen_laenge(wagen3_1, kurz).
hat_wand(wagen3_1, gelaender).
hat_dach(wagen3_1, spitzdach).
hat_rad(wagen3_1, 2).
hat_ladung(wagen3_1, ovale_vase).
ladungs_nummer(wagen3_1, 2).
hat_wagen(zug3, wagen3_2).
wagen_nummer(wagen3_2, 2).
wagen_farbe(wagen3_2, weiss).
wagen_laenge(wagen3_2, lang).
hat_wand(wagen3_2, voll).
hat_dach(wagen3_2, festes_dach).
hat_rad(wagen3_2, 3).
hat_ladung(wagen3_2, keine).
ladungs_nummer(wagen3_2, 0).
hat_wagen(zug3, wagen3_3).
wagen_nummer(wagen3_3, 3).
wagen_farbe(wagen3_3, gruen).
wagen_laenge(wagen3_3, lang).
hat_wand(wagen3_3, gelaender).
hat_dach(wagen3_3, keine).
hat_rad(wagen3_3, 3).
hat_ladung(wagen3_3, keine).
ladungs_nummer(wagen3_3, 0).

west(zug4).
hat_wagen(zug4, wagen4_1).
wagen_nummer(wagen4_1, 1).
wagen_farbe(wagen4_1, blau).
wagen_laenge(wagen4_1, kurz).
hat_wand(wagen4_1, voll).
hat_dach(wagen4_1, spitzdach).
hat_rad(wagen4_1, 2).
hat_ladung(wagen4_1, fass).
ladungs_nummer(wagen4_1, 2).
hat_wagen(zug4, wagen4_2).
wagen_nummer(wagen4_2, 2).
wagen_farbe(wagen4_2, gelb).
wagen_laenge(wagen4_2, lang).
hat_wand(wagen4_2, gelaender).
hat_dach(wagen4_2, festes_dach).
hat_rad(wagen4_2, 3).
hat_ladung(wagen4_2, ovale_vase).
ladungs_nummer(wagen4_2, 1).

west(zug5).
hat_wagen(zug5, wagen5_1).
wagen_nummer(wagen5_1, 1).
wagen_farbe(wagen5_1, gruen).
wagen_laenge(wagen5_1, kurz).
hat_wand(wagen5_1, gelaender).
hat_dach(wagen5_1, keine).
hat_rad(wagen5_1, 2).
hat_ladung(wagen5_1, keine).
ladungs_nummer(wagen5_1, 0).
hat_wagen(zug5, wagen5_2).
wagen_nummer(wagen5_2, 2).
wagen_farbe(wagen5_2, gelb).
wagen_laenge(wagen5_2, lang).
hat_wand(wagen5_2, voll).
hat_dach(wagen5_2, verstrebtes_dach).
hat_rad(wagen5_2, 3).
hat_ladung(wagen5_2, ovale_vase).
ladungs_nummer(wagen5_2, 3).

west(zug6).
hat_wagen(zug6, wagen6_1).
wagen_nummer(wagen6_1, 1).
wagen_farbe(wagen6_1, gelb).
wagen_laenge(wagen6_1, lang).
hat_wand(wagen6_1, voll).
hat_dach(wagen6_1, keine).
hat_rad(wagen6_1, 3).
hat_ladung(wagen6_1, blaue_box).
ladungs_nummer(wagen6_1, 2).
hat_wagen(zug6, wagen6_2).
wagen_nummer(wagen6_2, 2).
wagen_farbe(wagen6_2, gruen).
wagen_laenge(wagen6_2, kurz).
hat_wand(wagen6_2, gelaender).
hat_dach(wagen6_2, festes_dach).
hat_rad(wagen6_2, 2).
hat_ladung(wagen6_2, ovale_vase).
ladungs_nummer(wagen6_2, 2).

west(zug7).
hat_wagen(zug7, wagen7_1).
wagen_nummer(wagen7_1, 1).
wagen_farbe(wagen7_1, rot).
wagen_laenge(wagen7_1, kurz).
hat_wand(wagen7_1, gelaender).
hat_dach(wagen7_1, dach_fundament).
hat_rad(wagen7_1, 2).
hat_ladung(wagen7_1, keine).
ladungs_nummer(wagen7_1, 0).
hat_wagen(zug7, wagen7_2).
wagen_nummer(wagen7_2, 2).
wagen_farbe(wagen7_2, gruen).
wagen_laenge(wagen7_2, lang).
hat_wand(wagen7_2, voll).
hat_dach(wagen7_2, spitzdach).
hat_rad(wagen7_2, 3).
hat_ladung(wagen7_2, blaue_box).
ladungs_nummer(wagen7_2, 2).
hat_wagen(zug7, wagen7_3).
wagen_nummer(wagen7_3, 3).
wagen_farbe(wagen7_3, rot).
wagen_laenge(wagen7_3, lang).
hat_wand(wagen7_3, gelaender).
hat_dach(wagen7_3, festes_dach).
hat_rad(wagen7_3, 2).
hat_ladung(wagen7_3, ovale_vase).
ladungs_nummer(wagen7_3, 2).

ost(zug8).
hat_wagen(zug8, wagen8_1).
wagen_nummer(wagen8_1, 1).
wagen_farbe(wagen8_1, rot).
wagen_laenge(wagen8_1, kurz).
hat_wand(wagen8_1, gelaender).
hat_dach(wagen8_1, spitzdach).
hat_rad(wagen8_1, 2).
hat_ladung(wagen8_1, keine).
ladungs_nummer(wagen8_1, 0).
hat_wagen(zug8, wagen8_2).
wagen_nummer(wagen8_2, 2).
wagen_farbe(wagen8_2, rot).
wagen_laenge(wagen8_2, lang).
hat_wand(wagen8_2, voll).
hat_dach(wagen8_2, festes_dach).
hat_rad(wagen8_2, 2).
hat_ladung(wagen8_2, blaue_box).
ladungs_nummer(wagen8_2, 1).
hat_wagen(zug8, wagen8_3).
wagen_nummer(wagen8_3, 3).
wagen_farbe(wagen8_3, rot).
wagen_laenge(wagen8_3, lang).
hat_wand(wagen8_3, voll).
hat_dach(wagen8_3, dach_fundament).
hat_rad(wagen8_3, 3).
hat_ladung(wagen8_3, keine).
ladungs_nummer(wagen8_3, 0).
hat_wagen(zug8, wagen8_4).
wagen_nummer(wagen8_4, 4).
wagen_farbe(wagen8_4, weiss).
wagen_laenge(wagen8_4, kurz).
hat_wand(wagen8_4, gelaender).
hat_dach(wagen8_4, verstrebtes_dach).
hat_rad(wagen8_4, 2).
hat_ladung(wagen8_4, ovale_vase).
ladungs_nummer(wagen8_4, 1).

west(zug9).
hat_wagen(zug9, wagen9_1).
wagen_nummer(wagen9_1, 1).
wagen_farbe(wagen9_1, rot).
wagen_laenge(wagen9_1, lang).
hat_wand(wagen9_1, voll).
hat_dach(wagen9_1, verstrebtes_dach).
hat_rad(wagen9_1, 3).
hat_ladung(wagen9_1, goldene_vase).
ladungs_nummer(wagen9_1, 2).
hat_wagen(zug9, wagen9_2).
wagen_nummer(wagen9_2, 2).
wagen_farbe(wagen9_2, blau).
wagen_laenge(wagen9_2, kurz).
hat_wand(wagen9_2, voll).
hat_dach(wagen9_2, festes_dach).
hat_rad(wagen9_2, 2).
hat_ladung(wagen9_2, fass).
ladungs_nummer(wagen9_2, 2).

ost(zug10).
hat_wagen(zug10, wagen10_1).
wagen_nummer(wagen10_1, 1).
wagen_farbe(wagen10_1, gelb).
wagen_laenge(wagen10_1, kurz).
hat_wand(wagen10_1, voll).
hat_dach(wagen10_1, spitzdach).
hat_rad(wagen10_1, 2).
hat_ladung(wagen10_1, goldene_vase).
ladungs_nummer(wagen10_1, 2).
hat_wagen(zug10, wagen10_2).
wagen_nummer(wagen10_2, 2).
wagen_farbe(wagen10_2, weiss).
wagen_laenge(wagen10_2, kurz).
hat_wand(wagen10_2, gelaender).
hat_dach(wagen10_2, keine).
hat_rad(wagen10_2, 2).
hat_ladung(wagen10_2, metall_topf).
ladungs_nummer(wagen10_2, 1).
hat_wagen(zug10, wagen10_3).
wagen_nummer(wagen10_3, 3).
wagen_farbe(wagen10_3, blau).
wagen_laenge(wagen10_3, lang).
hat_wand(wagen10_3, gelaender).
hat_dach(wagen10_3, keine).
hat_rad(wagen10_3, 2).
hat_ladung(wagen10_3, keine).
ladungs_nummer(wagen10_3, 0).

ost(zug11).
hat_wagen(zug11, wagen11_1).
wagen_nummer(wagen11_1, 1).
wagen_farbe(wagen11_1, rot).
wagen_laenge(wagen11_1, lang).
hat_wand(wagen11_1, voll).
hat_dach(wagen11_1, dach_fundament).
hat_rad(wagen11_1, 2).
hat_ladung(wagen11_1, fass).
ladungs_nummer(wagen11_1, 1).
hat_wagen(zug11, wagen11_2).
wagen_nummer(wagen11_2, 2).
wagen_farbe(wagen11_2, blau).
wagen_laenge(wagen11_2, lang).
hat_wand(wagen11_2, gelaender).
hat_dach(wagen11_2, verstrebtes_dach).
hat_rad(wagen11_2, 2).
hat_ladung(wagen11_2, metall_topf).
ladungs_nummer(wagen11_2, 2).
hat_wagen(zug11, wagen11_3).
wagen_nummer(wagen11_3, 3).
wagen_farbe(wagen11_3, rot).
wagen_laenge(wagen11_3, lang).
hat_wand(wagen11_3, gelaender).
hat_dach(wagen11_3, dach_fundament).
hat_rad(wagen11_3, 2).
hat_ladung(wagen11_3, metall_topf).
ladungs_nummer(wagen11_3, 2).
hat_wagen(zug11, wagen11_4).
wagen_nummer(wagen11_4, 4).
wagen_farbe(wagen11_4, gruen).
wagen_laenge(wagen11_4, lang).
hat_wand(wagen11_4, gelaender).
hat_dach(wagen11_4, festes_dach).
hat_rad(wagen11_4, 2).
hat_ladung(wagen11_4, fass).
ladungs_nummer(wagen11_4, 3).

ost(zug12).
hat_wagen(zug12, wagen12_1).
wagen_nummer(wagen12_1, 1).
wagen_farbe(wagen12_1, blau).
wagen_laenge(wagen12_1, kurz).
hat_wand(wagen12_1, voll).
hat_dach(wagen12_1, dach_fundament).
hat_rad(wagen12_1, 2).
hat_ladung(wagen12_1, blaue_box).
ladungs_nummer(wagen12_1, 2).
hat_wagen(zug12, wagen12_2).
wagen_nummer(wagen12_2, 2).
wagen_farbe(wagen12_2, gruen).
wagen_laenge(wagen12_2, kurz).
hat_wand(wagen12_2, gelaender).
hat_dach(wagen12_2, verstrebtes_dach).
hat_rad(wagen12_2, 2).
hat_ladung(wagen12_2, blaue_box).
ladungs_nummer(wagen12_2, 2).
hat_wagen(zug12, wagen12_3).
wagen_nummer(wagen12_3, 3).
wagen_farbe(wagen12_3, gruen).
wagen_laenge(wagen12_3, lang).
hat_wand(wagen12_3, voll).
hat_dach(wagen12_3, dach_fundament).
hat_rad(wagen12_3, 2).
hat_ladung(wagen12_3, fass).
ladungs_nummer(wagen12_3, 2).
hat_wagen(zug12, wagen12_4).
wagen_nummer(wagen12_4, 4).
wagen_farbe(wagen12_4, gruen).
wagen_laenge(wagen12_4, kurz).
hat_wand(wagen12_4, voll).
hat_dach(wagen12_4, verstrebtes_dach).
hat_rad(wagen12_4, 2).
hat_ladung(wagen12_4, diamant).
ladungs_nummer(wagen12_4, 2).

west(zug13).
hat_wagen(zug13, wagen13_1).
wagen_nummer(wagen13_1, 1).
wagen_farbe(wagen13_1, gruen).
wagen_laenge(wagen13_1, kurz).
hat_wand(wagen13_1, voll).
hat_dach(wagen13_1, festes_dach).
hat_rad(wagen13_1, 2).
hat_ladung(wagen13_1, metall_topf).
ladungs_nummer(wagen13_1, 2).
hat_wagen(zug13, wagen13_2).
wagen_nummer(wagen13_2, 2).
wagen_farbe(wagen13_2, rot).
wagen_laenge(wagen13_2, lang).
hat_wand(wagen13_2, voll).
hat_dach(wagen13_2, verstrebtes_dach).
hat_rad(wagen13_2, 3).
hat_ladung(wagen13_2, blaue_box).
ladungs_nummer(wagen13_2, 2).

west(zug14).
hat_wagen(zug14, wagen14_1).
wagen_nummer(wagen14_1, 1).
wagen_farbe(wagen14_1, rot).
wagen_laenge(wagen14_1, lang).
hat_wand(wagen14_1, voll).
hat_dach(wagen14_1, spitzdach).
hat_rad(wagen14_1, 3).
hat_ladung(wagen14_1, keine).
ladungs_nummer(wagen14_1, 0).
hat_wagen(zug14, wagen14_2).
wagen_nummer(wagen14_2, 2).
wagen_farbe(wagen14_2, gruen).
wagen_laenge(wagen14_2, kurz).
hat_wand(wagen14_2, gelaender).
hat_dach(wagen14_2, verstrebtes_dach).
hat_rad(wagen14_2, 2).
hat_ladung(wagen14_2, keine).
ladungs_nummer(wagen14_2, 0).
hat_wagen(zug14, wagen14_3).
wagen_nummer(wagen14_3, 3).
wagen_farbe(wagen14_3, gelb).
wagen_laenge(wagen14_3, lang).
hat_wand(wagen14_3, voll).
hat_dach(wagen14_3, dach_fundament).
hat_rad(wagen14_3, 3).
hat_ladung(wagen14_3, fass).
ladungs_nummer(wagen14_3, 2).

west(zug15).
hat_wagen(zug15, wagen15_1).
wagen_nummer(wagen15_1, 1).
wagen_farbe(wagen15_1, rot).
wagen_laenge(wagen15_1, lang).
hat_wand(wagen15_1, gelaender).
hat_dach(wagen15_1, keine).
hat_rad(wagen15_1, 2).
hat_ladung(wagen15_1, blaue_box).
ladungs_nummer(wagen15_1, 2).
hat_wagen(zug15, wagen15_2).
wagen_nummer(wagen15_2, 2).
wagen_farbe(wagen15_2, rot).
wagen_laenge(wagen15_2, lang).
hat_wand(wagen15_2, gelaender).
hat_dach(wagen15_2, festes_dach).
hat_rad(wagen15_2, 3).
hat_ladung(wagen15_2, fass).
ladungs_nummer(wagen15_2, 1).


ost 179 1 blau kurz gelaender dach_fundament 2 keine 0 2 gruen lang gelaender dach_fundament 3 metall_topf 1 3 weiss kurz gelaender spitzdach 2 metall_topf 2 4 blau lang gelaender dach_fundament 2 ovale_vase 2
ost 188 1 rot kurz gelaender spitzdach 2 goldene_vase 2 2 gruen lang voll dach_fundament 3 blaue_box 2 3 weiss kurz voll dach_fundament 2 diamant 1 4 gruen kurz voll verstrebtes_dach 2 ovale_vase 1
ost -3 1 gelb kurz gelaender spitzdach 2 metall_topf 2 2 blau lang gelaender dach_fundament 3 fass 1 3 rot lang gelaender festes_dach 3 fass 1
ost -13 1 rot kurz gelaender spitzdach 2 ovale_vase 2 2 weiss lang voll festes_dach 3 keine 0 3 gruen lang gelaender keine 3 keine 0
west 46 1 blau kurz voll spitzdach 2 fass 2 2 gelb lang gelaender festes_dach 3 ovale_vase 1
west 56 1 gruen kurz gelaender keine 2 keine 0 2 gelb lang voll verstrebtes_dach 3 ovale_vase 3
west 141 1 gelb lang voll keine 3 blaue_box 2 2 gruen kurz gelaender festes_dach 2 ovale_vase 2
west 178 1 rot kurz gelaender dach_fundament 2 keine 0 2 gruen lang voll spitzdach 3 blaue_box 2 3 rot lang gelaender festes_dach 2 ovale_vase 2
ost -22 1 rot kurz gelaender spitzdach 2 keine 0 2 rot lang voll festes_dach 2 blaue_box 1 3 rot lang voll dach_fundament 3 keine 0 4 weiss kurz gelaender verstrebtes_dach 2 ovale_vase 1
west 32 1 rot lang voll verstrebtes_dach 3 goldene_vase 2 2 blau kurz voll festes_dach 2 fass 2
ost 192 1 gelb kurz voll spitzdach 2 goldene_vase 2 2 weiss kurz gelaender keine 2 metall_topf 1 3 blau lang gelaender keine 2 keine 0
ost 20 1 rot lang voll dach_fundament 2 fass 1 2 blau lang gelaender verstrebtes_dach 2 metall_topf 2 3 rot lang gelaender dach_fundament 2 metall_topf 2 4 gruen lang gelaender festes_dach 2 fass 3
ost 223 1 blau kurz voll dach_fundament 2 blaue_box 2 2 gruen kurz gelaender verstrebtes_dach 2 blaue_box 2 3 gruen lang voll dach_fundament 2 fass 2 4 gruen kurz voll verstrebtes_dach 2 diamant 2
west 232 1 gruen kurz voll festes_dach 2 metall_topf 2 2 rot lang voll verstrebtes_dach 3 blaue_box 2
west -22 1 rot lang voll spitzdach 3 keine 0 2 gruen kurz gelaender verstrebtes_dach 2 keine 0 3 gelb lang voll dach_fundament 3 fass 2
west 199 1 rot lang gelaender keine 2 blaue_box 2 2 rot lang gelaender festes_dach 3 fass 1