data LVect : Nat -> Type -> TypeConsumable a => Consumable (LVect n a)Duplicable a => Duplicable (LVect n a)lookup : Fin (S n) -@ (LVect (S n) a -@ LPair a (LVect n a))insertAt : Fin (S n) -@ (a -@ (LVect n a -@ LVect (S n) a))uncurry : (a -@ (b -@ c)) -@ (LPair a b -@ c)lookupInsertAtIdentity : (k : Fin (S n)) -> (vs : LVect (S n) a) -> uncurry (insertAt k) (lookup k vs) = vsinsertAtLookupIdentity : (k : Fin (S n)) -> (w : a) -> (vs : LVect n a) -> lookup k (insertAt k w vs) = w # vs(<$>) : a -@ b -> LVect n a -@ LVect n bpure : a -> LVect n a(<*>) : LVect n (a -@ b) -@ (LVect n a -@ LVect n b)zip : LVect n a -@ (LVect n b -@ LVect n (LPair a b))unzip : LVect n (LPair a b) -@ LPair (LVect n a) (LVect n b)splitAt : (1 m : Nat) -> LVect (m + n) a -@ LPair (LVect m a) (LVect n a)(++) : LVect m a -@ (LVect n a -@ LVect (m + n) a)lfoldr : (0 p : (Nat -> Type)) -> a -@ (p n -@ p (S n)) -> p 0 -@ (LVect n a -@ p n)lfoldl : (0 p : (Nat -> Type)) -> a -@ (p n -@ p (S n)) -> p 0 -@ (LVect n a -@ p n)reverse : LVect m a -@ LVect m amap : (0 f : a -@ b) -> {auto 1 _ : n `Copies` f} -> LVect n a -@ LVect n bMap a linear vector
length : Consumable a => LVect n a -@ LNatExtract all
foldl : (0 f : acc -@ (a -@ acc)) -> {auto 1 _ : n `Copies` f} -> acc -@ (LVect n a -@ acc)Fold a linear vector.
replicate : (1 n : LNat) -> (0 v : a) -> {auto 1 _ : toNat n `Copies` v} -> LVect (toNat n) a(>>=) : LVect n a -@ ((0 f : a -@ LVect m b) -> LVect (n * m) b)Bind a linear vector.
copiesToVect : (n `Copies` v) -@ LVect n aExtract all the copies into a vector of the same length as the number of copies.