Если вы используете SWI, вы можете использовать atom_concat / 3:
rule(X, ....):-
atom_concat(blah, Y, X),
...
например: предположим, что X = бла
atom_concat (бла, Y, X) будет создавать экземпляр Y с чем-то другим.
Обратите внимание, что atom_concat работает только с атомами.