Travel examples from lecture 2021

Allikas: Lambda
raudtee(tallinn,tapa).
(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).

raudtee(tallinn,Y) => $ans(Y).
raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).
(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).

raudtee(tallinn,Y) => $ans(Y).

raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

buss(tartu,Y) => $ans(Y).



raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

tee(tartu,kolkakylla).
buss(X,Y) => tee(X,Y).

tee(X,Y) => jalgrattaga(X,Y).
jalgrattaga(X,Y) => jalgrattaga(Y,X).

raudtee(tartu,Y) => $ans(Y).

--------


raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

tee(tartu,kolkakylla).
buss(X,Y) => tee(X,Y).

tee(X,Y) => jalgrattaga(X,Y).
jalgrattaga(X,Y) => jalgrattaga(Y,X).

% distants(tallinn,tapa,raudtee,100). 
% distants(tallinn,tapa,buss,105). 
% distants(tapa,tartu,80).

distants(tallinn,tapa)=100.
distants(tapa,jogeva)=50.
distants(jogeva,tartu)=40.

distants(tallinn,tartu)=180.
distants(tartu,kolkakyla)=10.

distants(tallinn,jogeva)=X => $ans(X).
% (distants(X,Y)=D1 & distants(Y,Z)=D2) =>  ...

%raudtee(tartu,Y) => $ans(Y).

-------


raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

tee(tartu,kolkakylla).
buss(X,Y) => tee(X,Y).

tee(X,Y) => jalgrattaga(X,Y).
jalgrattaga(X,Y) => jalgrattaga(Y,X).

buss(X,Y) => yhistransport(X,Y).
raudtee(X,Y) => yhistransport(X,Y).
laev(X,Y) => yhistransport(X,Y).
(yhistransport(X,Y) & yhistransport(Y,Z)) => yhistransport(X,Z).

%tee(tartu,Y) => $ans(Y).
-yhistransport(tartu,kuressaare).

--------


raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

tee(tartu,kolkakylla).
buss(X,Y) => tee(X,Y).

tee(X,Y) => jalgrattaga(X,Y).
jalgrattaga(X,Y) => jalgrattaga(Y,X).

buss(X,Y) => yhistransport(X,Y,millega(buss,X,Y)).
raudtee(X,Y) => yhistransport(X,Y,millega(raudtee,X,Y)).
laev(X,Y) => yhistransport(X,Y,millega(laev,X,Y)).
(yhistransport(X,Y,V1) & yhistransport(Y,Z,V2)) => yhistransport(X,Z,jarjest(V1,V2)).

%tee(tartu,Y) => $ans(Y).
yhistransport(tartu,kuivastu,Z) => $ans(Z).

---------

raudtee(tallinn,tapa).
raudtee(tapa,jogeva).
raudtee(tapa,rakvere).
raudtee(rakvere,narva).
raudtee(jogeva,tartu).

(raudtee(X,Y) & raudtee(Y,Z)) => raudtee(X,Z).
raudtee(X,Y) => raudtee(Y,X).

laev(virtsu,kuivastu).

laev(X,Y) => laev(Y,X).

buss(tallinn,virtsu).
buss(kuivastu,kuressaare).

buss(X,Y) => buss(Y,X).
raudtee(X,Y) => buss(X,Y).

tee(tartu,kolkakyla).
buss(X,Y) => tee(X,Y).

tee(X,Y) => jalgrattaga(X,Y).
tee(X,Y) => jala(X,Y).
jalgrattaga(X,Y) => jalgrattaga(Y,X).
jala(X,Y) => jala(Y,X).

buss(X,Y) => yhistransport(X,Y,millega(buss,X,Y)).
raudtee(X,Y) => yhistransport(X,Y,millega(raudtee,X,Y)).
laev(X,Y) => yhistransport(X,Y,millega(laev,X,Y)).
(yhistransport(X,Y,V1) & yhistransport(Y,Z,V2)) => yhistransport(X,Z,jarjest(V1,V2)).

yhistransport(X,Y,Z) => saabminna(X,Y,Z).
tee(X,Y) => saabminna(X,Y,millega(jalgrattaga,X,Y)).
tee(X,Y) => saabminna(X,Y,millega(jala,X,Y)).
(saabminna(X,Y,V1) & saabminna(Y,Z,V2)) => saabminna(X,Z,jarjest(V1,V2)).

%tee(tartu,Y) => $ans(Y).
saabminna(tartu,kolkakyla,Z) => $ans(Z).