Cohomology Class of a Subvariety I'm working on question 7.4 of Chapter III.7 in Hartshorne's Algebraic Geometry. The question is about the cohomology class of a subvariety.
The setup is as follows: $X$ is an $n$-dimensional non-singular projective variety over an algebraically closed field $k$. $Y\subset X$ is a non-singular subvariety of codimension $p$. We have the standard map $\Omega_X\otimes \mathcal{O}_Y \rightarrow \Omega_Y$ from which we can deduce a map $\Omega_X^{n-p} \rightarrow \Omega_Y^{n-p}$, and this in turn yields a map on cohomology $H^{n-p}(X, \Omega_X^{n-p}) \rightarrow H^{n-p}(Y,\Omega_Y^{n-p})$. Now $Y$ is $(n-p)$-dimensional so $\Omega_Y^{n-p} = \omega_Y$ and we have the trace map $H^{n-p}(Y,\Omega_Y^{n-p} = \omega_Y) \rightarrow k$. Composing with this trace map we have $\varphi_Y : H^{n-p}(X,\Omega_X^{n-p})\rightarrow k$. Now, since by Serre Duality $H^p(X,\Omega_X^p) \cong H^{n-p}(X, \Omega_X^{n-p})^{\lor}$, $\varphi_Y$ corresponds to an element $\eta(Y) \in H^p(X,\Omega_X^p)$ which we call the cohomology class of $Y$.
Part (a) of the problem asks to show that if $P\in X$ is a closed point, then $t_X(\eta(P)) = 1$, where $t_X$ is the trace map on $\omega_X$. Now, in the case of a point, the map $\Omega_X^{n-p} \rightarrow \Omega_Y^{n-p}$ is simply the map $\mathcal{O}_X \cong \Omega_X^0 \rightarrow \Omega_P^0\cong k_P$ defined by $f \mapsto f(P)$ which, when composed with the trace map on $H^0(P,\omega_P)$, yields $f \mapsto t_P(f(P))$. This map should correspond to an element $\eta(P) \in H^n(X,\Omega_X^n = \omega_X)$ as indicated above.
My problem is, I don't know how to get my hands on $\eta(P)$. All I know is that it should exist. Moreover, I thought that $H^n(X, \omega_X) \rightarrow k$ is only a map of $k$-vector spaces. Wouldn't I need some morphism respecting ring structures somewhere in order to detect $1 \in k$ and be able to show that $t_X(\eta(P)) = 1$ here? Hartshorne himself says that, except in the case of curves, we can't really write down explicitly what the trace map is because we don't know. All we know is that it exists.
 A: Well, I think you have to make a choice for $t_{P}$. But apparently you do not need to make a choice for $t_X$. This happens because the role of $t_X$ in the duality isomorphism gets cancelled when you evaluate the class using $t_X(. )$.
At first, for a closed immersion $j: Y \to X$, let us look at the definition of the map $H^{n-p}(X, \Omega_X^{n-p}) \to H^{n-p}(Y, \Omega_Y^{n-p})  $. Start with the map of differentials $j^* \Omega_X \to \Omega_Y$. Now applying $\bigwedge^{n-p}(.)$, which commutes with pullbacks yields a map $j^* \Omega_X^{n-p} \to \Omega_Y^{n-p}$. Now push it forward and use adjointness of $j_*, j^*$ to obtain a map $\Omega_X^{n-p} \to j_* j^*\Omega_Y^{n-p} \to j_* \Omega_Y^{n-p}$. Now applying $H(X, .)$ gives the required map.
Now in the given problem, where $Y = \left\{P \right \}$, $p= n$, the above map is $H^0(X, \mathcal O_X) \to  H^0(P, O_P)$, which is actually the identity map on $k$. Let $\overline{x} \in H^0(X, \mathcal O_X)'$ be the element we get by composing with $t_P$. Then $\overline x(1) = t_P(1)$. Identify $H^0(X, \mathcal O_X)$ with $\text {Hom}(\omega_X, \omega_X)$ in the obvious manner. Denote by $x \in \text {Hom}(\omega_X, \omega_X)' $ the element corresponding to $\overline{x} \in  H^0(X, \mathcal O_X)'$. Then $x(Id_{\omega_X}) = t_P(1)$.
Let $\varphi:\text {Hom}(\omega_X, \omega_X)\to H^n(X, \omega_X)' $ be the isomorphism given by the dualizing sheaf, which is given by $\varphi(f) = t_X(H^n(f))$. Then $\varphi '$ composed with the canonical identification $i$ of a vector space and its double dual provides an isomorphism of $\text {Hom}(\omega_X, \omega_X)'$ with $ H^n(X, \omega_X)$. Let $\zeta \in H^n(X, \omega_X)$ correspond to $x \in \text {Hom}(\omega_X, \omega_X)'$. Then $x = i(\zeta) \circ \varphi$. So $t_P(1)= x(Id_{\omega_X}) = i(\zeta)(t_X) = t_X(\zeta)$, which is what we are looking for.
Note that after we have fixed an isomorphism of $\left\{P \right \}$ with $\text{Spec} \, k$, ($ k^{\sim}, t)$ works as a dualizing sheaf for any isomorphism  $t: k \to k$ as $k$ vector spaces. So it is possible for $t_P(1) $ to take any value in $k^*$. Now to get the required answer you have to take $t_P(1) = 1$.
