let compatible (mon_plateau:plateau) =
let (c, n, m, p) = (mon_plateau.c, mon_plateau.n, mon_plateau.m, mon_plateau.p) in
for i = 0 to (m-2) do
for j = 0 to (n-1) do
match (p.(i).(j), p.(i+1).(j)) with
| Some x, Some y ->
if not(compatible_h ~pieceG:x ~pieceD:y ) then raise (Erreur_compatibilite_h(i, j));
| _ -> ()
done;
done;
for i = 0 to (m-1) do
for j = 0 to (n-2) do
match (p.(i).(j), p.(i+1).(j)) with
| Some x, Some y ->
if not(compatible_v ~pieceB:x ~pieceH:y ) then raise (Erreur_compatibilite_v(i, j));
| _ -> ()
done;
done;
()