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.<x0, x1, x2, x3, x4, x5, x6, x7, x8, x9>=Boolean PolynomialRing()
> y=[ > > [x0 x1 x2 x3 x4 x5 > x6 x7 x8 x9] > [x1 x2 x3 x4 x5 x6 > x7 x8 x9 x0 + x3] > [x2 x3 x4 x5 x6 x7 > x8 x9 x0 + x3 x1 + x4] > [x3 x4 x5 x6 x7 x8 > x9 x0 + x3 x1 + x4 x2 + x5] > [x4 x5 x6 x7 x8 x9 > x0 + x3 x1 + x4 x2 + x5 x3 + x6] > [x5 x6 x7 x8 x9 x0 + x3 > x1 + x4 x2 + x5 x3 + x6 x4 + x7] > [x6 x7 x8 x9 x0 + x3 x1 + x4 > x2 + x5 x3 + x6 x4 + x7 x5 + x8] > [x7 x8 x9 x0 + x3 x1 + x4 x2 + x5 > x3 + x6 x4 + x7 x5 + x8 x6 + x9] > [x8 x9 x0 + x3 x1 + x4 x2 + x5 x3 + x6 > x4 + x7 x5 + x8 x6 + x9 x0 + x3 + x7] > [x9 x0 + x3 x1 + x4 x2 + x5 x3 + x6 x4 + x7 > x5 + x8 x6 + x9 x0 + x3 + x7 x1 + x4 + x8] > > ] > This is a 10 x 10 matrix where each xi in GF(2). I need to find (0,0,0,0,0,0,0,0,0,1)*y^(-1). This is a small example of what I need. In actual case, n=512. Can you help me to find the inverse. Thanks in advance man. > > On Monday, November 4, 2019 at 12:20:50 AM UTC+5:30, Emmanuel Charpentier > wrote: >> >> 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 time: 113 ms >> sage: bool(IM*M==diagonal_matrix(GF(2),[GF(2)(1)]*512)) >> True >> >> But, being totally ignorant of your domain, I have trouble seeing how to >> use this result for boolean logic. A glimpse at the relevant >> documentation >> <http://doc.sagemath.org/html/en/reference/logic/index.html> hints that >> I should refrain from commenting further... >> >> HTH, nevertheless, >> >> >> 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? >> >> -- 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 sage-support+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-support/88999fd3-aa13-4875-879c-0ed6ad28f27d%40googlegroups.com.