Term.Rewriting.Norm

tamarin-prover-term-1.2.2: Term manipulation library for the tamarin prover.

Copyright | (c) 2010-2012 Benedikt Schmidt
License | GPL v3 (see LICENSE)
Maintainer | Benedikt Schmidt <beschmi@gmail.com>
Safe Haskell | None
Language | Haskell98

Term.Rewriting.Norm

Description

This module implements normalization and normal-form checks of terms.

Synopsis

- norm' :: LNTerm -> WithMaude LNTerm
- nf' :: LNTerm -> WithMaude Bool
- nfSubstVFresh' :: LNSubstVFresh -> WithMaude Bool
- normSubstVFresh' :: LNSubstVFresh -> WithMaude LNSubstVFresh
- maybeNotNfSubterms :: MaudeSig -> LNTerm -> [LNTerm]

# Documentation

norm' :: LNTerm -> WithMaude LNTerm #

`norm' t` normalizes the term `t` using Maude.

nf' :: LNTerm -> WithMaude Bool #

`nf' t` returns `True` if the term `t` is in normal form.

nfSubstVFresh' :: LNSubstVFresh -> WithMaude Bool #

`nfSubst s` returns `True` if the substitution `s` is in normal form.

normSubstVFresh' :: LNSubstVFresh -> WithMaude LNSubstVFresh #

`normSubst s` normalizes the substitution `s`.

maybeNotNfSubterms :: MaudeSig -> LNTerm -> [LNTerm] #

Returns all subterms that may be not in normal form.