I B vettori nella fattorizzazione di un numero intero

Quando si scompone un numero in fattori primi, spesso è utile rappresentare questa fattorizzazione in modo strutturato, soprattutto se si lavora con algoritmi di fattorizzazione avanzati. Ed è qui che entra in gioco il concetto di B-vettore.

Cos’è un B-vettore?

Il B-vettore di un numero intero \( m \) è un vettore che descrive la fattorizzazione di \( m \) rispetto a una base di fattorizzazione \( B \), cioè un insieme prestabilito di numeri primi. In termini semplici, possiamo scrivere \( m \) come un prodotto di primi della base \( B \), con gli esponenti corrispondenti: \[ m \equiv p_1^{\alpha_1} p_2^{\alpha_2} \cdots  p_N^{\alpha_N} \pmod{n} \]

Dove:

  • \( p_1, p_2, ..., p_N \) sono i numeri primi nella base \( B \)
  • \( \alpha_1, \alpha_2, ..., \alpha_N \) sono gli **esponenti** di ciascun fattore primo nella fattorizzazione di \( m \)

Il B-vettore di \( m \) è quindi la sequenza degli esponenti \( (\alpha_1, \alpha_2, ..., \alpha_N) \).

Esempio pratico

In questo esempio prendo la base di fattorizzazione:

\[ B = \{2, 3, 5\} \]

Poi scompongo il numero \( m = 18 \) in fattori primi usando la base di fattorizzazione B.

\[ 18 = 2^1 \cdot 3^2 \cdot 5^0 \]

Il B-vettore del numero $ m $ nella base di fattorizzazione $ B = \{2, 3, 5\} $ sarà quindi:

\[ v(m) = (1, 2, 0) \]

Dove ogni posizione nel vettore corrisponde all'esponente del numero primo corrispondente nella base \( B \).

La riduzione modulo 2

Per semplificare ulteriormente un B-vettore e ottenere informazioni utili sulla natura del numero, è utile ridurre ridurre gli esponenti al modulo 2.

L’idea è semplice:

  • Se un esponente è pari, lo sostituiamo con 0 perché il resto della divisione per due di un numero pari è sempre zero.
  • Se un esponente è dispari, lo sostituiasco con 1, perché il resto della divisione per due di un numero dispari è sempre uno.

\[ \beta_i \equiv \alpha_i \pmod{2} \]

Dove il nuovo vettore ottenuto, detto B-vettore ridotto modulo 2, sarà:

\[ w(m) = (\beta_1, \beta_2, ..., \beta_N) \]

Esempio con riduzione modulo 2

Riprendo il numero \( m = 18 \) con la base di fattorizzazione \( B = \{2, 3, 5\} \):

Il B-vettore del numero è

\[ v(m) = (1, 2, 0) \]

Riduco ogni elemento modulo 2:

  • \( 1 \pmod{2} = 1 \)
  • \( 2 \pmod{2} = 0 \)
  • \( 0 \pmod{2} = 0 \)

Quindi, il B-vettore di $ m=18 $ ridotto al modulo 2 ha queste componenti:

\[ w(m) = (1, 0, 0) \]

A cosa serve la riduzione modulo 2?

Ora viene la parte interessante. Questa rappresentazione semplificata aiuta a individuare se un numero è un quadrato perfetto modulo \( n \).

Un numero è un quadrato perfetto se, nella sua fattorizzazione, tutti gli esponenti sono pari.

questo significa che, in un B-vettore ridotto modulo 2, un numero sarà un quadrato perfetto se il suo B-vettore ridotto è composto solo da zeri.

Esempio con un quadrato perfetto

Considero il numero \( m = 4 \) nella base di fattorizzazione \( B = \{2, 3, 5\} \).

\[ 4 = 2^2 3^0 5^0 = 2^2 \]

Il B-vettore è:

\[ v(m) = (2, 0, 0) \]

Lo riduco al modulo 2:

\[ w(m) = (0, 0, 0) \]

Tutti gli elementi sono zeri, quindi \( m \) è un quadrato perfetto.

Esempio con un numero che non è un quadrato perfetto

Riprendo il numero intero \( m = 18 \) nella base di fattorizzazione \( B = \{2, 3, 5\} \).

\[ 18 = 2^1 3^2 5^0 \]

Il suo B vettore nella base B è

\[ v(m) = (1, 2, 0) \]

il cui B-vettore ridotto al modulo 2 è

\[ w(m) = (1, 0, 0) \]

In questo caso nel B-vettore ridotto c’è almeno un 1, quindi posso già dedurre che il numero 18 non è un quadrato perfetto.

Perché il B-vettore e la riduzione modulo 2 sono importanti? Questa tecnica è fondamentale in applicazioni avanzate come negli algoritmi di fattorizzazione quadratici (es. il metodo di Kraitchik), negli algoritmi di crittografia basati sulla difficoltà della fattorizzazione e nella teoria dei numeri per studiare proprietà dei numeri e delle loro radici quadratiche modulo \( n \).

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Fattorizzazione

Calcolatrice