+ * Answers true if the matrix is symmetric, else false. Usually, substitution
+ * matrices are symmetric, which allows calculations to be short cut.
+ *
+ * @return
+ */
+ private boolean checkSymmetry()
+ {
+ for (int i = 0; i < matrix.length; i++)
+ {
+ for (int j = i; j < matrix.length; j++)
+ {
+ if (matrix[i][j] != matrix[j][i])
+ {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
+ /**