Module Datalog.Schema
module type S = sig ... endmodule Cons
(C : Flambda2_datalog.Datalog.Column.S)
(S : Flambda2_datalog.Datalog.Schema.S) :
Flambda2_datalog.Datalog.Schema.S
with type keys = C.t -> S.keys
and type t = S.t C.Map.t
and type value = S.valuemodule type Relation = Flambda2_datalog.Datalog.Schema.S with type value = unitmodule Relation1
(C : Flambda2_datalog.Datalog.Column.S) :
Flambda2_datalog.Datalog.Schema.Relation
with type keys = C.t -> Flambda2_datalog.Datalog.nil
and type t = unit C.Map.tmodule Relation3
(C1 : Flambda2_datalog.Datalog.Column.S)
(C2 : Flambda2_datalog.Datalog.Column.S)
(C3 : Flambda2_datalog.Datalog.Column.S) :
Flambda2_datalog.Datalog.Schema.Relation
with type keys =
C1.t ->
Flambda2_datalog.Datalog.Schema.Relation2(C2)(C3).keys
and type t = Flambda2_datalog.Datalog.Schema.Relation2(C2)(C3).t C1.Map.tmodule Relation4
(C1 : Flambda2_datalog.Datalog.Column.S)
(C2 : Flambda2_datalog.Datalog.Column.S)
(C3 : Flambda2_datalog.Datalog.Column.S)
(C4 : Flambda2_datalog.Datalog.Column.S) :
Flambda2_datalog.Datalog.Schema.Relation
with type keys =
C1.t ->
Flambda2_datalog.Datalog.Schema.Relation3(C2)(C3)(C4).keys
and type t =
Flambda2_datalog.Datalog.Schema.Relation3(C2)(C3)(C4).t C1.Map.t