US 12,289,393 B2
Tournament type selection operations on encrypted data
Ramy Masalha, Kafr Qari (IL); Ehud Aharoni, Kfar Saba (IL); Nir Drucker, Zichron Yaakov (IL); Gilad Ezov, Nesher (IL); Hayim Shaul, Kfar Saba (IL); and Omri Soceanu, Haifa (IL)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on Nov. 22, 2022, as Appl. No. 17/992,597.
Prior Publication US 2024/0171375 A1, May 23, 2024
Int. Cl. H04L 9/06 (2006.01); H04L 9/00 (2022.01)
CPC H04L 9/0618 (2013.01) [H04L 9/008 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method, in a data processing system, for performing a tournament selection process of a computer function, the method comprising:
receiving a request to execute the computer function on an input vector data structure, wherein a result of the computer function is provided by executing the tournament selection process;
receiving the input vector data structure comprising a plurality of values, each value corresponding to a vector slot of the input vector;
receiving an index vector data structure comprising indices of the vector slots of the input vector;
executing at least one iteration of the tournament selection process to identify a value in the input vector satisfying a criterion of the computer function; and
performing an operation on the index vector data structure to generate an indicator vector data structure that uniquely identifies a slot in the input vector data structure that is a result of the computer function being executed on the input vector data structure, wherein executing at least one iteration of the tournament selection process to identify a value in the input vector satisfying a criterion of the computer function comprises executing a folding operation on the input vector data structure and updating the index vector data structure to generate an updated index vector data structure having an index value for a winner of the tournament selection process in each slot of the updated index vector data structure.