This paper focuses on the interface between program verification and mechanical theorem proving. It is often much easier to express what a program does in higher order logic than in first-order logic. However, in general, higher order theorem proving is difficult to mechanize. Hence we have isolated some special classes of higher order formulas and will show how they can be processed efficiently by a computer. Examples are given that illustrate how naturally these formulas arise in program verification.