(* Test du sous-mot : la liste w1 peut-elle être obtenue en
   effaçant des éléments dans la liste w2 ? *)

let rec subseq w1 w2 = match w1, w2 with
  | [], _ -> true
  | _, [] -> false
  | x1 :: r1, x2 :: r2 when x1 = x2 -> subseq r1 r2
  | _, _ :: r2 -> subseq w1 r2

This document was generated using caml2html