let A = "ACGT"
and B = "AGCT"

in let rec
   LCS []      B           = 0  ||
   LCS A       []          = 0  ||
   LCS (A.As) (B.Bs)&(A=B) = 1 + LCS As Bs  ||
   LCS A       B           = max (LCS A (tl B)) (LCS (tl A) B)

in LCS A B

--\fB Slow Longest Common Subsequence Algorithm. \fP
