You can search for identifiers within the package.
in-package search v0.2.0
module Subst : sig ... end
type error = [
| `Unification of Var.t option * t * t
| `Occurs of Var.t * t
| `Cycle of Subst.t
]
Errors returned when unification fails
val unify : t -> t -> (t * Subst.t, error) Result.t
unify a b is Ok (union, substitution) when a and b can be unified into the term union and substitution is the most general unifier. Otherwise it is Error err), for which, see error
unify a b
Ok (union, substitution)
a
b
union
substitution
Error err)
error
val (=.=) : t -> t -> (t, error) Result.t
a =.= b is unify a b |> Result.map fst
a =.= b
unify a b |> Result.map fst
val (=?=) : t -> t -> bool
a =?= b is true iff a =.= b is an Ok _ value
a =?= b
true
Ok _