Termination and Reduction Checking for Higher-Order Logic Programs -- P.rex: An