module Model_clean:sig
..end
typeterm =
Nunchaku_core.TermInner.Default.t
typemodel =
(term, term) Nunchaku_core.Model.t
val name : string
val rename : model -> model
rename m
performs a renaming of domain constants and bound variables
that should be regular and readable.
Assumes the types that have finite domains are ground types.Invalid_argument
if some assumption is invalidatedval remove_recursion : model -> model
remove_recursion m
transforms definitions such as
f x = if x=0 then 0 else if x=1 then f 0 else ...
into f x = if x=0 then 0 else if x=1 then 0 else ...
val pipe : print:bool ->
('a, 'a, (term, term) Nunchaku_core.Problem.Res.t,
(term, term) Nunchaku_core.Problem.Res.t)
Nunchaku_core.Transform.t