package dolmen

  1. Overview
  2. Docs
A parser library for automated deduction

Install

Dune Dependency

Authors

Maintainers

Sources

dolmen-0.8.tbz
sha256=3ee4b4b028b18ab0066cb4648fa14cd4d628a3afd79455f85fb796a9969ac80c
sha512=06d455f0221814dae44d9d8614cab7c1d4fb43a383e603a92ffc9cf4a753d42c5f2a0f3c5ae64aa6cf02da769c4666b130443ae2cf8fa0918c906d46e0caec9a

doc/dolmen.std/Dolmen_std/Normalize/index.html

Module Dolmen_std.NormalizeSource

Normalizing functions

Functions in this module are meant to help normalize terms, that is, for a given language, map the semantic pre-defined builtins of that language to the builtins symbols defined by Dolmen Terms.

For instance, the tptp language has a specific syntaxic construction for equality (that is, there is a reduction used to parse equality), thus equalities in tptp are parsed using the builtin equality symbol for terms. On the other hand, smtlib has no syntax rules for equality, which is seen as a regular application of the symbol name "=". Thus, equalities in smtlib files will be parsed as applications of a symbol named "=". Normalization maps that application to the builtin notion of equality defined for terms.

WARNING: this normalization process is a best effort, but cannot be complete in general. Some constructions such as tptp's "$i" (pre-existing type for terms), have no clear builtin notion in other languages. For a general and complete translation, the ast should be typechecked.

Sourcemodule Tptp : sig ... end
Sourcemodule Smtlib : sig ... end
OCaml

Innovation. Community. Security.