Finding matrix modular for encryption

1 view (last 30 days)
Can someone please help me in writing a function which takes any matrix A as an input, and finds (A mod 29).
Considering that elements of A are real numbers and the outputs have to be integers.
For example (1/2 mod 29 = 15) .. (-3/2 mod 29 = 13) in https://planetcalc.com/8326/
I need this function for just a small part in my college project and actually I don't understand the math behind it.
Thank you

Accepted Answer

Walter Roberson
Walter Roberson on 3 Dec 2019
You will have problems with this due to the limited precision available to real numbers. For example, 1/3 and 1/10 cannot be exactly represented in binary floating point arithmetic.
A first step would be converting the floating point number into a rational, but doing that is risky. How, for example, do you know for sure that 0.52941176470588235947190014485386200249195098876953125 is intended as 9/17 and not as 4768517252509937/9007199254740992 ?
My recommendation would be not to do what you are trying to do. You would be better off using a pair of rationals, such as [-3, 2] or [9, 17] instead of -1.5 and 0.52941176470588235947190014485386200249195098876953125
  1 Comment
Fatma Alnabrisi
Fatma Alnabrisi on 4 Dec 2019
My matrix A actually goes through several calculations before I need to find (A mod 29)
so, how can I force the elements of A to be rational numbers instead?

Sign in to comment.

More Answers (0)

Categories

Find more on Encryption / Cryptography in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!