Brute force works well here : Let's first get these roots of the unity as algebraics :

```
sage: Rt.<t>=PolynomialRing(QQbar)
sage: Lc=[s[0] for s in (t^3-1).roots()];Lc
[1,
-0.500000000000000? - 0.866025403784439?*I,
-0.500000000000000? + 0.866025403784439?*I]
```

Use those coefficients to create the needed polynomials :

```
sage: Rx.<x>=PolynomialRing(QQbar)
sage: L=3
sage: Lp=[(1+c*x)^L for c in Lc];Lp
[x^3 + 3*x^2 + 3*x + 1,
(1.000000000000000? + 0.?e-18*I)*x^3 + (-1.500000000000000? + 2.598076211353316?*I)*x^2 + (-1.500000000000000? - 2.598076211353316?*I)*x + 1,
(1.000000000000000? + 0.?e-18*I)*x^3 + (-1.500000000000000? - 2.598076211353316?*I)*x^2 + (-1.500000000000000? + 2.598076211353316?*I)*x + 1]
```

But of course :

```
sage: reduce(lambda a,b:gcd(a,b), Lp)
1
```

Now, you can also do the same in SR :

```
sage: var("x")
x
```

Coefficients :

```
sage: Lc=[s.rhs() for s in solve(x^3-1,x)]
sage: Lc
[1/2*I*sqrt(3) - 1/2, -1/2*I*sqrt(3) - 1/2, 1]
```

Polynomials :

```
sage: Lp=[(1+c*x)^L for c in Lc];Lp
[-1/8*(x*(-I*sqrt(3) + 1) - 2)^3, -1/8*(x*(I*sqrt(3) + 1) - 2)^3, (x + 1)^3]
```

And again :

```
sage: reduce(lambda a,b:gcd(a,b), Lp)
1
```

HTH,