>>46
言ってみたものの結構むずい、再帰終端があまいですが単純なサンプル例。

Unprotect[Power, Log];
Power[a_/;a=!=E, b_ /;b=!=-1]:=(b Log[a])//HoldForm[Power[E, #]] &
Log[Power[a_,-1]]:=-Log[a]
Protect[Power, Log];
組込関数をいじっているので、副作用に注意が必要です。


(*Test*)
(1/a)^(k/2) (* -> Exp[-1/2 k Log[a] *)
% - Exp[k/2 Log[1/a]](* -> 0 *)
Exp[-Log[a]] - Exp[Log[1/a]](* -> 0 *)