</head><bodyclass="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><navclass="mobile-topbar"><buttonclass="sidebar-menu-toggle">☰</button><aclass="sidebar-logo"href="../../halo2_gadgets/index.html"><divclass="logo-container"><imgclass="rust-logo"src="../../rust-logo.svg"alt="logo"></div>
</a><h2class="location"><ahref="#">Module ecc</a></h2><divclass="sidebar-elems"><section><divclass="block"><ul><li><ahref="#modules">Modules</a></li><li><ahref="#structs">Structs</a></li><li><ahref="#traits">Traits</a></li></ul></div></section></div></nav><main><divclass="width-limiter"><divclass="sub-container"><aclass="sub-logo-container"href="../../halo2_gadgets/index.html"><imgclass="rust-logo"src="../../rust-logo.svg"alt="logo"></a><navclass="sub"><formclass="search-form"><divclass="search-container"><span></span><inputclass="search-input"name="search"autocomplete="off"spellcheck="false"placeholder="Click or press ‘S’ to search, ‘?’ for more options…"type="search"><divid="help-button"title="help"tabindex="-1"><buttontype="button">?</button></div><divid="settings-menu"tabindex="-1">
<divclass="item-table"><divclass="item-row"><divclass="item-left module-item"><aclass="mod"href="chip/index.html"title="halo2_gadgets::ecc::chip mod">chip</a></div><divclass="item-right docblock-short"><p>Chip implementations for the ECC gadgets.</p>
<divclass="item-table"><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.FixedPoint.html"title="halo2_gadgets::ecc::FixedPoint struct">FixedPoint</a></div><divclass="item-right docblock-short"><p>Precomputed multiples of a fixed point, for full-width scalar multiplication.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.FixedPointBaseField.html"title="halo2_gadgets::ecc::FixedPointBaseField struct">FixedPointBaseField</a></div><divclass="item-right docblock-short"><p>Precomputed multiples of a fixed point, that can be multiplied by base-field elements.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.FixedPointShort.html"title="halo2_gadgets::ecc::FixedPointShort struct">FixedPointShort</a></div><divclass="item-right docblock-short"><p>Precomputed multiples of a fixed point, for short signed scalar multiplication.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.NonIdentityPoint.html"title="halo2_gadgets::ecc::NonIdentityPoint struct">NonIdentityPoint</a></div><divclass="item-right docblock-short"><p>A point on a specific elliptic curve that is guaranteed to not be the identity.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.Point.html"title="halo2_gadgets::ecc::Point struct">Point</a></div><divclass="item-right docblock-short"><p>A point on a specific elliptic curve.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.ScalarFixed.html"title="halo2_gadgets::ecc::ScalarFixed struct">ScalarFixed</a></div><divclass="item-right docblock-short"><p>An integer representing an element of the scalar field for a specific elliptic curve,
for <ahref="struct.FixedPoint.html"title="FixedPoint"><code>FixedPoint</code></a> scalar multiplication.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.ScalarFixedShort.html"title="halo2_gadgets::ecc::ScalarFixedShort struct">ScalarFixedShort</a></div><divclass="item-right docblock-short"><p>A signed short (64-bit) integer represented as an element of the scalar field for a
specific elliptic curve, to be used for <ahref="struct.FixedPointShort.html"title="FixedPointShort"><code>FixedPointShort</code></a> scalar multiplication.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.ScalarVar.html"title="halo2_gadgets::ecc::ScalarVar struct">ScalarVar</a></div><divclass="item-right docblock-short"><p>An integer representing an element of the scalar field for a specific elliptic curve.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.X.html"title="halo2_gadgets::ecc::X struct">X</a></div><divclass="item-right docblock-short"><p>The affine short Weierstrass x-coordinate of a point on a specific elliptic curve.</p>
<divclass="item-table"><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.BaseFitsInScalarInstructions.html"title="halo2_gadgets::ecc::BaseFitsInScalarInstructions trait">BaseFitsInScalarInstructions</a></div><divclass="item-right docblock-short"><p>Instructions that can be implemented for a curve whose base field fits into
its scalar field.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.EccInstructions.html"title="halo2_gadgets::ecc::EccInstructions trait">EccInstructions</a></div><divclass="item-right docblock-short"><p>The set of circuit instructions required to use the ECC gadgets.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.FixedPoints.html"title="halo2_gadgets::ecc::FixedPoints trait">FixedPoints</a></div><divclass="item-right docblock-short"><p>Defines the fixed points for a given instantiation of the ECC chip.</p>