Unification Utilities for Isabelle/ML (Q7361010)

From MaRDI portal

!

This is the item page for this Wikibase entity, intended for internal use and editing purposes. Please use the normal view instead:

AFP entry ML_Unification
Language Label Description Also known as
default for all languages
No label defined
    English
    Unification Utilities for Isabelle/ML
    AFP entry ML_Unification

      Statements

      19 September 2023
      0 references
      Kevin Kappelmann
      0 references
      Unification Utilities for Isabelle/ML (English)
      0 references
      This article provides various unification utilities for Isabelle/ML, most prominently: Proof-producing first-order and higher-order pattern E-unification and E-matching. While unifiers in Isabelle/ML only consider the $\alpha\beta\eta$-equational theory of the $\lambda$-calculus, unifiers in this article may take an extra background theory, in the form of an equational prover, into account. For example, the unification problem $n + 1 \equiv {}?m + Suc\; 0$ may be solved by providing a prover for the background theory $\forall n.\ n + 1 \equiv n + Suc\; 0$. Tactics, methods, and attributes with adjustable unifiers (e.g. resolution, fact, assumption, OF). A generalisation of unification hints . Unification hints are a flexible extension for unifiers. Among other things, they can be used for reflective tactics, to provide canonical unification instances, or to simply strengthen the background theory of a unifier in a controlled manner. Simplifier integration for E-unifiers. Practical combinations of unification algorithms, e.g. a combination of first-order and higher-order pattern unification. A hierarchical logger for Isabelle/ML, including per logger configurations with log levels, output channels, message filters. While this entry works with every object logic, some extra setup for Isabelle/HOL and application examples are provided. All unifiers are tested with SpecCheck .
      0 references