|
606 | 606 | @test_broken minimum_distance(S) == 8 |
607 | 607 | end |
608 | 608 |
|
609 | | - # @testset "CoprimeBivariateBicycleCode" begin |
610 | | - # # coprime bivariate bicycle codes |
611 | | - # S, P = polynomial_ring(Oscar.Nemo.Native.GF(2), :P) |
612 | | - |
613 | | - # # Table 2 of https://arxiv.org/pdf/2408.10001v1 |
614 | | - # # [[30, 4, 6]] |
615 | | - # l = 3 |
616 | | - # m = 5 |
617 | | - # R, _ = residue_ring(S, P^(l * m) - 1) |
618 | | - # a = R(1 + P + P^2) |
619 | | - # b = R(P + P^3 + P^8) |
620 | | - # Q = CoprimeBivariateBicycleCode(a, b) |
621 | | - # @test length(Q) == 30 |
622 | | - # @test dimension(Q) == 4 |
623 | | - # @test_broken minimum_distance(Q) == 6 |
624 | | - |
625 | | - # # [[42, 6, 6]] |
626 | | - # l = 3 |
627 | | - # m = 7 |
628 | | - # R, _ = residue_ring(S, P^(l * m) - 1) |
629 | | - # a = R(1 + P^2 + P^3) |
630 | | - # b = R(P + P^3 + P^11) |
631 | | - # Q = CoprimeBivariateBicycleCode(a, b) |
632 | | - # @test length(Q) == 42 |
633 | | - # @test dimension(Q) == 6 |
634 | | - # @test_broken minimum_distance(Q) == 6 |
635 | | - |
636 | | - # # [[70, 6, 8]] |
637 | | - # l = 5 |
638 | | - # m = 7 |
639 | | - # R, _ = residue_ring(S, P^(l * m) - 1) |
640 | | - # a = R(1 + P + P^5) |
641 | | - # b = R(1 + P + P^12) |
642 | | - # Q = CoprimeBivariateBicycleCode(a, b) |
643 | | - # @test length(Q) == 70 |
644 | | - # @test dimension(Q) == 6 |
645 | | - # @test_broken minimum_distance(Q) == 8 |
646 | | - |
647 | | - # # [[108, 12, 6]] |
648 | | - # l = 2 |
649 | | - # m = 27 |
650 | | - # R, _ = residue_ring(S, P^(l * m) - 1) |
651 | | - # a = R(P^2 + P^5 + P^44) |
652 | | - # b = R(P^8 + P^14 + P^47) |
653 | | - # Q = CoprimeBivariateBicycleCode(a, b) |
654 | | - # @test length(Q) == 108 |
655 | | - # @test dimension(Q) == 12 |
656 | | - # @test_broken minimum_distance(Q) == 6 |
657 | | - |
658 | | - # # [[126, 12, 10]] |
659 | | - # l = 7 |
660 | | - # m = 9 |
661 | | - # R, _ = residue_ring(S, P^(l * m) - 1) |
662 | | - # a = R(1 + P + P^58) |
663 | | - # b = R(P^3 + P^16 + P^44) |
664 | | - # Q = CoprimeBivariateBicycleCode(a, b) |
665 | | - # @test length(Q) == 126 |
666 | | - # @test dimension(Q) == 12 |
667 | | - # @test_broken minimum_distance(Q) == 10 |
668 | | - # end |
| 609 | + @testset "CoprimeBivariateBicycleCode" begin |
| 610 | + # coprime bivariate bicycle codes |
| 611 | + S, P = polynomial_ring(Oscar.Nemo.Native.GF(2), :P) |
| 612 | + |
| 613 | + # Table 2 of https://arxiv.org/pdf/2408.10001v1 |
| 614 | + # [[30, 4, 6]] |
| 615 | + l = 3 |
| 616 | + m = 5 |
| 617 | + R, _ = residue_ring(S, P^(l * m) - 1) |
| 618 | + a = R(1 + P + P^2) |
| 619 | + b = R(P + P^3 + P^8) |
| 620 | + Q = CoprimeBivariateBicycleCode(a, b) |
| 621 | + @test length(Q) == 30 |
| 622 | + @test dimension(Q) == 4 |
| 623 | + @test_broken minimum_distance(Q) == 6 |
| 624 | + |
| 625 | + # [[42, 6, 6]] |
| 626 | + l = 3 |
| 627 | + m = 7 |
| 628 | + R, _ = residue_ring(S, P^(l * m) - 1) |
| 629 | + a = R(1 + P^2 + P^3) |
| 630 | + b = R(P + P^3 + P^11) |
| 631 | + Q = CoprimeBivariateBicycleCode(a, b) |
| 632 | + @test length(Q) == 42 |
| 633 | + @test dimension(Q) == 6 |
| 634 | + @test_broken minimum_distance(Q) == 6 |
| 635 | + |
| 636 | + # [[70, 6, 8]] |
| 637 | + l = 5 |
| 638 | + m = 7 |
| 639 | + R, _ = residue_ring(S, P^(l * m) - 1) |
| 640 | + a = R(1 + P + P^5) |
| 641 | + b = R(1 + P + P^12) |
| 642 | + Q = CoprimeBivariateBicycleCode(a, b) |
| 643 | + @test length(Q) == 70 |
| 644 | + @test dimension(Q) == 6 |
| 645 | + @test_broken minimum_distance(Q) == 8 |
| 646 | + |
| 647 | + # [[108, 12, 6]] |
| 648 | + l = 2 |
| 649 | + m = 27 |
| 650 | + R, _ = residue_ring(S, P^(l * m) - 1) |
| 651 | + a = R(P^2 + P^5 + P^44) |
| 652 | + b = R(P^8 + P^14 + P^47) |
| 653 | + Q = CoprimeBivariateBicycleCode(a, b) |
| 654 | + @test length(Q) == 108 |
| 655 | + @test dimension(Q) == 12 |
| 656 | + @test_broken minimum_distance(Q) == 6 |
| 657 | + |
| 658 | + # [[126, 12, 10]] |
| 659 | + l = 7 |
| 660 | + m = 9 |
| 661 | + R, _ = residue_ring(S, P^(l * m) - 1) |
| 662 | + a = R(1 + P + P^58) |
| 663 | + b = R(P^3 + P^16 + P^44) |
| 664 | + Q = CoprimeBivariateBicycleCode(a, b) |
| 665 | + @test length(Q) == 126 |
| 666 | + @test dimension(Q) == 12 |
| 667 | + @test_broken minimum_distance(Q) == 10 |
| 668 | + end |
669 | 669 | end |
0 commit comments