Restes chinois : ichinrem, ichrem

### 6.7.25 Restes chinois : ichinrem, ichrem

ichinrem([a,p],[b,q]) ou ichrem([a,p],[b,q]) désigne une liste [c,lcm(p,q)] formée de deux entiers.
Le premier nombre c est tel que

∀ k ∈ ℤ, d=c+ k × lcm(p,q)

vérifie

d=a (mod p ), d=b (mod q )

Si p et q sont premiers entre eux, il existe toujours une solution d et toutes les solutions sont alors congrues modulo p*q.
Exemples :

1. Trouver les solutions de :

   ⎧ ⎨ ⎩ |
   x= | 3 (mod 5)
   x= | 9 (mod 13)

   On tape :
   ichinrem([3,5],[9,13])
   ou on tape :
   ichrem([3,5],[9,13])
   On obtient :
   [-17,65]
   ce qui veut dire que x=-17 (mod 65)
   On peut aussi taper :
   ichrem(3% 5,9% 13)
   On obtient :
   -17% 65
2. Trouver les solutions de :

   ⎧ ⎪ ⎨ ⎪ ⎩ |
   x= | 3 (mod 5)
   x= | 4 (mod 7)
   x= | 1 (mod 9)

   On tape tout d’abord :
   tmp:=ichinrem([3,5],[4,7])
   ou on tape :
   tmp:=ichrem([3,5],[4,7])
   On obtient :
   [-17,35]
   puis on tape
   ichinrem([1,9],tmp)
   ou on tape :
   ichrem([1,9],tmp)
   On obtient :
   [-17,315]
   ce qui veut dire que x=-17 (mod 315)
   On peut aussi taper directement :
   ichinrem([3% 5,4% 7,1% 9])
   On obtient :
   -17% 315