  We study the mathematical structure of the solution set (and its tangent
space) to the matrix equation $G^*JG=J$ for a given square matrix $J$. In the
language of pure mathematics, this is a Lie group which is the isometry group
for a bilinear (or a sesquilinear) form. Generally these groups are described
as intersections of a few special groups. The tangent space to $\{G: G^*JG=J
\}$ consists of solutions to the linear matrix equation $X^*J+JX=0$. For the
complex case, the solution set of this linear equation was computed by De
Ter{\'a}n and Dopico. We found that on its own, the equation $X^*J+JX=0$ is
hard to solve. By throwing into the mix the complementary linear equation
$X^*J-JX=0$, we find that rather than increasing the complexity, we reduce the
complexity. Not only is it possible to now solve the original problem, but we
can approach the broader algebraic and geometric structure. One implication is
that the two equations form an $\mathfrak{h}$ and $\mathfrak{m}$ pair familiar
in the study of pseudo-Riemannian symmetric spaces. We explicitly demonstrate
the computation of the solutions to the equation $X^*J\pm XJ=0$ for real and
complex matrices. However, any real, complex or quaternionic case with an
arbitrary involution (e.g., transpose, conjugate transpose, and the various
quaternion transposes) can be effectively solved with the same strategy. We
provide numerical examples and visualizations.
