How to make multiple variables take the same width in math mode?

You could use eqparbox. In the first example, the objects are centered in the allotted space, in the second one the alignment is right and left.

The tags are arbitrary, you need to use different ones for each application.

\documentclass{article}
\usepackage{amsmath}
\usepackage{eqparbox}

\newcommand{\q}[3][c]{%
  % #1 (optional) = alignment, default c
  % #2 = tag
  % #3 = object
  \eqmakebox[#2][#1]{$#3$}%
}

\begin{document}

\[
\begin{aligned}
&\operatorname{I}[\q{1}{a}; \q{2}{c}] \\
&\operatorname{I}[\q{1}{w}; \q{2}{a}] \\
&\operatorname{I}[\q{1}{c}; \q{2}{w}]
\end{aligned}
\]

\[
\begin{aligned}
&\operatorname{I}[\q[r]{1}{a}; \q[l]{2}{c}] \\
&\operatorname{I}[\q[r]{1}{w}; \q[l]{2}{a}] \\
&\operatorname{I}[\q[r]{1}{c}; \q[l]{2}{w}]
\end{aligned}
\]

\end{document}

enter image description here


As long as you don't need separate equation numbers on various lines, you could use TABstack alignment

\documentclass{article}
\usepackage{amsmath,tabstackengine}
\TABstackMath
\setstacktabulargap{0pt}
\setstackgap{L}{1.2\baselineskip}
\begin{document}
\[
\tabularCenterstack{rcccl}{
\operatorname{I}[&a&;& c&] \\
\operatorname{I}[&w&;& a&] \\
\operatorname{I}[&c&;& w&]
}
\]
\end{document}

enter image description here