komati([X], N, X) :- term_to_atom(T, X), N =:= T. komati([X1,X2|Xs], N, S) :- member(Op, [+,-,*,/,'']), concat_atom([X1,Op,X2], X3), komati([X3|Xs], N, S). :- forall(komati([1,2,3,4,5,6,7,8,9], 100, S), writeln(S)).