Given lattice basis b_1, b_2, b_3 Sage gives the LLL-reduced basis:
[ 3 0 0] [-1 5 0] [ 0 1 16] [ 3 0 0] [-1 5 0] [ 0 1 16] |
Solve it now step by step. Compute first Gram-Schmidt orthogonalization to obtain \mu_{k,i}'s and b_i^*'s.
[ 8 6 16] [ -133/89 412/89 -88/89] [1600/731 320/731 -920/731] [ 8 6 16] [ -133/89 412/89 -88/89] [1600/731 320/731 -920/731] |
Size reduce b_i's.
[ 8 6 16] [-1 5 0] [ 3 0 0] [ 8 6 16] [-1 5 0] [ 3 0 0] |
Update \mu_{k,i}'s.
(11/178, 6/89, -133/731) (11/178, 6/89, -133/731) |
Check if Lov\'asz condition is violated.
False False |
Yes. So swap b_1 and b_2.
[-1 5 0] [ 8 6 16] [ 3 0 0] [-1 5 0] [ 8 6 16] [ 3 0 0] |
Compute Gram-Schmidt orthogonalization again.
[ -1 5 0] [ 115/13 23/13 16] [1600/731 320/731 -920/731] [ -1 5 0] [ 115/13 23/13 16] [1600/731 320/731 -920/731] |
Size reduce b_i's.
[-1 5 0] [ 9 1 16] [ 3 0 0] [-1 5 0] [ 9 1 16] [ 3 0 0] |
Update \mu_{k,i}'s.
(-2/13, -3/26, 115/1462) (-2/13, -3/26, 115/1462) |
Check if Lov\'asz condition is violated.
True True |
False False |
Yes. Swap b_2 and b_3.
[-1 5 0] [ 3 0 0] [ 9 1 16] [-1 5 0] [ 3 0 0] [ 9 1 16] |
Gram-Schmidt orthogonalization.
[ -1 5 0] [75/26 15/26 0] [ 0 0 16] [ -1 5 0] [75/26 15/26 0] [ 0 0 16] |
Size reduce b_i's.
[-1 5 0] [ 3 0 0] [ 0 1 16] [-1 5 0] [ 3 0 0] [ 0 1 16] |
Update \mu_{k,i}'s.
(-3/26, 5/26, 1/15) (-3/26, 5/26, 1/15) |
Check if Lov\'asz is satisfied.
False False |
No. Swap b_1 and b_2.
[ 3 0 0] [-1 5 0] [ 0 1 16] [ 3 0 0] [-1 5 0] [ 0 1 16] |
Gram-Schmidt orthogonalization again.
[ 3 0 0] [ 0 5 0] [ 0 0 16] [ 3 0 0] [ 0 5 0] [ 0 0 16] |
Size reduce b_i's.
[ 3 0 0] [-1 5 0] [ 0 1 16] [ 3 0 0] [-1 5 0] [ 0 1 16] |
Update \mu_{k,i}'s.
(-1/3, 0, 1/5) (-1/3, 0, 1/5) |
Check Lov\'asz condition.
True True |
True True |
Done.
[ 3 0 0] [-1 5 0] [ 0 1 16] [ 3 0 0] [-1 5 0] [ 0 1 16] |