\hypertarget{multieval_8h}{}\doxysection{/home/steaky/git/\+CRS/src/\+Polynomials/multieval.h File Reference} \label{multieval_8h}\index{/home/steaky/git/CRS/src/Polynomials/multieval.h@{/home/steaky/git/CRS/src/Polynomials/multieval.h}} {\ttfamily \#include $<$gmp.\+h$>$}\newline {\ttfamily \#include $<$flint/fmpz.\+h$>$}\newline {\ttfamily \#include $<$flint/fq.\+h$>$}\newline {\ttfamily \#include $<$flint/fq\+\_\+poly.\+h$>$}\newline {\ttfamily \#include \char`\"{}binary\+\_\+trees.\+h\char`\"{}}\newline \doxysubsection*{Functions} \begin{DoxyCompactItemize} \item void \mbox{\hyperlink{multieval_8h_a2ebc27408dca597f79fe56bcdced0408}{remainder\+Cell}} (\mbox{\hyperlink{structfq__poly__bcell__t}{fq\+\_\+poly\+\_\+bcell\+\_\+t}} $\ast$, fq\+\_\+t $\ast$, uint, uint, const fq\+\_\+ctx\+\_\+t $\ast$) \item void \mbox{\hyperlink{multieval_8h_a5360e6b2ff69747bf4bee5b19c9436d5}{remainder\+Tree}} (\mbox{\hyperlink{structfq__poly__btree__t}{fq\+\_\+poly\+\_\+btree\+\_\+t}} $\ast$, fq\+\_\+t $\ast$, uint, const fq\+\_\+ctx\+\_\+t $\ast$) \item \mbox{\Hypertarget{multieval_8h_ab6f77578d3e1c0df749f764cf6d73f49}\label{multieval_8h_ab6f77578d3e1c0df749f764cf6d73f49}} void {\bfseries fq\+\_\+poly\+\_\+multieval} (fq\+\_\+t $\ast$, fq\+\_\+t $\ast$, fq\+\_\+poly\+\_\+t, uint, const fq\+\_\+ctx\+\_\+t $\ast$) \end{DoxyCompactItemize} \doxysubsection{Function Documentation} \mbox{\Hypertarget{multieval_8h_a2ebc27408dca597f79fe56bcdced0408}\label{multieval_8h_a2ebc27408dca597f79fe56bcdced0408}} \index{multieval.h@{multieval.h}!remainderCell@{remainderCell}} \index{remainderCell@{remainderCell}!multieval.h@{multieval.h}} \doxysubsubsection{\texorpdfstring{remainderCell()}{remainderCell()}} {\footnotesize\ttfamily void remainder\+Cell (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structfq__poly__bcell__t}{fq\+\_\+poly\+\_\+bcell\+\_\+t}} $\ast$}]{rop, }\item[{fq\+\_\+t $\ast$}]{roots, }\item[{uint}]{offset\+\_\+start, }\item[{uint}]{offset\+\_\+end, }\item[{const fq\+\_\+ctx\+\_\+t $\ast$}]{F }\end{DoxyParamCaption})} Build a remainder tree from a fq\+\_\+t roots array. This is supposed to be wrapped by the remainder\+Tree function. The offset is used to slice the array (represent the position of element 0). This function is not responsible for the handling of the memory associated with the bcells. \mbox{\Hypertarget{multieval_8h_a5360e6b2ff69747bf4bee5b19c9436d5}\label{multieval_8h_a5360e6b2ff69747bf4bee5b19c9436d5}} \index{multieval.h@{multieval.h}!remainderTree@{remainderTree}} \index{remainderTree@{remainderTree}!multieval.h@{multieval.h}} \doxysubsubsection{\texorpdfstring{remainderTree()}{remainderTree()}} {\footnotesize\ttfamily void remainder\+Tree (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structfq__poly__btree__t}{fq\+\_\+poly\+\_\+btree\+\_\+t}} $\ast$}]{T, }\item[{fq\+\_\+t $\ast$}]{roots, }\item[{uint}]{len, }\item[{const fq\+\_\+ctx\+\_\+t $\ast$}]{F }\end{DoxyParamCaption})} See remainder\+Cell. T should be initialized.