Skip to content

Commit

Permalink
Avoid computing determinants for testing Killing matrices for
Browse files Browse the repository at this point in the history
non-degeneracy
  • Loading branch information
lgoettgens committed Sep 6, 2024
1 parent 0cd14ac commit d927720
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions lib/alglie.gi
Original file line number Diff line number Diff line change
Expand Up @@ -2163,7 +2163,7 @@ InstallMethod( IsSimpleAlgebra,
function( L )
if Characteristic( LeftActingDomain( L ) ) <> 0 then
TryNextMethod();
elif DeterminantMat( KillingMatrix( Basis( L ) ) ) = 0 then
elif RankMat( KillingMatrix( Basis( L ) ) ) = Dimension( L ) then
return false;
else
return Length( DirectSumDecomposition( L ) ) = 1;
Expand Down Expand Up @@ -2371,8 +2371,7 @@ InstallMethod( SemiSimpleType,

# We test whether the Killing form of `L' is nondegenerate.

d:= DeterminantMat( KillingMatrix( Basis( L ) ) );
if IsZero( d ) then
if RankMat( KillingMatrix( Basis( L ) ) ) <> Dimension( L ) then
Info( InfoAlgebra, 1,
"The Killing form of <L> is degenerate." );
return fail;
Expand Down Expand Up @@ -2894,7 +2893,7 @@ InstallMethod( RootSystem,

F:= LeftActingDomain( L );

if DeterminantMat( KillingMatrix( Basis( L ) ) ) = Zero( F ) then
if RankMat( KillingMatrix( Basis( L ) ) ) <> Dimension( L ) then
Info( InfoAlgebra, 1, "the Killing form of <L> is degenerate" );
return fail;
fi;
Expand Down

0 comments on commit d927720

Please sign in to comment.