data Thin : List a -> List a -> Typenone : Thin [] xskeep : Thin xs ys -> Thin (x :: xs) (x :: ys)Smart constructor. We should use this to maximise the length
of the Refl segment thus getting more short-circuiting behaviours
keeps : (args : List a) -> Thin xs ys -> Thin (args ++ xs) (args ++ ys)fromNatSet : NatSet -> (xs : List a) -> (xs' : List a ** Thin xs' xs)