:- module(addDifflists,[]).
translate((Links --> Rechts),(Kopf :- Rumpf)) :-
   !, translate(Links, Kopf ,I,J),
      translate(Rechts,Rumpf,I,J).
translate(Term,Term).  

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