Livro de Matemática

Congruências lineares

As congruências lineares são fundamentais na teoria dos números porque:

  1. São a base da aritmética modular
    Elas permitem resolver equações em que estamos interessados apenas no resto da divisão. Isso é crucial para trabalhar com ciclos, padrões repetitivos e propriedades dos números inteiros.
  2. Aplicações em criptografia
    Congruências lineares aparecem:

    • no algoritmo RSA (criptografia assimétrica),
    • na geração de chaves públicas e privadas,
    • no cálculo de inversos modulares, que é essencial para decodificar mensagens com segurança.
  3. Usadas em algoritmos e teoria computacional

    • Algoritmos de divisão rápida,
    • Algoritmos para encontrar mínimos múltiplos comuns ou máximo divisor comum,
    • Verificação de propriedades em programação competitiva ou matemática computacional.
  4. Aplicações em problemas do cotidiano
    Elas ajudam a resolver:

    • Problemas de sincronização de horários,
    • Cálculos de códigos de verificação (ex: CPF, ISBN),
    • Questões envolvendo ciclos, rodízios, padrões periódicos.

Primeiras definições

Se n ∈ ℤ* tal que n > 1, os números a, b, ∈ ℤ são congruentes módulo n se n | (a – b).

a ≡ b (mod n)

Lê-se a é congruente a b módulo n, ou seja, a e b deixam o mesmo resto na divisão por n.

Exemplos:

9 ≡ 5 (mod 2) → 2 | 9 – 5
23 ≡ 11 (mod 6) → 6 | 23 – 11

Propriedades

  • Reflexividade: a ≡ a (mod n)
  • Simetria: se a ≡ b (mod n), então b ≡ a (mod n)
  • Transitividade: se a ≡ b (mod n) e b ≡ c (mod n), então a ≡ c (mod n)
  • Se a ≡ b (mod n) e c ≡ d (mod n), então a + c ≡ b + d (mod n)
  • Se a ≡ b (mod n) e c ≡ d (mod n), então ac ≡ bd (mod n)
  • Se a ≡ b (mod n), então am ≡ bm (mod n) ∀ n ∈ ℕ*
  • ap ≡ a (mod p) com p primo. → Pequeno Teorema de Fermat
  • Se p ∤ a, então p | ap – 1 – 1, com p primo
  • se p é primo, então (p – 1)! ≡ – 1 (mod p) → Teorema de Wilson

Exemplos

1) Encontre o resto da divisão de 2100 por 11.


Vamos utilizar a seguinte estrutura base: Se p ∤ a, então p | ap – 1 – 1, com p primo.

11 é um número primo, logo 11 ∤ 2, então 11 | 211 – 1 – 1, ou seja, 211 – 1 ≡ 1 (mod 11).

210 ≡ 1 (mod 11)

Utilizando a propriedade am ≡ bm (mod n) temos:

(210)10 ≡ 110 (mod 11)

2100 ≡ 1 (mod 11)

logo, o resto da divisão de 2100 por 11 vale 1.

2) Encontre o resto da divisão de 746 por 15.


Vamos utilizar as propriedades aprendidas.

a ≡ a (mod n)
7 ≡ 7 (mod 15)
7² ≡ 4 (mod 15)
7³ ≡ 13 (mod 15)
74 ≡ 1 (mod 15)

O expoente 46 = 4 . 11 + 2

7² ≡ 4 (mod 15)
(74)11 ≡ 111 (mod 15)

Multiplicando as congruências obtemos:

744 . 7² ≡ 1 . 4 (mod 15)
746 ≡ 4 (mod 15)

Logo, o resto procurado vale 4.

Classes de congruência

Classes de congruência são conjuntos de números inteiros que são “congruentes entre si” módulo 𝑚, ou seja, que deixam o mesmo resto quando divididos por um número inteiro 𝑚.

Definição formal

Dado um número inteiro m > 1 (o módulo), e um inteiro a, a classe de congruência de a módulo m é o conjunto de todos os inteiros que são congruentes a a módulo m. Notamos isso por:

[a]m = {x ∈ Z | x ≡ a (mod m)}

ou seja, é o conjunto de todos os inteiros x tais que x – a é múltiplo de m.

Exemplo

Se m = 5, temos as seguintes classes de congruência possíveis:

[0]5 = {…, -10, -5, 0, 5, 10, 15, …} deixam resto 0 na divisão por 5.
[1]5 = {…, -9, -4, 1, 6, 11, …} deixam resto 1 na divisão por 5.
[2]5 = {…, -8, -3, 2, 7, 12, …} deixam resto 2 na divisão por 5.
[3]5 = {…, -7, -2, 3, 8, 13, …} deixam resto 3 na divisão por 5.
[4]5 = {…, -6, -1, 4, 9, 14 …} deixam resto 4 na divisão por 5.

Qualquer número inteiro pertence a uma dessas 5 classes. Por exemplo, o número 17 pertence a classe [2]5, porque 17 ≡ 2 (mod 5).

Isso nos leva a querer entender o que são conjuntos completos de resíduos.
Note que o conjunto S={0,1,2,3,4} é um conjunto completo de resíduos módulo 5. Da mesma forma o conjunto T = {5,11,22,33,44} também é um conjunto completo de resíduos módulo 5.
Percebemos que um conjunto de resíduos módulo n possui exatamente n elementos.

Portanto, um conjunto M = {r0, r1, …, rk} é um sistema completo de resíduos módulo n se:

  • ri ≡ rj (mod n) ⇔ i = j, ou seja, todos os elementos dois a dois são incongruentes módulo n.
  • Para qualquer inteiro a, tivermos a ≡ ri (mod n) para algum ri de M.

Congruência linear

Chamamos de congruência linear a toda equação da forma ax ≡ b (mod m). Todo inteiro x0, tal que ax0 ≡ b (mod m) é uma solução da equação ax ≡ b (mod m).

Se x0 é uma solução da equação ax ≡ b (mod m), então m | (ax0 – b), logo ax0 – b = my0. Fazendo algumas manipulações chegamos em ax0 + (-m)y0 = b. Por fim, encontrar a solução da equação ax ≡ b (mod m) significa encontrar a solução da equação diofantina ax0 + (-m)y0 = b. E já sabemos de textos anteriores que uma equação diofantina tem solução se o mdc dos seus coeficientes dividir o termo independente, ou seja, se o mdc(a,-m) = mdc(a,m) dividir b.