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.

Reply via email to