aboutsummaryrefslogtreecommitdiffstats
path: root/lib/concepts/Cardinality.mli
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-09-20 02:00:35 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-09-20 02:02:08 -0300
commita597aa80835411d44942d147a2143a737046d733 (patch)
treebabf7d9a4d0c650cdcb7a79bbb0a1850f5b36c74 /lib/concepts/Cardinality.mli
parent6570e7f711774f74218ad5490b5f0621ef1c8655 (diff)
downloadRNT-a597aa80835411d44942d147a2143a737046d733.tar.gz
RNT-a597aa80835411d44942d147a2143a737046d733.zip
cardinality concept for relations
Diffstat (limited to 'lib/concepts/Cardinality.mli')
-rw-r--r--lib/concepts/Cardinality.mli14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/concepts/Cardinality.mli b/lib/concepts/Cardinality.mli
new file mode 100644
index 0000000..e4df62b
--- /dev/null
+++ b/lib/concepts/Cardinality.mli
@@ -0,0 +1,14 @@
+type t = Empty | Bounded of int | Finite | Countable
+
+val bounded : int -> t
+val compare : t -> t -> Utilities.Ordering.t
+val equal : t -> t -> bool
+val leq : t -> t -> bool
+val join : t -> t -> t
+val meet : t -> t -> t
+(** the class of a generator run under every binding produced by
+ another, which is how the classes of the generators chosen by an
+ analysis combine. *)
+val product : t -> t -> t
+val exhaustible : t -> bool
+val to_string : t -> string