# Documentation

:: Monad m | |

=> (a -> m (a, [a])) | monadic value expansion, first value is the update , second values are dependents |

-> (a -> Bool) | pruning condition |

-> (a -> b -> a) | restoring function via parameter |

-> (a -> b) | serialization to parameter |

-> a | value for the base node |

-> Pruned m b | the pruned object |

build a pruned given some functions and a value

A pruned object keeps a pruned tree of values