When not inserting the numeric parameters, I get the solution in dependence of p (or w), U, C1, C2, L1, L2, M12 and RL. The common denominator of the currents I1, I2, I3, I4 should be the determinant of the matrix (up to a constant factor) if you would write the system in matrix-times-vector form. The denominator is correct both if I use p in the system and if I use I*w instead of p. But the numerators are not correct, at least for I4.
I would like the future of CAS to be in open source like sagemath, but since I used Maple in the past, I begin with some code and results from Maple:
Maple code:
eqn1 := [I1*(p*L1 + 1/(p*C1)) + I2*(-1/(p*C1) ) = U,
I2*(p*L2 + 1/(p*C1) + 1/(p*C2)) + I3*(p*M23 - 1/(p*C2)) + I1*(- 1/(p*C1)) = 0,
I3*(1/(p*C3) + p*L3 + 1/(p*C2)) + I2*(p*M23 - 1/(p*C2)) - I4/(p*C3) = 0,
I4/(p*C3) + I4*RL - I3/(p*C3) = 0]:
eqn2 := [seq(subs(p=I*w, eqn1[i]), i=1..4)]:
lsg1 := solve(eqn1, [I1, I2, I3, I4])[1]:
lsg2 := solve(eqn2, [I1, I2, I3, I4])[1]:
print(simplify((subs(p=I*w, subs(lsg1, I4)) - subs(lsg2, I4)))); # expected to be zero
Output is zero as expected.
Maple code:IMHO, the symbolic solver implicitly assumes a symbolic parameter is non-zero when
solving for the other variables.
It looks like your equations are
linear in the variables to be solved for and so the solver is using
row reduction at some point., which of course involves divisions by
(presumably non-zero) expressions in the parameters.
I posted about the same problem ; the original post in ask.sagemath.org is clearer. The original problem seems to emane from Maxima.

This problem has been filed in Maxima’s bug report system.
Should a Sage ticket be filed ?
Le lundi 10 octobre 2022 à 20:37:57 UTC+2, Florian Königstein a écrit :
I think it would make sense to file a Sage ticket. So when it will be fixed in Maxima, it can be verified that it (hopefully) will also work in Sage with the updated version of Maxima.
FWIW, solve(..., algorithm="sympy") solves this simplified system.
HTH,