package libzipperposition

  1. Overview
  2. Docs
Library for Zipperposition

Install

Dune Dependency

Authors

Maintainers

Sources

2.1.tar.gz
md5=e72de75e9f0f87da9e6e8c0a4d4c89f9
sha512=81becfc9badd686ab3692cd9312172aa4c4e3581b110e81770bb01e0ffbc1eb8495d0dd6d43b98f3d06e6b8c8a338174c13ebafb4e9849a3ddf89f9a3a72c287

doc/libzipperposition.induction/Libzipperposition_induction/Make/argument-1-E/FormRename/index.html

Module E.FormRename

module C = C
val on_pred_skolem_introduction : (C.t * Logtk.Term.t) Logtk.Signal.t

this signal is raised when a predicate Skolem is introduced

val is_renaming_clause : C.t -> bool

This clause has the shape of the renaming clause

val rename_form : ?should_rename:(Libzipperposition.FormulaRename.T.t -> bool) -> ?polarity_aware:bool -> c:C.t -> Libzipperposition.FormulaRename.T.t -> bool -> (Libzipperposition.FormulaRename.T.t * C.t list * C.t list) option

`rename_form ~should_rename ~c f polarity` tries to find a definition for formula f with the given polarity.

The result is of the form `Some (renamer term, new_defs, proof_parents)`

If the definition for a generalization of f is already found in the store, but with different polarity new_defs will contain definition for the missing polarity. If the definition of f is found for the right polarity, new_defs will be empty.

If f is not found an `should_rename f` holds, then definition of f is introduced for f with the given polarity.

In each case, proof_parents contains the clauses that introduce definition for f (either or both of polarities, that is).

For details and examples, consult our PAAR 2020 paper \urlhttp://matryoshka.gforge.inria.fr/pubs/ho_bools_paper.pdf

val get_skolem : parent:C.t -> mode:[< `Choice | `SkolemRecycle | `SkolemAlwaysFresh ] -> Libzipperposition.FormulaRename.T.t -> Libzipperposition.FormulaRename.T.t

`rename_form ~should_rename ~c f polarity` tries to find a definition for formula f with the given polarity.

The result is of the form `Some (renamer term, new_defs, proof_parents)`

If the definition for a generalization of f is already found in the store, but with different polarity new_defs will contain definition for the missing polarity. If the definition of f is found for the right polarity, new_defs will be empty.

If f is not found an `should_rename f` holds, then definition of f is introduced for f with the given polarity.

In each case, proof_parents contains the clauses that introduce definition for f (either or both of polarities, that is).

For details and examples, consult our PAAR 2020 paper \urlhttp://matryoshka.gforge.inria.fr/pubs/ho_bools_paper.pdf

`get_skolem ~parent ~mode f` computes a ``Skolem'' term for a formula f. This is either real Skolem term of Choice symbol applied to f, depending on the mode

OCaml

Innovation. Community. Security.