Index of Modified Dirac Operator Let's say we have an oriented compact 4-d Riemannian spin manifold $(M,g)$. Everybody who's anybody has heard about the index of the Dirac operator $D: S^+\rightarrow S-$; it's the $\hat{A}$-genus, which is $\displaystyle\frac{-1}{8}\tau(M)$ ($\tau$ is the signature). I don't know too much about the index theorem and it's inner workings, but I'm wondering what happens if you perturb the Dirac operator and consider $$D_{f,s}=D+s\textrm{grad}(f)\cdot$$
where s is a (let's say small) real parameter and $f\in C^{\infty}(M)$; "$\cdot$" indicates Clifford multiplication, and maps $S^+\rightarrow S^-$ since elements of $TM$ anticommute with the volume element in dimension 4. 
Does the index stay the same? Change in a predictable way related to $f$? What if $f$ is special somehow? What about in the special case where $\tau=0$? Or the even-more-special case where $\tau=0$ because the dimension of the harmonic spinors is $0$, e.g. when $R>0$? How does the dimension of the kernel jump as $s$ changes?
Sorry for the avalanche of questions. I'm interested in any information people have about any subset of them.
 A: For this particular case the two operators are conjugate (though note the conjugacy is not unitary unless $s$ is imaginary)  
$$
D_{f,s}=e^{-sf}D e^{sf}
$$
so that the dimension of both the kernel and cokernel are independent of $s$.
Note that Chris Gerig's comments on the other hand apply more generally. The index of 
$$
D_{s,\theta}=D+s\theta⋅
$$
for any one-form $\theta$ is independent of $s$. 
A: Making my comment a formal answer:
The perturbation object is a compact operator (for any scaling $s$), and $D$ is Fredholm. The space of Fredholm operators is open in the (Banach) space of bounded linear operators, and moreover $ind(D)=ind(D+K)$ for any compact operator $K$.
The question about spectral flow (jumps in the kernel) is much more intricate, it should depend at least on the critical points of $f$ and the magnitude of $s$. But again by general facts of Functional Analysis, for $|s|$ sufficiently small the dimension of the kernel won't jump (and in general it will only jump for a discrete set of $s\in\mathbb{R}$). 
