hol-1.3: Higher order logic

LicenseMIT
MaintainerJoe Leslie-Hurd <joe@gilith.com>
Stabilityprovisional
Portabilityportable
Safe HaskellNone
LanguageHaskell98

HOL.Subst

Description

 

Documentation

data Subst Source #

Constructors

Subst TypeSubst (Map Var Term) (Map Term (Maybe Term)) 

avoidCapture :: Bool -> Var -> Var -> Term -> Term -> (Var, Term) Source #

class CanSubst a where Source #

Minimal complete definition

basicSubst

Methods

basicSubst :: a -> Subst -> (Maybe a, Subst) Source #

sharingSubst :: a -> Subst -> (Maybe a, Subst) Source #

subst :: Subst -> a -> Maybe a Source #

typeSubst :: TypeSubst -> a -> Maybe a Source #

trySharingSubst :: a -> Subst -> (a, Subst) Source #

trySubst :: Subst -> a -> a Source #

tryTypeSubst :: TypeSubst -> a -> a Source #

Instances

CanSubst Term Source # 
CanSubst Var Source # 
CanSubst Type Source # 
CanSubst TermAlpha Source # 
CanSubst Sequent Source # 
CanSubst Thm Source # 
CanSubst a => CanSubst [a] Source # 

Methods

basicSubst :: [a] -> Subst -> (Maybe [a], Subst) Source #

sharingSubst :: [a] -> Subst -> (Maybe [a], Subst) Source #

subst :: Subst -> [a] -> Maybe [a] Source #

typeSubst :: TypeSubst -> [a] -> Maybe [a] Source #

trySharingSubst :: [a] -> Subst -> ([a], Subst) Source #

trySubst :: Subst -> [a] -> [a] Source #

tryTypeSubst :: TypeSubst -> [a] -> [a] Source #

(Ord a, CanSubst a) => CanSubst (Set a) Source #