This is how "Edge" is created,
g = graphs.CompleteBipartiteGraph(n, n)
Edge = []
for (a,b,c) in g.edges ():
Edge.append ( (a,b) )
This is how "rep" is created,
Fq2 = []
for i in range (q):
for j in range (q):
Fq2.append (matrix([[i],[j]]))
SL2Fq = []
for i1 in range (q):
for i2 in range (q):
for i3 in range(q):
for i4 in range (q):
if (i4*i1-i2*i3)% q == 1 :
SL2Fq.append ( matrix( [ [i1, i2],[i3,i4] ] ) )
rep = []
for Y in SL2Fq:
M = []
for A in Fq2:
B = (Y*A)%q
row = []
for C in Fq2:
if B == C :
row.append ([1])
else :
row.append ([0])
M.append(flatten(row))
rep.append (matrix(M).transpose())
On Thursday, May 14, 2015 at 12:56:21 PM UTC-5, David Joyner wrote:
>
> On Thu, May 14, 2015 at 1:45 PM, Phoenix <[email protected]
> <javascript:>> wrote:
> >
> > Try q=2 n=4 or q=3 n=3 to see the "error" :)
> >
>
> Perhaps you can post rep and Edge in that case (in a format that can
> be copy+pasted), or put them into a file and attach it or upload it
> somewhere.
>
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > On Thursday, May 14, 2015 at 6:10:19 AM UTC-5, David Joyner wrote:
> >>
> >> 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] <javascript:>.
> > To post to this group, send email to [email protected]
> <javascript:>.
> > 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.