On Thursday, November 7, 2019 at 7:50:00 AM UTC-8, Subrata Nandi wrote:
>
>
>
> On Thursday, November 7, 2019 at 9:13:17 PM UTC+5:30, Subrata Nandi wrote:
>>
>> Thanks Emmanuel Charpentier for your reply. But the entry of my matrix
>> is only symbolic variables. For example I am giving one short m
On Thursday, November 7, 2019 at 9:13:17 PM UTC+5:30, Subrata Nandi wrote:
>
> Thanks Emmanuel Charpentier for your reply. But the entry of my matrix is
> only symbolic variables. For example I am giving one short matrix.
>
R.=Boolean PolynomialRing()
> y=[
>
> [x0 x1
Thanks Emmanuel Charpentier for your reply. But the entry of my matrix is
only symbolic variables. For example I am giving one short matrix.
y=[
[x0 x1 x2 x3 x4 x5
x6 x7 x8 x9]
[x1 x2
One can check that Sage's built-in methods can invert such a GF(2) maytrix
in reasonable time:
sage: MS=MatrixSpace(GF(2),512,512)
sage: while True:
: M=MS.an_element()
: if M.is_unit(): break
:
sage: %time IM=M^-1
CPU times: user 2.99 ms, sys: 243 µs, total: 3.23 ms
Wall
Spoke too fast. Sorry for the noise...
Le jeudi 31 octobre 2019 10:51:27 UTC+1, Subrata Nandi a écrit :
>
> My research area is symmetric key cryptology. I need an efficient
> algorithm for solving inverse of symbolic matrix of size 512 x 512 in
> GF(2). Can anyone share
> Idea regarding that?
Well, the standard Sage operatins seem to be able to do what you want:
sage: MS=MatrixSpace(GF(2), 5, 5)
sage: MS
Full MatrixSpace of 5 by 5 dense matrices over Finite Field of size 2
sage: M=MS.random_element();M
[0 0 1 0 1]
[0 0 1 1 0]
[0 0 0 0 1]
[1 1 0 1 0]
[0 1 1 0 0]
sage: M^-1
[0 1 0 1 1]
[