📄 class_polynomial_mod2.html
字号:
<tr><td class="mdescLeft"> </td><td class="mdescRight">return the n-th bit, n=0 being the least significant bit <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7a24a5ec904f384e4285d133dbe07757"></a><!-- doxytag: member="PolynomialMod2::GetByte" ref="7a24a5ec904f384e4285d133dbe07757" args="(size_t n) const" -->byte </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#7a24a5ec904f384e4285d133dbe07757">GetByte</a> (size_t n) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">return the n-th byte <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d0e58a23b81b33ab3ccf9b7aa498603"></a><!-- doxytag: member="PolynomialMod2::Degree" ref="2d0e58a23b81b33ab3ccf9b7aa498603" args="() const" -->signed int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#2d0e58a23b81b33ab3ccf9b7aa498603">Degree</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">the zero polynomial will return a degree of -1 <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="92653519c01aa965f80a24d6952bc34e"></a><!-- doxytag: member="PolynomialMod2::CoefficientCount" ref="92653519c01aa965f80a24d6952bc34e" args="() const" -->unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#92653519c01aa965f80a24d6952bc34e">CoefficientCount</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">degree + 1 <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6e946183e623ed1303a43c2b84b6a1f"></a><!-- doxytag: member="PolynomialMod2::GetCoefficient" ref="f6e946183e623ed1303a43c2b84b6a1f" args="(size_t i) const" -->int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#f6e946183e623ed1303a43c2b84b6a1f">GetCoefficient</a> (size_t i) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">return coefficient for x^i <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bfbd3eee725068a94239e7581b43fe45"></a><!-- doxytag: member="PolynomialMod2::operator[]" ref="bfbd3eee725068a94239e7581b43fe45" args="(unsigned int i) const " -->int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#bfbd3eee725068a94239e7581b43fe45">operator[]</a> (unsigned int i) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">return coefficient for x^i <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91d774c1b3a0b936317265dbf7e5ad75"></a><!-- doxytag: member="PolynomialMod2::IsZero" ref="91d774c1b3a0b936317265dbf7e5ad75" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#91d774c1b3a0b936317265dbf7e5ad75">IsZero</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5a798b2c21aa6d39ec33ff8b490e5078"></a><!-- doxytag: member="PolynomialMod2::Equals" ref="5a798b2c21aa6d39ec33ff8b490e5078" args="(const PolynomialMod2 &rhs) const " -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#5a798b2c21aa6d39ec33ff8b490e5078">Equals</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &rhs) const </td></tr><tr><td colspan="2"><br><h2>MANIPULATORS</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb7a27cfd427af99b60e67503db0b6d6"></a><!-- doxytag: member="PolynomialMod2::operator=" ref="cb7a27cfd427af99b60e67503db0b6d6" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#cb7a27cfd427af99b60e67503db0b6d6">operator=</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="88120a815448db5f5e491e31e9bdc91d"></a><!-- doxytag: member="PolynomialMod2::operator &=" ref="88120a815448db5f5e491e31e9bdc91d" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><b>operator &=</b> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="46d95294f13b9b537868389d741b41a8"></a><!-- doxytag: member="PolynomialMod2::operator^=" ref="46d95294f13b9b537868389d741b41a8" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#46d95294f13b9b537868389d741b41a8">operator^=</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="074e88a48db114f9f2e7ca859401c24d"></a><!-- doxytag: member="PolynomialMod2::operator+=" ref="074e88a48db114f9f2e7ca859401c24d" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#074e88a48db114f9f2e7ca859401c24d">operator+=</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4e227e47fe190e2964f7ae00aa495ee"></a><!-- doxytag: member="PolynomialMod2::operator-=" ref="a4e227e47fe190e2964f7ae00aa495ee" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#a4e227e47fe190e2964f7ae00aa495ee">operator-=</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70d9f9c5baa57eb9b9541b739d4fd2fb"></a><!-- doxytag: member="PolynomialMod2::operator *=" ref="70d9f9c5baa57eb9b9541b739d4fd2fb" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><b>operator *=</b> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a74c272ce43e483be9fe609d4a28d96"></a><!-- doxytag: member="PolynomialMod2::operator/=" ref="8a74c272ce43e483be9fe609d4a28d96" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><b>operator/=</b> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dd621d7f99d46c8f30f1208bc82a37ca"></a><!-- doxytag: member="PolynomialMod2::operator%=" ref="dd621d7f99d46c8f30f1208bc82a37ca" args="(const PolynomialMod2 &t)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><b>operator%=</b> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d73f6f1c7331f2b745c0d61f11d881b9"></a><!-- doxytag: member="PolynomialMod2::operator<<=" ref="d73f6f1c7331f2b745c0d61f11d881b9" args="(unsigned int)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#d73f6f1c7331f2b745c0d61f11d881b9">operator<<=</a> (unsigned int)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="16f09c3dcc4ac6019c4f42012b177a37"></a><!-- doxytag: member="PolynomialMod2::operator>>=" ref="16f09c3dcc4ac6019c4f42012b177a37" args="(unsigned int)" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#16f09c3dcc4ac6019c4f42012b177a37">operator>>=</a> (unsigned int)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7021f18e89d4494b6f2ddede2ac29b3a"></a><!-- doxytag: member="PolynomialMod2::Randomize" ref="7021f18e89d4494b6f2ddede2ac29b3a" args="(RandomNumberGenerator &rng, size_t bitcount)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#7021f18e89d4494b6f2ddede2ac29b3a">Randomize</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, size_t bitcount)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b3855a5f77e9bbc7d82a4239ccf59329"></a><!-- doxytag: member="PolynomialMod2::SetBit" ref="b3855a5f77e9bbc7d82a4239ccf59329" args="(size_t i, int value=1)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#b3855a5f77e9bbc7d82a4239ccf59329">SetBit</a> (size_t i, int value=1)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f15c7ead361d1f7ea23d5e4bd5535989"></a><!-- doxytag: member="PolynomialMod2::SetByte" ref="f15c7ead361d1f7ea23d5e4bd5535989" args="(size_t n, byte value)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#f15c7ead361d1f7ea23d5e4bd5535989">SetByte</a> (size_t n, byte value)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">set the n-th byte to value <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="862faf0cf7d2a2d8a30cd2a17c3d9146"></a><!-- doxytag: member="PolynomialMod2::SetCoefficient" ref="862faf0cf7d2a2d8a30cd2a17c3d9146" args="(size_t i, int value)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#862faf0cf7d2a2d8a30cd2a17c3d9146">SetCoefficient</a> (size_t i, int value)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21587324d54a4ae453960770b18c398d"></a><!-- doxytag: member="PolynomialMod2::swap" ref="21587324d54a4ae453960770b18c398d" args="(PolynomialMod2 &a)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#21587324d54a4ae453960770b18c398d">swap</a> (<a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &a)</td></tr><tr><td colspan="2"><br><h2>UNARY OPERATORS</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c444b1db16f62393ba63ec16096664b2"></a><!-- doxytag: member="PolynomialMod2::operator!" ref="c444b1db16f62393ba63ec16096664b2" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#c444b1db16f62393ba63ec16096664b2">operator!</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2638a0fb364145eb07a3cd6ed58de1af"></a><!-- doxytag: member="PolynomialMod2::operator+" ref="2638a0fb364145eb07a3cd6ed58de1af" args="() const" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#2638a0fb364145eb07a3cd6ed58de1af">operator+</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bcf3e64ba4bb2f0aad40c217397284d4"></a><!-- doxytag: member="PolynomialMod2::operator-" ref="bcf3e64ba4bb2f0aad40c217397284d4" args="() const" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#bcf3e64ba4bb2f0aad40c217397284d4">operator-</a> () const</td></tr><tr><td colspan="2"><br><h2>BINARY OPERATORS</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99e2b908f82147116bfe631ef84755b5"></a><!-- doxytag: member="PolynomialMod2::And" ref="99e2b908f82147116bfe631ef84755b5" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#99e2b908f82147116bfe631ef84755b5">And</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c39e5aa475ea75149c09aeace922734d"></a><!-- doxytag: member="PolynomialMod2::Xor" ref="c39e5aa475ea75149c09aeace922734d" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#c39e5aa475ea75149c09aeace922734d">Xor</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd4130ad85985d2d1a4318b77563c030"></a><!-- doxytag: member="PolynomialMod2::Plus" ref="cd4130ad85985d2d1a4318b77563c030" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#cd4130ad85985d2d1a4318b77563c030">Plus</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a10aa6c97fa37f201fcb477e0aabe209"></a><!-- doxytag: member="PolynomialMod2::Minus" ref="a10aa6c97fa37f201fcb477e0aabe209" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#a10aa6c97fa37f201fcb477e0aabe209">Minus</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9eb57375ba2c0b403a76008195c50299"></a><!-- doxytag: member="PolynomialMod2::Times" ref="9eb57375ba2c0b403a76008195c50299" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#9eb57375ba2c0b403a76008195c50299">Times</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91bb7fc668249f76ee3aea359daf0842"></a><!-- doxytag: member="PolynomialMod2::DividedBy" ref="91bb7fc668249f76ee3aea359daf0842" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#91bb7fc668249f76ee3aea359daf0842">DividedBy</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e1e201da250b5fe9ee142705e14ffdc"></a><!-- doxytag: member="PolynomialMod2::Modulo" ref="1e1e201da250b5fe9ee142705e14ffdc" args="(const PolynomialMod2 &b) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#1e1e201da250b5fe9ee142705e14ffdc">Modulo</a> (const <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> &b) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a752ba55ff8ac4050c1391d1dacfbc81"></a><!-- doxytag: member="PolynomialMod2::operator>>" ref="a752ba55ff8ac4050c1391d1dacfbc81" args="(unsigned int n) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#a752ba55ff8ac4050c1391d1dacfbc81">operator>></a> (unsigned int n) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5058e89a823851c08fb11ab7f6449d0"></a><!-- doxytag: member="PolynomialMod2::operator<<" ref="a5058e89a823851c08fb11ab7f6449d0" args="(unsigned int n) const " --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#a5058e89a823851c08fb11ab7f6449d0">operator<<</a> (unsigned int n) const </td></tr><tr><td colspan="2"><br><h2>OTHER ARITHMETIC FUNCTIONS</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c2821c87852466235b4e1a2f4cc01334"></a><!-- doxytag: member="PolynomialMod2::Parity" ref="c2821c87852466235b4e1a2f4cc01334" args="() const" -->unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#c2821c87852466235b4e1a2f4cc01334">Parity</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">sum modulo 2 of all coefficients <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3ea60cfae9134470da9b8f7c37122acb"></a><!-- doxytag: member="PolynomialMod2::IsIrreducible" ref="3ea60cfae9134470da9b8f7c37122acb" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#3ea60cfae9134470da9b8f7c37122acb">IsIrreducible</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">check for irreducibility <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f6006abf328c20f32a5858e96b91c8d"></a><!-- doxytag: member="PolynomialMod2::Doubled" ref="5f6006abf328c20f32a5858e96b91c8d" args="() const" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#5f6006abf328c20f32a5858e96b91c8d">Doubled</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">is always zero since we're working modulo 2 <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ebb432d1ab5e16d056165e316254b258"></a><!-- doxytag: member="PolynomialMod2::Squared" ref="ebb432d1ab5e16d056165e316254b258" args="() const" --><a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#ebb432d1ab5e16d056165e316254b258">Squared</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4cdb6f0136198255766326388ddd4d42"></a><!-- doxytag: member="PolynomialMod2::IsUnit" ref="4cdb6f0136198255766326388ddd4d42" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_polynomial_mod2.html#4cdb6f0136198255766326388ddd4d42">IsUnit</a> () const</td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -