Probabilistically Checkable Proofs