Anfonwch hwn fel neges destun: Verifying Higher-Order Functional Programs with Pattern-Matching Algebraic Data Types