Exercise 3. Consider the following algorithms A and B for the problem of computing 2n (mod 317) (This is the modular exponentiation problem that we have discussed in class. Algorithm A is the one that we have seen in class, and algorithm B is a variant of it. Algorithm A. mod_exp_A (n) { }} if (n== 0) return 1; else { }} t = mod_exp_A (n/2); if (n is even) return t*t (mod 317); if (n is odd) return t*t*2 (mod 317); Algorithm B. mod_exp_B (n) { if (n== 0) return 1; else { if (n is even) return mod_exp_B (n/2) * mod_exp_B (n/2) (mod 317); if (n is odd) return mod_exp_B (n/2) * mod_exp_B (n/2) *2 (mod 317); 2
Exercise 3. Consider the following algorithms A and B for the problem of computing 2n (mod 317) (This is the modular exponentiation problem that we have discussed in class. Algorithm A is the one that we have seen in class, and algorithm B is a variant of it. Algorithm A. mod_exp_A (n) { }} if (n== 0) return 1; else { }} t = mod_exp_A (n/2); if (n is even) return t*t (mod 317); if (n is odd) return t*t*2 (mod 317); Algorithm B. mod_exp_B (n) { if (n== 0) return 1; else { if (n is even) return mod_exp_B (n/2) * mod_exp_B (n/2) (mod 317); if (n is odd) return mod_exp_B (n/2) * mod_exp_B (n/2) *2 (mod 317); 2
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question

Transcribed Image Text:**Exercise 3.**
Consider the following algorithms A and B for the problem of computing \(2^n \mod 317\). (This is the modular exponentiation problem that we have discussed in class. Algorithm A is the one that we have seen in class, and algorithm B is a variant of it.)
**Algorithm A.**
```plaintext
mod_exp_A(n) {
if (n == 0) return 1;
else {
t = mod_exp_A(n/2);
if (n is even) return t * t (mod 317);
if (n is odd) return t * t * 2 (mod 317);
}
}
```
**Algorithm B.**
```plaintext
mod_exp_B(n) {
if (n == 0) return 1;
else {
if (n is even) return mod_exp_B(n/2) * mod_exp_B(n/2) (mod 317);
if (n is odd) return mod_exp_B(n/2) * mod_exp_B(n/2) * 2 (mod 317);
}
}
```
1. Write the recurrence for the runtime \( T_A(n) \) of algorithm A, and solve the recurrence to find a \(\Theta(\cdot)\) estimation of \( T_A(n) \).
2. Write the recurrence for the runtime \( T_B(n) \) of algorithm B, and solve the recurrence to find a \(\Theta(\cdot)\) estimation of \( T_B(n) \).
3. Which algorithm is faster? (Note: There is a huge difference between \( T_A \) and \( T_B \).)
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education