Equivalence Verification of Large Galois Field Arithmetic Circuits using Word-Level Abstraction via Gröbner Bases

Size: px
Start display at page:

Download "Equivalence Verification of Large Galois Field Arithmetic Circuits using Word-Level Abstraction via Gröbner Bases"

Transcription

1 Equivalence Verification of Large Galois Field Arithmetic Circuits using Word-Level Abstraction via Gröbner Bases Tim Pruss ECE University of Utah Priyank Kalla ECE University of Utah Florian Enescu Math & Stats Georgia State University ABSTRACT Custom arithmetic circuits designed over Galois fieldsf 2 k are prevalent in cryptography, where the field size k is very large (e.g. k = 571-bits). Equivalence checking of such large custom arithmetic circuits against baseline golden models is beyond the capabilities of contemporary techniques. This paper addresses the problem by deriving word-level canonical polynomial representations from gatelevel circuits as Z =F(A) over F 2 k, where Z and A represent the output and input bit-vectors of the circuit, respectively. Using algebraic geometry, we show that the canonical polynomial abstraction can be derived by computing a Gröbner basis of a set of polynomials extracted from the circuit, using a specific elimination (abstraction) term order. By efficiently applying these concepts, we can derive the canonical abstraction in hierarchically designed, custom arithmetic circuits with up to 571-bit datapath, whereas contemporary techniques can verify only up to 163-bit circuits. Categories and Subject Descriptors B.6.3 [Logic Design]: design aids verification General Terms Verification, Arithmetic Circuits Keywords Hardware Verification, Word-Level Abstraction, Gröbner Bases 1. INTRODUCTION Arithmetic circuits designed over Galois fields of the type F 2 k find application in areas such as hardware security, cryptography, error-correction codes, VLSI testing, among others. In such applications, the field size and thus the circuit data-path size (k) can be very large. For example, the US National Institute for Standards and Technology (NIST) recommends fields F 2 k corresponding to k = 163, 233, 283, 409, and 571, for Elliptic Curve Cryptography (ECC). The large size and high-complexity of such This research is funded in part by NSF grants CCF and CCF Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm.org. DAC 14 June , San Francisco, CA, USA ACM /14/06...$ architectures necessitates custom hierarchical design [1] [2]. Custom design raises the potential for bugs in the implementation. As bugs can compromise the security of cryptosystems [3], formal verification of Galois field circuits becomes an imperative. Verification of these circuits is very challenging, as custom architectures are usually structurally very dissimilar from the baseline specification (golden) models. Contemporary verification techniques [4] (including the recent approaches targeted for Galois field circuits [5]) are unable to prove equivalence of such large circuits. This paper presents an automatic combinational equivalence verification approach for very large Galois field arithmetic circuits. At the core of our approach is a symbolic method to derive the wordlevel, canonical, polynomial representation from a given combinational circuit. It employs concepts from commutative algebra and algebraic geometry notably, Gröbner bases [6] theory to derive the word-level abstraction. The approach is well-suited to arithmetic circuits that are hierarchically designed and cases where the verification instances are structurally dissimilar. Verification Problem: Given: i) a Galois fieldf 2 k, along with the primitive polynomial P(X) used for its construction; ii) the golden model circuit C 1 (called Spec); iii) the custom implementation C 2 (called Impl), along with any available design hierarchy. Prove or disprove the functional equivalence C 1 C 2 ; i.e. prove whether or not C 1,C 2 implement the same (polynomial) function over F 2 k. To solve this problem, we analyze the circuits C 1,C 2 separately, and derive unique canonical polynomial representationsf 1,F 2, respectively. The equivalence test is then performed by simply matching the coefficients off 1,F 2. The polynomial extraction approach is based on the following novel mathematical insights: The mathematical framework: A combinational circuit C with k- bit inputs and k-bit outputs implements Boolean functions that are mappings between k-dimensional Boolean spaces: f : B k B k, where B = {0,1}. The function f, which is a mapping among 2 k elements, can also be construed as a function over a Galois field of 2 k elements, f :F 2 k F 2 k. There is a well-known textbook result [7] which states that: i) over a Galois field (F q ) of q elements, every function f :F q F q is a polynomial function; and ii) there exists a unique canonical polynomial F that describes f. Motivated by this fundamental result, we devise an approach to derive a word-level, canonical, polynomial abstraction of the function as Z =F(A) over F 2 k, where Z ={z 0,...,z k 1 }, A={a 0,...,a k 1 } are, respectively, the output and input bit-vectors (words) of the circuit, and F denotes a polynomial representation of the circuit s functionality. The approach easily generalizes to circuits with arbitrary number of word-level inputs i.e. (multivariate) functions f :F n 2 k F 2 k represented by a polynomial Z =F(A 1,...,A n ). The polynomial F can be derived by means of the Lagrange interpolation formula [7] [8]. However, this requires to analyze f

2 over the entire field F 2 k, which is exhaustive and infeasible. To make this approach practical, we propose a symbolic method based on computer algebra and algebraic geometry to derive the canonical polynomial abstraction and employ it for design verification. Contributions: Using polynomial abstractions, we analyze the given circuits and model the gate-level Boolean operators as elements of a multivariate polynomial ring with coefficients inf 2 k. By exploiting concepts of Nullstellensatz, Gröbner bases, elimination ideals and projections of varieties [6], we formulate the polynomial abstraction problem as one of computing a Gröbner basis of this set of polynomials, using a specific elimination term order termed as the abstraction term order >. Computing Gröbner bases using elimination orders is infeasible for large circuits. To overcome this limitation, we refine the term order based on a topological analysis of the circuit. Using this refinement, we guide the S-polynomial computations in the Buchberger s algorithm [9] to derive the polynomial representation of the circuit s functionality. This approach identifies the function implemented by the given Galois field arithmetic circuits for verification. We experiment with different architectures of Galois field multipliers and show that: i) when the circuits are given as flattened netlists, we can abstract the polynomial for up to 409-bit NIST specified fields; and ii) when the design hierarchy is available, our approach can identify the polynomial up to 571-bits, i.e. for all NIST-specified Galois fields F 2 k used in ECC. Our approach scales well for practical verification, whereas other techniques [5] fail beyond 163-bit circuits. 2. RELATED PREVIOUS WORK Canonical Representations: The Reduced Ordered Binary Decision Diagram (ROBBD) [10] and its variants FDDs, ADDs, BMDs, etc. are canonical DAG representations of functions that are employed in design verification. The various decomposition principles behind these diagrams are based on point-wise, binary decomposition, w.r.t. each (Boolean) variable. As such, these do not fully provide word-level abstraction capabilities from bitlevel representations. Taylor Expansion Diagrams (TEDs) [11] are a word-level canonical representation of a polynomial expression, but they do not represent a polynomial function canonically. MODDs [12] are a DAG representation of the characteristic function of a circuit over Galois fields F 2 k. MODDs come close to satisfying our requirements as a canonical word-level representation that can be employed over Galois fields. However, MODDs do not scale well w.r.t. the circuit size. MODDs are known to be infeasible in representing functions over larger than 32-bit vectors [12]. Equivalence Checking: Modern equivalence checkers employ techniques based on AIG-based reductions [4] and circuit-sat solvers [13]. Such techniques are able to identify internal structural equivalences between the Spec and Impl circuits and reduce the instances for verification. However, when the arithmetic circuits are structurally very dissimilar, these techniques are infeasible in proving equivalence (Tables I and II in [5] depict such experiments). Word-Level Verification of Galois field circuits: In [14], the authors present the BLUEVERI tool for verification of Galois field circuits for error correcting codes against an algorithmic spec. The implementation consists of a set of (pre-designed and verified) circuit blocks that are interconnected to form the system. Their objective is to prove the equivalence of the implementation against a check file (spec), for which they employ a Nullstellensatz and Gröbner basis formulation. In their setting, the polynomial function representation of the sub-circuit blocks is already available. In [5], Lv et al. present computer algebra techniques for formal verification of Galois field arithmetic circuits. Given a specification polynomial F, and a circuit C, they formulate the verification problem as an ideal membership test using the Gröbner basis theory. Verification is performed by a sequence of divisions modulo the polynomials of the circuit. This approach moves the verification complexity solely to that of polynomial division which results in the size-explosion of intermediate remainders in the division. As a result, their approach does not scale beyond 163-bit circuits. In contrast to [14] [5], we are not given the specification polynomialf. Given the circuit C, we have to derive (extract) the wordlevel specificationf. Moreover, we perform a Gröbner basis computation on a subset of polynomials to derive the abstraction polynomial, which is the reason behind the success of our approach. Polynomial Interpolation: Interpolation can be used to derive a polynomial representation for a function over F 2 k. However, Newton s dense interpolation techniques exhibit very high complexity. While such techniques have been investigated by logic synthesis and testing communities [8], they are feasible only over small fields e.g. for computing Reed-Muller forms for multi-valued logic. 3. PRELIMINARIES Galois fields and Polynomial functions: A Galois field (F q ) is a field with a finite number (q) of elements, where q is a power of a prime integer i.e. q = p k, where p is a prime integer, and k 1. We consider fields where p = 2 and k > 1 i.e. binary Galois extension fields F 2 k as they are employed in hardware implementations of cryptography primitives. To constructf 2 k, we take the polynomial ringf 2 [x], wheref 2 = {0,1}, and an irreducible polynomial P(x) F 2 [x] of degree k, and construct F 2 k as F 2 [x] (mod P(x)). As a result, all field operations are performed modulo the irreducible polynomial P(x) and the coefficients are reduced modulo p=2. Any element A F 2 k can be represented in polynomial form as A=a 0 + a 1 α+ +a k 1 α k 1, where a i F 2,i = 0,...,k 1, and α is a root of the irreducible polynomial, i.e. P(α) = 0. Note that A is essentially represented as a k-bit vector. The field F 2 k can therefore be construed as a k- dimensional vector space over F 2, sof 2 F 2 k. Polynomial Functions f :F 2 k F 2 k: Arbitrary mappings among k-bit vectors can be constructed; each such mapping generates a function f : B k B k. Every such function is also a polynomial function over Galois fields: f :F 2 k F 2 k. THEOREM 3.1. From [7]: Any function f :F q F q is a polynomial function overf q, that is there exists a polynomialf F q [x] such that f(a)=f(a), for all a F q. An important property of Galois fields is that for all elements A F q,a q = A, and hence A q A=0. Therefore, the polynomial X q X vanishes on all points in F q. Consequently, any polynomial F(X) can be reduced (mod X q X) to obtain a canonical representation (F(X) (mod X q X)) with degree at most q 1. DEFINITION 3.1. Any function f :F d q F q has a unique canonical representation (UCR) as a polynomialf F q [x 1,...,x d ] such that all its nonzero monomials are of the form x i 1 1 x i d d where 0 i j q 1, for all j=1,...d. Modulo-multipliers overf 2 k: Over Galois fieldsf 2 k, multiplication is performed as Z = A B (mod P(x)), where A,B F 2 k are k-bit inputs and P(x) is the given irreducible polynomial. The multiplier circuit takes bit-level inputs{a 0,...,a k 1, b 0,...,b k 1 } and produces output Z={z 0,...,z k 1 }, such that A= i=0 i=k 1 a i α i, B= i=0 i=k 1 b i α i and Z = i=0 i=k 1 z i α i. First, the bit-wise multiplication S = A B is computed using an array multiplier architecture, and then the result S is reduced (mod P(x)) to obtain Z= S (mod P(x)). Such architectures are termed Mastrovito multipliers [15].

3 Mastrovito multipliers are inefficient, specially for cryptosystems where multiplication is often performed repeatedly. For such applications, Montgomery reduction operations are proposed [1] [2]. Montgomery reduction () computes: (A,B)=A B R 1 (mod P(x)), where A,B are k-bit inputs, R is suitably chosen as R = α k, R 1 is multiplicative inverse of R in F 2 k, and P(x) is the irreducible polynomial. Since Montgomery reduction cannot directly compute A B (mod P(x)), we need to pre-compute A R and B R, as shown in Fig. 1. A B R 2 R 2 A R B R A B R "1" G=A B (mod P) Figure 1: Montgomery multiplication over F 2 k using four s. Clearly, Montgomery multipliers are hierarchically designed as an interconnection of blocks (Fig. 1). These circuits are structurally dissimilar from the baseline Mastrovito multipliers. In this paper, Mastrovito and Montgomery multipliers are used as Spec and Impl benchmarks, respectively, for equivalence verification. 3.1 Computer Algebra Preliminaries Let F q [x 1,...,x d ] be the polynomial ring with indeterminates x 1,...,x d, where q = 2 k. A monomial is a power product X = x α 1 1 xα 2 2 xα d d, where α i 0,i {1,...,d}. A polynomial f F q [x 1,...,x d ], f 0, is a finite sum of terms f = c 1 X 1 + c 2 X 2 + +c t X t. Here c 1,...,c t are coefficients and X 1,...,X t are monomials. A monomial ordering > is imposed on the ring such that X 1 > X 2 > > X t. Subject to such an ordering, lt( f) = c 1 X 1, lm( f) = X 1, lc( f) = c 1, are the leading term, leading monomial and leading coefficient of f, respectively. Similarly, tail( f ) = c 2 X 2 + +c t X t. Division of a polynomial f by polynomial g gives re- g mainder polynomial r, denoted f + r. Similarly, f can be reduced (divided) w.r.t. a set of polynomials F ={ f 1,..., f s } to ob- F tain a remainder r, denoted f + r, such that no term in r is divisible by the leading term of any polynomial in F. An ideal J generated by polynomials f 1,..., f s F q [x 1,...,x d ] is: J = f 1,..., f s ={ s i=1 h i f i : h i F q [x 1,...,x d ]}. The polynomials f 1,..., f s form the basis or generators of J. Let a=(a 1,...,a d ) F d q be a point, and f F q [x 1,...,x d ] be a polynomial. We say that f vanishes on a if f(a) = 0. For any ideal J = f 1,..., f s F q [x 1,...,x d ], the affine variety of J over F q is: V(J) = {a F d : f J, f(a) = 0}. In other words, the variety corresponds to the set of all solutions to f 1 = = f s = 0. DEFINITION 3.2. For any subset V of F d q, the ideal of polynomials that vanish on V, called the vanishing ideal of V, is defined as: I(V)={ f F q [x 1,...,x d ] : a V, f(a)=0}. Therefore, if a polynomial f vanishes on a variety V, then f I(V). THEOREM 3.2. Strong Nullstellensatz over F q : (From [16]): Let J F q [x 1,...,x d ] be an ideal, and let J 0 = x q 1 x 1,...,x q d x d be the ideal of all vanishing polynomials. Let V Fq (J) denote the variety of J over F q. Then, I(V Fq (J)) = J+ J 0 = J+ x q 1 x 1,..., x q d x d. Gröbner Bases: An ideal J may have many different generators (representations): i.e. F = { f 1,..., f s } and G = {g 1,...,g t } such that J= f 1,..., f s = g 1,...,g t and V(J)= V( f 1,..., f s )= V(g 1,...,g t ). A Gröbner basis is a representation of an ideal which allows to solve many polynomial decision questions. DEFINITION 3.3. [Gröbner Basis] For a monomial ordering >, a set of non-zero polynomials G = {g 1,g 2,,g t } contained in an ideal J, is called a Gröbner basis for J f J, f 0, there exists i {1,,t} such that lm(g i ) divides lm( f); i.e., G= GB(J) f J : f 0, g i G : lm(g i ) lm( f). As a consequence of Definition 3.3, the set G is a Gröbner basis of ideal J if and only if for all f J, dividing f by polynomials of G G gives 0 remainder: G=GB(J) f J, f + 0. Buchberger s algorithm [9], shown in Algorithm 1, computes a Gröbner basis over a field. Spoly( f,g)= L lt( f) f L lt(g) g where L=LCM(lm( f),lm(g)). Note that Spoly( f,g) cancels the leading terms of f,g, and the remainder r obtained in Spoly( f,g) G + r gives a new leading term. A Gröbner basis is computed when all Spoly( f,g) G + 0. A Gröbner basis can be further reduced; a reduced Gröbner basis is a canonical representation of the ideal w.r.t. the set monomial order. Algorithm 1: Buchberger s Algorithm Input: F ={ f 1,..., f s } Output: G={g 1,...,g t } G := F; repeat G := G; for each pair{ f,g}, f g in G do Spoly( f,g) G + r ; if r 0 then G := G {r} ; end end until G=G ; 4. WORD-LEVEL ABSTRACTION USING GRÖBNER BASIS We are given a circuit C with k-bit inputs and outputs that performs a polynomial computation Z = F(A) over F q = F 2 k. Let P(x) be the given irreducible or primitive polynomial used for field construction, and let α be its root, i.e. P(α)=0. Note that we do not know the polynomial representation F(A) and our objective is to identify (the coefficients of) F(A). Let {a 0,...,a k 1 } denote the primary inputs and let {z 0,...,z k 1 } be the primary outputs of C. Then, the word-level and bit-level correspondences are: A=a 0 + a 1 α+ +a k 1 α k 1 ; Z = z 0 + z 1 α+ +z k 1 α k 1 ; (1) We analyze the circuit and model all the gate-level Boolean operators as polynomials in F 2 F 2 k. To this set of Boolean polynomials, append the polynomials of Eqn. (1) that relate the wordlevel and bit-level variables. Denote this set of polynomials as F = { f 1,..., f s } over the ring R = F q [x 1,...,x d,z,a]. Here x 1,...,x d denote, collectively, all the bit-level variables of the circuit i.e. primary inputs, primary outputs and the intermediate circuit variables and Z,A, are the word-level variables. Denote the generated ideal as J = F R. Also, denote the (unknown) specification of the circuit as a polynomial f : Z F(A), or equivalently as f : Z+F(A), as 1=+1 inf 2 k. As Z =F(A), clearly f : Z+F(A) agrees with the solutions to the circuit equations f 1 = = f s = 0. This means that f : Z+ F(A) vanishes on the variety V Fq (J). If f : Z+F(A) vanishes on

4 V Fq (J), then due to Definition 3.2, f : Z+F(A) is a member of the ideal I(V Fq (J)). Strong Nullstellensatz over Galois fields (Theorem 3.2) tells us that I(V Fq (J))=J+ J 0, where J 0 = x 2 1 x 1,...,x 2 d x d,z q Z,A q A is the ideal of all vanishing polynomials in R. From these results, we deduce that: PROPOSITION 4.1. The (unknown) specification polynomial f : Z+F(A) (J+ J 0 ). The variety V Fq (J) is the set of all consistent assignments to the nets (signals) in the circuit C. If we project this variety on the word-level input and output variables of the circuit C, we essentially generate the function f implemented by the circuit. Projection of varieties from d-dimensional space F d q onto a lower dimensional subspace F d l q is equivalent to eliminating l variables from the corresponding ideal. DEFINITION 4.1. (Elimination Ideal) From [6]: Given J = f 1,..., f s F q [x 1,...,x d ], the lth elimination ideal J l is the ideal off q [x l+1,...,x d ] defined by J l = J F q [x l+1,...,x d ]. In other words, the lth elimination ideal does not contain variables x 1,...,x l, nor do the generators of it. Moreover, Gröbner bases may be used to generate an elimination ideal by using an elimination term order. One such ordering is a pure lexicographic ordering, which features into the following theorem: THEOREM 4.1. (Elimination Theorem) From [6]: Let J F q [x 1,...,x d ] be an ideal and let G be a Gröbner basis of J with respect to a lex ordering where x 1 > x 2 > >x d. Then for every 0 l d, the set G l = G F q [x l+1,...,x d ] is a Gröbner basis of the lth elimination ideal J l. EXAMPLE 4.1. Consider polynomials f 1 : x 2 y z 1, f 2 : x y 2 z 1, f 3 : x y z 2 1 and ideal J = f 1, f 2, f 3 C[x,y,z]. Let us compute a Gröbner basis G of J w.r.t. lex term order with x > y > z. Then G = {g 1,...,g 4 } is obtained as: g 1 : x y z 2 1; g 2 : y 2 y z 2 z; g 3 : 2yz 2 z 4 z 2 ; g 4 : z 6 4z 4 4z 3 z 2. Notice that the polynomial g 4 contains only the variable z, and it eliminates variables x, y. Similarly, polynomials g 2,g 3,g 4, contain variables y,z and eliminate x. According to Theorem 4.1, G 1 = G C[y,z]={g 2,g 3,g 4 } and G 2 = G C[z]={g 4 } are the Gröbner bases of the 1 st and 2 nd elimination ideals of J, respectively. The above example motivates our approach: since we want to derive a polynomial representation from a circuit in variables Z, A, we can compute a Gröbner basis of J+ J 0 w.r.t. an elimination order that eliminates all the (d) bit-level variables of the circuit. The Gröbner basis G d = G F q [Z,A] of the d th elimination ideal of (J+ J 0 ) will contain polynomials in only Z,A. PROBLEM SETUP 4.1. Given a circuit C with k-bit inputs and outputs which computes a polynomial function f :F 2 k F 2 k. Let A = {a 0,...,a k 1 } and Z = {z 0,...,z k 1 } be the inputs and outputs of the circuit, respectively, such that A = a 0 + a 1 α+ + a k 1 α k 1 and Z = z 0 + +z k 1 α k 1, where P(α)=0. Let Z = F(A) be the unknown polynomial function implemented by the circuit. Denote by x i,i=1,...,d all the Boolean variables of the circuit. Let R = F 2 k[x i,z,a : i = 1,...d] denote the corresponding polynomial ring and let ideal J F 2 k[x i,z,a : i = 1...d] be generated by the bit-level and word-level polynomials of the circuit. Let J 0 = xi 2 x i,z 2k Z,A 2k A : i=1,...,d denote the ideal of vanishing polynomials in R. DEFINITION 4.2. Abstraction Term Order >: Using the variable order x 1 > x 2 > > x d > Z > A, impose a lex term order > on the polynomial ring R=F q [x 1,...,x d,z,a]. This elimination term order>is defined as the Abstraction Term Order. The relative ordering among x 1,...,x d can be chosen arbitrarily. THEOREM 4.2. Abstraction Theorem: Using the setup and notations from Problem Setup 4.1 above, compute a Gröbner basis G of ideal (J+ J 0 ) using the abstraction term order >. Then: (i) G must contain a polynomial of the form Z+G(A); and (ii) Z+G(A) is such thatf(a)=g(a), A F q. In other words, G(A) andf(a) are equal as polynomial functions over F q. PROOF. (i) Since f : Z+F(A) is a polynomial representation of the circuit, Z+F(A) J+ J 0, due to Proposition 4.1. Therefore, according to the definition of a Gröbner basis (Definition 3.3), the leading term of Z+F(A) (which is Z) should be divisible by the leading term of some polynomial g i G. The only way lt(g i ) can divide Z is when lt(g i )=Z itself. Moreover, due to our abstraction (lex) term order, Z > A, so this polynomial must be of the form Z+G(A). (ii) As Z = F(A) represents the function of the circuit, Z + F(A) J + J 0. Moreover, V(J+ J 0 ) V(Z +F(A)). Project this variety V(J+J 0 ) onto the co-ordinates corresponding to(a,z). What we obtain is the graph of the function A F(A) over F 2 k. Since Z+G(A) is an element of the Gröbner basis of J+J 0, V(J+ J 0 ) V(Z+G(A)) too. Due to this inclusion of varieties, the points that satisfy (J+ J 0 ) also satisfy Z+G(A)=0 and Z+F(A)=0. Therefore, Z =G(A) gives the same function as Z =F(A), for all A F 2 k. COROLLARY 4.1. Computing a reduced Gröbner basis G r of J+J 0, we will obtain one and only one polynomial in G r of the form Z+G(A), such that Z =G(A) is the unique, minimal, canonical representation of the function f implemented by the circuit. As a consequence of Theorem 4.2 and Corollary 4.1, if we compute a reduced Gröbner basis G of J+J 0 using the abstraction term order, we will always find the one and only polynomial of the form Z+G(A) in the Gröbner basis, such that Z =G(A) is the unique canonical polynomial representation of the circuit. The above results trivially extend to circuits with multiple wordlevel input variables A 1,...,A n, and the canonical polynomial representation obtained by computing a reduced Gröbner basis G r of J+ J 0 using>is of the form Z =F(A 1,...,A n ). EXAMPLE 4.2. Demonstration of our approach: Consider the 2-bit multiplier circuit over F 2 2 given in Fig. 2, which implements a polynomial function: Z = A B, Z,A,B F 4. Here, A = a 0 + a 1 α, B=b 0 +b 1 α are the word-level inputs and Z= z 0 +z 1 α is the output in F 4, and P(x) = x 2 + x+1 (given) where P(α) = 0. The Figure 2: A 2-bit Multiplier over F 2 2. The gate corresponds to ANDgate, i.e. bit-level multiplication modulo 2. The gate corresponds to XOR-gate, i.e. addition modulo 2. functionality of the circuit is described using the following polynomials derived from the Boolean gate-level operators: f 1 : z 0 +

5 z 1 α+z; f 2 : b 0 +b 1 α+b; f 3 : a 0 +a 1 α+a; f 4 : s 0 +a 0 b 0 ; f 5 : s 1 +a 0 b 1 ; f 6 : s 2 +a 1 b 0 ; f 7 : s 3 +a 1 b 1 ; f 8 : r 0 +s 1 +s 2 ; f 9 : z 0 + s 0 + s 3 ; f 10 : z 1 + r 0 + s 3. Ideal J = f 1,..., f 10. Generate J 0 as the ideal of vanishing polynomials. Impose the following abstraction term order, i.e. a lex order with circuit variables > Output Z > Inputs, A, B, and compute a Gröbner basis G of J+ J 0. We find the following polynomials in the basis: g 1 : z 0 + z 1 α+z; g 2 : b 0 + b 1 α+b; g 3 : a 0 + a 1 α+a; g 4 : s 3 + r 0 + z 1 ;g 5 : s 1 + s 2 + r 0 ; g 6 : s 0 + s 3 + z 0 ; g 7 : Z+AB; g 8 : a 1 b 1 +a 1 B+b 1 A+z 1 ; g 9 : r 0 +a 1 b 1 +z 1 ; g 10 : s 2 +a 1 b 0, and the polynomials of J 0. The polynomial g 7 : Z+ AB describes Z = AB as the (canonical) polynomial function implemented by the circuit. 5. IMPROVING OUR APPROACH Computing Gröbner bases w.r.t. elimination orders is infeasible for large circuits. The worst-case complexity of computing GB(J+ J 0 ) inf q [x 1,...,x d ] is known to be bounded by q O(d) [16], which is prohibitive over large fields. Therefore, we need to improve our approach to overcome this complexity. Notice that our approach searches for only one polynomial (Z + G(A)) in the Gröbner basis, and it does so by computing the entire Gröbner basis. This motivates us to investigate whether it is possible to guide a sequence of Spoly( f,g) J+J 0 + r computations to arrive at the desired word-level polynomial, without considering other polynomials in the generating set. For this purpose, we exploit the wellknown product criteria: LEMMA 5.1. [Product Criterion [17]] Let f,g F[x 1,,x d ] be polynomials. If the equality lm( f) lm(g)=lcm(lm( f),lm(g)) holds, then Spoly( f,g) G + 0. The above result states that when the leading monomials of f,g are relatively prime, then Spoly( f,g) always reduces to 0 modulo G. Thus Spoly( f,g) need not be considered in Buchberger s algorithm. Recall that in the Abstraction Term Order (Definition 4.2), we have circuit variables x 1,...,x d > Z > A, where the relative ordering among x 1,...,x d is not important. We will now further refine the abstraction term order while exploiting the product criteria. DEFINITION 5.1. Refined Abstraction Term Order> r : Starting from the primary outputs of the circuit C, perform a reverse topological traversal toward the primary inputs. Order each variable of the circuit according to its reverse topological level: i.e. x i > x j if x i appears earlier in the reverse topological order. Impose a lex term order> r onf q [x 1,...,x d,z,a] with circuit variables ordered reverse topologically > Z> A. This term order> r is called the refined abstraction term order (RATO). When RATO is imposed on the set of polynomials F ={ f 1,..., f s }, J = F, it is easy to see that each polynomial in F is of the form f i = x i +P i, where x i is a gate-output and P i = tail( f i ) represents the function implemented by that gate. Moreover, each indeterminate x j that appears in P i satisfies x i > x j (acyclic circuit). Furthermore, each gate output is a leading term of some polynomial in F. Since each gate output is a unique signal, f i = x i + P i and f j = x j + P j have relatively prime leading terms (x i x j ). So, Spoly( f i, f j ) need not be considered in the Gröbner basis computation. However, there is one (and only one) pair of polynomials( f w, f g ) F with leading terms that are not relatively prime: i) the wordlevel polynomial ( f w ) corresponding the outputs: f w = z 0 + z 1 α+ +z k 1 α k 1 + Z, with gate output z 0 as the leading term; and ii) the polynomial f g that models the function at the gate z 0. Due to RATO, Spoly( f w, f g ) J+J 0 + r is the only candidate critical pair to be evaluated at the start of Buchberger s algorithm. Based on these concepts, we devise the following approach to efficiently search for the polynomial function: 1. Impose RATO on the ring. Select the only critical pair( f w, f g ) that does not have relatively prime leading terms, and compute Spoly( f w, f g ) F,F 0 + r. 2. Then r will contain only the following variables: i) the bitlevel primary input variables of the circuit; ii) the word-level output Z; and iii) the word-level input A. The remainder r will not contain any bit-level variable corresponding to the output of any gate in the design; i.e. primary output bits and intermediate variables of the circuit do not appear in r. To prove this, assume that a non-primary-input variable x j appears in a monomial term m j in r. Since there always exists a polynomial f j F such that f j = x j + tail( f j ), lt( f j ) divides monomial m j and m j can be canceled. Therefore, all such terms m j with non-primary-input bit-level variables can be eliminated. 3. Two cases need to be considered: (a) (Case 1:) Remainder r does not even contain the primary input bits. Then, r contains only the word-level variables Z,A. Since RATO is lex with Z > A, the remainder r corresponds to the desired canonical polynomial representation: r : Z+G(A). (b) (Case 2:) Remainder r contains both the bit-level primary input variables (call this set X PI ), as well as the word-level variables. Then, due to Lemma 5.1, we only need to consider the set F = {r, f wi } and F 0 = {xi 2 x i,z q Z,A q A : x i X PI }, where f wi = a 0 + a 1 α+ +a k 1 α k 1 +A is the polynomial that relates the word-level (A) and bit-level inputs {a 0,...,a k 1 }. Compute the reduced Gröbner basis G of F F 0, which is a much simplified computation. Then, G will definitely contain a polynomial of the form Z+G(A), which will be the canonical polynomial representation of the function of the circuit. EXAMPLE 5.1. Consider, again, the example shown in Example 4.2, corresponding to the multiplier circuit of Fig. 2. Impose RATO:{z 0 > z 1 }>{r 0 > s 0 > s 3 }>{s 1 > s 2 }>{a 0 > a 1 > b 0 > b 1 } > Z > A. Then, the polynomials f 1..., f 10 shown in Example 4.2 are already represented in RATO. Assume that the circuit is correct and it has no bugs. Then f 1 and f 9 are the only two polynomials whose leading terms are not relatively prime. Computing Spoly( f 1, f 9 ) F,F 0 + r, we find that r = Z+ A B which is the word-level polynomial representation of the circuit. Now, let us introduce a bug in the design. Replace the polynomial f 8 : r 0 + s 1 + s 2 in F with f 8 : r 0 + s 0 + s 2 (bug introduced). Computing Spoly( f 1, f 9 ) F,F 0 + r, we find that r = αa 1 b 1 +(α+ 1)a 1 B+b 1 A+Z+(α+1)AB. Note that in addition to word-level variables Z,A,B, we also have bit-level primary inputs a 1,b 1 in r. Moreover, all other polynomials in F have leading terms that are relatively prime w.r.t. lt(r). Now we take F = {r, a 0 + a 1 α+a, b 0 + b 1 α+b} and F 0 = {a 2 0 a 0,a 2 1 a 1,b 2 0 b 0,b 2 1 b 1,A 4 A,B 4 B,Z 4 Z} and compute the reduced Gröbner basis G of F F 0. We find the polynomial Z+(α) A 2 B 2 + A 2 B+(α+1) A B 2 +(α+1) A B in G which is indeed the polynomial representation of the buggy circuit!

6 6. EXPERIMENTAL RESULTS Using the approach described in Section 5, we have performed experiments to prove equivalence between Mastrovito (C 1 ) and Montgomery (C 2 ) multiplier circuits. The Mastrovito multiplier, baseline golden model (Spec), is provided as a bit-blasted/flattened gatelevel netlist. The (Impl) is given as the hierarchically designed Montgomery multiplier, as shown in Fig. 1; i.e. each block is given as a flattened gate-level netlist, and these blocks are interconnected to construct the multiplier circuit. For equivalence checking using AIG and SAT-based methods, a miter is constructed between Spec and Impl, and the ABC tool [4] and CSAT solver [13] are used. These tools cannot prove equivalence beyond 16-bit multiplier circuits within 24-hours; none of the NIST-specified ECC circuits can be verified. This is exactly the same observation made by the authors of [5] (cf. Table I & II in [5]). When we apply the approach of [5], we are able to prove equivalence only up to 163-bit multipliers, beyond which the verification tool of [5] runs into a memory explosion. We apply our abstraction-based approach to derive the canonical word-level polynomials F 1,F 2 from circuits C 1,C 2 and then prove equivalence by checking if F 1 =F 2 (coefficient matching). First, we use the SINGULAR computer algebra tool [18] to derive the polynomial abstraction by computing a full Gröbner basis of J+ J 0 (using the slimgb command), and find that the technique is infeasible (memory explosion) beyond only 32-bit circuits; as the full Gröbner basis using elimination orders is extremely large. Finally, we apply the approach presented in Section 5 to specifically guide the search for the abstraction polynomial. Since this approach constitutes only a sequence of polynomial divisions, we exploit an F4-style reduction approach, described in [5] (Section 7), for which we built a custom tool. All experiments are conducted on Intel Xeon 6-core CPU running Scientific Linux 6.2 x86_64 with 96GB RAM. Timeout limit for all experiments, for all tools, was restricted to 24 hours. Table I depicts the time required to derive the polynomial abstraction from Mastrovito circuits. The tool takes the circuit as input, performs a reverse topological traversal to determine RATO, applies the approach presented in Section 5 and derives the polynomial representation Z = A B. For up to 409-bit multipliers, with 508K gates, our approach is successful. Table II depicts the results for Montgomery multipliers. In the table, BLK A and B denote the input blocks, BLK Mid denotes the middle block and BLK Out is the output block. While each block is an block, some have been simplified by constant-propagation (recall, R=α k ), hence they have different sizes. First, a polynomial is extracted for each block (gate-level to word-level abstraction), and then the approach is re-applied at word-level to derive the input-output relation (solved trivially in < 1 second). Our approach can extract the word-level polynomial for up to 571-bit circuits! Table 1: Abstraction of Mastrovito multipliers. Time given in seconds, memory given in MB. TO = 24 hours. Size (k) # of Gates 153K 167K 399K 508K 1.6M Our tool Time 4,351 5,777 40,114 72,708 TO Max Mem CONCLUSION This paper has presented a technique to derive a word-level, canonical polynomial representation from a circuit by modeling the function over the Galois fieldf 2 k. We show that this can be achieved by computing a Gröbner basis of the ideal generated by the constraints Table 2: Abstraction of Montgomery blocks. Time given in seconds, memory is given in MB Circuit Size (k) Blk A 33K 55K 82K 168K 330K # of Gates Blk B 33K 55K 82K 168K 330K Blk Mid 85K 163K 241K 502K 980K Blk Out 32K 54K 81K 168K 328K Blk A ,011 5,084 14,288 Blk B ,058 5,381 12,298 Time Blk Mid 264 1,014 5,085 20,294 47,364 Our Tool Blk Out ,032 3,243 13,508 Total Time 636 1,909 8,186 34,002 87,458 Max Mem derived from the circuit using an elimination term order. To overcome the complexity of computing the Gröbner basis, we have proposed a refinement of the abstraction term order, using which we can more efficiently guide the search for the word-level polynomial abstraction. Using our approach, we can identify the polynomial function and thus prove the correctness of Galois field multiplier circuits with up to 571-bit data-path size. 8. REFERENCES [1] C. K. Koc and T. Acar, Montgomery Multiplication in GF(2 k ), Designs, Codes and Cryptography, vol. 14, pp , [2] Huapeng Wu, Montgomery Multiplier and Squarer for a Class of Finite Fields, IEEE Transactions On Computers, vol. 51, May [3] E. Biham, Y. Carmeli, and A. Shamir, Bug Attacks, in Proceedings on Advances in Cryptology, pp , [4] A. Mishchenko, S. Chatterjee, R. Brayton, and N. Een, Improvements to Combinational Equivalence Checking, in Proc. Intl. Conf. on CAD (ICCAD), pp , [5] J. Lv, P. Kalla, and F. Enescu, Efficient Gr bner Basis Reductions for Formal Verification of Galois Field Arithmetic Circuits, in IEEE Trans. on CAD, vol. 32, pp , [6] D. Cox, J. Little, and D. O Shea, Ideals, Varieties and Algorithms, Springer-Verlag, [7] Rudolf Lidl and Harald Niederreiter, Finite Fields, Cambridge University Press, [8] Z. Zilic and Z. Vranesic, A deterministic multivariate interpolation algorithm for small finite fields, IEEE Trans. Comp., vol. 51, [9] B. Buchberger, Ein Algorithmus zum Auffinden der Basiselemente des Restklassenringes nach einem nulldimensionalen Polynomideal, PhD thesis, Philosophiesche Fakultät an der Leopold-Franzens-Universität, Austria, [10] R. E. Bryant, Graph Based Algorithms for Boolean Function Manipulation, IEEE Trans. on Comp., vol. C-35, pp , [11] M. Ciesielski, P. Kalla, and S. Askar, Taylor Expansion Diagrams: A Canonical Representation for Verification of Data-Flow Designs, IEEE Transactions on Computers, vol. 55, pp , [12] A. Jabir et al., A Technique for Representing Multiple Output Binary Functions with Applications to Verification and Simulation, IEEE Trans. on Comp., vol. 56, pp , [13] F. Lu, L. Wang, K. Cheng, and R. Huang, A Circuit SAT Solver With Signal Correlation Guided Learning, in IEEE Design, Automation and Test in Europe, pp , [14] A. Lvov, L. Lastras-Montaño, V. Paruthi, R. Shadowen, and A. El-Zein, Formal Verification of Error Correcting Circuits using Computational Algebraic Geometry, in Proc. Formal Methods in Computer-Aided Design (FMCAD), pp , [15] E. Mastrovito, VLSI Designs for Multiplication Over Finite Fields GF(2 m ), Lecture Notes in CS, vol. 357, pp , [16] S. Gao, Counting Zeros over Finite Fields with Gröbner Bases, Master s thesis, Carnegie Mellon University, [17] B. Buchberger, A criterion for detecting unnecessary reductions in the construction of a groebner bases, in EUROSAM, [18] W. Decker, G.-M. Greuel, G. Pfister, and H. Schönemann, SINGULAR A computer algebra system for polynomial computations, 2011,

EFFICIENT GRÖBNER BASIS REDUCTIONS FOR FORMAL VERIFICATION OF GALOIS FIELD ARITHMETIC CIRCUITS

EFFICIENT GRÖBNER BASIS REDUCTIONS FOR FORMAL VERIFICATION OF GALOIS FIELD ARITHMETIC CIRCUITS EXTENDED VERSION OF A PAPER ACCEPTED FOR PUBLICATION IN IEEE TRANS. ON CAD, ACCEPTED MARCH 2013 1 EFFICIENT GRÖBNER BASIS REDUCTIONS FOR FORMAL VERIFICATION OF GALOIS FIELD ARITHMETIC CIRCUITS Jinpeng

More information

Projection of Varieties and Elimination Ideals

Projection of Varieties and Elimination Ideals Projection of Varieties and Elimination Ideals Applications: Word-Level Abstraction from Bit-Level Circuits, Combinational Verification, Reverse Engineering Functions from Circuits Priyank Kalla Associate

More information

Galois Fields and Hardware Design

Galois Fields and Hardware Design Galois Fields and Hardware Design Construction of Galois Fields, Basic Properties, Uniqueness, Containment, Closure, Polynomial Functions over Galois Fields Priyank Kalla Associate Professor Electrical

More information

arxiv: v1 [cs.sc] 16 Nov 2016

arxiv: v1 [cs.sc] 16 Nov 2016 1 Efficient Parallel Verification of Galois Field Multipliers Cunxi Yu, Maciej Ciesielski ECE Department, University of Massachusetts, Amherst, USA ycunxi@umass.edu, ciesiel@ecs.umass.edu arxiv:1611.05101v1

More information

DESPITE considerable progress in verification of random

DESPITE considerable progress in verification of random IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS 1 Formal Analysis of Galois Field Arithmetic Circuits - Parallel Verification and Reverse Engineering Cunxi Yu Student Member,

More information

Computing Minimal Polynomial of Matrices over Algebraic Extension Fields

Computing Minimal Polynomial of Matrices over Algebraic Extension Fields Bull. Math. Soc. Sci. Math. Roumanie Tome 56(104) No. 2, 2013, 217 228 Computing Minimal Polynomial of Matrices over Algebraic Extension Fields by Amir Hashemi and Benyamin M.-Alizadeh Abstract In this

More information

Gröbner Bases & their Computation

Gröbner Bases & their Computation Gröbner Bases & their Computation Definitions + First Results Priyank Kalla Associate Professor Electrical and Computer Engineering, University of Utah kalla@ece.utah.edu http://www.ece.utah.edu/~kalla

More information

Intro to Rings, Fields, Polynomials: Hardware Modeling by Modulo Arithmetic

Intro to Rings, Fields, Polynomials: Hardware Modeling by Modulo Arithmetic Intro to Rings, Fields, Polynomials: Hardware Modeling by Modulo Arithmetic Priyank Kalla Associate Professor Electrical and Computer Engineering, University of Utah kalla@ece.utah.edu http://www.ece.utah.edu/~kalla

More information

Counting and Gröbner Bases

Counting and Gröbner Bases J. Symbolic Computation (2001) 31, 307 313 doi:10.1006/jsco.2000.1575 Available online at http://www.idealibrary.com on Counting and Gröbner Bases K. KALORKOTI School of Computer Science, University of

More information

Finding Unsatisfiable Cores of a Set of Polynomials using the Gröbner Basis Algorithm

Finding Unsatisfiable Cores of a Set of Polynomials using the Gröbner Basis Algorithm Finding Unsatisfiable Cores of a Set of Polynomials using the Gröbner Basis Algorithm Xiaojun Sun 1, Irina Ilioaea 2, Priyank Kalla 1, and Florian Enescu 2 1 Electrical and Computer Engineering, University

More information

GRÖBNER BASES AND POLYNOMIAL EQUATIONS. 1. Introduction and preliminaries on Gróbner bases

GRÖBNER BASES AND POLYNOMIAL EQUATIONS. 1. Introduction and preliminaries on Gróbner bases GRÖBNER BASES AND POLYNOMIAL EQUATIONS J. K. VERMA 1. Introduction and preliminaries on Gróbner bases Let S = k[x 1, x 2,..., x n ] denote a polynomial ring over a field k where x 1, x 2,..., x n are indeterminates.

More information

Chapter 4 Mathematics of Cryptography

Chapter 4 Mathematics of Cryptography Chapter 4 Mathematics of Cryptography Part II: Algebraic Structures Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4.1 Chapter 4 Objectives To review the concept

More information

PARALLEL MULTIPLICATION IN F 2

PARALLEL MULTIPLICATION IN F 2 PARALLEL MULTIPLICATION IN F 2 n USING CONDENSED MATRIX REPRESENTATION Christophe Negre Équipe DALI, LP2A, Université de Perpignan avenue P Alduy, 66 000 Perpignan, France christophenegre@univ-perpfr Keywords:

More information

POLYNOMIAL DIVISION AND GRÖBNER BASES. Samira Zeada

POLYNOMIAL DIVISION AND GRÖBNER BASES. Samira Zeada THE TEACHING OF MATHEMATICS 2013, Vol. XVI, 1, pp. 22 28 POLYNOMIAL DIVISION AND GRÖBNER BASES Samira Zeada Abstract. Division in the ring of multivariate polynomials is usually not a part of the standard

More information

A Polynomial Description of the Rijndael Advanced Encryption Standard

A Polynomial Description of the Rijndael Advanced Encryption Standard A Polynomial Description of the Rijndael Advanced Encryption Standard arxiv:cs/0205002v1 [cs.cr] 2 May 2002 Joachim Rosenthal Department of Mathematics University of Notre Dame Notre Dame, Indiana 46556,

More information

Combining Symbolic Computer Algebra and Boolean Satisfiability for Automatic Debugging and Fixing of Complex Multipliers

Combining Symbolic Computer Algebra and Boolean Satisfiability for Automatic Debugging and Fixing of Complex Multipliers Combining Symbolic Computer Algebra and Boolean Satisfiability for Automatic Debugging and Fixing of Complex Multipliers Alireza Mahzoon 1 Daniel Große 1,2 Rolf Drechsler 1,2 1 Faculty of Mathematics and

More information

Lecture 1. (i,j) N 2 kx i y j, and this makes k[x, y]

Lecture 1. (i,j) N 2 kx i y j, and this makes k[x, y] Lecture 1 1. Polynomial Rings, Gröbner Bases Definition 1.1. Let R be a ring, G an abelian semigroup, and R = i G R i a direct sum decomposition of abelian groups. R is graded (G-graded) if R i R j R i+j

More information

MCS 563 Spring 2014 Analytic Symbolic Computation Friday 31 January. Quotient Rings

MCS 563 Spring 2014 Analytic Symbolic Computation Friday 31 January. Quotient Rings Quotient Rings In this note we consider again ideals, but here we do not start from polynomials, but from a finite set of points. The application in statistics and the pseudo code of the Buchberger-Möller

More information

Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals. Masayuki Noro. Toru Aoyama

Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals. Masayuki Noro. Toru Aoyama Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals Toru Aoyama Kobe University Department of Mathematics Graduate school of Science Rikkyo University Department

More information

Fields in Cryptography. Çetin Kaya Koç Winter / 30

Fields in Cryptography.   Çetin Kaya Koç Winter / 30 Fields in Cryptography http://koclab.org Çetin Kaya Koç Winter 2017 1 / 30 Field Axioms Fields in Cryptography A field F consists of a set S and two operations which we will call addition and multiplication,

More information

New Gröbner Bases for formal verification and cryptography

New Gröbner Bases for formal verification and cryptography New Gröbner Bases for formal verification and cryptography Gert-Martin Greuel Diamant/Eidma Symposium November 29th - November 30th November 29th, 2007 Introduction Focus of this talk New developements

More information

A new class of irreducible pentanomials for polynomial based multipliers in binary fields

A new class of irreducible pentanomials for polynomial based multipliers in binary fields Noname manuscript No. (will be inserted by the editor) A new class of irreducible pentanomials for polynomial based multipliers in binary fields Gustavo Banegas Ricardo Custódio Daniel Panario the date

More information

Lecture 15: Algebraic Geometry II

Lecture 15: Algebraic Geometry II 6.859/15.083 Integer Programming and Combinatorial Optimization Fall 009 Today... Ideals in k[x] Properties of Gröbner bases Buchberger s algorithm Elimination theory The Weak Nullstellensatz 0/1-Integer

More information

Standard Bases for Linear Codes over Prime Fields

Standard Bases for Linear Codes over Prime Fields Standard Bases for Linear Codes over Prime Fields arxiv:1708.05490v1 cs.it] 18 Aug 2017 Jean Jacques Ferdinand RANDRIAMIARAMPANAHY 1 e-mail : randriamiferdinand@gmail.com Harinaivo ANDRIATAHINY 2 e-mail

More information

Low complexity bit-parallel GF (2 m ) multiplier for all-one polynomials

Low complexity bit-parallel GF (2 m ) multiplier for all-one polynomials Low complexity bit-parallel GF (2 m ) multiplier for all-one polynomials Yin Li 1, Gong-liang Chen 2, and Xiao-ning Xie 1 Xinyang local taxation bureau, Henan, China. Email:yunfeiyangli@gmail.com, 2 School

More information

From Gauss. to Gröbner Bases. John Perry. The University of Southern Mississippi. From Gauss to Gröbner Bases p.

From Gauss. to Gröbner Bases. John Perry. The University of Southern Mississippi. From Gauss to Gröbner Bases p. From Gauss to Gröbner Bases p. From Gauss to Gröbner Bases John Perry The University of Southern Mississippi From Gauss to Gröbner Bases p. Overview Questions: Common zeroes? Tool: Gaussian elimination

More information

Functional Verification of Arithmetic Circuits using Linear Algebra Methods

Functional Verification of Arithmetic Circuits using Linear Algebra Methods University of Massachusetts Amherst ScholarWorks@UMass Amherst Masters Theses 1911 - February 2014 2011 Functional Verification of Arithmetic Circuits using Linear Algebra Methods Mohamed Basith Abdul

More information

MCS 563 Spring 2014 Analytic Symbolic Computation Monday 27 January. Gröbner bases

MCS 563 Spring 2014 Analytic Symbolic Computation Monday 27 January. Gröbner bases Gröbner bases In this lecture we introduce Buchberger s algorithm to compute a Gröbner basis for an ideal, following [2]. We sketch an application in filter design. Showing the termination of Buchberger

More information

On the relation of the Mutant strategy and the Normal Selection strategy

On the relation of the Mutant strategy and the Normal Selection strategy On the relation of the Mutant strategy and the Normal Selection strategy Martin Albrecht 1 Carlos Cid 2 Jean-Charles Faugère 1 Ludovic Perret 1 1 SALSA Project -INRIA, UPMC, Univ Paris 06 2 Information

More information

On Implementing the Symbolic Preprocessing Function over Boolean Polynomial Rings in Gröbner Basis Algorithms Using Linear Algebra

On Implementing the Symbolic Preprocessing Function over Boolean Polynomial Rings in Gröbner Basis Algorithms Using Linear Algebra On Implementing the Symbolic Preprocessing Function over Boolean Polynomial Rings in Gröbner Basis Algorithms Using Linear Algebra Yao Sun a, Zhenyu Huang a, Dongdai Lin a, Dingkang Wang b a SKLOIS, Institute

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

Montgomery Multiplier and Squarer in GF(2 m )

Montgomery Multiplier and Squarer in GF(2 m ) Montgomery Multiplier and Squarer in GF( m ) Huapeng Wu The Centre for Applied Cryptographic Research Department of Combinatorics and Optimization University of Waterloo, Waterloo, Canada h3wu@cacrmathuwaterlooca

More information

Problem Set 1 Solutions

Problem Set 1 Solutions Math 918 The Power of Monomial Ideals Problem Set 1 Solutions Due: Tuesday, February 16 (1) Let S = k[x 1,..., x n ] where k is a field. Fix a monomial order > σ on Z n 0. (a) Show that multideg(fg) =

More information

4 Hilbert s Basis Theorem and Gröbner basis

4 Hilbert s Basis Theorem and Gröbner basis 4 Hilbert s Basis Theorem and Gröbner basis We define Gröbner bases of ideals in multivariate polynomial rings and see how they work in tandem with the division algorithm. We look again at the standard

More information

AN IMPROVED LOW LATENCY SYSTOLIC STRUCTURED GALOIS FIELD MULTIPLIER

AN IMPROVED LOW LATENCY SYSTOLIC STRUCTURED GALOIS FIELD MULTIPLIER Indian Journal of Electronics and Electrical Engineering (IJEEE) Vol.2.No.1 2014pp1-6 available at: www.goniv.com Paper Received :05-03-2014 Paper Published:28-03-2014 Paper Reviewed by: 1. John Arhter

More information

Abstract Algebra for Polynomial Operations. Maya Mohsin Ahmed

Abstract Algebra for Polynomial Operations. Maya Mohsin Ahmed Abstract Algebra for Polynomial Operations Maya Mohsin Ahmed c Maya Mohsin Ahmed 2009 ALL RIGHTS RESERVED To my students As we express our gratitude, we must never forget that the highest appreciation

More information

GF(2 m ) arithmetic: summary

GF(2 m ) arithmetic: summary GF(2 m ) arithmetic: summary EE 387, Notes 18, Handout #32 Addition/subtraction: bitwise XOR (m gates/ops) Multiplication: bit serial (shift and add) bit parallel (combinational) subfield representation

More information

Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach

Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach M A Hasan 1 and C Negre 2 1 ECE Department and CACR, University of Waterloo, Ontario, Canada 2 Team

More information

A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER. Jesus Garcia and Michael J. Schulte

A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER. Jesus Garcia and Michael J. Schulte A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER Jesus Garcia and Michael J. Schulte Lehigh University Department of Computer Science and Engineering Bethlehem, PA 15 ABSTRACT Galois field arithmetic

More information

Polynomials, Ideals, and Gröbner Bases

Polynomials, Ideals, and Gröbner Bases Polynomials, Ideals, and Gröbner Bases Notes by Bernd Sturmfels for the lecture on April 10, 2018, in the IMPRS Ringvorlesung Introduction to Nonlinear Algebra We fix a field K. Some examples of fields

More information

Sparse Polynomial Multiplication and Division in Maple 14

Sparse Polynomial Multiplication and Division in Maple 14 Sparse Polynomial Multiplication and Division in Maple 4 Michael Monagan and Roman Pearce Department of Mathematics, Simon Fraser University Burnaby B.C. V5A S6, Canada October 5, 9 Abstract We report

More information

ECEN 5022 Cryptography

ECEN 5022 Cryptography Elementary Algebra and Number Theory University of Colorado Spring 2008 Divisibility, Primes Definition. N denotes the set {1, 2, 3,...} of natural numbers and Z denotes the set of integers {..., 2, 1,

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

Groebner Bases and Applications

Groebner Bases and Applications Groebner Bases and Applications Robert Hines December 16, 2014 1 Groebner Bases In this section we define Groebner Bases and discuss some of their basic properties, following the exposition in chapter

More information

Modular Multiplication in GF (p k ) using Lagrange Representation

Modular Multiplication in GF (p k ) using Lagrange Representation Modular Multiplication in GF (p k ) using Lagrange Representation Jean-Claude Bajard, Laurent Imbert, and Christophe Nègre Laboratoire d Informatique, de Robotique et de Microélectronique de Montpellier

More information

ABSTRACT. Department of Mathematics. interesting results. A graph on n vertices is represented by a polynomial in n

ABSTRACT. Department of Mathematics. interesting results. A graph on n vertices is represented by a polynomial in n ABSTRACT Title of Thesis: GRÖBNER BASES WITH APPLICATIONS IN GRAPH THEORY Degree candidate: Angela M. Hennessy Degree and year: Master of Arts, 2006 Thesis directed by: Professor Lawrence C. Washington

More information

Efficient Digit-Serial Normal Basis Multipliers over Binary Extension Fields

Efficient Digit-Serial Normal Basis Multipliers over Binary Extension Fields Efficient Digit-Serial Normal Basis Multipliers over Binary Extension Fields ARASH REYHANI-MASOLEH and M. ANWAR HASAN University of Waterloo In this article, two digit-serial architectures for normal basis

More information

A New Bit-Serial Architecture for Field Multiplication Using Polynomial Bases

A New Bit-Serial Architecture for Field Multiplication Using Polynomial Bases A New Bit-Serial Architecture for Field Multiplication Using Polynomial Bases Arash Reyhani-Masoleh Department of Electrical and Computer Engineering The University of Western Ontario London, Ontario,

More information

M3P23, M4P23, M5P23: COMPUTATIONAL ALGEBRA & GEOMETRY REVISION SOLUTIONS

M3P23, M4P23, M5P23: COMPUTATIONAL ALGEBRA & GEOMETRY REVISION SOLUTIONS M3P23, M4P23, M5P23: COMPUTATIONAL ALGEBRA & GEOMETRY REVISION SOLUTIONS (1) (a) Fix a monomial order. A finite subset G = {g 1,..., g m } of an ideal I k[x 1,..., x n ] is called a Gröbner basis if (LT(g

More information

Subquadratic Computational Complexity Schemes for Extended Binary Field Multiplication Using Optimal Normal Bases

Subquadratic Computational Complexity Schemes for Extended Binary Field Multiplication Using Optimal Normal Bases 1 Subquadratic Computational Complexity Schemes for Extended Binary Field Multiplication Using Optimal Normal Bases H. Fan and M. A. Hasan March 31, 2007 Abstract Based on a recently proposed Toeplitz

More information

Journal of Symbolic Computation. The Gröbner basis of the ideal of vanishing polynomials

Journal of Symbolic Computation. The Gröbner basis of the ideal of vanishing polynomials Journal of Symbolic Computation 46 (2011) 561 570 Contents lists available at ScienceDirect Journal of Symbolic Computation journal homepage: www.elsevier.com/locate/jsc The Gröbner basis of the ideal

More information

10. Smooth Varieties. 82 Andreas Gathmann

10. Smooth Varieties. 82 Andreas Gathmann 82 Andreas Gathmann 10. Smooth Varieties Let a be a point on a variety X. In the last chapter we have introduced the tangent cone C a X as a way to study X locally around a (see Construction 9.20). It

More information

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a

More information

Introduction to Modern Cryptography. (1) Finite Groups, Rings and Fields. (2) AES - Advanced Encryption Standard

Introduction to Modern Cryptography. (1) Finite Groups, Rings and Fields. (2) AES - Advanced Encryption Standard Introduction to Modern Cryptography Lecture 3 (1) Finite Groups, Rings and Fields (2) AES - Advanced Encryption Standard +,0, and -a are only notations! Review - Groups Def (group): A set G with a binary

More information

FPGA accelerated multipliers over binary composite fields constructed via low hamming weight irreducible polynomials

FPGA accelerated multipliers over binary composite fields constructed via low hamming weight irreducible polynomials FPGA accelerated multipliers over binary composite fields constructed via low hamming weight irreducible polynomials C. Shu, S. Kwon and K. Gaj Abstract: The efficient design of digit-serial multipliers

More information

Elliptic Curves I. The first three sections introduce and explain the properties of elliptic curves.

Elliptic Curves I. The first three sections introduce and explain the properties of elliptic curves. Elliptic Curves I 1.0 Introduction The first three sections introduce and explain the properties of elliptic curves. A background understanding of abstract algebra is required, much of which can be found

More information

Chapter 4 Finite Fields

Chapter 4 Finite Fields Chapter 4 Finite Fields Introduction will now introduce finite fields of increasing importance in cryptography AES, Elliptic Curve, IDEA, Public Key concern operations on numbers what constitutes a number

More information

Reducing the Complexity of Normal Basis Multiplication

Reducing the Complexity of Normal Basis Multiplication Reducing the Complexity of Normal Basis Multiplication Ömer Eǧecioǧlu and Çetin Kaya Koç Department of Computer Science University of California Santa Barbara {omer,koc}@cs.ucsb.edu Abstract In this paper

More information

arxiv: v1 [math.ag] 13 Oct 2010

arxiv: v1 [math.ag] 13 Oct 2010 arxiv:1010.2669v1 [math.ag] 13 Oct 2010 Fast Gröbner Basis Computation for Boolean Polynomials Franziska Hinkelmann a,b September 24, 2018 Elizabeth Arnold c a Department of Mathematics, Virginia Polytechnic

More information

Möller s Algorithm. the algorithm developed in [14] was improved in [18] and applied in order to solve the FGLM-problem;

Möller s Algorithm. the algorithm developed in [14] was improved in [18] and applied in order to solve the FGLM-problem; Möller s Algorithm Teo Mora (theomora@disi.unige.it) Duality was introduced in Commutative Algebra in 1982 by the seminal paper [14] but the relevance of this result became clear after the same duality

More information

Test Generation for Designs with Multiple Clocks

Test Generation for Designs with Multiple Clocks 39.1 Test Generation for Designs with Multiple Clocks Xijiang Lin and Rob Thompson Mentor Graphics Corp. 8005 SW Boeckman Rd. Wilsonville, OR 97070 Abstract To improve the system performance, designs with

More information

Determining Appropriate Precisions for Signals in Fixed-Point IIR Filters

Determining Appropriate Precisions for Signals in Fixed-Point IIR Filters 38.3 Determining Appropriate Precisions for Signals in Fixed-Point IIR Filters Joan Carletta Akron, OH 4435-3904 + 330 97-5993 Robert Veillette Akron, OH 4435-3904 + 330 97-5403 Frederick Krach Akron,

More information

Counting Zeros over Finite Fields with Gröbner Bases

Counting Zeros over Finite Fields with Gröbner Bases Counting Zeros over Finite Fields with Gröbner Bases Sicun Gao May 17, 2009 Contents 1 Introduction 2 2 Finite Fields, Nullstellensatz and Gröbner Bases 5 2.1 Ideals, Varieties and Finite Fields........................

More information

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT 1 Algebraic Methods In an algebraic system Boolean constraints are expressed as a system of algebraic equations or inequalities which has a solution if and only if the constraints are satisfiable. Equations

More information

On the Number of Trace-One Elements in Polynomial Bases for F 2

On the Number of Trace-One Elements in Polynomial Bases for F 2 On the Number of Trace-One Elements in Polynomial Bases for F 2 n Omran Ahmadi and Alfred Menezes Department of Combinatorics & Optimization University of Waterloo, Canada {oahmadid,ajmeneze}@uwaterloo.ca

More information

A Practical Polynomial Calculus for Arithmetic Circuit Verification

A Practical Polynomial Calculus for Arithmetic Circuit Verification A Practical Polynomial Calculus for Arithmetic Circuit Verification Daniela Ritirc, Armin Biere, Manuel Kauers Johannes Kepler University, Linz, Austria Abstract. Generating and automatically checking

More information

Gröbner Bases. eliminating the leading term Buchberger s criterion and algorithm. construct wavelet filters

Gröbner Bases. eliminating the leading term Buchberger s criterion and algorithm. construct wavelet filters Gröbner Bases 1 S-polynomials eliminating the leading term Buchberger s criterion and algorithm 2 Wavelet Design construct wavelet filters 3 Proof of the Buchberger Criterion two lemmas proof of the Buchberger

More information

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties:

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: Byte multiplication 1 Field arithmetic A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: F is an abelian group under addition, meaning - F is closed under

More information

Summer Project. August 10, 2001

Summer Project. August 10, 2001 Summer Project Bhavana Nancherla David Drescher August 10, 2001 Over the summer we embarked on a brief introduction to various concepts in algebraic geometry. We used the text Ideals, Varieties, and Algorithms,

More information

Characterizations on Algebraic Immunity for Multi-Output Boolean Functions

Characterizations on Algebraic Immunity for Multi-Output Boolean Functions Characterizations on Algebraic Immunity for Multi-Output Boolean Functions Xiao Zhong 1, and Mingsheng Wang 3 1. Institute of Software, Chinese Academy of Sciences, Beijing 100190, China. Graduate School

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

Galois fields/1. (M3) There is an element 1 (not equal to 0) such that a 1 = a for all a.

Galois fields/1. (M3) There is an element 1 (not equal to 0) such that a 1 = a for all a. Galois fields 1 Fields A field is an algebraic structure in which the operations of addition, subtraction, multiplication, and division (except by zero) can be performed, and satisfy the usual rules. More

More information

Gröbner Bases over a Dual Valuation Domain

Gröbner Bases over a Dual Valuation Domain International Journal of Algebra, Vol. 7, 2013, no. 11, 539-548 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ija.2013.3550 Gröbner Bases over a Dual Valuation Domain André Saint Eudes Mialébama

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Logic Circuits Design Seminars WS2010/2011, Lecture 2 Ing. Petr Fišer, Ph.D. Department of Digital Design Faculty of Information Technology Czech Technical University in Prague

More information

1 xa 2. 2 xan n. + c 2 x α 2

1 xa 2. 2 xan n. + c 2 x α 2 Operations Research Seminar: Gröbner Bases and Integer Programming Speaker: Adam Van Tuyl Introduction In this talk I will discuss how to use some of the tools of commutative algebra and algebraic geometry

More information

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES 2018 57 5. p-adic Numbers 5.1. Motivating examples. We all know that 2 is irrational, so that 2 is not a square in the rational field Q, but that we can

More information

Section III.6. Factorization in Polynomial Rings

Section III.6. Factorization in Polynomial Rings III.6. Factorization in Polynomial Rings 1 Section III.6. Factorization in Polynomial Rings Note. We push several of the results in Section III.3 (such as divisibility, irreducibility, and unique factorization)

More information

1 Rings 1 RINGS 1. Theorem 1.1 (Substitution Principle). Let ϕ : R R be a ring homomorphism

1 Rings 1 RINGS 1. Theorem 1.1 (Substitution Principle). Let ϕ : R R be a ring homomorphism 1 RINGS 1 1 Rings Theorem 1.1 (Substitution Principle). Let ϕ : R R be a ring homomorphism (a) Given an element α R there is a unique homomorphism Φ : R[x] R which agrees with the map ϕ on constant polynomials

More information

Revisiting Finite Field Multiplication Using Dickson Bases

Revisiting Finite Field Multiplication Using Dickson Bases Revisiting Finite Field Multiplication Using Dickson Bases Bijan Ansari and M. Anwar Hasan Department of Electrical and Computer Engineering University of Waterloo, Waterloo, Ontario, Canada {bansari,

More information

New Bit-Level Serial GF (2 m ) Multiplication Using Polynomial Basis

New Bit-Level Serial GF (2 m ) Multiplication Using Polynomial Basis 2015 IEEE 22nd Symposium on Computer Arithmetic New Bit-Level Serial GF 2 m ) Multiplication Using Polynomial Basis Hayssam El-Razouk and Arash Reyhani-Masoleh Department of Electrical and Computer Engineering

More information

Algebraic Varieties. Notes by Mateusz Micha lek for the lecture on April 17, 2018, in the IMPRS Ringvorlesung Introduction to Nonlinear Algebra

Algebraic Varieties. Notes by Mateusz Micha lek for the lecture on April 17, 2018, in the IMPRS Ringvorlesung Introduction to Nonlinear Algebra Algebraic Varieties Notes by Mateusz Micha lek for the lecture on April 17, 2018, in the IMPRS Ringvorlesung Introduction to Nonlinear Algebra Algebraic varieties represent solutions of a system of polynomial

More information

Polynomial multiplication and division using heap.

Polynomial multiplication and division using heap. Polynomial multiplication and division using heap. Michael Monagan and Roman Pearce Department of Mathematics, Simon Fraser University. Abstract We report on new code for sparse multivariate polynomial

More information

FOR GRASSMAN ALGEBRAS IN A MAPLE PACKAGE MR. TROY BRACHEY. Tennessee Tech University OCTOBER No

FOR GRASSMAN ALGEBRAS IN A MAPLE PACKAGE MR. TROY BRACHEY. Tennessee Tech University OCTOBER No DEPARTMENT OF MATHEMATICS TECHNICAL REPORT GRÖBNER BASIS ALGORITHMS FOR GRASSMAN ALGEBRAS IN A MAPLE PACKAGE MR. TROY BRACHEY Tennessee Tech University OCTOBER 2008 No. 2008-1 TENNESSEE TECHNOLOGICAL UNIVERSITY

More information

Decomposing Bent Functions

Decomposing Bent Functions 2004 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 49, NO. 8, AUGUST 2003 Decomposing Bent Functions Anne Canteaut and Pascale Charpin Abstract In a recent paper [1], it is shown that the restrictions

More information

Integer Least Squares: Sphere Decoding and the LLL Algorithm

Integer Least Squares: Sphere Decoding and the LLL Algorithm Integer Least Squares: Sphere Decoding and the LLL Algorithm Sanzheng Qiao Department of Computing and Software McMaster University 28 Main St. West Hamilton Ontario L8S 4L7 Canada. ABSTRACT This paper

More information

Gurgen Khachatrian Martun Karapetyan

Gurgen Khachatrian Martun Karapetyan 34 International Journal Information Theories and Applications, Vol. 23, Number 1, (c) 2016 On a public key encryption algorithm based on Permutation Polynomials and performance analyses Gurgen Khachatrian

More information

CHAPTER 0 PRELIMINARY MATERIAL. Paul Vojta. University of California, Berkeley. 18 February 1998

CHAPTER 0 PRELIMINARY MATERIAL. Paul Vojta. University of California, Berkeley. 18 February 1998 CHAPTER 0 PRELIMINARY MATERIAL Paul Vojta University of California, Berkeley 18 February 1998 This chapter gives some preliminary material on number theory and algebraic geometry. Section 1 gives basic

More information

Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations

Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 9.1 Chapter 9 Objectives

More information

Basing Decisions on Sentences in Decision Diagrams

Basing Decisions on Sentences in Decision Diagrams Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence Basing Decisions on Sentences in Decision Diagrams Yexiang Xue Department of Computer Science Cornell University yexiang@cs.cornell.edu

More information

SOLVING VIA MODULAR METHODS

SOLVING VIA MODULAR METHODS SOLVING VIA MODULAR METHODS DEEBA AFZAL, FAIRA KANWAL, GERHARD PFISTER, AND STEFAN STEIDEL Abstract. In this article we present a parallel modular algorithm to compute all solutions with multiplicities

More information

A New Algorithm to Compute Terms in Special Types of Characteristic Sequences

A New Algorithm to Compute Terms in Special Types of Characteristic Sequences A New Algorithm to Compute Terms in Special Types of Characteristic Sequences Kenneth J. Giuliani 1 and Guang Gong 2 1 Dept. of Mathematical and Computational Sciences University of Toronto at Mississauga

More information

Security Level of Cryptography Integer Factoring Problem (Factoring N = p 2 q) December Summary 2

Security Level of Cryptography Integer Factoring Problem (Factoring N = p 2 q) December Summary 2 Security Level of Cryptography Integer Factoring Problem (Factoring N = p 2 ) December 2001 Contents Summary 2 Detailed Evaluation 3 1 The Elliptic Curve Method 3 1.1 The ECM applied to N = p d............................

More information

ALGORITHMS FOR ALGEBRAIC CURVES

ALGORITHMS FOR ALGEBRAIC CURVES ALGORITHMS FOR ALGEBRAIC CURVES SUMMARY OF LECTURE 7 I consider the problem of computing in Pic 0 (X) where X is a curve (absolutely integral, projective, smooth) over a field K. Typically K is a finite

More information

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA (CONT.)

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA (CONT.) DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA (CONT.) 1 Learning Objectives 1. Apply the laws and theorems of Boolean algebra to to the manipulation of algebraic expressions to simplifying an expression, finding

More information

ECEN 5682 Theory and Practice of Error Control Codes

ECEN 5682 Theory and Practice of Error Control Codes ECEN 5682 Theory and Practice of Error Control Codes Introduction to Algebra University of Colorado Spring 2007 Motivation and For convolutional codes it was convenient to express the datawords and the

More information

Algebraic Cryptanalysis of MQQ Public Key Cryptosystem by MutantXL

Algebraic Cryptanalysis of MQQ Public Key Cryptosystem by MutantXL Algebraic Cryptanalysis of MQQ Public Key Cryptosystem by MutantXL Mohamed Saied Emam Mohamed 1, Jintai Ding 2, and Johannes Buchmann 1 1 TU Darmstadt, FB Informatik Hochschulstrasse 10, 64289 Darmstadt,

More information

Some Results on the Arithmetic Correlation of Sequences

Some Results on the Arithmetic Correlation of Sequences Some Results on the Arithmetic Correlation of Sequences Mark Goresky Andrew Klapper Abstract In this paper we study various properties of arithmetic correlations of sequences. Arithmetic correlations are

More information

On Permutation Polynomials over Local Finite Commutative Rings

On Permutation Polynomials over Local Finite Commutative Rings International Journal of Algebra, Vol. 12, 2018, no. 7, 285-295 HIKARI Ltd, www.m-hikari.com https://doi.org/10.12988/ija.2018.8935 On Permutation Polynomials over Local Finite Commutative Rings Javier

More information

On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic

On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic Irith Pomeranz 1 and Sudhakar M. Reddy 2 School of Electrical & Computer Eng.

More information

LECTURE 5, FRIDAY

LECTURE 5, FRIDAY LECTURE 5, FRIDAY 20.02.04 FRANZ LEMMERMEYER Before we start with the arithmetic of elliptic curves, let us talk a little bit about multiplicities, tangents, and singular points. 1. Tangents How do we

More information