#20968: more Hadamard matrices with constant diagonal
-------------------------------------+-------------------------------------
Reporter: dimpase | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-7.3
Component: graph theory | Resolution:
Keywords: | Merged in:
Authors: Dima Pasechnik | Reviewers: Vincent Delecroix
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/dimpase/hadaconst | 324fb166fe9f21872b25c08e8dd8c3d740efd616
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by dimpase):
Replying to [comment:4 vdelecroix]:
> To get the squares in a finite field, there is better than
> {{{
> Q = filter(lambda a: a.is_square() and a.is_unit(), F)
> }}}
> Since you are using containment test later on I would even do
> {{{
> Q = set(a**2 for a in F)
> Q.remove(F.zero())
> }}}
>
> For `szekeres_difference_set_pair`, it would be better to have the same
variable name in the documentation description and in the function
(currently `G` and `Q`).
>
> Could you remove the trailing whitespaces in the whole file?
yes, I'll do all of the above. I can do even better, as I know a generator
for the multiplicative group of the field, thus I can list the squares
explicitly
without repetition...
>
> For the ` szekeres_difference_set_pair` and
`typeI_matrix_difference_set`, why not put it somewhere in
`sage.combinat.designs.difference_family`?
`szekeres_difference_set_pair` does not return a group, it merely returns
a list of group elements; in this form I don't think it should go there.
In fact I do not know how to create, in Sage, a subgroup of the
multiplicative group of a field in a natural way. Indeed:
{{{
sage: F=GF(27)
sage: t=F.multiplicative_generator()
sage: G=GL(1,F)
sage: t in G
True
sage: G.subgroup([t^2])
---------------------------------------------------------------------------
AttributeError Traceback (most recent call
last)
<ipython-input-58-d1ce805e8ed8> in <module>()
----> 1 G.subgroup([t**Integer(2)])
...
AttributeError:
'sage.rings.finite_rings.element_givaro.FiniteField_givaroElement' object
has no attribute 'gap'
}}}
The problem here is that matrix groups in Sage are done via (lib)GAP, but
this is not compatible with the default way of creating GF in Sage.
I don't see how to overcome this easily - would you mind if I keep it the
way it is?
>
> You should add an example in
`regular_symmetric_hadamard_matrix_with_constant_diagonal` where your new
construction is actually used.
right.
--
Ticket URL: <https://trac.sagemath.org/ticket/20968#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" 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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.