Boyer-Moore theorem prover