Function fiat_crypto::p521_64::fiat_p521_addcarryx_u58

source ·
pub fn fiat_p521_addcarryx_u58(
    out1: &mut u64,
    out2: &mut fiat_p521_u1,
    arg1: fiat_p521_u1,
    arg2: u64,
    arg3: u64
)
Expand description

The function fiat_p521_addcarryx_u58 is an addition with carry.

Postconditions: out1 = (arg1 + arg2 + arg3) mod 2^58 out2 = ⌊(arg1 + arg2 + arg3) / 2^58⌋

Input Bounds: arg1: [0x0 ~> 0x1] arg2: [0x0 ~> 0x3ffffffffffffff] arg3: [0x0 ~> 0x3ffffffffffffff] Output Bounds: out1: [0x0 ~> 0x3ffffffffffffff] out2: [0x0 ~> 0x1]