let rec sub_ex v1 v2 =
match v1,v2 with
- [],_
+ [],_ -> true
| _,[] -> false
- | s::tl,l -> if (List.mem s l) then sub_ex tl l
- else false
+ | s1::_, s2::_ when s1 < s2 -> false
+ | s1::_, s2::tl2 when s2 < s1 -> sub_ex v1 tl2
+ | s1::tl1, s2::tl2 -> sub_ex tl1 tl2
+;;