2024-08-30 11:43:13 -07:00
|
|
|
type var = int
|
|
|
|
|
|
2024-08-29 22:55:09 -07:00
|
|
|
type t =
|
2024-08-30 11:43:13 -07:00
|
|
|
| Var of var
|
2024-08-30 00:26:16 -07:00
|
|
|
| Const of string
|
|
|
|
|
| Free of string
|
|
|
|
|
| Function of string * t list
|
2024-08-30 11:43:13 -07:00
|
|
|
|
|
|
|
|
type match_result = All of t | Some of t | None | MatchErr
|
|
|
|
|
|
|
|
|
|
val merge_result : match_result -> match_result -> match_result
|
|
|
|
|
val match_term : t -> t -> t -> match_result
|
|
|
|
|
val inc_var : t -> t
|
|
|
|
|
val occurs : t -> t -> bool
|