$\mathfrak{gl}$-style vs $\mathfrak{sl}$-style fundamental weights for $A_{r}$ I've recently been trying to brush up on the representation theory of Lie
algebras of type A, and I'm running into some $\mathfrak{gl}$ vs $\mathfrak{sl}$ confusion. That is, when I compute the fundamental weights of $\mathfrak{sl}(n,\mathbb{C})$, I get what SAGE calls the fundamental weights of $\mathfrak{gl}(n,\mathbb{C})$. I would really like to understand this $\mathfrak{gl}$ $\mathfrak{sl}$ distinction and how to compute the $\mathfrak{sl}$ style fundamental weights, roots, etc. For reference, here is what I have:
Let $\mathfrak{sl}(r+1,\mathbb{C})=\{A\in M_{r+1}(\mathbb{C}) \mid Tr(A)=0\}$ with the Lie bracket given by $[x,y]=xy-yx$. Define $e_{i,j}$ to be the $r+1\times  r+1$ matrix which is 1 in the $i,j$-th spot and $0$ elsewhere. Then the Cartan subalgebra of $\mathfrak{sl}(r+1,\mathbb{C})$ is given by traceless diagonal $r+1\times r+1$ matrices and the Cartan decomposition is given by: $\mathfrak{h}\oplus_{i>j}(\mathbb{C}\langle e_{i,j}\rangle\oplus\mathbb{C}\langle e_{j,i}\rangle)$ where $\mathbb{C}\langle e_{i,j}\rangle$ is the 1-dimensional complex vector space spanned by $e_{i,j}$. Letting $\epsilon_{j}\in\mathfrak{h}^{*}$ be given by $\epsilon_{j}(e_{k,k})=\delta_{j,k}$, we see that the roots are $\epsilon_{i}-\epsilon_{j}$ with corresponding root vector $e_{i,j}$ for $1\leq i\neq j\leq r+1$. In particular, a basis for the root lattice is given by $\Delta=\{\epsilon_{i}-\epsilon_{i+1}\mid 1\leq i\leq r\}$. Letting $(-,-)$ be the usual Euclidean inner product, we define $\langle x,y\rangle=2(x,y)/(y,y)$. Then the fundamental weights, $\lambda_{j}$, are defined by $\langle \lambda_{j},e_{i}-e_{i+1}\rangle=\delta_{i,j}$. In particular, $\lambda_{j}=\sum_{k=1}^{j}\epsilon_{k}$
So for instance, if $r=3$, then the fundamental weights are $(1,0,0)$ and
$(1,1,0)$. Of course, in SAGE, these are the fundamental weights of gl. If they are "coerced into sl" SAGE claims that the fundamental weights are
$(2/3,-1/3,-1/3)$ and $(1/3,1/3,-2/3)$.
It seems to me like the $\mathfrak{sl}$ style fundamental weights are given by
$\mu_{i}=\lambda_{i}-\frac{(\lambda_{i},n)}{(n,n)}n$ where $n=\sum_{j=1}^{r+1}\epsilon_{j}$ and $\lambda_{j}$ is as above. Comments in this post seem to suggest that this is correct. This seems quite arbitrary, but I suspect there is a good (or at least historical reason) for doing it this way. If this is correct, then what is the reason for doing it this way?
Any insights would be hugely helpful.
 A: Let $\mathfrak{t}$ denote the subalgebra of $\mathfrak{gl}(r+1,\mathbb{C})$ consisting of diagonal matrices. Then, $\mathfrak{t}$ has a basis $\{e_{i,i}\mid 1\leq i\leq r+1\}$ and the dual basis of $\mathfrak{t}^*$ consists of the coordinate function $\{\epsilon_i:\mathfrak{t}\to\mathbb{C}\mid 1\leq i\leq r+1\}$ where $\epsilon_i(e_{jj})=\delta_{ij}$.
Note that, in $\mathfrak{sl}(r+1,\mathbb{C})\subset\mathfrak{gl}(r+1,\mathbb{C})$, the Cartan subalgebra $\mathfrak{h}$ is spanned by trace 0 diagonal matrices. It has a basis given by $\{h_i=e_{ii}-e_{i+1,i+1}\mid 1\leq i\leq r\}$. Then, regarding $\mathfrak{h}^*\subset\mathfrak{t}^*$, we have that $\mathfrak{h}^*$ has dual basis $\{\alpha_i=\epsilon_i-\epsilon_{i+1}\}$. In particular, every element $\lambda\in\mathfrak{h}^*$ can be expressed uniquely as
$$\lambda=\sum_ia_i\epsilon_i,\mbox{ with}\;\;\;\sum_ia_i=0.$$
As a consequence, we get the description of the fundamental weights $\mu_i$ as you describe in your post.
I prefer to think of $\mathfrak{h}^*$ in another way. Dualizing the embedding $\mathfrak{h}\hookrightarrow\mathfrak{t}$ yields a surjection $\mathfrak{t}^*\twoheadrightarrow\mathfrak{h}^*$. Using this, we get a realization
$$\mathfrak{h}^*\cong\mathfrak{t}^*/\langle \epsilon_1+\cdots+\epsilon_{r+1}\rangle.$$
Using this description, we can take the fundamental dominant weights to be the cosets of $\lambda_i=\epsilon_1+\cdots+\epsilon_i$ in $\mathfrak{h}^*$. Since coset notation is cumbersome, and $\epsilon_1+\cdots+\epsilon_{r+1}$ vanishes on $\mathfrak{h}$ anyway, we abuse notation and just write $$\lambda_i=\lambda_i+\mathbb{C}\langle \epsilon_1+\cdots+\epsilon_{r+1}\rangle.$$
