X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2Fcomponents%2Fng_refiner%2FnCicUnifHint.mli;h=862c9808efc0193b00d78257cfd1f48f5ecbd2b7;hb=b266ed97b63400d62ab4ba6a4ebdfbc1d5b0c2bb;hp=2e94d9c8d0d65b0642d8f0a6b127ae6fb20e8a03;hpb=f6d0c3cef604c7624ce2f361cbd6248d858d7ad5;p=helm.git diff --git a/helm/software/components/ng_refiner/nCicUnifHint.mli b/helm/software/components/ng_refiner/nCicUnifHint.mli index 2e94d9c8d..862c9808e 100644 --- a/helm/software/components/ng_refiner/nCicUnifHint.mli +++ b/helm/software/components/ng_refiner/nCicUnifHint.mli @@ -13,17 +13,32 @@ type db -val index_hint: - db -> NCic.context -> NCic.term -> NCic.term -> db +exception HintNotValid + +class type g_status = + object + method uhint_db: db + end - (* gets the old imperative coercion DB *) -val db : unit -> db -val add_user_provided_hint : Cic.term -> unit +class status : + object ('self) + inherit g_status + method set_uhint_db: db -> 'self + method set_unifhint_status: #g_status -> 'self + end -val empty_db : db +val index_hint: + #status as 'status -> NCic.context -> NCic.term -> NCic.term -> int -> 'status + +val add_user_provided_hint : + #status as 'status -> NCic.term -> int -> 'status val look_for_hint: - db -> + #status -> NCic.metasenv -> NCic.substitution -> NCic.context -> NCic.term -> NCic.term -> - (NCic.metasenv * NCic.term * NCic.term) list + (NCic.metasenv * + (NCic.term * NCic.term) * (NCic.term * NCic.term) list) list + +val eq_class_of: + #status -> NCic.term -> NCic.term list