let coup_simple ((m,p) : motif∗ponctuel) = let coup voisin = (∗ Entrée : voisin, une des quatre fonctions voisin_g, voisin_d, voisin_h, voisin_b. Sortie : liste [ (m', p')] si le coup est possible, [] sinon ∗) let case_suivante = voisin p in let case_dapres = voisin case_suivante in if (inclus m case_suivante) && not (inclus m case_dapres) && case_dapres<>0 then [m−p−case_suivante+case_dapres, case_dapres] else [] in List.flatten (List.map coup [voisin_g; voisin_d; voisin_h; voisin_b] ) ;;