I am dealing with first-order perturbative theory, that is, any variable may be decomposed as
$a = a + \delta a$
and the same would occur with several different variables, let's say, $b$ and $c$. However any term that is accompanied by a $\delta$ (i.e. $\delta a$, $\delta b$ and $\delta c$) are called "perturbative terms", that is, any $\delta$-term multiplied by any other term with $\delta$ are zero (using a different lingo: just keeping perturbation to the first order):
$\delta a ^2 =0$;
$\delta b \delta c = 0$.
In my case these terms are used in several different calculations throughout my program, so I would like to discriminate these conditions as a global assumption (actually any other idea on how to do this would be gladly accepted) in the beginning of the program. So I have tried something like:
$Assumptions = $\delta a^2 == 0$ && $\delta b \delta c == 0$
and henceforth for every different combination of variables.
Obviously, it does not work out. I have tried several different ways to do it and, in the end of my big calculations, I just to simplify equations using
FullSimplify, get results in which second order perturbative terms do not appear.
In my case, the perturbative terms are dependent of two different variables:
$\delta a = \delta a (t,r)$.
So it is really common to appear derivative terms multiplying between the $\delta$-terms, in which must be set to zero. Examples of this would be:
$\partial_r \delta a \partial_r \delta b = 0$, or $\partial_t \delta a \partial_r \delta a = 0$, or $(\partial_t \delta c)^2 = 0$.
How should I add rules to take care of these derivative terms?