SecreC 2 language  2.8.0 (2023.09)
Language and standard library reference
Functions
cut(multiple samples)

Functions

template<domain D :shared3p >
D int32 cut (D int32[[2]] data, D bool[[1]] isAvailable)
 
template<domain D :shared3p >
D int64 cut (D int64[[2]] data, D bool[[1]] isAvailable)
 
template<domain D :shared3p >
D uint32 cut (D uint32[[2]] data, D bool[[1]] isAvailable)
 
template<domain D :shared3p >
D uint64 cut (D uint64[[2]] data, D bool[[1]] isAvailable)
 
template<domain D :shared3p >
D float32 cut (D float32[[2]] data, D bool[[1]] isAvailable)
 
template<domain D :shared3p >
D float64 cut (D float64[[2]] data, D bool[[1]] isAvailable)
 

Detailed Description

Remove unavailable elements from N samples using the same shuffling key.

Note
D - shared3p protection domain
Supported types - int32 / int64 / float32 / float64
Parameters
data- input matrix. Each column is a sample.
isAvailable- vector indicating which elements of the input samples are available. Has to have as many elements as there are rows in the data matrix.
Leakage
Leaks the number of true values in isAvailable

Function Documentation

◆ cut() [1/6]

D float32 cut ( D float32[[2]]  data,
D bool[[1]]  isAvailable 
)

◆ cut() [2/6]

D float64 cut ( D float64[[2]]  data,
D bool[[1]]  isAvailable 
)

◆ cut() [3/6]

D int32 cut ( D int32[[2]]  data,
D bool[[1]]  isAvailable 
)

◆ cut() [4/6]

D int64 cut ( D int64[[2]]  data,
D bool[[1]]  isAvailable 
)

◆ cut() [5/6]

D uint32 cut ( D uint32[[2]]  data,
D bool[[1]]  isAvailable 
)

◆ cut() [6/6]

D uint64 cut ( D uint64[[2]]  data,
D bool[[1]]  isAvailable 
)