# Exterior Powers of A Cohomology

Hi guys, I am working on computing basis of the exterior powers of a CDGA's cohomology. The following code is what I currently have:

```
L = lie_algebras.Heisenberg(QQ, 2)
A = GradedCommutativeAlgebra(QQ, names=L.basis())
A.inject_variables()
Output: Defining p1, p2, q1, q2, z
B = A.cdg_algebra({p1: 0, p2: 0, q1: 0, q2: 0, z: p1*q1 + p2*q2})
C = B.cohomology(1)
C.basis()
Output: Finite family {[p1]: B[[p1]], [p2]: B[[p2]], [q1]: B[[q1]], [q2]: B[[q2]]}
```

First, I tried to manipulate the basis to possibly calculate all the possible wedge products but I found out that **type(C)** is **sage.combinat.free_module.CombinatorialFreeModule_with_category**; thus, I cannot do wedges. Then, I tried to compute the dual exterior powers of C using preexisted method. I imported *ExtPowerDualFreeModule* and run `E = ExtPowerDualFreeModule(C, 2)`

but did not succeed. Hence, is there a way to compute the dual exterior powers and see their bases? If not, can the free module C be converted to another object so that I can perform wedges on its basis? It is very important for me to be able to see the basis of the exterior powers of the cohomology.

I apologize for my lack of mathematical knowledge. If I am missing any information, please let me know. I really appreciate your help, thank you!