Ask Your Question

freako89's profile - activity

2021-05-27 15:00:25 +0200 received badge  Famous Question (source)
2019-01-26 03:32:54 +0200 received badge  Notable Question (source)
2018-09-08 10:40:50 +0200 received badge  Popular Question (source)
2018-09-02 19:11:39 +0200 received badge  Nice Question (source)
2015-04-28 08:56:42 +0200 asked a question defining boolean variables in sage

Hi Guys,

By writing this:

B.<a,b> = BooleanPolynomialRing()

Not only a Boolean Polynomial Ring in 'a' and 'b' is defined, but 'a' and 'b' are also treated as boolean variables.

However, if we write in this manner:

B = BooleanPolynomialRing(names = ['a','b'])

We'll obtain a Boolean Polynomial Ring in 'a' and 'b', but we don't even get 'a' and 'b' as variables.

Is there any way to resolve the issue in the second method, especially, if we have a boolean polynomial ring of >1000 variables? Thanks in advance!

2015-03-05 05:28:36 +0200 asked a question converting from direct representation to indirect representation for S-boxes

Hi guys, let's we want to get the polynomial expression for a S-Box.

sage: S = mq.SBox(7,6,0,4,2,5,1,3) sage: P = S.ring()

We can get the indirect representation...

sage: S.polynomials()
[x0*x2 + x1 + y1 + 1,
 x0*x1 + x1 + x2 + y0 + y1 + y2 + 1,
 x0*y1 + x0 + x2 + y0 + y2,
 x0*y0 + x0*y2 + x1 + x2 + y0 + y1 + y2 + 1,
 x1*x2 + x0 + x1 + x2 + y2 + 1,
 x0*y0 + x1*y0 + x0 + x2 + y1 + y2,
 x0*y0 + x1*y1 + x1 + y1 + 1,
 x1*y2 + x1 + x2 + y0 + y1 + y2 + 1,
 x0*y0 + x2*y0 + x1 + x2 + y1 + 1,
 x2*y1 + x0 + y1 + y2,
 x2*y2 + x1 + y1 + 1,
 y0*y1 + x0 + x2 + y0 + y1 + y2,
 y0*y2 + x1 + x2 + y0 + y1 + 1,
 y1*y2 + x2 + y0]

or the direct representation

sage: P.<y0,y1,y2,x0,x1,x2> = PolynomialRing(GF(2),6,order='lex')
sage: S.polynomials([x0,x1,x2],[y0,y1,y2], groebner=True)
[y0 + x0*x1 + x0*x2 + x0 + x1*x2 + x1 + 1,
 y1 + x0*x2 + x1 + 1,
 y2 + x0 + x1*x2 + x1 + x2 + 1]

My question is, given the direct representation of the S-Box, can we retrieve the indirect representation for the S-Box?

2015-02-16 14:44:54 +0200 received badge  Student (source)
2015-02-16 03:46:12 +0200 received badge  Editor (source)
2015-02-16 03:45:32 +0200 asked a question simplifying expressions in GF(2)

Hi guys,

I know that for a variable $x$ in $GF(2)$, $x^2 = x$, and $2x=0$.

How do I simplify a polynomial expression in $GF(2)$ in the Sage interface?

For example, I should obtain

$$(a+b+1)^2=a^2+b^2+1+2a+2b+2ab=a+b+1$$