### 1.6.23 Κινεζικά υπόλοιπα για λίστες ακεραίων : chrem

chrem λαμβάνει ως ορίσματα 2 λίστες ακεραίων ίδιου μεγέθους.
chrem επιστρέφει μια λίστα 2 ακεραίων.
Για παράδειγμα, chrem([a,b,c],[p,q,r]) επιστρέφει την λίστα [x,lcm(p,q,r)] όπου x=a mod p και x=b mod q και x=c mod r.
Μία λύση x πάντα υπάρχει αν p, q, r είναι πρώτοι μεταξύ τους, και όλες οι λύσεις ειναι ίσοδύναμες modulo p*q*r.
Προσοχή στην σειρά των παραμέτρων, πράγματι:
chrem([a,b],[p,q])=ichrem([a,p],[b,q])=
ichinrem([a,p],[b,q])
Παραδείγματα :
Λύστε :

⎧
⎨
⎩

x= | 3 (mod 5)
x= | 9 (mod 13)

Είσοδος :

chrem([3,9],[5,13])

Έξοδος :

[-17,65]

άρα, x=-17 (mod 65)
Λύστε :

⎧
⎪
⎨
⎪
⎩

x= | 3 (mod 5)
x= | 4 (mod 6)
x= | 1 (mod 9)

Είσοδος :

chrem([3,4,1],[5,6,9])

Έξοδος :

[28,90]

άρα x=28 (mod 90)
Σχόλιο
chrem μπορεί να χρησιμοποιηθεί για να βρεθούν οι συντελεστές πολυωνύμου οι οποίοι είναι γνωστοί modulo αρκετών ακεραίων, για παράδειγμα να βρείτε ax+b (modulo) 315=5 × 7 × 9 σύμφωνα με τις παραδοχές:

⎧
⎪
⎨
⎪
⎩

a= | 3 (mod 5)
a= | 4 (mod 7)
a= | 1 (mod 9)

,

⎧
⎪
⎨
⎪
⎩

b= | 1 (mod 5)
b= | 2 (mod 7)
b= | 3 (mod 9)

Είσοδος :

chrem([3x+1,4x+2,x+3],[5,7,9])

Έξοδος :

[-17x+156),315]

άρα, a=-17 (mod 315) και b=156 (mod 315).