/* This code can be loaded, or copied and pasted, into Magma. It will load the data associated to the HMF, including the field, level, and Hecke and Atkin-Lehner eigenvalue data. At the *bottom* of the file, there is code to recreate the Hilbert modular form in Magma, by creating the HMF space and cutting out the corresponding Hecke irreducible subspace. From there, you can ask for more eigenvalues or modify as desired. It is commented out, as this computation may be lengthy. */ P := PolynomialRing(Rationals()); g := P![29, 16, -15, -2, 1]; F := NumberField(g); ZF := Integers(F); NN := ideal; primesArray := [ [4, 2, -2/23*w^3 + 3/23*w^2 - 3/23*w + 1/23], [9, 3, -2/23*w^3 + 3/23*w^2 + 43/23*w + 24/23], [9, 3, -2/23*w^3 + 3/23*w^2 + 43/23*w - 68/23], [19, 19, -2/23*w^3 + 3/23*w^2 - 3/23*w + 24/23], [19, 19, -6/23*w^3 + 9/23*w^2 + 83/23*w - 20/23], [19, 19, 6/23*w^3 - 9/23*w^2 - 83/23*w + 66/23], [19, 19, -2/23*w^3 + 3/23*w^2 - 3/23*w - 22/23], [25, 5, -4/23*w^3 + 6/23*w^2 + 40/23*w - 21/23], [29, 29, w], [29, 29, -4/23*w^3 + 6/23*w^2 + 63/23*w - 21/23], [29, 29, 4/23*w^3 - 6/23*w^2 - 63/23*w + 44/23], [29, 29, -w + 1], [31, 31, w + 2], [31, 31, -4/23*w^3 + 6/23*w^2 + 63/23*w + 25/23], [31, 31, 4/23*w^3 - 6/23*w^2 - 63/23*w + 90/23], [31, 31, -w + 3], [49, 7, -2/23*w^3 + 3/23*w^2 + 43/23*w - 22/23], [59, 59, -20/23*w^3 + 30/23*w^2 + 269/23*w - 128/23], [59, 59, -8/23*w^3 + 12/23*w^2 + 103/23*w - 88/23], [59, 59, -8/23*w^3 + 12/23*w^2 + 103/23*w - 19/23], [59, 59, -4/23*w^3 + 6/23*w^2 + 17/23*w - 44/23], [109, 109, -9/23*w^3 + 2/23*w^2 + 113/23*w + 62/23], [109, 109, 4/23*w^3 - 6/23*w^2 - 63/23*w - 71/23], [109, 109, 7/23*w^3 - 22/23*w^2 - 47/23*w + 100/23], [109, 109, 9/23*w^3 - 25/23*w^2 - 90/23*w + 168/23], [121, 11, -2/23*w^3 + 3/23*w^2 + 20/23*w - 91/23], [121, 11, 2/23*w^3 - 3/23*w^2 - 20/23*w - 70/23], [131, 131, -5/23*w^3 + 19/23*w^2 + 50/23*w - 101/23], [131, 131, -3/23*w^3 + 16/23*w^2 + 7/23*w - 125/23], [131, 131, 3/23*w^3 + 7/23*w^2 - 30/23*w - 105/23], [131, 131, 5/23*w^3 + 4/23*w^2 - 73/23*w - 37/23], [139, 139, -2/23*w^3 - 20/23*w^2 + 43/23*w + 323/23], [139, 139, 17/23*w^3 - 37/23*w^2 - 216/23*w + 302/23], [139, 139, 17/23*w^3 - 14/23*w^2 - 239/23*w - 66/23], [139, 139, -2/23*w^3 + 26/23*w^2 - 3/23*w - 344/23], [149, 149, -1/23*w^3 - 10/23*w^2 + 33/23*w - 34/23], [149, 149, 1/23*w^3 + 10/23*w^2 - 33/23*w - 196/23], [149, 149, -1/23*w^3 + 13/23*w^2 + 10/23*w - 218/23], [149, 149, 1/23*w^3 - 13/23*w^2 - 10/23*w - 12/23], [169, 13, 6/23*w^3 - 9/23*w^2 - 37/23*w + 20/23], [169, 13, -10/23*w^3 + 15/23*w^2 + 123/23*w - 64/23], [199, 199, -1/23*w^3 + 13/23*w^2 - 13/23*w - 195/23], [199, 199, 3/23*w^3 + 7/23*w^2 - 53/23*w + 33/23], [199, 199, 3/23*w^3 - 16/23*w^2 - 30/23*w + 10/23], [199, 199, 1/23*w^3 + 10/23*w^2 - 10/23*w - 196/23], [251, 251, 6/23*w^3 - 9/23*w^2 - 14/23*w + 43/23], [251, 251, 14/23*w^3 - 21/23*w^2 - 186/23*w + 62/23], [251, 251, 4/23*w^3 - 6/23*w^2 - 109/23*w + 228/23], [251, 251, 6/23*w^3 - 9/23*w^2 - 14/23*w - 26/23], [271, 271, -8/23*w^3 + 12/23*w^2 + 126/23*w + 27/23], [271, 271, 8/23*w^3 - 35/23*w^2 - 80/23*w + 226/23], [271, 271, 13/23*w^3 - 31/23*w^2 - 153/23*w + 189/23], [271, 271, 8/23*w^3 - 12/23*w^2 - 126/23*w + 157/23], [281, 281, -w^2 + 2*w + 9], [281, 281, 13/23*w^3 - 8/23*w^2 - 153/23*w + 28/23], [281, 281, -13/23*w^3 + 31/23*w^2 + 130/23*w - 120/23], [281, 281, 11/23*w^3 - 28/23*w^2 - 87/23*w + 190/23], [289, 17, -11/23*w^3 + 51/23*w^2 + 110/23*w - 581/23], [289, 17, -8/23*w^3 + 35/23*w^2 + 80/23*w - 410/23], [311, 311, 5/23*w^3 + 4/23*w^2 - 50/23*w - 106/23], [311, 311, -7/23*w^3 + 22/23*w^2 + 70/23*w - 100/23], [311, 311, 7/23*w^3 + 1/23*w^2 - 93/23*w - 15/23], [311, 311, -5/23*w^3 + 19/23*w^2 + 27/23*w - 147/23], [389, 389, -8/23*w^3 + 35/23*w^2 + 80/23*w - 295/23], [389, 389, -4/23*w^3 + 29/23*w^2 - 6/23*w - 136/23], [389, 389, -4/23*w^3 - 17/23*w^2 + 40/23*w + 117/23], [389, 389, 2/23*w^3 + 20/23*w^2 - 20/23*w - 185/23], [401, 401, 11/23*w^3 - 5/23*w^2 - 179/23*w - 17/23], [401, 401, 2/23*w^3 + 20/23*w^2 - 43/23*w - 93/23], [401, 401, 1/23*w^3 + 10/23*w^2 + 36/23*w - 104/23], [401, 401, 11/23*w^3 - 28/23*w^2 - 156/23*w + 190/23], [419, 419, -6/23*w^3 - 14/23*w^2 + 83/23*w + 72/23], [419, 419, 3/23*w^3 + 7/23*w^2 - 76/23*w + 79/23], [419, 419, -6/23*w^3 + 32/23*w^2 + 37/23*w - 296/23], [419, 419, -1/23*w^3 + 13/23*w^2 + 56/23*w - 172/23], [421, 421, -8/23*w^3 + 12/23*w^2 + 57/23*w - 65/23], [421, 421, -12/23*w^3 + 18/23*w^2 + 143/23*w - 109/23], [421, 421, 12/23*w^3 - 18/23*w^2 - 143/23*w + 40/23], [421, 421, 8/23*w^3 - 12/23*w^2 - 57/23*w - 4/23], [439, 439, 7/23*w^3 - 22/23*w^2 - 93/23*w + 123/23], [439, 439, 1/23*w^3 + 10/23*w^2 + 13/23*w - 127/23], [439, 439, 5/23*w^3 + 4/23*w^2 - 73/23*w + 9/23], [439, 439, 7/23*w^3 + 1/23*w^2 - 116/23*w - 15/23], [449, 449, -11/23*w^3 + 5/23*w^2 + 133/23*w + 63/23], [449, 449, -9/23*w^3 + 2/23*w^2 + 90/23*w + 16/23], [449, 449, 9/23*w^3 - 25/23*w^2 - 67/23*w + 99/23], [449, 449, -11/23*w^3 + 28/23*w^2 + 110/23*w - 190/23], [479, 479, 10/23*w^3 - 15/23*w^2 - 123/23*w - 74/23], [479, 479, 6/23*w^3 - 9/23*w^2 - 37/23*w + 158/23], [479, 479, -6/23*w^3 + 9/23*w^2 + 37/23*w + 118/23], [479, 479, 10/23*w^3 - 15/23*w^2 - 123/23*w + 202/23], [529, 23, -4/23*w^3 + 29/23*w^2 + 40/23*w - 274/23], [529, 23, w^2 - 6], [541, 541, 6/23*w^3 + 14/23*w^2 - 83/23*w - 141/23], [541, 541, -6/23*w^3 + 32/23*w^2 + 37/23*w - 227/23], [541, 541, 6/23*w^3 + 14/23*w^2 - 83/23*w - 164/23], [541, 541, -6/23*w^3 + 32/23*w^2 + 37/23*w - 204/23], [569, 569, -5/23*w^3 - 4/23*w^2 + 50/23*w - 78/23], [569, 569, -7/23*w^3 + 22/23*w^2 + 70/23*w - 284/23], [569, 569, -5/23*w^3 + 19/23*w^2 + 50/23*w - 262/23], [569, 569, 5/23*w^3 - 19/23*w^2 - 27/23*w - 37/23], [619, 619, -2/23*w^3 - 43/23*w^2 + 66/23*w + 622/23], [619, 619, 17/23*w^3 - 37/23*w^2 - 216/23*w + 233/23], [619, 619, 17/23*w^3 - 14/23*w^2 - 239/23*w + 3/23], [619, 619, -2/23*w^3 + 49/23*w^2 - 26/23*w - 643/23], [641, 641, -1/23*w^3 + 13/23*w^2 - 59/23*w + 127/23], [641, 641, -14/23*w^3 + 44/23*w^2 + 117/23*w - 246/23], [641, 641, -11/23*w^3 + 5/23*w^2 + 179/23*w + 201/23], [641, 641, -1/23*w^3 - 10/23*w^2 - 36/23*w - 80/23], [691, 691, 5/23*w^3 - 65/23*w^2 - 4/23*w + 837/23], [691, 691, -2/23*w^3 + 26/23*w^2 + 20/23*w - 321/23], [691, 691, -2/23*w^3 - 20/23*w^2 + 66/23*w + 277/23], [691, 691, -5/23*w^3 - 50/23*w^2 + 119/23*w + 773/23], [701, 701, 2/23*w^3 + 20/23*w^2 - 66/23*w - 185/23], [701, 701, w^2 - 7], [701, 701, -2/23*w^3 + 26/23*w^2 + 20/23*w - 183/23], [701, 701, -2/23*w^3 + 26/23*w^2 + 20/23*w - 229/23], [709, 709, -18/23*w^3 + 27/23*w^2 + 226/23*w - 152/23], [709, 709, -33/23*w^3 + 38/23*w^2 + 445/23*w - 41/23], [709, 709, -33/23*w^3 + 61/23*w^2 + 422/23*w - 409/23], [709, 709, 18/23*w^3 - 27/23*w^2 - 226/23*w + 83/23], [719, 719, -4/23*w^3 + 29/23*w^2 + 40/23*w - 136/23], [719, 719, 12/23*w^3 - 18/23*w^2 - 166/23*w + 155/23], [719, 719, w^2 - 12], [719, 719, 4/23*w^3 + 17/23*w^2 - 86/23*w - 71/23], [809, 809, -10/23*w^3 + 15/23*w^2 + 123/23*w - 248/23], [809, 809, 7/23*w^3 - 22/23*w^2 - 93/23*w + 307/23], [809, 809, 7/23*w^3 + 1/23*w^2 - 116/23*w - 199/23], [809, 809, 10/23*w^3 - 15/23*w^2 - 123/23*w - 120/23], [811, 811, -7/23*w^3 - 1/23*w^2 + 93/23*w - 31/23], [811, 811, -7/23*w^3 + 22/23*w^2 + 93/23*w - 100/23], [811, 811, 7/23*w^3 + 1/23*w^2 - 116/23*w + 8/23], [811, 811, 1/23*w^3 + 10/23*w^2 + 13/23*w - 150/23], [821, 821, -4/23*w^3 + 29/23*w^2 + 17/23*w - 182/23], [821, 821, 4/23*w^3 + 17/23*w^2 - 63/23*w - 186/23], [821, 821, -4/23*w^3 + 29/23*w^2 + 17/23*w - 228/23], [821, 821, 4/23*w^3 + 17/23*w^2 - 63/23*w - 140/23], [839, 839, -16/23*w^3 + 70/23*w^2 + 160/23*w - 751/23], [839, 839, 22/23*w^3 - 33/23*w^2 - 289/23*w + 196/23], [839, 839, -22/23*w^3 + 33/23*w^2 + 289/23*w - 104/23], [839, 839, -16/23*w^3 - 22/23*w^2 + 252/23*w + 537/23], [859, 859, -7/23*w^3 + 22/23*w^2 + 47/23*w - 192/23], [859, 859, -9/23*w^3 + 2/23*w^2 + 113/23*w - 30/23], [859, 859, -9/23*w^3 + 25/23*w^2 + 90/23*w - 76/23], [859, 859, 7/23*w^3 + 1/23*w^2 - 70/23*w - 130/23], [971, 971, -10/23*w^3 + 15/23*w^2 + 146/23*w + 97/23], [971, 971, -14/23*w^3 - 2/23*w^2 + 186/23*w + 99/23], [971, 971, 14/23*w^3 - 44/23*w^2 - 140/23*w + 269/23], [971, 971, -10/23*w^3 + 15/23*w^2 + 146/23*w - 248/23]]; primes := [ideal : I in primesArray]; heckePol := x^4 - 12*x^3 + 14*x^2 + 232*x - 604; K := NumberField(heckePol); heckeEigenvaluesArray := [-2, -1/10*e^3 + 2/5*e^2 + 14/5*e - 39/5, 1/10*e^3 - 2/5*e^2 - 14/5*e + 29/5, e, -4/15*e^3 + 26/15*e^2 + 29/5*e - 532/15, 1/10*e^3 - 2/5*e^2 - 9/5*e + 4/5, -1/6*e^3 + 4/3*e^2 + 3*e - 68/3, 1, -1/30*e^3 + 1/15*e^2 + 2*e - 83/15, -1/6*e^3 + 11/15*e^2 + 18/5*e - 181/15, 3/10*e^3 - 9/5*e^2 - 34/5*e + 31, -1/10*e^3 + e^2 + 6/5*e - 107/5, 3/10*e^3 - 11/5*e^2 - 27/5*e + 192/5, 2/5*e^3 - 13/5*e^2 - 41/5*e + 246/5, -7/30*e^3 + 19/15*e^2 + 21/5*e - 248/15, -2/15*e^3 + 13/15*e^2 + 7/5*e - 206/15, 6, 3/10*e^3 - 2*e^2 - 28/5*e + 216/5, 3/10*e^3 - 2*e^2 - 28/5*e + 136/5, -7/30*e^3 + 22/15*e^2 + 4*e - 476/15, -7/30*e^3 + 22/15*e^2 + 4*e - 236/15, 1/30*e^3 - 7/15*e^2 - 8/5*e + 269/15, -1/30*e^3 + 7/15*e^2 + 8/5*e - 149/15, -3/10*e^3 + 11/5*e^2 + 32/5*e - 197/5, 3/10*e^3 - 11/5*e^2 - 32/5*e + 237/5, 8/15*e^3 - 52/15*e^2 - 48/5*e + 809/15, -8/15*e^3 + 52/15*e^2 + 48/5*e - 959/15, 1/5*e^3 - e^2 - 27/5*e + 74/5, -1/10*e^3 + 1/5*e^2 + 3*e + 12/5, 1/5*e^3 - e^2 - 27/5*e + 114/5, -1/10*e^3 + 1/5*e^2 + 3*e - 28/5, 7/30*e^3 - 2/3*e^2 - 44/5*e + 224/15, -17/30*e^3 + 38/15*e^2 + 68/5*e - 592/15, 23/30*e^3 - 62/15*e^2 - 92/5*e + 1108/15, -1/30*e^3 - 14/15*e^2 + 4*e + 292/15, 11/15*e^3 - 76/15*e^2 - 72/5*e + 268/3, 1/3*e^3 - 28/15*e^2 - 24/5*e + 308/15, -11/15*e^3 + 76/15*e^2 + 72/5*e - 292/3, -1/3*e^3 + 28/15*e^2 + 24/5*e - 428/15, -3/10*e^3 + 12/5*e^2 + 36/5*e - 283/5, 3/10*e^3 - 12/5*e^2 - 36/5*e + 233/5, -2/3*e^3 + 62/15*e^2 + 76/5*e - 1252/15, -2/15*e^3 + 2/3*e^2 + 28/5*e - 188/15, -4/15*e^3 + 38/15*e^2 + 4*e - 664/15, 4/15*e^3 - 14/15*e^2 - 28/5*e + 8/3, -1/10*e^3 + 2/5*e^2 + 4/5*e - 74/5, -1/10*e^3 + 2/5*e^2 + 4/5*e + 66/5, 13/30*e^3 - 46/15*e^2 - 44/5*e + 1082/15, 13/30*e^3 - 46/15*e^2 - 44/5*e + 662/15, -11/10*e^3 + 33/5*e^2 + 113/5*e - 112, 1/2*e^3 - 19/5*e^2 - 31/5*e + 304/5, -3/5*e^3 + 23/5*e^2 + 43/5*e - 82, e^3 - 29/5*e^2 - 101/5*e + 494/5, -2/3*e^3 + 71/15*e^2 + 58/5*e - 1171/15, 13/15*e^3 - 83/15*e^2 - 86/5*e + 311/3, -2/3*e^3 + 59/15*e^2 + 62/5*e - 859/15, 7/15*e^3 - 47/15*e^2 - 34/5*e + 167/3, -1/30*e^3 + 4/15*e^2 + 4/5*e + 169/15, 1/30*e^3 - 4/15*e^2 - 4/5*e + 341/15, -1/30*e^3 - 23/15*e^2 + 33/5*e + 316/15, -11/10*e^3 + 27/5*e^2 + 129/5*e - 404/5, 19/15*e^3 - 101/15*e^2 - 149/5*e + 1882/15, 1/5*e^3 + 1/5*e^2 - 53/5*e - 42/5, 37/30*e^3 - 20/3*e^2 - 134/5*e + 1709/15, -7/30*e^3 + 8/3*e^2 - 6/5*e - 599/15, 11/30*e^3 - 56/15*e^2 - 2*e + 1033/15, -41/30*e^3 + 116/15*e^2 + 30*e - 1963/15, 7/5*e^3 - 44/5*e^2 - 32*e + 897/5, -1/3*e^3 + 28/15*e^2 + 64/5*e - 533/15, -3/5*e^3 + 28/5*e^2 + 48/5*e - 99, -7/15*e^3 + 4/3*e^2 + 48/5*e + 107/15, 1/3*e^3 - 28/15*e^2 - 34/5*e + 848/15, 2/15*e^3 - 16/15*e^2 - 6/5*e - 136/15, -1/5*e^3 + 8/5*e^2 + 14/5*e - 272/5, -2/5*e^3 + 12/5*e^2 + 42/5*e - 16, 7/15*e^3 - 10/3*e^2 - 38/5*e + 523/15, 3/5*e^3 - 18/5*e^2 - 58/5*e + 37, -2/3*e^3 + 62/15*e^2 + 66/5*e - 1417/15, -2/5*e^3 + 14/5*e^2 + 6*e - 347/5, 1/2*e^3 - 4*e^2 - 6*e + 72, -11/10*e^3 + 32/5*e^2 + 114/5*e - 564/5, 11/10*e^3 - 32/5*e^2 - 114/5*e + 524/5, -1/2*e^3 + 4*e^2 + 6*e - 64, 7/10*e^3 - 5*e^2 - 72/5*e + 409/5, -7/10*e^3 + 5*e^2 + 72/5*e - 549/5, 1/10*e^3 - 1/5*e^2 - 107/5, -1/10*e^3 + 1/5*e^2 - 33/5, e^3 - 22/5*e^2 - 133/5*e + 352/5, -7/10*e^3 + 12/5*e^2 + 21*e - 176/5, 11/15*e^3 - 8/3*e^2 - 109/5*e + 764/15, -29/30*e^3 + 62/15*e^2 + 129/5*e - 224/3, 1/3*e^3 - 8/3*e^2 - 8*e + 208/3, -1/3*e^3 + 8/3*e^2 + 8*e - 136/3, -2/3*e^3 + 13/3*e^2 + 20*e - 263/3, 22/15*e^3 - 143/15*e^2 - 172/5*e + 2941/15, -2/15*e^3 - 17/15*e^2 + 12/5*e + 799/15, -2/3*e^3 + 19/3*e^2 + 12*e - 365/3, 1/3*e^3 - 43/15*e^2 - 34/5*e + 878/15, -1/15*e^3 + 17/15*e^2 + 2*e - 466/15, -8/15*e^3 + 11/3*e^2 + 62/5*e - 1112/15, 4/15*e^3 - 29/15*e^2 - 38/5*e + 128/3, -1/30*e^3 - 2/15*e^2 + 11/5*e - 40/3, -3/10*e^3 + 8/5*e^2 + 7*e - 64/5, 4/15*e^3 - 4/3*e^2 - 31/5*e + 556/15, 2/5*e^2 - 7/5*e - 112/5, 14/15*e^3 - 94/15*e^2 - 88/5*e + 358/3, -14/15*e^3 + 94/15*e^2 + 88/5*e - 310/3, 2/3*e^3 - 62/15*e^2 - 56/5*e + 1102/15, -2/3*e^3 + 62/15*e^2 + 56/5*e - 862/15, -17/10*e^3 + 52/5*e^2 + 30*e - 866/5, -3/2*e^3 + 48/5*e^2 + 122/5*e - 738/5, 61/30*e^3 - 208/15*e^2 - 186/5*e + 754/3, 67/30*e^3 - 44/3*e^2 - 214/5*e + 3794/15, -2/15*e^3 + 31/15*e^2 - 14/5*e - 389/15, -6/5*e^3 + 33/5*e^2 + 134/5*e - 527/5, 17/15*e^3 - 91/15*e^2 - 126/5*e + 1649/15, 1/5*e^3 - 13/5*e^2 + 6/5*e + 267/5, 1/6*e^3 - 2/15*e^2 - 36/5*e - 143/15, -7/10*e^3 + 18/5*e^2 + 84/5*e - 377/5, 19/30*e^3 - 46/15*e^2 - 76/5*e + 569/15, -1/10*e^3 - 2/5*e^2 + 28/5*e - 5, 7/10*e^3 - 28/5*e^2 - 49/5*e + 492/5, 7/5*e^3 - 42/5*e^2 - 147/5*e + 148, -7/6*e^3 + 98/15*e^2 + 119/5*e - 1588/15, -7/15*e^3 + 56/15*e^2 + 21/5*e - 904/15, 17/30*e^3 - 16/3*e^2 - 24/5*e + 1189/15, -53/30*e^3 + 152/15*e^2 + 192/5*e - 2863/15, 47/30*e^3 - 128/15*e^2 - 168/5*e + 1897/15, -11/30*e^3 + 56/15*e^2 - 1123/15, 19/15*e^3 - 22/3*e^2 - 166/5*e + 2176/15, -2/15*e^3 - 26/15*e^2 + 6*e + 748/15, 19/15*e^3 - 22/3*e^2 - 166/5*e + 2176/15, -2/15*e^3 - 26/15*e^2 + 6*e + 748/15, 16/15*e^3 - 131/15*e^2 - 82/5*e + 461/3, 4/3*e^3 - 103/15*e^2 - 134/5*e + 1433/15, -31/15*e^3 + 191/15*e^2 + 222/5*e - 713/3, -1/3*e^3 + 43/15*e^2 - 6/5*e - 653/15, -4/5*e^3 + 22/5*e^2 + 121/5*e - 428/5, -8/5*e^3 + 48/5*e^2 + 193/5*e - 192, 1/2*e^3 - 4/5*e^2 - 61/5*e - 76/5, -3/10*e^3 + 22/5*e^2 + 11/5*e - 428/5, 4/3*e^3 - 118/15*e^2 - 144/5*e + 1868/15, -4/15*e^3 + 38/15*e^2 - 364/15, 8/15*e^3 - 14/3*e^2 - 32/5*e + 1472/15, -16/15*e^3 + 86/15*e^2 + 112/5*e - 320/3, 7/10*e^3 - 31/5*e^2 - 61/5*e + 112, 7/5*e^3 - 9*e^2 - 159/5*e + 918/5, -11/30*e^3 + 11/15*e^2 + 7*e + 272/15, 1/3*e^3 - 31/15*e^2 - 63/5*e + 626/15]; heckeEigenvalues := AssociativeArray(); for i := 1 to #heckeEigenvaluesArray do heckeEigenvalues[primes[i]] := heckeEigenvaluesArray[i]; end for; ALEigenvalues := AssociativeArray(); ALEigenvalues[ideal] := -1; // EXAMPLE: // pp := Factorization(2*ZF)[1][1]; // heckeEigenvalues[pp]; print "To reconstruct the Hilbert newform f, type f, iso := Explode(make_newform());"; function make_newform(); M := HilbertCuspForms(F, NN); S := NewSubspace(M); // SetVerbose("ModFrmHil", 1); NFD := NewformDecomposition(S); newforms := [* Eigenform(U) : U in NFD *]; if #newforms eq 0 then; print "No Hilbert newforms at this level"; return 0; end if; print "Testing ", #newforms, " possible newforms"; newforms := [* f: f in newforms | IsIsomorphic(BaseField(f), K) *]; print #newforms, " newforms have the correct Hecke field"; if #newforms eq 0 then; print "No Hilbert newform found with the correct Hecke field"; return 0; end if; autos := Automorphisms(K); xnewforms := [* *]; for f in newforms do; if K eq RationalField() then; Append(~xnewforms, [* f, autos[1] *]); else; flag, iso := IsIsomorphic(K,BaseField(f)); for a in autos do; Append(~xnewforms, [* f, a*iso *]); end for; end if; end for; newforms := xnewforms; for P in primes do; xnewforms := [* *]; for f_iso in newforms do; f, iso := Explode(f_iso); if HeckeEigenvalue(f,P) eq iso(heckeEigenvalues[P]) then; Append(~xnewforms, f_iso); end if; end for; newforms := xnewforms; if #newforms eq 0 then; print "No Hilbert newform found which matches the Hecke eigenvalues"; return 0; else if #newforms eq 1 then; print "success: unique match"; return newforms[1]; end if; end if; end for; print #newforms, "Hilbert newforms found which match the Hecke eigenvalues"; return newforms[1]; end function;