MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Superscript on plus expression


You could use a replacement rule.

ssr = ss_?(
        # === Subscript || # === Superscript&)[arg_Plus,k_] :>
    ss["(" <> StringJoin@@Riffle[ToString/@
            (List@@arg), " + "] <> ")", k];

{Subscript[a+b, k], Superscript[a+b, k]}/.ssr


Bob Hanlon


On Tue, Nov 27, 2012 at 3:30 AM, Dave Snead <dsnead6 at charter.net> wrote:
> Hi,
>
> Mathematica fails to parenthesize the a+b in Superscript[Plus[a,b],k]
> so the output looks identical to
> Plus[a,Superscript[b,k]]
>
> Previous suggestions that worked to fix a similar problem for the Subscript
> case, i.e.,
>
> Format[Subscript[arg_Plus, k_]] :=
> Subscript[
>   "(" <> StringJoin @@ Riffle[ToString /@ (List @@ arg), " + "] <>
>    ")", k]
>
> and
>
> MakeBoxes[Subscript[(head : (Plus | Times))[args__], k_],
>   form : (StandardForm | TraditionalForm)] :=
> InterpretationBox[#1, #2] & @@ {SubscriptBox[
>     RowBox[{"(", ToBoxes[head[args], form], ")"}], ToBoxes[k, form]],
>    Subscript[head[args], k]}
>
> don't carry over analogously to the Superscript case!
>
> Format[Superscript[arg_Plus, k_]] :=
> Superscript[
>   "(" <> StringJoin @@ Riffle[ToString /@ (List @@ arg), " + "] <>
>    ")", k]
>
> and
>
> MakeBoxes[Superscript[(head : (Plus | Times))[args__], k_],
>   form : (StandardForm | TraditionalForm)] :=
> InterpretationBox[#1, #2] & @@ {SuperscriptBox[
>     RowBox[{"(", ToBoxes[head[args], form], ")"}], ToBoxes[k, form]],
>    Superscript[head[args], k]}
>
> don't work!
>
>
> How can I get Mathematica to parenthesize the sum in
> Superscript[Plus[a,b],k] ?
>
> Thanks in advance,
> Dave Snead
>
>
>
>
>



  • Prev by Date: how to orient Polar Plot 0 Degrees at the North Pole
  • Next by Date: Re: Numerical expression
  • Previous by thread: Re: Superscript on plus expression
  • Next by thread: Re: Superscript on plus expression