Arithmetic with Elements
- u * v: GrpSLPElt, GrpSLPElt -> GrpSLPElt
Given straight-line programs \(u = [u_1, \ldots, u_m]\) and \(v = [v_1, \ldots, v_n]\) belonging to the same SLP-group \(G\), return a straight-line program corresponding to the product of \(u\) and \(v\). It is clear that the straight-line program \([u_1, \ldots, u_m, v_1, \ldots, v_n, u_m v_n]\) satisfies the formal definition. In practice, the \(u_i\) and \(v_i\) need not be distinct, so the resulting program may be shorter.
- u ^ m: GrpSLPElt, RngIntElt -> GrpSLPElt
Given an integer \(m\) and a straight-line program \(u\), return the straight-line program corresponding to the \(m\)-th power of \(u\).
- u ^ v: GrpSLPElt, GrpSLPElt -> GrpSLPElt
Given straight-line programs \(u\) and \(v\), return the straight-line program corresponding to the conjugate of \(u\) by \(v\).
- # u: GrpSLPElt -> RngIntElt
Given a straight-line program \(u\), return the number of multiplication, power, or conjugate operations required to evaluate a homomorphism on \(u\).
Accessing the Defining Generators and Relations
The functions described here provide access to basic information stored for an SLP-group \(G\).