- Optional inputs:
`Degree => ...`(missing documentation),

If it is intended that `i` be of class ZZ, `M` be of class `A`, and `N` be of class `B`, then the method can be installed with

cohomology(ZZ, A, B) := opts -> (i,M,N) -> ...

- homology -- general homology functor
- HH -- general homology and cohomology functor
- ScriptedFunctor -- the class of all scripted functors

- HH^ZZ ChainComplex -- cohomology of a chain complex
- HH^ZZ ChainComplexMap -- cohomology of a chain complex map
- HH^ZZ CoherentSheaf -- cohomology of a coherent sheaf on a projective variety
- HH^ZZ Module -- local cohomology of a module
- HH^ZZ SheafOfRings -- cohomology of a sheaf of rings on a projective variety
- HH^ZZ SumOfTwists -- coherent sheaf cohomology module