Hola,
Todas las funciones de la parte a) de ese ejercicio se pueden escribir como foldN excepto predecesor.
La solución que vos das para predecesor no está mal, pero en realidad la idea es que des una definición de esta forma:
predecesor n = p (foldN f e n)
donde internamente la definición decide los casos de cero y sucesor. En tu definición la decisión del caso se hace afuera. Es algo sutilmente diferente pero impacta en la definición que se obtiene. Hay que determinar entonces quienes son p, f y e.
Saludos,
Alberto.
Todas las funciones de la parte a) de ese ejercicio se pueden escribir como foldN excepto predecesor.
La solución que vos das para predecesor no está mal, pero en realidad la idea es que des una definición de esta forma:
predecesor n = p (foldN f e n)
donde internamente la definición decide los casos de cero y sucesor. En tu definición la decisión del caso se hace afuera. Es algo sutilmente diferente pero impacta en la definición que se obtiene. Hay que determinar entonces quienes son p, f y e.
Saludos,
Alberto.