Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: Superscript on plus expression

  • To: mathgroup at smc.vnet.net
  • Subject: [mg128815] Re: Superscript on plus expression
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Wed, 28 Nov 2012 03:16:34 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <20121117084935.868E56AF3@smc.vnet.net>

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