I'd like to ask the following question.
I would like to write a GAP program which does the following in general what I will now only illustrate with an example.
I have entered two quiver algebras modulo some relations in GAP, say $A_1=kQ_1/I_1$ and $A_2=kQ_2/I_2$.
The ideals $I_1$ and $I_2$ are given by some relations.
I would like to construct a new algebra $A_3=kQ_3/I_3$ in the following way:
Glue one vertex of $Q_1$ and one vertex of $Q_2$ together and keep the rest of the algebras $A_1$ and $A_2$ as it was before.
Question:
<p>Is it possible in GAP to tell the computer to substitute one name every time it appears in a list? </p>
I know that there are the commands Concatenation and String, but can GAP keep track of variable names?
Example: First algebra: $Q_1=Quiver( ["v1","v2","v3","v4","v5","v6","v7","v8"], [["v1","v3","a1"],["v2","v3","a2"],["v3","v8","a3"],["v4","v6","a4"],["v5","v6","a5"],["v6","v7","a6"],["v8","v4","a7"],["v8","v5","a8"]] )$
and the relations are $[ (Z(3))*a7*a4+(Z(3)^0)*a8*a5, (Z(3)^0)*a1*a3*a8, (Z(3)^0)*a2*a3*a7, (Z(3)^0)*a1*a3*a7*a4, (Z(3)^0)*a3*a7*a4*a6 ]$; choose vertex $v_7$ for glueing.
Second algebra: $Q_2=Quiver( ["v1","v2","v3"], [["v1","v2","a1"],["v2","v3","a2"]] )$
and here the relations are [ (Z(3)^0)*a1*a2 ].
Choose vertex $v_1$ of this algebra for glueing.
Desired result:
Quiver( ["v1","v2","v3","v4","v5","v6","v1n","v8","v2n","v3n"], [["v1","v3","a1"],["v2","v3","a2"],["v3","v8","a3"],["v4","v6","a4"],["v5","v6","a5"],["v6","v1n","a6"],["v8","v4","a7"],["v8","v5","a8"],["v1n","v2n","a1n"],["v2n","v3n","a2n"]] ) [ (Z(3))*a7*a4+(Z(3)^0)*a8*a5, (Z(3)^0)*a1*a3*a8, (Z(3)^0)*a2*a3*a7, (Z(3)^0)*a1*a3*a7*a4, (Z(3)^0)*a3*a7*a4*a6,(Z(3)^0)* an * a2n ]
I'm having problems with the renaming of the relations (to automatize it).
Thanks for the help!