Higher-order logic and equality; multiple ways to use lambda calculus for logic