Redução de bases de rede
Em matemática, a redução de bases de uma rede consiste em transformar qualquer base de uma rede em uma base quase ortogonal. Esse processo usa a noção de base fracamente reduzida.
Bases fracamente reduzidas
Uma base fracamente reduzida é uma base de rede cujos vetores são quase dois por dois ortogonais , no sentido de que, se fosse ortogonalizada usando o algoritmo de Gram-Schmidt , os coeficientes usados para endireitar os vetores seriam menores, em valor absoluto aquele 1/2.
Mais formalmente: Seja uma base de rede, e a base ortogonal obtida graças a Gram-Schmidt , de modo que:
B=(e1,...,enão){\ displaystyle B = (e_ {1}, ..., e_ {n})}
B¯=(f1,...,fnão){\ displaystyle {\ overline {B}} = (f_ {1}, ..., f_ {n})}![{\ displaystyle {\ overline {B}} = (f_ {1}, ..., f_ {n})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/757818b44c054ee5c268efa9daaf0508287198b4)
feu=eeu-∑j=1eu-1noeu,jfj{\ displaystyle f_ {i} = e_ {i} - \ sum _ {j = 1} ^ {i-1} a_ {i, j} f_ {j}}
, onde .
noeu,j=<eeu,fj><fj,fj>{\ displaystyle a_ {i, j} = {\ dfrac {<e_ {i}, f_ {j}>} {<f_ {j}, f_ {j}>}}}![{\ displaystyle a_ {i, j} = {\ dfrac {<e_ {i}, f_ {j}>} {<f_ {j}, f_ {j}>}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/3000e930a1c510009536ce935f82cab35733db9c)
A base é ligeiramente reduzida quando para todos , .
B{\ displaystyle B}
eu,j{\ displaystyle i, j}
|noeu,j|⩽12{\ displaystyle | a_ {i, j} | \ leqslant {\ dfrac {1} {2}}}![{\ displaystyle | a_ {i, j} | \ leqslant {\ dfrac {1} {2}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9cbd0b12a55bf645e0c7b9abcbe01bcfaaa5e898)
Notamos que se a base já fosse ortogonal, os coeficientes seriam todos zero. Intuitivamente, uma base ligeiramente reduzida corresponde a uma base ortogonal com uma precisão de 0,5.
B{\ displaystyle B}
noeu,j{\ displaystyle a_ {i, j}}![{\ displaystyle a_ {i, j}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4bb5a346f58c6568306a02596dd318d1b7e6b2c2)
Baixa redução de bases
Na realidade, qualquer base de rede pode ser fracamente reduzida. Basta aplicar o algoritmo detalhado abaixo:
Entrée : une base de réseau
B=(e1,...,en){\displaystyle B=(e_{1},...,e_{n})}![{\displaystyle B=(e_{1},...,e_{n})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2a6e8c9686f31c7203a85be86d5ee3ed1688e072)
Sortie : une base faiblement réduite issue de
B{\displaystyle B}![B](https://wikimedia.org/api/rest_v1/media/math/render/svg/47136aad860d145f75f3eed3022df827cee94d7a)
ReducFaible(B) :
(f_1,...,f_n) = GramSchmidt(B)
Pour tout
(i,j){\displaystyle (i,j)}
ai,j←<ei,fj><fj,fj>{\displaystyle a_{i,j}\leftarrow {\dfrac {<e_{i},f_{j}>}{<f_{j},f_{j}>}}}![{\displaystyle a_{i,j}\leftarrow {\dfrac {<e_{i},f_{j}>}{<f_{j},f_{j}>}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/49df5347d1f76ae37f84ef3024b9772bc47a4236)
Si pour tout couple
(i,j){\displaystyle (i,j)}![(i,j)](https://wikimedia.org/api/rest_v1/media/math/render/svg/8ef21910f980c6fca2b15bee102a7a0d861ed712)
,
|ai,j|⩽12{\displaystyle |a_{i,j}|\leqslant {\dfrac {1}{2}}}![{\displaystyle |a_{i,j}|\leqslant {\dfrac {1}{2}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9cbd0b12a55bf645e0c7b9abcbe01bcfaaa5e898)
retourne B
Sinon
Soit
(i,j){\displaystyle (i,j)}![(i,j)](https://wikimedia.org/api/rest_v1/media/math/render/svg/8ef21910f980c6fca2b15bee102a7a0d861ed712)
le plus grand couple selon l'ordre lexicographique tel que
|ai,j|>12{\displaystyle |a_{i,j}|>{\dfrac {1}{2}}}
a←{\displaystyle a\leftarrow }![{\displaystyle a\leftarrow }](https://wikimedia.org/api/rest_v1/media/math/render/svg/85da0ee77a373ceebb0e7b485a3c1a93c02dbd3e)
l'entier le plus proche de
ai,j{\displaystyle a_{i,j}}
ei←ei−aej{\displaystyle e_{i}\leftarrow e_{i}-ae_{j}}![{\displaystyle e_{i}\leftarrow e_{i}-ae_{j}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/60797c6f0ed3d2cfde009d3a0d8ce879e719709a)
retourne ReducFaible(B)
Correção de algoritmo
Notamos a base obtida após a execução de um loop.
B′=(e1′,...,enão′){\ displaystyle B '= (e' _ {1}, ..., e '_ {n})}![{\ displaystyle B '= (e' _ {1}, ..., e '_ {n})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/1fccf5c00b6902819cb3fe8b3988882028969ebb)
Nós temos .
eeu′=eeu-noej=feu+∑k<eunoeu,kfk-nof,j-∑k<jnoj,kfk{\ displaystyle e '_ {i} = e_ {i} -ae_ {j} = f_ {i} + \ sum _ {k <i} a_ {i, k} f_ {k} -a_ {f, j} - \ sum _ {k <j} a_ {j, k} f_ {k}}![{\ displaystyle e '_ {i} = e_ {i} -ae_ {j} = f_ {i} + \ sum _ {k <i} a_ {i, k} f_ {k} -a_ {f, j} - \ sum _ {k <j} a_ {j, k} f_ {k}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/13696c8001b287b9fef61d12494d09996ad64ab4)
Vamos mostrar que casais maiores ou iguais a não representam um problema.
(eu,j){\ displaystyle (i, j)}![(eu j)](https://wikimedia.org/api/rest_v1/media/math/render/svg/8ef21910f980c6fca2b15bee102a7a0d861ed712)
Deixe ser a base obtida por Gram-Schmidt em . Observam-se os coeficientes resultantes da ortogonalização.
(f1′,...,fnão′){\ displaystyle (f '_ {1}, ..., f' _ {n})}
B′{\ displaystyle B '}
nok,eu′{\ displaystyle a '_ {k, l}}![{\ displaystyle a '_ {k, l}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8fd94ce491ccae1f041ed4be8507a14d0aa073ca)
Temos para todos e para todos , .
k≠eu{\ displaystyle k \ neq i}
eu{\ displaystyle l}
nok,eu′=nok,eu{\ displaystyle a '_ {k, l} = a_ {k, l}}![{\ displaystyle a '_ {k, l} = a_ {k, l}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c73022f6388bc63c4420216578e450677742c060)
Caso contrário, quando , se também tivermos .
k=eu{\ displaystyle k = i}
eu>j{\ displaystyle l> j}
noeu,eu′=noeu,eu{\ displaystyle a '_ {i, l} = a_ {i, l}}![{\ displaystyle a '_ {i, l} = a_ {i, l}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/42f31c38bebca76ae73b39611f776874c1cca7c9)
Finalmente, nos outros casos ,.
noeu,eu′=noeu,eu-vsnoj,eu{\ displaystyle a '_ {i, l} = a_ {i, l} -ca_ {j, l}}![{\ displaystyle a '_ {i, l} = a_ {i, l} -ca_ {j, l}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/86cba4915328b5744f5a4d87549e449289452fc7)
Os para os pares maiores estritamente do que não são modificados, portanto, são sempre de valor absoluto inferior a 1/2. Além disso,
nok,eu{\ displaystyle a_ {k, l}}
(eu,j){\ displaystyle (i, j)}
|noeu,j′|noeu,j-no|⩽12{\ displaystyle | a '_ {i, j} | a_ {i, j} -a | \ leqslant {\ dfrac {1} {2}}}
Bases reduzidas
Diz-se que uma base de rede é reduzida quando é fracamente reduzida e satisfaz a seguinte propriedade:
B=(e1,...,enão){\ displaystyle B = (e_ {1}, ..., e_ {n})}![{\ displaystyle B = (e_ {1}, ..., e_ {n})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2a6e8c9686f31c7203a85be86d5ee3ed1688e072)
Se for a ortogonalização de Gram-Schmidt de coeficientes , devemos ter:
(f1,...,fnão){\ displaystyle (f_ {1}, ..., f_ {n})}
B{\ displaystyle B}
noeu,j{\ displaystyle a_ {i, j}}![{\ displaystyle a_ {i, j}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4bb5a346f58c6568306a02596dd318d1b7e6b2c2)
||feu+1+noeu+1,eufeu||2⩾34||feu||2{\ displaystyle || f_ {i + 1} + a_ {i + 1, i} f_ {i} || ^ {2} \ geqslant {\ dfrac {3} {4}} || f_ {i} || ^ {2}}
Os algoritmos a seguir mostram que qualquer base pode ser reduzida ao tempo polinomial.
Referências
-
Redução de malha (in)
-
Abuaf Roland e Boyer Ivan, " Factorization inZ[X]{\ displaystyle \ mathbb {Z} [X]}
", palestra do Mestre proposta por François Loeser ,20 de junho de 2007( leia online )
-
(em) Hanrot William, " Worst-Case Hermit-Korkine-Zolotarev Reduced Lattice Basics " , arXiv: 0801.3331 [math.NT] ,2008( leia online )
Artigos relacionados
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">