update dependent fold
Dependencies
- [2]
65A27CAQimplement dependent fold
Change contents
- edit in Control/Fold.idr at line 4
import Data.Nat - replacement in Control/Fold.idr at line 6
dfoldl : {b : Nat -> Type} -> ((m : Nat) -> b m -> a -> b (S m)) -> b Z -> Vect n a -> b ndfoldl : {b : Nat -> Type} -> ((0 m : Nat) -> b m -> a -> b (S m)) -> b m -> Vect n a -> b (n + m) - replacement in Control/Fold.idr at line 8
dfoldl f z (x::xs) = dfoldl f' (f 0 z x) xs wheref' : (m : Nat) -> b (S m) -> a -> b $ S $ S mf' m = f $ S m[2.182]dfoldl {n=S n} f z (x::xs) = rewrite plusSuccRightSucc n m in dfoldl f (f m z x) xs