diff --git a/README.md b/README.md
index f6a33997d03046dadcc7a4811b7e7eb91e5862f3..7512c65b4ce408501fe7ecedbc7369dddac06da1 100644
--- a/README.md
+++ b/README.md
@@ -11,10 +11,17 @@ It can perhaps be compared with the Haskell library
 [testing-feat](https://hackage.haskell.org/package/testing-feat),
 although a detailed comparison has not been carried out.
 
-The library is laid out as follows:
+Two packages, `feat` and `feat-num`, offer the same API.
+`feat` relies on the big integer library `zarith`,
+whereas `feat-num` relies on the library `num`.
+Both packages offer the same API: the main module
+(named `Feat` or `FeatNum`) offers three submodules
+named `Num`, `IFSeq`, and `Enum`.
 
-* The module [Feat.IFSeq](src/IFSeq.mli) implements
-  the signature [Feat.IFSEQ](src/IFSeqSig.ml)
+* The submodule `Num` implements a small set of operations on big integers.
+
+* The submodule `IFSeq` implements
+  the signature [IFSEQ_EXTENDED](feat-core/IFSeqSig.ml)
   of (implicit, finite) **sequences**.
 
   These sequences are implicit, which means that they are not explicitly
@@ -24,15 +31,12 @@ The library is laid out as follows:
   some constraints on the operations that can be efficiently supported; for
   instance, `filter` is not supported.
 
-* The module [Feat.Enum](src/Enum.mli) implements
+* The submodule `Enum` implements
+  the signature [ENUM](feat-core/EnumSig.ml) of
   **enumerations**.
   An enumeration of type `'a enum` is a function of a size `s`
   to a sequence of elements of size `s`.
 
-* The module [Feat.Bigint](src/bigint.mli)
-  offers a function `random` of type `Z.t -> Z.t`,
-  thus repairing an unfortunate omission in the library `zarith`.
-
 * The external library
   [Fix](https://gitlab.inria.fr/fpottier/fix/)
   comes in handy when building enumerations