The carry-less product of two binary numbers is the result of carry-less multiplication of these numbers. This operation conceptually works like long multiplication except for the fact that the carry is discarded instead of applied to the more significant position. It can be used to model operations over finite fields, in particular multiplication of polynomials from GF(2)[X], the polynomial ring over GF(2).
Given two numbers and , with denoting the bits of these numbers. Then the carry-less product of these two numbers is defined to be , with each bit computed as the exclusive or of products of bits from the input numbers as follows: