Linear representation theory of special linear group:SL(2,Z4)

GAP implementation
The degrees of irreducible representations can be determined using GAP's CharacterDegrees function:

gap> CharacterDegrees(SL(2,ZmodnZ(4))); [ [ 1, 4 ], [ 2, 2 ], [ 3, 4 ] ]

The character table can be computed using the Irr and CharacterTable functions:

gap> Irr(CharacterTable(SL(2,ZmodnZ(4)))); [ Character( CharacterTable( SL(2,Z/4Z) ), [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] ), Character( CharacterTable( SL(2,Z/4Z) ), [ 1, 1, -1, 1, -1, -1, -1, 1, 1, 1    ] ), Character( CharacterTable( SL(2,Z/4Z) ),    [ 1, -1, -E(4), 1, -E(4), E(4), E(4), -1, 1, -1 ] ), Character( CharacterTable( SL(2,Z/4Z) ),   [ 1, -1, E(4), 1, E(4), -E(4), -E(4), -1, 1, -1 ] ), Character( CharacterTable( SL(2,Z/4Z) ), [ 2, 1, 0, -1, 0, 0, 0, -2, 2, -2    ] ), Character( CharacterTable( SL(2,Z/4Z) ),    [ 2, -1, 0, -1, 0, 0, 0, 2, 2, 2 ] ), Character( CharacterTable( SL(2,Z/4Z) ), [ 3, 0, -1, 0, 1, -1, 1, -1, -1, 3    ] ), Character( CharacterTable( SL(2,Z/4Z) ),    [ 3, 0, 1, 0, -1, 1, -1, -1, -1, 3 ] ), Character( CharacterTable( SL(2,Z/4Z) ),   [ 3, 0, -E(4), 0, E(4), E(4), -E(4), 1, -1, -3 ] ), Character( CharacterTable( SL(2,Z/4Z) ),   [ 3, 0, E(4), 0, -E(4), -E(4), E(4), 1, -1, -3 ] ) ]

The irreducible representations can be computed using the IrreducibleRepresentations function:

gap> IrreducibleRepresentations(SL(2,ZmodnZ(4))); [ CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6,10)(7,8), (1,3,12)(2,9,4)(5,6,8)(7,11,10),     (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] -> [ [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ]     ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6,10)(7,8), (1,3,12)(2,9,4)(5,6,8)(7,11,10),      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] -> [ [ [ -1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ]     ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6,10)(7,8), (1,3,12)(2,9,4)(5,6,8)(7,11,10),      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] -> [ [ [ E(4) ] ], [ [ -1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ]     ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6,10)(7,8), (1,3,12)(2,9,4)(5,6,8)(7,11,10), (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->    ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,1      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->      [ [ E(3), 0 ], [ 0, E(3)^2 ] ], [ [ 1, 0 ], [ 0, 1 ] ], [ [ 1, 0 ], [ 0, 1  CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->      [ [ E(3), 0 ], [ 0, E(3)^2 ] ], [ [ 1, 0 ], [ 0, 1 ] ], [ [ 1, 0 ], [ 0, 1  CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->      [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ], [ [ 0, 0, 1 ], [ 1, 0, 0 ], [ 0      [ [ 1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ] ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6 (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->     [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ], [ [ 0, 0, 1 ], [ 1, 0, 0 ], [ 0      [ [ 1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ] ], ),  CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6      (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->      [ [ -1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ], [ [ 0, 0, 1 ], [ 1, 0, 0 ],      [ [ 1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ] ], ), CompositionMapping( [ (1,8,2,7)(3,6,9,10)(4,11,12,5), (1,2)(3,9)(4,12)(5,11)(6 (1,2)(3,11)(4,10)(5,9)(6,12)(7,8), (1,8)(2,7)(3,9)(4,6)(5,11)(10,12) ] ->     [ [ -1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ], [ [ 0, 0, 1 ], [ 1, 0, 0 ],      [ [ 1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ] ], ) ]