-
Notifications
You must be signed in to change notification settings - Fork 10
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
Build generic sat model #280
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This feature introduces the ability for users to create heterogeneous models. Users can now specify how individual components within a system are modeled. For example, in the case of a cipher with six components, the user can define that components 1, 2, and 3 will be modeled using the regular SAT XOR differential model, while components 4, 5, and 6 will be modeled with the SAT truncated deterministic model. This provides flexibility for customizing the modeling approach for different parts of a cipher.
…uild_generic_sat_model
Adding build_generic_sat_model to sat_model. This feature will allow users create heterogeneous SAT models. For example, combining regular xor differential models and bitwise truncated xor differential deterministic models.
…uild_generic_sat_model the commit.
Adding constraints to connect the regular and truncated xor differential models.
Synchronizing file claasp/components/modular_component.py with develop.
Removed the hardcoded dummy variable string dummy_hw_0 in the _sequential_counter method to improve flexibility. Previously, users encountered issues when combining two types of modeling that used this method, as the hardcoded value caused the variable to be common across both models. With this change, the variable can now be assigned different values, resolving the conflict.
Reverting change on claasp/cipher_modules/models/sat/sat_models/sat_bitwise_deterministic_truncated_xor_differential_model.py
- Refactored fix_variables_value_constraints method in both classes SatModel and SatBitwiseDeterministicTruncatedXorDifferentialModel to static methods, as the 'self' parameter was not being used. - This allows class SatRegularAndDeterministicXorTruncatedDifferential to call fix_variables_value_constraints selectively from either class fix_variables_value_constraints or class SatBitwiseDeterministicTruncatedXorDifferentialModel, ensuring appropriate behavior for different subsets of components within the model.
…ated_xor_differential_trail
…ated_xor_differential_trail
Adding test for SatRegularAndDeterministicXorTruncatedDifferential. Specifically, adding a test for Aradi cipher reduced to 4 rounds.
- Renaming sat_regular_and_deterministic_xor_truncated_differential_model to sat_probabilistic_xor_truncated_differential_model - Removing comments
Refactored SatProbabilisticXorTruncatedDifferential to inherit from SatXorDifferentialModel for improved structure and code reuse.
Changing name of class from SatProbabilisticXorTruncatedDifferential to SatProbabilisticXorTruncatedDifferentialModel.
Quality Gate passedIssues Measures |
peacker
approved these changes
Sep 24, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This branch introduces two features:
The ability for users to create heterogeneous models. Users can now specify how individual components within a system are modeled. For example, in the case of a cipher with six components, the user can define that components 1, 2, and 3 will be modeled using the regular SAT XOR differential model, while components 4, 5, and 6 will be modeled with the SAT truncated deterministic model. This provides flexibility for customizing the modeling approach for different components of a cipher.
Based on the previous point, we created a class that help to find probabilistic truncated models combining the regular xor differential SAT model and the deterministic bitwise truncated SAT model.