Agda-2.2.8: A dependently typed functional programming language and proof assistant

Agda.TypeChecking.Reduce

Contents

Synopsis

Documentation

traceFun :: MonadTCM tcm => String -> tcm a -> tcm aSource

traceFun' :: (Show a, MonadTCM tcm) => String -> tcm a -> tcm aSource

class Instantiate t whereSource

Instantiate something. Results in an open meta variable or a non meta. Doesn't do any reduction, and preserves blocking tags (when blocking meta is uninstantiated).

Methods

instantiate :: MonadTCM tcm => t -> tcm tSource

class Reduce t whereSource

Methods

reduce :: MonadTCM tcm => t -> tcm tSource

reduceB :: MonadTCM tcm => t -> tcm (Blocked t)Source

Instances

Reduce Telescope 
Reduce Sort 
Reduce Type 
Reduce Term 
Reduce Constraint 
Reduce t => Reduce [t] 
Reduce t => Reduce (Arg t) 
Reduce t => Reduce (Abs t) 
Reduce a => Reduce (Closure a) 
(Reduce a, Reduce b) => Reduce (a, b) 
(Ord k, Reduce e) => Reduce (Map k e) 
(Reduce a, Reduce b, Reduce c) => Reduce (a, b, c) 

unfoldDefinition :: MonadTCM tcm => Bool -> (Term -> tcm (Blocked Term)) -> Term -> QName -> Args -> tcm (Blocked Term)Source

If the first argument is True, then a single delayed clause may be unfolded.

Normalisation

Full instantiation