Proof techniques