(* le sucre élémentaire *) let (! ) k = power (Int.plus Int.unit) k Int.zero let x = PXY.monome Int.unit 1 0 let y = PXY.monome Int.unit 0 1 (* les opérations *) let ( + ) = PXY.plus let ( * ) = PXY.mult let ( ^ ) p k = power (PXY.mult p) k PXY.unit let ( - ) p q = p + (PXY.symm q) let () = let p = (x - y) ^ 4 in Printf.printf "p = %s\n" (PXY.tostring p); Printf.printf "eval p 7 5 = %s\n" (Int.tostring (PXY.eval p (!7) (!5))) ;;