-
-
Notifications
You must be signed in to change notification settings - Fork 519
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Graphs: obtain distance-regular graphs from generalised quadrangles #30337
Comments
comment:1
This is where #30223 gets used. Last 10 new commits:
|
Branch: public/graphs/30337 |
Commit: |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:3
it seems that the latest changes should be merged in. |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
|
comment:5
I still got Memory Error in the longest bilinear forms graphs test, diff --git a/src/sage/graphs/generators/distance_regular.pyx b/src/sage/graphs/generators/distance_regular.pyx
index 094f9bdc6a..7f8df1250d 100644
--- a/src/sage/graphs/generators/distance_regular.pyx
+++ b/src/sage/graphs/generators/distance_regular.pyx
@@ -648,23 +648,25 @@ def BilinearFormsGraph(const int d, const int e, const int q):
sage: K.is_isomorphic(G)
True
"""
- from sage.combinat.integer_vector import IntegerVectors
+ from itertools import product as cartprod
Fq = GF(q)
Fqelems = list(Fq)
- matricesOverq = IntegerVectors(k=d*e, max_part=q-1)
-
+ dim = d*e
+ matricesOverq = cartprod(*([range(q)]*dim))
+ qv = [int(q**jj) for jj in range(dim)]
rank1Matrices = []
+ vsp = VectorSpace(Fq, e)
for u in VectorSpace(Fq, d):
if u.is_zero() or not u[u.support()[0]].is_one():
continue
- for v in VectorSpace(Fq, e):
+ for v in vsp:
if v.is_zero():
continue
sig_check()
- M = [0] * (d*e)
+ M = [0] * dim
for row in range(d):
for col in range(e):
M[e*row + col] = u[row] * v[col]
@@ -673,11 +675,15 @@ def BilinearFormsGraph(const int d, const int e, const int q):
edges = []
for m1 in matricesOverq:
- m1 = tuple(map(lambda x: Fqelems[x], m1))
+ im1 = 0
+ for jj in range(dim):
+ im1 += m1[jj] * qv[jj]
for m2 in rank1Matrices:
sig_check()
- m3 = tuple([m1[i] + m2[i] for i in range(d*e)])
- edges.append((m1, m3))
+ im3 = 0
+ for jj in range(dim):
+ im3 += Fqelems.index(Fqelems[m1[jj]] + m2[jj]) * qv[jj]
+ edges.append((im1, im3))
G = Graph(edges, format='list_of_edges')
G.name("Bilinear forms graphs over F_%d with parameters (%d, %d)"%(q, d, e)) |
comment:6
Is this conversion to integers needed for the other forms graphs? |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:8
Replying to @Ivo-Maffei:
it certainly lowers memory consumption, but I would not worry too much about it. |
Reviewer: Dima Pasechnik |
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
|
comment:12
|
comment:19
I marked everything that took more than 1s as long. I think one should change the default value for --warn-long (it is usually 2 min) if 30s are long. |
comment:20
The buildbot limits the available memory to encourage writing efficient unit tests, hence the MemoryError |
comment:22
let's wait for the next beta/rc, to lessen the rebase work. |
comment:23
Replying to @dimpase:
I'm having issues with beta11 not starting for an import error on libgsl.23.dylib |
comment:24
How do you get |
comment:25
It is in sage/local/lib/. |
comment:26
gsl has been updated in just merged #29483. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:32
please also merge in the latest develop beta, beta12. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:34
OK, good! |
Changed branch from public/graphs/30337 to |
Added code that constructs distance-regular graphs from generalised quadrangles with spread.
Also added a function that checks whether an distance-regular graph can be built using the method above.
Depends on #30223
Depends on #30509
CC: @dimpase
Component: graph theory
Author: Ivo Maffei
Branch/Commit:
3449361
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/30337
The text was updated successfully, but these errors were encountered: