Skip to content

Commit

Permalink
add method to construct abelian direct product of groups via small group
Browse files Browse the repository at this point in the history
  • Loading branch information
Fe-r-oz committed Oct 14, 2024
1 parent 4724811 commit aa12524
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions ext/QuantumCliffordHeckeExt/lifted_product.jl
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,26 @@ function two_block_group_algebra_codes(a::GroupAlgebraElem, b::GroupAlgebraElem)
LPCode(A, B)
end

"""
[[72, 8, 9]] 2BGA code from Table 1 of [lin2024quantum](@cite) with direct product
of `C₉ x C₄`.
```jldoctest
julia> c = two_block_group_algebra_codes([0, 28], [0, 9, 18, 12, 29, 14], (36, 2));
julia> code_n(c), code_k(c)
(72, 8)
```
"""
function two_block_group_algebra_codes(a_shifts::Array{Int}, b_shifts::Array{Int}, sg::Tuple{Int,Int})
m, i = sg
g1 = small_group(m, i)
GA = group_algebra(GF(2), g1)
a = sum(GA[n%dim(GA)+1] for n in a_shifts)
b = sum(GA[n%dim(GA)+1] for n in b_shifts)
two_block_group_algebra_codes(a, b)

Check warning on line 170 in ext/QuantumCliffordHeckeExt/lifted_product.jl

View check run for this annotation

Codecov / codecov/patch

ext/QuantumCliffordHeckeExt/lifted_product.jl#L164-L170

Added lines #L164 - L170 were not covered by tests
end

"""
[[48, 8, 6]] 2BGA code from Table 3 of [lin2024quantum](@cite) with dihedral group of
order `l = 12`.
Expand Down

0 comments on commit aa12524

Please sign in to comment.