Our EXP functions are made in the following way:
- Any constant $ \in \Bbb R$ is a EXP
- $X \in \Bbb R$ is a EXP
- $sin( g(x))$, $cos( g(x))$
- $tan( g(x))$ are EXP, $g(x)$ is a EXP and $g(x) \neq \frac\pi 2 + k\pi, k \in \Bbb Z $
- $sqrt( g(x))$ is a EXP, $g(x)$ is a EXP and $g(x) \geq 0$
- $pow( f(x),g(x))$ is a EXP, $g(x),f(x)$ are EXP
- $exp(g(x))$ is a EXP
- $ln(f(x))$ is a EXP, $f(x) \gt 0$ is a EXP
- $f(x)+g(x)$ is a EXP, $g(x),f(x)$ are EXP
- $f(x)-g(x)$ is a EXP, $g(x),f(x)$ are EXP
- $f(x)*g(x)$ is a EXP, $g(x),f(x)$ are EXP
- $f(x)/g(x)$ is a EXP, $g(x),f(x)$ are EXP and $g(x) \neq 0$
- $f'(f(x))$ is a EXP (derivative)
What I want to know, is if there's an algorithm that, given $f(x) \in EXP$ can say:
- Yes: iff there exist a $g(x)$ such that $g'(x) = f(x)$ and $g(x) \in EXP$
- No: otherwise
- Always halt