Skip to content

Add bloq for Binary Polynomial Multiplication - #1554

Merged
NoureldinYosri merged 25 commits into
quantumlib:mainfrom
NoureldinYosri:gf2_full_mul
Feb 14, 2025
Merged

NoureldinYosri merged 25 commits into
quantumlib:mainfrom
NoureldinYosri:gf2_full_mul

Conversation

@NoureldinYosri

@NoureldinYosri NoureldinYosri commented Feb 14, 2025

Copy link
Copy Markdown
Contributor

The bloqs BinaryPolynomialMultiplication and MultiplyPolyByOnePlusXk implement karatsuba's algorithm for binary polynomial multiplication with toffoli count of $n^{\log_2{3}}$. The construction of each recursively calls the other.

These two bloqs are algorithms 3 and 2 from https://arxiv.org/pdf/1910.02849v2 respectively.

In a final PR, I will implement algorithm 4 which implements galois multiplication in GF($2^n$) $\mod m(x)$ where $m(x)$ is an irreducible binary polynomial.

@NoureldinYosri NoureldinYosri changed the title Add bloq for Binary Polyonomial Multiplication Add bloq for Binary Polynomial Multiplication Feb 14, 2025
@NoureldinYosri
NoureldinYosri enabled auto-merge (squash) February 14, 2025 19:17
@NoureldinYosri
NoureldinYosri merged commit 25d9369 into quantumlib:main Feb 14, 2025
NoureldinYosri added a commit that referenced this pull request Mar 31, 2025
This is the final PR in the series #1554, #1533, and #1516. These PRs implemented the GF($2^n$) multiplication construction from https://arxiv.org/abs/1910.02849v2 which has a toffoli complexity of $n^{\log_2{3}}$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants