1) Next try writing a simple function euler_phi to compute Euler's function. This should take an integ n, and for each i from 1 to n - 1, adds one to a counter each time we have gcd(i, n) = 1 (i.e., for eac i which is relatively prime to n). Is this code quicker than semiprime_factorisation1? That is, if w wanted to compute (n) for n semiprime, is it quicker to use euler_phi directly, or to use semiprime_factorisation and then calculate (n) = (p − 1)(q − 1)? 2) It's not too hard to see that a faster semiprime factorisation function is trial division, also called direct search factorisation. This simply involves dividing n by each integer from 2 to √n], to find integers which divide n exactly (that is, have a remainder of zero). Write a function semiprime_factorisation2 which takes an integer n, which is a semiprime (i.e., is the product of two primes p and q), and returns both p and q. Remember to use integer division here, with //. Test yo function on some values of n = pq. To compute (n), for n = pq, with p, q prime, is it quickest to use euler_phi or semiprime_factorisation1, or semiprime_factorisation?? 3) Write a prime factorisation function prime_factorisation which can take any integer n and return prime factorisation. Similar to semiprime_factorisation2, this function should begin testing whether n is divisible by each integer increasing from 2. If j divides n, replace n by n/j and continue. should return a list of prime factors, with repeated factors listed multiple times, e.g., the input 24 shoul return the list [2,2,2,3], since 24 = 2³ x 3.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
(1) Next try writing a simple function euler_phi to compute Euler's function. This should take an integer
n, and for each i from 1 to n − 1, adds one to a counter each time we have gcd(i, n) = 1 (i.e., for each
i which is relatively prime to n). Is this code quicker than semiprime_factorisation1? That is, if we
wanted to compute (n) for n semiprime, is it quicker to use euler_phi directly, or to use
semiprime_factorisation and then calculate (n) = (p − 1)(q − 1)?
(2) It's not too hard to see that a faster semiprime factorisation function is trial division, also called direct
search factorisation. This simply involves dividing n by each integer from 2 to [√n], to find integers
which divide n exactly (that is, have a remainder of zero). Write a function
semiprime_factorisation2 which takes an integer n, which is a semiprime (i.e., is the product of
two primes p and q), and returns both p and q. Remember to use integer division here, with //. Test your
function on some values of n = pq. To compute (n), for n = pq, with p, q prime, is it quickest to use
euler_phi or semiprime_factorisation1, or semiprime_factorisation2?
(3) Write a prime factorisation function prime_factorisation which can take any integer n and return its
prime factorisation. Similar to semiprime_factorisation2, this function should begin testing
whether n is divisible by each integer increasing from 2. If j divides n, replace n by n/j and continue. It
should return a list of prime factors, with repeated factors listed multiple times, e.g., the input 24 should
return the list [2,2,2,3], since 24 = 2³ × 3.
Transcribed Image Text:(1) Next try writing a simple function euler_phi to compute Euler's function. This should take an integer n, and for each i from 1 to n − 1, adds one to a counter each time we have gcd(i, n) = 1 (i.e., for each i which is relatively prime to n). Is this code quicker than semiprime_factorisation1? That is, if we wanted to compute (n) for n semiprime, is it quicker to use euler_phi directly, or to use semiprime_factorisation and then calculate (n) = (p − 1)(q − 1)? (2) It's not too hard to see that a faster semiprime factorisation function is trial division, also called direct search factorisation. This simply involves dividing n by each integer from 2 to [√n], to find integers which divide n exactly (that is, have a remainder of zero). Write a function semiprime_factorisation2 which takes an integer n, which is a semiprime (i.e., is the product of two primes p and q), and returns both p and q. Remember to use integer division here, with //. Test your function on some values of n = pq. To compute (n), for n = pq, with p, q prime, is it quickest to use euler_phi or semiprime_factorisation1, or semiprime_factorisation2? (3) Write a prime factorisation function prime_factorisation which can take any integer n and return its prime factorisation. Similar to semiprime_factorisation2, this function should begin testing whether n is divisible by each integer increasing from 2. If j divides n, replace n by n/j and continue. It should return a list of prime factors, with repeated factors listed multiple times, e.g., the input 24 should return the list [2,2,2,3], since 24 = 2³ × 3.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 6 steps with 6 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY