On Thu, May 14, 2015 at 6:59 AM, Dima Pasechnik <[email protected]> wrote: > The poster has not provided an example producing the error. > One needs to increase q and/or n, as it is mentioned in the post. >
I missed that. Is it possible that the error is entirely due to the way sagecell writes it to a file for execution in Python, and not the code itself? > On Thursday, 14 May 2015 11:32:30 UTC+1, David Joyner wrote: >> >> On Wed, May 13, 2015 at 9:13 PM, Phoenix <[email protected]> wrote: >> > >> > >> > So I have this SAGE code which takes in two integers q and n and it >> > generates ~ (q^3)^(n^2) 0/1 matrices and does a sum of their >> > characteristic >> > polynomials. >> > >> > I got answers for (q = 3, n = 2), (q =2 , n = 3) and (q=2, n=2) >> > >> > For any higher number the code runs for ~1hr and then it says, >> > >> > " >> > >> > Traceback (most recent call last): >> > File "<stdin>", line 1, in <module> >> > File "_sage_input_2.py", line 10, in <module> >> > exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 >> > -*-\\n" + >> > >> > _support_.preparse_worksheet_cell(base64.b64decode("UA=="),globals())+"\\n"); >> > execfile(os.path.abspath("___code___.py")) >> > File "", line 1, in <module> >> > >> > File "/tmp/tmpPiPIoq/___code___.py", line 2, in <module> >> > exec compile(u'P >> > File "", line 1, in <module> >> > >> > " >> > >> > >> > Can someone help understand what is going on? >> > >> > Like any suggestion about how to go about it? >> > >> >> I cannot reproduce this error: >> >> >> q=2; n =2 >> rep = [ matrix ([[1, 0, 0, 0], [0, 0, 0, 1], [0, 1, 0, 0], [0, 0, 1, >> 0]] ), matrix ([[1, 0, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0], [0, 1, 0, >> 0]] ) , matrix ([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 0, 1, >> 0]] ) , matrix ( [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, >> 1]] ) , matrix ( [[1, 0, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1], [0, 1, 0, >> 0]]) , matrix ([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, >> 1]] ) ] >> >> Edge = [(0, 2), (0, 3), (1, 2), (1, 3)] >> >> P = 0 >> from itertools import product >> from itertools import izip >> >> for X in product(rep,repeat = len (Edge)): >> k = izip(Edge,X) >> M = [[matrix(q^2, q^2, 0)]*(2*n) for _ in range(2*n)] >> for ((a,b),Y) in k: >> M[a][b] = Y >> M[b][a] = Y.inverse() >> Z = block_matrix(M) >> P = P + Z.charpoly(x) >> print P >> >> >> gives >> >> 1296*x^16 - 20736*x^14 + 129600*x^12 - 393984*x^10 + 584496*x^8 - >> 362880*x^6 + 62208*x^4 >> >> >> > >> > >> > EDIT: >> > >> > This is basically the main time-consuming step. >> > >> > At this point "rep" comes in as a ~q^3 size list of q^2 dimensional 0/1 >> > permutation matrices. >> > And "Edge" is a list of integer tuples where each tuple is of the form >> > (a,b) >> > with a,b being from the set {0,1,2,3...,(2n-1)} >> > >> > P = 0 >> > from itertools import product >> > from itertools import izip >> > >> > for X in product(rep,repeat = len (Edge)): >> > k = izip(Edge,X) >> > M = [[matrix(q^2, q^2, 0)]*(2*n) for _ in range(2*n)] >> > for ((a,b),Y) in k: >> > M [a][b] = Y >> > M [b][a] = Y.inverse() >> > Z = block_matrix(M) >> > P = P + Z.charpoly(x) >> > >> > The polynomial P is the final expected answer. >> > >> > (and for any larger value of q and n than the 3 cases mentioned the >> > program >> > basically stops with no output for P and with the above pasted message) >> > >> > -- >> > You received this message because you are subscribed to the Google >> > Groups >> > "sage-support" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> > an >> > email to [email protected]. >> > To post to this group, send email to [email protected]. >> > Visit this group at http://groups.google.com/group/sage-support. >> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "sage-support" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/sage-support. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sage-support. For more options, visit https://groups.google.com/d/optout.
