Estoy tratando de encontrar algunos grupos finitos con ciertas properites (espero que de orden pequeño; no más de 100, sospecho), y una de las cosas que necesito mirar son todos sus bicharros bilineales: mapas $G\times G \to \mathbb{C}^*$ donde al fijar una coordenada cualquiera se obtiene un carácter lineal de G. Por ejemplo, si $G$ es el grupo simétrico $S_n$ entonces hay dos bicaracteres: el trivial (todos los valores son 1); y el definido para ser -1 cuando ambas entradas son impar, y 1 en caso contrario.
¿Existe alguna forma computacionalmente eficiente de calcular todos esos bicharracos? Soy bastante competente en el uso de Mathematica, pero actualmente no estoy muy familiarizado con otros sistemas, como GAP y Magma. Si los otros son mejores para este propósito, me parece bien aprender a usarlos, especialmente si puedo convertir fácilmente las respuestas a código de Mathematica (los bicaracteres son sólo una parte de un panorama más amplio que estoy manejando actualmente con Mathematica). Puedes suponer que ya conozco los caracteres lineales irreducibles de $G$ (tengo entendido que son fáciles de conseguir con sistemas como GAP).
EDIT: Probablemente vale la pena señalar que necesito conocer los bicharracos explícitamente, y no hasta el isomorfismo. Necesito realizar cálculos con ellos y otros datos.