diff options
author | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2016-10-31 20:25:28 +0100 |
---|---|---|
committer | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2016-10-31 20:53:16 +0100 |
commit | 19a2dd5cfbd72defe932656a65ab9da9f4ac9d1e (patch) | |
tree | 83e0b7a05d02e7e0bd11ff8120eaf07cfcd5f08f /engine/termops.mli | |
parent | c48838c05eea1793c2d0a11292f8fc4eb784cd02 (diff) |
Moving unused code out of the kernel into Termops.
Strangely enough, the checker seems to rely on an outdated decompose_app
function which is not the same as the kernel, as the latter is sensitive
to casts. Cast-manipulating functions from the kernel are only used on
upper layers, and thus was moved there.
Diffstat (limited to 'engine/termops.mli')
-rw-r--r-- | engine/termops.mli | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engine/termops.mli b/engine/termops.mli index c58e3728c..78826f79a 100644 --- a/engine/termops.mli +++ b/engine/termops.mli @@ -164,6 +164,13 @@ val eq_constr : constr -> constr -> bool (* FIXME rename: erases universes*) val eta_reduce_head : constr -> constr +(** Flattens application lists *) +val collapse_appl : constr -> constr + +(** Remove recursively the casts around a term i.e. + [strip_outer_cast (Cast (Cast ... (Cast c, t) ... ))] is [c]. *) +val strip_outer_cast : constr -> constr + exception CannotFilter (** Lightweight first-order filtering procedure. Unification |