we have $$Ext^{n-1}_P(H_1({\bf f}),P)\cong Ext^{n-1}_P(Ext^{n-1}_P(P/I,P),P) \cong P/I.$$

Combining this with \[koszhom\] (ii) we see that $$Ext^n_P(P/J,P) \cong ker(P/J {\rightarrow}P/I)=I/J.$$

But by \[extiso\] we also have $Ext^n_P(I/J,P) \cong Ext^n_P(P/J,P)$ and as a result we obtain an isomorphism $$Ext^n_P(I/J,P) \cong I/J$$

As a corollary one finds:

\[pairing\] The module $M=I/J=H_{{\mathfrak{m}}}^0(P/J)$ is an artinian Gorenstein module. The choice of an isomorphism $\phi: P \stackrel{\cong}{{\longrightarrow}} \omega_P $ determines a non-degenerate pairing $$B_{\phi}: M \times M {\longrightarrow}K.$$

From local duality \[localduality\] we obtain a non-degenerate pairing $$M \times Ext^n(M,\omega_P) {\longrightarrow}H^n_{{\mathfrak{m}}}(\omega_P)\stackrel{tr}{{\longrightarrow}} K$$ The choice of an isomorphism $\phi: P \stackrel{\cong}{{\longrightarrow}} \omega_P $ determines an isomorphism $Ext^n_P(I/J,P) \cong Ext^n_P(M,\omega_P)$ an thus a non-degenerate pairing $B_{\phi}: M \times M {\longrightarrow}K.$

\(i) The material of this section should be rather well-known. For example, the isomorphism $H_1=Ext_P^{n-1}(P/I,P)$ can be found in [@pellikaan3], but the self-duality of $I/J$ seems to have escaped attention. It is reflected in the readily observed symmetry of the Hilbert-Poincaré polynomial.\
(ii) Using a computer algebra system, the duality pairing can in be calculated by running through the appropriate sequences and isomorphisms. This was implemented in [Singular]{} and is described in some detail in the thesis of the second author, [@egodiss]. As a simple example, for ${\bf 