Search for a value in tuple of lists/vectors
find :: Integer -&gt; SeqV -&gt; Maybe Integer
find n (a,b,c) | elem n a || elem n b || elem n c = Just n
find _ _ = Nothing


There's also (&lt;|&gt;) :: Maybe a -&gt; Maybe a -&gt; Maybe a and asum :: [Maybe a] -&gt; Maybe a, but if you simplified your question and find above doesn't unsimplify, post the whole code and there might be an unreasonably short answer again. I also have the feeling wherever you use find could be simplified further since find only really returns a boolean.