diff --git a/src/coalg/coalg.ml b/src/coalg/coalg.ml
index 1a1d445bd3d398f65db3ed49a8b08703ff3eda19..c2180eedc9b2e5ba7dedb5882bf5876888c1ba8f 100644
--- a/src/coalg/coalg.ml
+++ b/src/coalg/coalg.ml
@@ -44,8 +44,8 @@ let _ =
     print_endline (FE.stringFromFunctorExp (FE.functorExpFromString str))
 *)
 
-let printUsage () =
-  print_endline "Usage: \"alc <task> <functor> [<flags>]\" where";
+let printUsage name =
+  print_endline ("Usage: \"" ^ name ^ " <task> <functor> [<flags>]\" where");
   print_endline "       <task> in { sat print verify nnf prov (is »not.(sat ¬f)«) nom2fix }";
   print_endline "       <functor> in { MultiModalK (or equivalently K)";
   print_endline "                      MultiModalKD (or equivalently KD)";
@@ -231,7 +231,7 @@ let rec parseFlags arr offs : unit =
      )
 
 let _ =
-  if Array.length Sys.argv < 3 then printUsage()
+  if Array.length Sys.argv < 3 then printUsage (Sys.argv.(0))
   else
     let choice = Sys.argv.(1) in
     parseFlags Sys.argv 3;
@@ -243,6 +243,6 @@ let _ =
     | "verify" -> choiceVerify ()
     | "graph" -> choiceGraph ()
     | "nom2fix" -> choiceNom2fix()
-    | _ -> printUsage ()
+    | _ -> printUsage (Sys.argv.(0))
 
 (* vim: set et sw=2 sts=2 ts=8 : *)