主权项 |
一种精确求解复数格逐次最小量问题的方法,其特征在于,包括如下步骤:第一步:对给定的生成矩阵G<sub>C</sub>进行CLLL规约,把规约得到的新基直接赋给G<sub>C</sub>,把规约得到的一个单模矩阵赋给T;第二步:构造<img file="FDA0000766465850000011.GIF" wi="172" he="85" />的同构实数格的生成矩阵<img file="FDA0000766465850000012.GIF" wi="603" he="191" />并对G进行QR分解,得到G=QR;第三步:对于k=1,2,...,m,依次进行下述操作:(1)以R和[u<sub>R,1</sub>u<sub>R,2</sub>…u<sub>R,2×(k‑2)+1</sub>u<sub>R,2×(k‑1)</sub>]为输入,以||g<sub>C,idx(k)</sub>||为初始搜索半径,用子算法GSVPC找到满足rank([u<sub>R,1</sub>u<sub>R,2</sub>…u<sub>R,2×(k‑2)+1</sub>u<sub>R,2×(k‑1)</sub>u])=2×(k‑1)+1条件的最短格向量的系数向量,并把这个系数向量返回给u<sub>R,2×(k‑1)+1</sub>;(2)利用u<sub>R,2×(k‑1)+1</sub>直接构造<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>u</mi><mrow><mi>R</mi><mo>,</mo><mn>2</mn><mi>k</mi></mrow></msub><mo>←</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><mo>-</mo><msub><mi>u</mi><mrow><mi>R</mi><mo>,</mo><mn>2</mn><mo>×</mo><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mn>1</mn></mrow></msub><mo>(</mo><mi>m</mi><mo>+</mo><mn>1</mn><mo>:</mo><mn>2</mn><mi>m</mi><mo>)</mo></mtd></mtr><mtr><mtd><msub><mi>u</mi><mrow><mi>R</mi><mo>,</mo><mn>2</mn><mo>×</mo><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mn>1</mn></mrow></msub><mo>(</mo><mn>1</mn><mo>:</mo><mi>m</mi><mo>)</mo></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000766465850000013.GIF" wi="761" he="188" /></maths>和u<sub>C,k</sub>←u<sub>R,2×(k‑1)+1</sub>(1:m)+i·u<sub>R,2×(k‑1)+1</sub>(m+1:2m);第四步:返回U←T·[u<sub>C,1</sub>u<sub>C,2</sub>…u<sub>C,m</sub>]。 |