Predicate logic with first-class patterns.