% Loesungen zu Blatt 4 Aufgaben 1 bis 4


% Aufgabe 1

% vor(+integer,+integer,+integer,+integer)
% vor(H1,M1,H2,M2)  Uhrzeit H1:M1 ist vor Uhrzeit H2:M2
vor(H1,_,H2,_):-
    H1 < H2.
vor(H,M1,H,M2):-
    M1 < M2.


% Aufgabe 2


%       ------------------
%      /                  \
%     /     /----------> Wien
%     |     |           /    \
%     v     |          v      |
% Salzburg  |        Bruck    |
%     |     |         /       |
%     |     |        v        |
%     |    /  /-- Friesach   /
%     |   /  /              /
%     v  /  v              /
%     Villach <------------


% Aufgabe 3

% zug(Z,S1,Hab1,Mab1,S2,Han2,Man2)  Zug Z faehrt in Stadt S1
%     um Hab1:Mab1 ab und kommt in Stadt S2 um Han2:Man2 an.
zug(rj533,wien,10,30,villach,14,46).
zug(rj559,wien,11,03,bruck,12,56).
zug(r1711,bruck,13,08,friesach,14,56).
zug(4241,friesach,15,08,villach,16,39).
zug(rj564,wien,11,30,salzburg,13,52).
zug(ec113,salzburg,14,12,villach,16,43).
zug(rj630,villach,13,14,wien,17,27).

% reise(H1ab,M1ab,S1,S,Han,Man)  Es gibt eine Zugreise von S1 nach S
%     mit Abfahrtszeit H1ab:M1ab und Ankunftszeit Han:Man.
reise(H1ab,M1ab,S1,S,Han,Man):-
    zug(_,S1,H1ab,M1ab,S,Han,Man).
reise(H1ab,M1ab,S1,S,Han,Man):-
    zug(_,S1,H1ab,M1ab,S2,H2an,M2an),
    zug(_,S2,H2ab,M2ab,_,_,_),
    vor(H2an,M2an,H2ab,M2ab),
    reise(H2ab,M2ab,S2,S,Han,Man).


% Aufgabe 4

% vor0(+integer,+integer,+integer)
% vor0(H1,M1,H2,M2)  Uhrzeit H1:M1 ist vor oder gleich Uhrzeit H2:M2
vor0(H1,_,H2,_):-
    H1 < H2.
vor0(H,M1,H,M2):-
    M1 =< M2.

% ?- reise(H1ab,M1ab,S1,S,Han,Man), vor0(11,00,H1ab,M1ab), vor0(Han,Man,17,0).
