Divisibility Problem: Fast Algorithm for Large Integers A and B

In summary, there are efficient algorithms for calculating the remainder of division or determining if one number divides another, depending on the size of the numbers. For numbers under 100 digits, any reasonable program can do the calculation quickly. For numbers around 10,000 to 100,000 or more digits, FFT-based multiplication algorithms like Strassen's or Furer's can provide efficient division. Higher-order methods for division may not be as efficient as the mentioned FFT methods.
  • #1
mhill
189
1
given two integers A and B that are very big is there any 'fast' algorithm to calculate the remainder of the division [tex] \frac{A}{B} [/tex] or in other similar words to say if B divides or not A thanks.
 
Physics news on Phys.org
  • #2
How big? Are the numbers likely to have small prime factors?
For numbers under 100 digits, any reasonable program can do the calculation 'in the blink of an eye'.

Newton's method can be used to divide two numbers in time [itex]O(n^{1.585})[/itex] using Karatsuba multiplication.

For truly huge numbers (10,000 to 100,000 or more digits), FFT-based multiplication algorithms like Strassen's algorithm or the new Furer's algorithm provide quasilinear division using Newton's method.

I don't know of the success, in general, of higher-order methods for division, but I can't imagine any can outdo the [itex]O(n\log n\log\log n)[/itex] of the FFT methods I mentioned.
 

FAQ: Divisibility Problem: Fast Algorithm for Large Integers A and B

Can you explain the concept of divisibility in mathematics?

The concept of divisibility in mathematics refers to the ability of one number to be divided evenly by another number without leaving a remainder. For example, 10 is divisible by 5 because 10 divided by 5 is equal to 2 with no remainder.

What is the significance of a fast algorithm for solving divisibility problems with large integers?

A fast algorithm for solving divisibility problems with large integers is significant because it allows for quicker and more efficient calculations. This is especially important in fields like cryptography, where large numbers are commonly used and the speed of calculations can greatly impact the security of a system.

How does the fast algorithm for large integers work?

The fast algorithm for large integers uses a combination of mathematical techniques, such as modular arithmetic and prime factorization, to quickly determine if a number is divisible by another number. It involves breaking down the numbers into smaller, more manageable parts and using specific rules to determine their divisibility.

Can the fast algorithm work for all types of divisibility problems?

The fast algorithm for large integers is specifically designed to work for divisibility problems involving large numbers. However, it may not be applicable to all types of divisibility problems, such as those involving fractions or decimals.

Are there any limitations to the fast algorithm for solving divisibility problems?

While the fast algorithm for large integers is highly efficient, it does have some limitations. For example, it may not work for extremely large numbers or in certain specialized cases where other mathematical techniques may be more suitable. Additionally, the algorithm may not be easily understandable or accessible to those without a strong mathematical background.

Similar threads

Back
Top