translate((Links --> Rechts),(Kopf :- Rumpf)) :-
   translate(Links, Kopf ,I,J),
   translate(Rechts,Rumpf,I,J).

translate((A,B),(Atr,Btr),I,J) :-
    !,translate(A,Atr,I,K),
    translate(B,Btr,K,J).
translate((A;B),(Atr;Btr),I,J) :-
    !,translate(A,Atr,I,J),
    translate(B,Btr,I,J).
translate([Atom],(I = [Atom|J]),I,J) :-
    !.
translate({Prolog},Prolog,I,I) :-
    !.
translate(Kategorie,Term,I,J) :-
    Kategorie =.. [Funktor|Argumente],
    append(Argumente,[I,J],MehrArgumente),
    Term =.. [Funktor|MehrArgumente].

term_expansion(Term,Expandiert) :-
    translate(Term,Expandiert).

