gespiegelt(T,ST) :- T =.. [C|Ts1], reverse(Ts1,Ts2), alleGespiegelt(Ts2,Ts3), ST =.. [C|Ts3]. reverse([],[]). reverse([X|Xs],Zs) :- reverse(Xs,Ys), append(Ys,[X],Zs). append([],Ys,Ys). append([X|Xs],Ys,[X|Zs]) :- append(Xs,Ys,Zs). alleGespiegelt([],[]). alleGespiegelt([X|Xs],[Y|Ys]) :- gespiegelt(X,Y), alleGespiegelt(Xs,Ys).