# Obtaining the Solomon-Orlik algebra in QPA with the help of Sage

The Solomon-Orlik algebra (see Sage documentation: Orlik-Solomon algebra) associates to a finite matroid a finite dimensional algebra. It is implemented in Sage to obtain generators and relations of those algebras but there seems to be no easy way to translate them into the GAP-package QPA where many more functions are available to study those algebras.

Let M be a finite matroid which we can assume for simplicity given as a finite set X of vectors with set of circuits C, which are simply the minimal linearly dependent subsets of X.

Recall that the exterior algebra on a ground set of variables x1,...,xn (assume them to be ordered x1 < ... < xn) is given as the quotient of the free algebra on x1,...,xn modulo the relations xi^2 and xi xj +xj xi for i < j.

In QPA the exterior algebra for n=4 is for example obtained as follows:

```
Q := Quiver(1,[[1,1,"x1"],[1,1,"x2"],[1,1,"x3"],[1,1,"x4"]]);
KQ := PathAlgebra(Rationals,Q);
AssignGeneratorVariables(KQ);
rel := [x1^2,x2^2,x3^2,x4^2,x1*x2+x2*x1,x1*x3+x3*x1,x1*x4+x4*x1,x2*x3+x3*x2,x2*x4+x4*x2,x3*x4+x4*x3];
A := KQ/rel;
```

Now the Solomon-Orlik algebra (see Sage documentation: Orlik-Solomon algebra) of a matroid M is given by adding the relations $$\sum_{r=1}^{t}{(-1)^{r-1}{x_{j_1} ... \hat{x_{j_r}} .... x_{j_t}}$$ for every element (x1< ... < xt) in the circuits C.

For example when M is the matroid given by the vectors x1=t=(1,-1,0), x2=u=(0,1,-1), x3=v=(-1,0,1), x4=w=(1,1,1). then we have one circut given by x1 x2 x3 and thus one additional relation given by x2 x3 - x1 x3 +x1x2 and the algebra in QPA can be obtained as follows:

```
Q := Quiver(1,[[1,1,"x1"],[1,1,"x2"],[1,1,"x3"],[1,1,"x4"]]);
KQ := PathAlgebra(Rationals,Q);
AssignGeneratorVariables(KQ);
rel := [x1^2,x2^2,x3^2,x4^2,x1*x2+x2*x1,x1*x3+x3*x1,x1*x4+x4*x1,x2*x3+x3*x2,x2*x4+x4*x2,x3*x4+x4*x3,x2*x3-x1*x3+x1*x2];
A := KQ/rel;
```

Question: Is there a direct way to directly obtain the quiver and relations for QPA in the format as in the examples using Sage for a given matroid?