% verkette(+Liste1,+Liste,-Gesamtliste):

verkette([],[],[]).
verkette([],L2,L) :- liste(L2), L = L2.

verkette([X|Xs],L2,L) :-
    L = [X|Ys],
    verkette(Xs,L2,Ys).

liste([]).
liste([X|Xs]) :- liste(Xs).

% umkehren(+Liste,-Umgekehrte)
umkehren([],[]).
umkehren([X|Xs],Liste) :-
    umkehren(Xs,Ys),
    verkette(Ys,[X],Liste).
