Add types for soundness and completeness