Bootstrap
  C.R.T. .com
It doesn't have to be difficult if someone just explains it right.

Welcome to ChineseRemainderTheorem.com!

×

Modal Header

Some text in the Modal Body

Some other text...

Use the calculator below to get a step-by-step calculation of the Chinese Remainder Theory. Just enter the numbers you would like and press "Calculate" .


This removes all numbers from the textboxes, such that you can fill in your own.

This fills all textboxes with random numbers. If you fill in random numbers yourself, it is very likely that those numbers do not have a solution. To avoid disappointment, use this button instead! It only uses random numbers that do have a solution.

This button is similar to the "Clear everything" button, but only clears the left column.
This is useful if you want your equations to be of the form x ≡ a (mod m) rather than bx ≡ a (mod m).
In that case, it can be especially useful after using the random numbers button.

Do you want to use more equations? Go ahead and use this button. It adds another row that you can fill in. Not sure what numbers to put in this newly added row? Use the random numbers button again!

Do you have too many rows? Use one of these buttons to remove a row. You can always add a row again using the yellow "Add a row" button.

Are you ready to view a full step-by-step Chinese Remainder Theorem calculation for the numbers you have entered? Then use this button!

Want to know more?


Transform the equations

You used one or more of the fields on the left, so your equations are of the form bx ≡ a mod m.
We want them to be of the form x ≡ a mod m, so we need to move the values on the left to the right side of the equation.
For a more detailed explanation about how this works, see this part of our page about how to execute the Chinese Remainder algorithm.

First, we calculate the inverses of the leftmost value on each row:

nbqr t1t2t3
6378590637010
8596371222101
637222219301-2
2221931291-23
19329619-23-20
29191103-2023
191019-2023-43
1091123-4366
9190-4366-637
So our multiplicative inverse is 66 mod 637 ≡ 66
Source: ExtendedEuclideanAlgorithm.com

nbqr t1t2t3
4636910463010
6914631228101
4632282701-2
22873241-265
7413-265-67
431165-67132
3130-67132-463
So our multiplicative inverse is 132 mod 463 ≡ 132
Source: ExtendedEuclideanAlgorithm.com

nbqr t1t2t3
907570133701-1
57033712331-12
3372331104-12-3
2331042252-38
1042544-38-35
254618-35218
4140-35218-907
So our multiplicative inverse is 218 mod 907 ≡ 218
Source: ExtendedEuclideanAlgorithm.com

Click on any row to reveal a more detailed calculation of each multiplicative inverse.

Now that we now the inverses, let's move the leftmost value on each row to the right of the equation:

x ≡ 718 × 859-1 (mod 637) ≡ 718 × 66 (mod 637) ≡ 250 (mod 637)
x ≡ 262 × 691-1 (mod 463) ≡ 262 × 132 (mod 463) ≡ 322 (mod 463)
x ≡ 977 × 570-1 (mod 907) ≡ 977 × 218 (mod 907) ≡ 748 (mod 907)


Now the actual calculation

  1. Find the common modulus M
    M = m1 × m2 × ... × mk = 637 × 463 × 907 = 267502417
  2. We calculate the numbers M1 to M3
    M1=M/m1=267502417/637=419941,   M2=M/m2=267502417/463=577759,   M3=M/m3=267502417/907=294931
  3. We now calculate the modular multiplicative inverses M1-1 to M3-1
    Have a look at the page that explains how to calculate modular multiplicative inverse.
    Using, for example, the Extended Euclidean Algorithm, we will find that:

    nbqr t1t2t3
    6374199410637010
    419941637659158101
    6371584501-4
    15853131-4125
    5312-4125-129
    3211125-129254
    2120-129254-637
    So our multiplicative inverse is 254 mod 637 ≡ 254
    Source: ExtendedEuclideanAlgorithm.com

    nbqr t1t2t3
    4635777590463010
    5777594631247398101
    46339816501-1
    39865681-17
    65881-17-57
    81807-57463
    So our multiplicative inverse is -57 mod 463 ≡ 406
    Source: ExtendedEuclideanAlgorithm.com

    nbqr t1t2t3
    9072949310907010
    294931907325156101
    907156512701-5
    1561271291-56
    12729411-56-29
    2911276-2964
    11714-2964-93
    741364-93157
    4311-93157-250
    3130157-250907
    So our multiplicative inverse is -250 mod 907 ≡ 657
    Source: ExtendedEuclideanAlgorithm.com
  4. Now we can calculate x with the equation we saw earlier
    x = (a1 × M1 × M1-1   +   a2 × M2 × M2-1   + ... +   ak × Mk × Mk-1)   mod M
    =  (250 × 419941 × 254 +
       322 × 577759 × 406 +
       748 × 294931 × 657)   mod 267502417
    = 232823113 (mod 267502417)


    So our answer is 232823113 (mod 267502417).


Verification

So we found that x ≡ 232823113
If this is correct, then the following statements (i.e. the original equations) are true:
859x (mod 637) ≡ 718 (mod 637)
691x (mod 463) ≡ 262 (mod 463)
570x (mod 907) ≡ 977 (mod 907)

Let's see whether that's indeed the case if we use x ≡ 232823113.