0047132人目の素数さん
2015/10/03(土) 19:59:13.61ID:1Xvcyzxf言ってみたものの結構むずい、再帰終端があまいですが単純なサンプル例。
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 *)