I know how to compute modular multiplicative inverses for co-prime variables a and b, but is there an efficient method for computing variable x where x<b and a and b are not co-prime, given variables a, b and c, as described by the equation below?
a x \equiv c \mod b
For example, given
154x \equiv 14 \mod 182 , is there an efficient method for computing all the possibilities of x, without pure bruteforce?
Please note that I'm not necessarily asking for a direct solution, just a more optimized one.
I do not believe that the Extended Euclidean Algorithm will work here, because a and b are not co-prime.
Edit:
Follow up question, since the first one had a shortcut:
Could the be computed efficiently as well?
12260x \equiv 24560 \mod 24755.
107 needs to be one of the computed answers.
Answer
Below we compute \ x\,\equiv\, \dfrac{24560}{12260}\,\pmod{\!24755}\ per your edit, by the method in my first answer.
{\rm mod}\,\ 24755\!:\,\ \dfrac{0}{24755}\overset{\large\frown}\equiv \dfrac{24560}{12260}\overset{\large\frown}\equiv \color{#90f}{\dfrac{390}{235}}\overset{\large\frown}\equiv \color{#0a0}{\dfrac{4280}{40}}\overset{\large\frown}\equiv \color{#c00}{\dfrac{-535}{-5}}\overset{\large\frown}\equiv\dfrac{0}0
\begin{array}{rl} \ \ \ \ {\rm i.e.}\ \ \ \ \bmod 24755\!: \ \ \ \ \ [\![1]\!] &\ 24755\, x\,\equiv\ 0\ \\ [\![2]\!] &\ \color{c00}{12260\,x\, \equiv\ 24560\equiv -195}\!\!\!\\ [\![1]\!]\:\!-\:\!2\,[\![2]\!] \rightarrow [\![3]\!] &\ \ \ \ \ \color{#90f}{235\,x\, \equiv\ 390}\ \\ [\![2]\!]\!-\!\color{1orange}52\,[\![3]\!] \rightarrow [\![4]\!] &\ \ \ \ \ \ \, \color{#0a0}{40\,x\, \equiv\ 4280}\ \\ [\![3]\!]\:\!-\:\!\color{}6\,[\![4]\!] \rightarrow [\![5]\!] &\:\! \ \ \ \ \ \color{#c00}{{-}5\,x\, \equiv -535}\ \\ [\![4]\!]\:\!+\:\!\color{1orange}8\,[\![5]\!] \rightarrow [\![6]\!] &\:\!\ \ \ \ \ \ \ \ \color{90f}{0\,x\, \equiv\ 0}\ \end{array}
\begin{align}{\rm Therefore}\ \ \ x\equiv {\color{#c00}{\dfrac{535}5}\!\!\!\pmod{24755}}&\equiv \,107\!\!\pmod{\!4951},\ \ {\rm via\ canceling}\ \ 5\\ &\equiv\, 107+4951k\!\!\pmod{\!24755},\ \ 0\le k\le 4\\[0.5em] &\equiv \{107,\, 5058,\, 10009,\, 14960,\, 19911\}\!\pmod{\!24755}\end{align}
No comments:
Post a Comment