aboutsummaryrefslogtreecommitdiffstats
path: root/lib/drl_verified/drl_verified.mli
blob: 31acc7a9efc87a768994fc9806bcc2b38f400a93 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
val eqb : char list -> char list -> bool

type attr_name = char list

type relation = { rel_name : char list; rel_finite : bool }

type database = (char list * relation) list

val db_lookup : char list -> database -> relation option

type literal =
| LitInt of int
| LitStr of char list
| LitBool of bool

type query =
| Base of char list
| Const of (attr_name * literal) list
| Select of query * query
| Join of attr_name list * query * query
| Cartesian of query * query
| Project of attr_name list * query
| Rename of (attr_name * attr_name) list * query
| Union of query * query
| Diff of query * query
| Take of int * query

val predicted_finite : database -> query -> bool option