heir icon indicating copy to clipboard operation
heir copied to clipboard

Support custom input scales

Open AlexanderViand opened this issue 9 months ago • 0 comments

Placeholder issue arising from today's office hour.

  1. make lattigo backend usable from Python frontend
  2. Allow setting scale in frontend, probably something like def foo(x: Secret[F32, Scale[50]], y: Secret[F32]): which gets converted to a func.func argAttr, e.g., {ckks.scale = 50}
  3. Make --wrap-generic pass forward function arg/result attributes to the __argattrs/res_attrs of the secret.generic wrapper
  4. (Optional) add a pass to convert the {ckks.scale = 50} to the proper management attribute, e.g., {mgmt.mgmt = #mgmt.mgmt<level = 1, scale = 50>}
  5. Make --populate-scale-ckkspass honor these attributes

AlexanderViand avatar May 05 '25 17:05 AlexanderViand