Skip to main content

← HomOps Reference

Repeat was removed

Use n_slots to choose the packed block size. Encryption now repeats that block across the physical ring.

Migration​

lattica_build.client_ops.Repeat and HomOpType.Repeat no longer exist. Remove Repeat() from client_pre.
Set HomParams.n_slots to the block size for the primary encrypted input. For another named encrypted input, set HomomorphicPipeline.custom_n_slots[input_name]. The encoder repeats that block internal_n / n_slots times to fill the ring.
Then call HomExpand with expand_axis. Its expansion width comes from the input ciphertext's n_slots.

Pipelines and serialized artifacts created before this wire-format change must be rebuilt. The removed Repeat enum slot caused later HomOpType numeric values to shift.