Checkpoint the party/runtime stack before share-program and malicious-mode work.
Ship the TLS mesh, composer, Beaver/Yao/leaf MPC, prep/online paths, apps, and docs so the tree is pushable before elevating share_expr, security_mode, and prep resume. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
695f8e84f7
commit
0d22946a0e
1835 changed files with 170291 additions and 2849 deletions
|
|
@ -348,10 +348,12 @@ inline std::int64_t horner(const cubic_bits & piece, unsigned q, std::int64_t ra
|
|||
} // namespace principal_detail
|
||||
|
||||
/// @brief Number of cubic pieces at this fractional width.
|
||||
/// @param which the party index
|
||||
/// @param which the principal map, not a party index
|
||||
/// @param fractional_bits the number of fractional bits
|
||||
/// @return Number of cubic pieces at this fractional width
|
||||
/// @throws std::invalid_argument if `precision must be 8, 12, ..., 32`
|
||||
/// \complexity One table lookup of `nparts`. `Θ(1)`.
|
||||
/// @see grotto::eval_principal
|
||||
inline std::uint16_t principal_parts(principal which, unsigned fractional_bits)
|
||||
{
|
||||
if (!principal_precision(fractional_bits))
|
||||
|
|
@ -360,12 +362,16 @@ inline std::uint16_t principal_parts(principal which, unsigned fractional_bits)
|
|||
}
|
||||
|
||||
/// @brief Evaluate the principal-domain cubic. `raw / 2^fractional_bits` is the input.
|
||||
/// @param which the party index
|
||||
/// @param which the principal map, not a party index
|
||||
/// @param fractional_bits the number of fractional bits
|
||||
/// @param raw the underlying integer
|
||||
/// @return the returned `std::int64_t`
|
||||
/// @throws std::invalid_argument if `precision must be 8, 12, ..., 32`
|
||||
/// @throws std::out_of_range if `input is below the principal domain`
|
||||
/// \complexity `piece_index` binary-searches `nparts` knots, then `horner` loops the four cubic coefficients (`i` from 3 down to 0).
|
||||
/// Time `Θ(log P)` knot comparisons plus `Θ(1)` arithmetic, `P = principal_parts(which, fractional_bits)`. Extra space `Θ(1)`.
|
||||
/// @see grotto::eval_reduced
|
||||
/// @see grotto::eval_window
|
||||
inline std::int64_t eval_principal(principal which, unsigned fractional_bits, std::int64_t raw)
|
||||
{
|
||||
if (!principal_precision(fractional_bits))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue