I have a confusion with the Apply function. The Apply function replaces the head of an expression at the desired level. For example:
In[124]:= Apply[Superscript, {{2, 3}}, {1}] Out[124]= {Superscript[2,3]}
On the other hand the operator @@@ is equivalent to Apply acting at level {1} :
In[125]:= Superscript @@@ {{2, 3}} Out[125]= {Superscript[2,3]}
However the level {1} of the expression is not an argument for Superscript:
In[126]:= Level[{{2, 3}}, {1}] Out[126]= {{2, 3}} In[127]:= FullForm[%] Out[127]=List[List[2,3]]
Since :
In[131]:= Superscript[List[2, 3]] Out[131]= Superscript[{2, 3}]
So it is as if the operator @@@ is acting at level {2}
In[129]:= Level[{{2, 3}}, {2}] Out[129]= {2, 3} In[130]:= FullForm[%] Out[130]=List[2,3]
and so replacing the head in the last expression is the same as :
In[132]:= Superscript[2, 3] Out[132]= Superscript[2,3]
What is happening here?