CRT

xโ‰กa1modn1xโ‰กa2modn2โ‹ฏxโ‰กakmodnk

N=โˆi=1kni

Where the

ni are pairwise coprime. then there is one and only one integer
x,0โ‰คx<N
satisfy them.

xโ‰กa1modn1xโ‰กa2modn2

n1m1+n2m2=1 calculate
m1,m2
by Extended Euclidean algorithm

x=a1n2m2+a2n1m1=a1(1โˆ’n1m1)+a2n1m1=a1n2m2+a2(1โˆ’n2m2)=a1+(a2โˆ’a1)m1n1=a2+(a1โˆ’a2)n2m2

example

xโ‰ก2mod3xโ‰ก3mod5xโ‰ก2mod7

calculate:

3m1+5m2=1

r0=a=5s0=1t0=0r1=b=3s1=0t1=1r2=r0โˆ’q1r1=5โˆ’1โ‹…3=2s2=s0โˆ’q1s1=1โˆ’1โ‹…0=1t2=t0โˆ’q1t1=0โˆ’1โ‹…1=โˆ’1r3=r1โˆ’q2r2=3โˆ’1โ‹…2=1s3=s1โˆ’q2s2=0โˆ’1โ‹…1=โˆ’1t3=t1โˆ’q2t2=1โˆ’1โ‹…(โˆ’1)=2r4=r2โˆ’q3r3=2โˆ’2โ‹…1=0s4=s2โˆ’q3s3=1โˆ’2โ‹…(โˆ’1)=3t4=t2โˆ’q3t3=โˆ’1โˆ’2โ‹…2=โˆ’5

gcd(5,3)=1
m1=s3=2

m2=t3=โˆ’1

3โ‹…2+5โ‹…(โˆ’1)=1

x1,2=a1n2m2+a2n1m1=2โ‹…5โ‹…(โˆ’1)+3โ‹…3โ‹…2=8

xโ‰ก8mod15xโ‰ก2mod7

calculate:

15m1+7m2=1

r0=a=15s0=1t0=0r1=b=7s1=0t1=1r2=r0โˆ’q1r1=15โˆ’2โ‹…7=1s2=s0โˆ’q1s1=1โˆ’2โ‹…0=1t2=t0โˆ’q1t1=0โˆ’2โ‹…1=โˆ’2r3=r1โˆ’q2r2=7โˆ’7โ‹…1=0s3=s1โˆ’q2s2=0โˆ’7โ‹…1=โˆ’7t3=t1โˆ’q2t2=1โˆ’7โ‹…(โˆ’2)=15

gcd(15,7)=1
m1=s3=1

m2=t3=โˆ’2

x=8โ‹…7โ‹…(โˆ’2)+2โ‹…15โ‹…1=โˆ’112+30=โˆ’82

xโ‰กโˆ’82โ‰ก=โˆ’82+15โ‹…7=23mod105