Skip to content

Commit

Permalink
address comments, add modular ODs for perf. cent. ext.
Browse files Browse the repository at this point in the history
  • Loading branch information
ThomasBreuer committed Jan 28, 2024
1 parent f0b3b17 commit 91ec387
Showing 1 changed file with 20 additions and 8 deletions.
28 changes: 20 additions & 8 deletions experimental/OrthogonalDiscriminants/src/data.jl
Original file line number Diff line number Diff line change
Expand Up @@ -147,20 +147,32 @@ function orthogonal_discriminants(tbl::Oscar.GAPGroupCharacterTable)
res[mp[l[2]]] = l[4]
end
# Set values for faithful characters if applicable.
perf = (length(filter(i -> degree(tbl[i]) == 1, 1:length(tbl))) == 1)
if p == 0 && perf && order(tbl) == 2*order(facttbl)
#TODO: compute the reductions mod p (not dividing the group order)
perf = (count(chi -> degree(chi) == 1, tbl) == 1)
if perf && order(tbl) == 2*order(facttbl) && p != 2
# deal with the faithful characters of a perfect central extension 2.G,
# the image of the spinor norm is trivial
for i in 1:length(tbl)
chi = tbl[i]
deg = degree(chi)
ind = indicator(chi)
if ind == 1 && length(class_positions_of_kernel(chi)) == 1
if mod(deg, 4 ) == 0
res[i] = "1"
elseif mod(deg, 2 ) == 0
res[i] = "-1"
if mod(deg, 4) == 0
if p == 0
res[i] = "1"
else
res[i] = "O+"
end
elseif mod(deg, 2) == 0
if p == 0
res[i] = "-1"
else
# Check whether -1 is a square in the character field.
if mod(p-1, 4) == 0 || mod(degree(character_field(chi)[1]), 2) == 0
res[i] = "O+"

Check warning on line 171 in experimental/OrthogonalDiscriminants/src/data.jl

View check run for this annotation

Codecov / codecov/patch

experimental/OrthogonalDiscriminants/src/data.jl#L170-L171

Added lines #L170 - L171 were not covered by tests
else
res[i] = "O-"

Check warning on line 173 in experimental/OrthogonalDiscriminants/src/data.jl

View check run for this annotation

Codecov / codecov/patch

experimental/OrthogonalDiscriminants/src/data.jl#L173

Added line #L173 was not covered by tests
end
end
end
end
end
Expand Down Expand Up @@ -532,7 +544,7 @@ function all_od_infos(L...)
(!comment_matches(comment)) && (good_comment = false)
elseif comment_matches isa String
(!(comment_matches in comment)) && (good_comment = false)
elseif is_empty(intersect(comment, comment_matches ))
elseif is_empty(intersect(comment, comment_matches))

Check warning on line 547 in experimental/OrthogonalDiscriminants/src/data.jl

View check run for this annotation

Codecov / codecov/patch

experimental/OrthogonalDiscriminants/src/data.jl#L547

Added line #L547 was not covered by tests
good_comment = false
end
end
Expand Down

0 comments on commit 91ec387

Please sign in to comment.