From: Michael Orlitzky Date: Fri, 19 Jul 2019 21:35:12 +0000 (-0400) Subject: eja: fix complex-unembedding with respect to 5537f4534. X-Git-Url: https://gitweb.michael.orlitzky.com/?a=commitdiff_plain;h=f2564c0412a2498ff32245a848ba61746124eaf8;p=sage.d.git eja: fix complex-unembedding with respect to 5537f4534. --- diff --git a/mjo/eja/euclidean_jordan_algebra.py b/mjo/eja/euclidean_jordan_algebra.py index 8f21db7..1e5ada2 100644 --- a/mjo/eja/euclidean_jordan_algebra.py +++ b/mjo/eja/euclidean_jordan_algebra.py @@ -1216,8 +1216,17 @@ def _unembed_complex_matrix(M): ....: [ 9, 10, 11, 12], ....: [-10, 9, -12, 11] ]) sage: _unembed_complex_matrix(A) - [ -2*i + 1 -4*i + 3] - [ -10*i + 9 -12*i + 11] + [ 2*i + 1 4*i + 3] + [ 10*i + 9 12*i + 11] + + TESTS:: + + sage: set_random_seed() + sage: F = QuadraticField(-1, 'i') + sage: M = random_matrix(F, 3) + sage: _unembed_complex_matrix(_embed_complex_matrix(M)) == M + True + """ n = ZZ(M.nrows()) if M.ncols() != n: @@ -1238,7 +1247,7 @@ def _unembed_complex_matrix(M): raise ValueError('bad real submatrix') if submat[0,1] != -submat[1,0]: raise ValueError('bad imag submatrix') - z = submat[0,0] + submat[1,0]*i + z = submat[0,0] + submat[0,1]*i elements.append(z) return matrix(F, n/2, elements)