arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/poulpy-hal/src/reference/znx/sub.rs
poulpy-hal/src/reference/znx/sub.rsRaw
 1pub fn znx_sub_ref(res: &mut [i64], a: &[i64], b: &[i64]) {
 2    #[cfg(debug_assertions)]
 3    {
 4        assert_eq!(res.len(), a.len());
 5        assert_eq!(res.len(), b.len());
 6    }
 7
 8    let n: usize = res.len();
 9    for i in 0..n {
10        res[i] = a[i] - b[i];
11    }
12}
13
14pub fn znx_sub_inplace_ref(res: &mut [i64], a: &[i64]) {
15    #[cfg(debug_assertions)]
16    {
17        assert_eq!(res.len(), a.len());
18    }
19
20    let n: usize = res.len();
21    for i in 0..n {
22        res[i] -= a[i];
23    }
24}
25
26pub fn znx_sub_negate_inplace_ref(res: &mut [i64], a: &[i64]) {
27    #[cfg(debug_assertions)]
28    {
29        assert_eq!(res.len(), a.len());
30    }
31
32    let n: usize = res.len();
33    for i in 0..n {
34        res[i] = a[i] - res[i];
35    }
36}