@Test
public void testIsSymmetric() {

	assertTrue(
			"An empty matrix should be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] { }));
	assertFalse(
			"An matrix with a row but no values should not be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] { { } }));
	assertTrue(
			"A singleton matrix should be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] { { 0 } }));
	assertFalse(
			"A malformed matrix should not be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] {
					{ 0, 1 }
			}));
	assertTrue(
			"This simple matrix should be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] {
					{ 0, 1 },
					{ 1, 0 },
			}));
	assertFalse(
			"This simple matrix should not be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] {
					{ 0, 1 },
					{ 2, 0 },
			}));
	assertTrue(
			"This matrix should be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] {
					{ 0, 1, 3, 8 },
					{ 1, 5, 7, 1 },
					{ 3, 7, 9, 0 },
					{ 8, 1, 0, 6 },
			}));
	assertFalse(
			"This matrix should not be symmetric",
			EigenvalueDecomposition.isSymmetric(new double[][] {
					{ 8, 1, 0, 6 },
					{ 3, 7, 9, 0 },
					{ 1, 5, 7, 1 },
					{ 0, 1, 3, 8 },
			}));
}