Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make LevelAnalysis/DimensionAnalysis aware of affine.for loop #1181

Open
ZenithalHourlyRate opened this issue Dec 12, 2024 · 1 comment
Open
Labels
analysis Issues related to analysis passes

Comments

@ZenithalHourlyRate
Copy link
Collaborator

Check #1176.

In tests/Dialect/Secret/Conversions/secret_to_ckks/matmul_loop.mlir, affine is not unrolled so LevelAnalysis can not work. It should not work as we do not have loop invariant kept here. For example, for the loop to carry out correctly in FHE, the invariant is the level is the same, which heavily depends on the body.

More case analysis here. The body is a mul_plain + add, which in different mgmt op placement strategy there will be different level analysis result. For example, if we mod reduce immediately after mul_plain, we get the level reduced by one hence the invariant is not kept. For the current strategy we fortunately kept this invariant.

Copy link

This issue has 1 outstanding TODOs:

This comment was autogenerated by todo-backlinks

@ZenithalHourlyRate ZenithalHourlyRate added the analysis Issues related to analysis passes label Dec 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
analysis Issues related to analysis passes
Projects
None yet
Development

No branches or pull requests

1 participant