maths.free › Abstract Algebra › Cyclic Groups › The Method of Repeated Squares

The Method of Repeated Squares

Computing large powers can be very time-consuming. Just as anyone can compute 2^2 or 2^8, everyone knows how to compute \[\begin{aligned}\end{aligned}\].

The Method of Repeated Squares

Computing large powers can be very time-consuming. Just as anyone can compute \(2^2\) or \(2^8\), everyone knows how to compute \[\begin{aligned}\end{aligned}\]. However, such numbers are so large that we do not want to attempt the calculations; moreover, past a certain point the computations would not be feasible even if we had every computer in the world at our disposal. Even writing down the decimal representation of a very large number may not be reasonable. It could be thousands or even millions of digits long. However, if we could compute something like \[\begin{aligned}\end{aligned}\], we could very easily write the result down since it would be a number between \(0\) and \(46{,}388\). If we want to compute powers modulo \(n\) quickly and efficiently, we will have to be clever. The results in this section are needed only in

The first thing to notice is that any number \(a\) can be written as the sum of distinct powers of \(2\); that is, we can write \[\begin{aligned}\end{aligned}\], where \(k_1 \lt k_2 \lt \cdots \lt k_n\). This is just the binary representation of \(a\). For example, the binary representation of \(57\) is \(111001\), since we can write \(57 = 2^0 + 2^3 + 2^4 + 2^5\).

The laws of exponents still work in \({\mathbb Z}_n\); that is, if \(b \equiv a^x \pmod{ n}\) and \(c \equiv a^y \pmod{ n}\), then \(bc \equiv a^{x+y} \pmod{ n}\). We can compute \(a^{2^k} \pmod{ n}\) in \(k\) multiplications by computing \[\begin{aligned}a^{2^0} \pmod{ n} \\ a^{2^1} \pmod{ n } \\ \vdots \\ a^{2^k} \pmod{ n}\end{aligned}\]. Each step involves squaring the answer obtained in the previous step, dividing by \(n\), and taking the remainder.

The method of repeated squares will prove to be a very useful tool when we explore RSA cryptography in . To encode and decode messages in a reasonable manner under this scheme, it is necessary to be able to quickly compute large powers of integers mod \(n\).

Sage support for cyclic groups is a little spotty but we can still make effective use of Sage and perhaps this situation could change soon.

Condensed: the full section is in Judson, Abstract Algebra: Theory and Applications.

이제 너 계산기는 이것을 해결하지 않지만, 그 조각은 계산 가능합니다. 아래의 하나를 시도하거나 자신의 것을 입력하십시오.

자신의 작업을 유지

무료 계정은 모든 수업에 노트를 추가, 당신이 완료 한 기록, 당신이 해결 한 문제를 한 곳에, 그리고 당신이이 페이지에 대해 물어 수업 지도자. 수학 자체는 모두에게 열려 있습니다, 로그인 여부.

가입하기 로그인

여기서 사용된 기호

기호를 탭하면 전체 정의, 이미지 및 각 문자의 의미를 확인할 수 있습니다.

사람들이 묻는 질문

What is a group, in plain words?

A set with one operation that is associative, has an identity, and lets every element be undone. Symmetries of any object form a group. That is where the idea came from.

What is the difference between a ring and a field?

A ring has addition and multiplication that behave like the integers (you cannot always divide); a field is a ring where every non-zero element has a reciprocal, like the rationals or the reals.

이 페이지의 일부는 다음에서 변경되었습니다. Judson, Abstract Algebra: Theory and Applications (GFDL 1.3). 여기서 압축하고 다시 설명; 오류는 우리의.

에 더 Abstract Algebra