I want subscripted, superscripted symbols used as symbols themselves.
Subscripted : I tried this and it works, Subscript[M, 5][x_] := x^2
It doesn't work for Superscript, because it interprets as raised to the power I have both subscript and superscript
In:= (M1^5)[t_] := t
During evaluation of In:= SetDelayed::write: Tag Power in (M1^5)[t_] is Protected. >>
If this is the case how can I use both subscript and superscript?
Please see these articles covering how to use subscripted expressions as variables:
Subscript[M,5] is not a symbol, but an expression. This will make things confusing.
I very much recommend avoiding using Subscript or SuperScript or the like while writing code unless you are already familiar with what is outlined in the two articles above.
To answer your exact question, you want to use SubSuperScript: