% Sortieren einer Zahlenliste

% korrekt: alle Zahlen sind aufsteigend
sortiert([]).
sortiert([_]).
sortiert([E1,E2|R]) :- E1=<E2, sortiert([E2|R]).

% moegliche Loesungen: Permutation einer Liste
perm([],[]).
perm(L1,[E|R]) :- streiche(E,L1,R1), perm(R1,R).

streiche(E,[E|R],R).
streiche(E,[F|R],[F|S]) :- streiche(E,R,S).

sortiere(Xs,Ys) :- perm(Xs,Ys), sortiert(Ys).
