Given a (rather complicated) function
H(z), what is the best approach to check symbolically whether it is holomorphic?
What I tried is checking explicitly the Cauchy-Riemann equations(*):
z = a + I b H = E^-Sqrt[z^2] / (Sqrt[z^2] + Sqrt[z^2] Cosh[Sqrt[z^2]] + Sqrt[z^2] Sinh[Sqrt[z^2]]) HRe = FullSimplify[ComplexExpand[Re[H]], (a | b) ∈ Reals] HIm = FullSimplify[ComplexExpand[Im[H]], (a | b) ∈ Reals] HReA = Assuming[(a | b) ∈ Reals, D[HRe, a]] HReA = Simplify[HReA, (a | b) ∈ Reals] HImB = Assuming[(a | b) ∈ Reals, D[HIm, b]] HImB = Simplify[HImB, (a | b) ∈ Reals] Simplify[HReA == HImB, (a | b) ∈ Reals]
What I would expect as a result is either just
True or some equation that
b need to satisfy in order for the CR equations to be fulfilled. This would mean that my function is not holomorphic everywhere in the complex plane.
The problem that I encounter is that the call to
Simplify does not complete computation in a reasonable amount of time (> 1 hour, then I aborted it).
HIm are harmonic (which is a necessary condition for
H to be holomorphic) did not seem to be any easier, with the second derivatives of
H being even longer.
Is there a way to speed this up, or even a completely different approach? The derivatives are so long that a manual inspection is not an option.
(*) Note that as correctly pointed out by murray below, the Cauchy-Riemann DEs being fulfilled alone does not already imply holomorphy. Additional properties need to be given, e.g. continuity of H or continuity of its derivatives.