HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

ModuleAgda-2.7.0.1Haskell2010

Agda.Syntax.Internal

  • 52 types
  • 7 classes
  • 78 values
  • PackageAgda-2.7.0.1
  • Exports144
  • LanguageHaskell2010
  • LicenceMIT
  • SourceInternal.hs
datadata Dom' t e
#

Similar to Arg, but we need to distinguish an irrelevance annotation in a function domain (the domain itself is not irrelevant!) from an irrelevant argument.

Dom is used in Pi of internal syntax, in Context and Telescope. Arg is used for actual arguments (Var, Con, Def etc.) and in Abstract syntax and other situations.

cubical

When

annFinite (argInfoAnnotation domInfo) = True

for the domain of a

Pi

type, the elements should be compared by tabulating the domain type. Only supported in case the domain type is primIsOne, to obtain the correct equality for partial elements.

Constructors

Instances99TelToArgs, TerSetSizeDepth, Abstract, DropArgs, TeleNoAbs, Functor, …
datadata Term
#

Raw values.

Def is used for both defined and undefined constants. Assume there is a type declaration and a definition for every constant, even if the definition is an empty list of clauses.

Constructors

  • Var !Int Elims

    x es neutral

  • Lam ArgInfo (Abs Term)

    Terms are beta normal. Relevance is ignored

  • Lit Literal
  • Def QName Elims

    f es, possibly a delta/iota-redex

  • Con ConHead ConInfo Elims

    c es or record { fs = es } es allows only Apply and IApply eliminations, and IApply only for data constructors.

  • Pi (Dom Type) (Abs Type)

    dependent or non-dependent function space

  • Sort Sort
  • Level Level
  • MetaV !MetaId Elims
  • DontCare Term

    Irrelevant stuff in relevant position, but created in an irrelevant context. Basically, an internal version of the irrelevance axiom .irrAx : .A -> A.

  • Dummy String Elims

    A (part of a) term or type which is only used for internal purposes. Replaces the Sort Prop hack. The String typically describes the location where we create this dummy, but can contain other information as well. The second field accumulates eliminations in case we apply a dummy term to more of them. Dummy terms should never be used in places where they can affect type checking, so syntactic checks are free to ignore the eliminators, which are only there to ease debugging when a dummy term incorrectly leaks into a relevant position.

Instances363Show, IsInstantiatedMeta, UnFreezeMeta, DeBruijn, Suggest, TelToArgs, …
  • Eq LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Eq NotBlockedDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Eq PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Eq SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Eq SubstitutionDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Eq TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan

    Syntactic Term equality, ignores stuff below DontCare and sharing.

  • Eq SingleLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Level
  • Ord LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord SubstitutionDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Show TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.CompiledClause
  • AddContext TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • IsInstantiatedMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • IsInstantiatedMeta PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • IsInstantiatedMeta TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • IsSizeType TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.SizedTypes
  • DeBruijn LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute.DeBruijn
  • DeBruijn PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute.DeBruijn
  • DeBruijn TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute.DeBruijn

    We can substitute Terms for variables.

  • Subst TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • PrettyTCM ElimDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM ContextEntryDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM ChangeDefined in Agda-2.7.0.1 · Agda.TypeChecking.RecordPatterns
  • Reify LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reify SortDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reify TelescopeDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reify TermDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reify TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reduce ElimDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Reduce TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • KillRange LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange SubstitutionDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.CompiledClause
  • LensSort SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Suggest TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TelToArgs ListTelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TelToArgs TelescopeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • GetDefs LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • GetDefs PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • GetDefs SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • GetDefs TelescopeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • GetDefs TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • GetDefs TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • TermLike LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • TermLike PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • TermLike SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • TermLike TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • TermLike TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • AllMetas LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • AllMetas PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • AllMetas SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • AllMetas TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • AllMetas TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • NamesIn LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • NamesIn PlusLevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • NamesIn SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • NamesIn TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • NamesIn CompiledClausesDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • Free LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • Free SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • Free TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • TerSetSizeDepth ListTelDefined in Agda-2.7.0.1 · Agda.Termination.Monad
  • TerSetSizeDepth TelescopeDefined in Agda-2.7.0.1 · Agda.Termination.Monad
  • ExtractCalls LevelDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Extract recursive calls from level expressions.

  • ExtractCalls PlusLevelDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • ExtractCalls SortDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Sorts can contain arbitrary terms of type Level, so look for recursive calls also in sorts. Ideally, Sort would not be its own datatype but just a subgrammar of Term, then we would not need this boilerplate.

  • ExtractCalls TermDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Extract recursive calls from a term.

  • ExtractCalls TypeDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Extract recursive calls from a type.

  • StripAllProjections ArgsDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • StripAllProjections ElimsDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • StripAllProjections TermDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • AbsTerm LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • AbsTerm PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • AbsTerm SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • AbsTerm TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • AbsTerm TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract

    Ignores sorts.

  • IsPrefixOf ArgsDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • IsPrefixOf ElimsDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • IsPrefixOf TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • CheckInternal ElimsDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • CheckInternal LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • CheckInternal PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • CheckInternal SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • CheckInternal TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • CheckInternal TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • PrecomputeFreeVars LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • PrecomputeFreeVars PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • PrecomputeFreeVars SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • PrecomputeFreeVars TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • PrecomputeFreeVars TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • IsMeta TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Abstract SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Abstract TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Abstract TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Abstract TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Abstract CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Match LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • Match SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • Match TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • SubstWithOrigin TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • DropArgs TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.DropArgs

    NOTE: This creates telescopes with unbound de Bruijn indices.

  • DropArgs TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.DropArgs

    Use for dropping initial lambdas in clause bodies. NOTE: does not reduce term, need lambdas to be present.

  • DropArgs CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.DropArgs

    To drop the first n arguments in a compiled clause, we reduce the split argument indices by n and drop n arguments from the bodies. NOTE: this only works for non-recursive functions, we are not dropping arguments to recursive calls in bodies.

  • PrettyUnequal TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Errors
  • PrettyUnequal TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Errors
  • ForcedVariables TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Forcing

    Assumes that the term is in normal form.

  • ForceNotFree LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • ForceNotFree PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • ForceNotFree SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • ForceNotFree TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • ForceNotFree TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • UsableModality LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableModality SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableModality TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • NoProjectedVar TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars
  • ReduceAndEtaContract TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars
  • MentionsMeta ElimDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • MentionsMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • MentionsMeta PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • MentionsMeta SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • MentionsMeta TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • MentionsMeta TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • AnyRigid LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • AnyRigid PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • AnyRigid SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • AnyRigid TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • AnyRigid TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs ElimsDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • PiApplyM TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Telescope
  • HasPolarity TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Polarity
  • ComputeOccurrences LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • ComputeOccurrences PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • ComputeOccurrences TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • ComputeOccurrences TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • PrimTerm TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Primitive
  • PrimType TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Primitive
  • ToTerm TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Primitive
  • ToTerm TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Primitive
  • InstantiateFull LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • InstantiateFull PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • InstantiateFull SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • InstantiateFull SubstitutionDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • InstantiateFull TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • InstantiateFull CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Apply SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Apply TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Apply CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • MetasToVars LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • MetasToVars PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • MetasToVars SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • MetasToVars TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • MetasToVars TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • ParallelReduce SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • ParallelReduce TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles ElimsDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • GetMatchables TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • EmbPrj Blocked_Defined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj NotBlockedDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj CompiledClausesDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • TeleNoAbs ListTelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute
  • TeleNoAbs TelescopeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute
  • SynEq LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • SynEq PlusLevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • SynEq SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • SynEq TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality

    Syntactic term equality ignores DontCare stuff.

  • SynEq TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality

    Syntactic equality ignores sorts.

  • MonadError Blocked_ NLMDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • TermToPattern Term DeBruijnPatternDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • Match NLPSort SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • Match NLPType TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • Match NLPat LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • Match NLPat TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • NLPatToTerm Nat TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • NLPatToTerm NLPSort SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • NLPatToTerm NLPType TypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • NLPatToTerm NLPat LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • NLPatToTerm NLPat TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Level NLPatDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Sort NLPSortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Term NLPatDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Type NLPTypeDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • DeBruijn (Pattern' a) => TermToPattern Term (Pattern' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Patterns.Internal
  • PatternFrom Elims [Elim' NLPat]Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • Eq a => Eq (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan

    Syntactic Type equality, ignores sort annotations.

  • Eq t => Eq (Blocked t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord a => Ord (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord a => Ord (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • NFData e => NFData (Dom e)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty a => Pretty (Blocked a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty a => Pretty (Tele (Dom a))Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • AddContext (Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (Dom (Name, Type))Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (Dom (String, Type))Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (KeepNames Telescope)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • IsSizeType a => IsSizeType (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.SizedTypes
  • IsSizeType a => IsSizeType (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.SizedTypes
  • Subst a => Subst (Blocked a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • PrettyTCM (Arg Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM (Arg Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM (NamedArg Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM (Named_ Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM (Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM (Type' NLPat)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • PrettyTCM a => PrettyTCM (Blocked a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • Reify i => Reify (Dom i)Defined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reduce t => Reduce (Dom t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify t => Simplify (Dom t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify t => Simplify (Type' t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate a => Instantiate (Blocked a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate t => Instantiate (Type' t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise t => Normalise (Dom t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise t => Normalise (Type' t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • KillRange a => KillRange (Blocked a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • KillRange a => KillRange (Type' a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • LensSort (Type' a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • LensSort a => LensSort (Dom a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • SgTel (Dom Type)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • SgTel (Dom (ArgName, Type))Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • GetDefs a => GetDefs (Dom a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • TermLike a => TermLike (Blocked a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • TermLike a => TermLike (Dom a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • NamesIn a => NamesIn (Type' a)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • Free t => Free (Dom t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • Free t => Free (Type' t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • ExtractCalls a => ExtractCalls (Dom a)Defined in Agda-2.7.0.1 · Agda.Termination.TermCheck
  • AbsTerm a => AbsTerm (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy a => EqualSy (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract

    Ignore the tactic.

  • PrecomputeFreeVars a => PrecomputeFreeVars (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • SubstWithOrigin (Arg Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • (Reduce a, ForceNotFree a, TermSubst a) => ForceNotFree (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • UsableModality a => UsableModality (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance a => UsableModality (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance a => UsableRelevance (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance a => UsableRelevance (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • MentionsMeta t => MentionsMeta (Dom t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • AnyRigid a => AnyRigid (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs (Abs Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs (Abs Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs a => Occurs (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • HasPolarity a => HasPolarity (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Polarity
  • ComputeOccurrences a => ComputeOccurrences (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • ToTerm (Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Primitive
  • InstantiateFull t => InstantiateFull (Type' t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Apply t => Apply (Blocked t)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • MetasToVars a => MetasToVars (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • ParallelReduce a => ParallelReduce (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • ParallelReduce a => ParallelReduce (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles (Abs Term)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles (Abs Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles [PlusLevel]Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles p => AllHoles (Dom p)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • GetMatchables a => GetMatchables (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • EmbPrj a => EmbPrj (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • EmbPrj a => EmbPrj (Type' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • SynEq a => SynEq (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • Unquote a => Unquote (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Unquote
  • Match [Elim' NLPat] ElimsDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • ToNLPat a b => ToNLPat (Dom a) (Dom b)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Clause
  • Match a b => Match (Dom a) (Dom b)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • NLPatToTerm p a => NLPatToTerm (Dom p) (Dom a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom a b => PatternFrom (Dom a) (Dom b)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • AddContext (Name, Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (KeepNames String, Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (List1 Name, Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (List1 (Arg Name), Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (List1 (NamedArg Name), Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (List1 (WithHiding Name), Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (String, Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext (Text, Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext ([Name], Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext ([Arg Name], Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext ([NamedArg Name], Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • AddContext ([WithHiding Name], Dom Type)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.Context
  • SgTel (ArgName, Dom Type)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • (ToAbstract r, AbsOfRef r ~ Expr) => ToAbstract (Dom r, Name)Defined in Agda-2.7.0.1 · Agda.Syntax.Translation.ReflectedToAbstract
  • type SubstArg Term = TermDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • type SubstArg (Blocked a) = SubstArg aDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • type ReifiesTo Level = ExprDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type ReifiesTo Sort = ExprDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type ReifiesTo Telescope = TelescopeDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type ReifiesTo Term = ExprDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type ReifiesTo Type = TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type ReifiesTo (Dom i) = Arg (ReifiesTo i)Defined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type TypeOf Elims = (Type, Elims -> Term)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf Level = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf PlusLevel = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf Sort = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf Term = TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf Type = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf (Abs Term) = (Dom Type, Abs Type)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf (Abs Type) = Dom TypeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf (Dom a) = TypeOf aDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type TypeOf [PlusLevel] = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • type AbsOfRef (Dom r, Name) = TypedBindingDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.ReflectedToAbstract
datadata Clause
#

A clause is a list of patterns and the clause body.

The telescope contains the types of the pattern variables and the de Bruijn indices say how to get from the order the variables occur in the patterns to the order they occur in the telescope. The body binds the variables in the order they appear in the telescope.

clauseTel ~ permute clausePerm (patternVars namedClausePats)

Terms in dot patterns are valid in the clause telescope.

For the purpose of the permutation and the body dot patterns count as variables. TODO: Change this!

Constructors

  • Clause
    • clauseLHSRange :: Range
    • clauseFullRange :: Range
    • clauseTel :: Telescope

      Δ: The types of the pattern variables in dependency order.

    • namedClausePats :: NAPs

      Δ ⊢ ps. The de Bruijn indices refer to Δ.

    • clauseBody :: Maybe Term

      Just v with Δ ⊢ v for a regular clause, or Nothing for an absurd one.

    • clauseType :: Maybe (Arg Type)

      Δ ⊢ t. The type of the rhs under clauseTel. Used, e.g., by TermCheck. Can be Irrelevant if we encountered an irrelevant projection pattern on the lhs.

    • clauseCatchall :: Bool

      Clause has been labelled as CATCHALL.

    • clauseExact :: Maybe Bool

      Pattern matching of this clause is exact, no catch-all case. Computed by the coverage checker. Nothing means coverage checker has not run yet (clause may be inexact). Just False means clause is not exact. Just True means clause is exact.

    • clauseRecursive :: Maybe Bool

      clauseBody contains recursive calls; computed by termination checker. Nothing means that termination checker has not run yet, or that clauseBody contains meta-variables; these could be filled with recursive calls later! Just False means definitely no recursive call. Just True means definitely a recursive call.

    • clauseUnreachable :: Maybe Bool

      Clause has been labelled as unreachable by the coverage checker. Nothing means coverage checker has not run yet (clause may be unreachable). Just False means clause is not unreachable. Just True means clause is unreachable.

    • clauseEllipsis :: ExpandedEllipsis

      Was this clause created by expansion of an ellipsis?

    • clauseWhereModule :: Maybe ModuleName

      Keeps track of the module name associate with the clause's where clause.

Instances29Show, Generic, NFData, Pretty, HasRange, Null, …
datadata Sort' t
#

Sorts.

Constructors

  • Univ Univ (Level' t)

    Prop ℓ, Set ℓ, SSet ℓ.

  • Inf Univ !Integer

    Propωᵢ, (S)Setωᵢ.

  • SizeUniv

    SizeUniv, a sort inhabited by type Size.

  • LockUniv

    LockUniv, a sort for locks.

  • LevelUniv

    LevelUniv, a sort inhabited by type Level. When --level-universe isn't on, this universe reduces to Set 0

  • IntervalUniv

    IntervalUniv, a sort inhabited by the cubical interval.

  • PiSort (Dom' t t) (Sort' t) (Abs (Sort' t))

    Sort of the pi type.

  • FunSort (Sort' t) (Sort' t)

    Sort of a (non-dependent) function type.

  • UnivSort (Sort' t)

    Sort of another sort.

  • MetaS !MetaId [Elim' t]
  • DefS QName [Elim' t]

    A postulated sort.

  • DummyS String

    A (part of a) term or type which is only used for internal purposes. Replaces the abuse of Prop for a dummy sort. The String typically describes the location where we create this dummy, but can contain other information as well.

Instances48Eq, Ord, NFData, Pretty, UnFreezeMeta, PrettyTCM, …
  • Eq SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Ord SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • NFData SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • UnFreezeMeta SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • PrettyTCM SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • Reify SortDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reduce SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • KillRange SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • LensSort SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • GetDefs SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • TermLike SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • AllMetas SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • NamesIn SortDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • Free SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • ExtractCalls SortDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Sorts can contain arbitrary terms of type Level, so look for recursive calls also in sorts. Ideally, Sort would not be its own datatype but just a subgrammar of Term, then we would not need this boilerplate.

  • AbsTerm SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • CheckInternal SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • PrecomputeFreeVars SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • Abstract SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Match SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • ForceNotFree SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • UsableModality SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • MentionsMeta SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • AnyRigid SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • InstantiateFull SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Apply SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • MetasToVars SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • ParallelReduce SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • EmbPrj SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • SynEq SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • Match NLPSort SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • NLPatToTerm NLPSort SortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Sort NLPSortDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • Show t => Show (Sort' t)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • (Coercible a Term, Subst a) => Subst (Sort' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • IsMeta a => IsMeta (Sort' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • type SubstArg (Sort' a) = SubstArg aDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • type ReifiesTo Sort = ExprDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type TypeOf Sort = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
classclass PatternVars a where
#

Extract pattern variables in left-to-right order. A DotP is also treated as variable (see docu for Clause).

Associated types

Methods

Instances3PatternVars
datadata Substitution' a
#

Substitutions.

Constructors

  • IdS

    Identity substitution. Γ ⊢ IdS : Γ

  • EmptyS Impossible

    Empty substitution, lifts from the empty context. First argument is IMPOSSIBLE. Apply this to closed terms you want to use in a non-empty context. Γ ⊢ EmptyS : ()

  • a :# Substitution' ainfixr 4

    Substitution extension, `cons'. Γ ⊢ u : Aρ Γ ⊢ ρ : Δ ---------------------- Γ ⊢ u :# ρ : Δ, A

  • Strengthen Impossible !Int (Substitution' a)

    Strengthening substitution. First argument is IMPOSSIBLE. In 'Strengthen err n ρ the number n must be non-negative. This substitution should only be applied to values t for which none of the variables 0 up to n - 1 are free in t[ρ], and in that case n is subtracted from all free de Bruijn indices in t[ρ]. Γ ⊢ ρ : Δ |Θ| = n --------------------------- Γ ⊢ Strengthen n ρ : Δ, Θ @

  • Wk !Int (Substitution' a)

    Weakening substitution, lifts to an extended context. Γ ⊢ ρ : Δ ------------------- Γ, Ψ ⊢ Wk |Ψ| ρ : Δ

  • Lift !Int (Substitution' a)

    Lifting substitution. Use this to go under a binder. Lift 1 ρ == var 0 :# Wk 1 ρ. Γ ⊢ ρ : Δ ------------------------- Γ, Ψρ ⊢ Lift |Ψ| ρ : Δ, Ψ

Instances19Eq, Functor, Ord, Foldable, Traversable, KillRange, …
datadata Abs a
#

Binder.

Abs: The bound variable might appear in the body. NoAbs is pseudo-binder, it does not introduce a fresh variable, similar to the const of Haskell.

Constructors

Instances53Functor, Foldable, Traversable, Decoration, Eq, Ord, …
datadata Level' t
#

A level is a maximum expression of a closed level and 0..n PlusLevel expressions each of which is an atom plus a number.

Constructors

Instances51Eq, Functor, Ord, Foldable, Traversable, NFData, …
  • Eq LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Functor Level'Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Ord LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • Foldable Level'Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Traversable Level'Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • NFData LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Pretty LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • IsInstantiatedMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • UnFreezeMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Monad.MetaVars
  • DeBruijn LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute.DeBruijn
  • PrettyTCM LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Pretty
  • Reify LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • Reduce LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Simplify LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Instantiate LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • Normalise LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • KillRange LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • TermSize LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • GetDefs LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Defs
  • TermLike LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Generic
  • AllMetas LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.MetaVars
  • NamesIn LevelDefined in Agda-2.7.0.1 · Agda.Syntax.Internal.Names
  • Free LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Lazy
  • ExtractCalls LevelDefined in Agda-2.7.0.1 · Agda.Termination.TermCheck

    Extract recursive calls from level expressions.

  • AbsTerm LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • EqualSy LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Abstract
  • CheckInternal LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.CheckInternal
  • PrecomputeFreeVars LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Precompute
  • Match LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.DisplayForm
  • ForceNotFree LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Free.Reduce
  • UsableModality LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • UsableRelevance LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Irrelevance
  • MentionsMeta LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Mention
  • AnyRigid LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • Occurs LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.MetaVars.Occurs
  • ComputeOccurrences LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity
  • InstantiateFull LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • MetasToVars LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • AllHoles LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.Confluence
  • EmbPrj LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphan
  • SynEq LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.SyntacticEquality
  • Match NLPat LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinMatch
  • NLPatToTerm NLPat LevelDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • PatternFrom Level NLPatDefined in Agda-2.7.0.1 · Agda.TypeChecking.Rewriting.NonLinPattern
  • Show t => Show (Level' t)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Subst a => Subst (Level' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • IsMeta a => IsMeta (Level' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Reduce
  • HasPolarity a => HasPolarity (Level' a)Defined in Agda-2.7.0.1 · Agda.TypeChecking.Polarity
  • type SubstArg (Level' a) = SubstArg aDefined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan
  • type ReifiesTo Level = ExprDefined in Agda-2.7.0.1 · Agda.Syntax.Translation.InternalToAbstract
  • type TypeOf Level = ()Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
datadata ConHead
#

Store the names of the record fields in the constructor. This allows reduction of projection redexes outside of TCM. For instance, during substitution and application.

Constructors

Instances16Eq, Ord, Show, Generic, NFData, Pretty, …
datadata PlusLevel' t
#

Constructors

Instances45Eq, Functor, Ord, Foldable, Traversable, NFData, …
datadata Pattern' x
#

Patterns are variables, constructors, or wildcards. QName is used in ConP rather than Name since a constructor might come from a particular namespace. This also meshes well with the fact that values (i.e. the arguments we are matching with) use QName.

Constructors

Instances48Functor, Foldable, Traversable, Subst, Reduce, LabelPatVars, …
classclass TermSize a where
#

The size of a term is roughly the number of nodes in its syntax tree. This number need not be precise for logical correctness of Agda, it is only used for reporting (and maybe decisions regarding performance).

Not counting towards the term size are:

  • sort and color annotations,

  • projections.

Methods

Instances6TermSize
datadata DataOrRecord' p
#

Constructors

Instances10NFData, KillRange, CopatternMatchingAllowed, PatternMatchingAllowed, EmbPrj, Eq, …
datadata Type'' t a
#

Types are terms with a sort annotation.

Constructors

Instances98NFData, Pretty, UnFreezeMeta, Reify, Reduce, TelToArgs, …
datadata Tele a
#

Sequence of types. An argument of the first type is bound in later types and so on.

Constructors

Instances41Functor, Foldable, Traversable, PrettyTCM, Reify, Reduce, …
datadata UnivSize
#

Constructors

Instances2Eq, Show
  • Eq UnivSizeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Show UnivSizeDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
newtypenewtype BraveTerm
#

Newtypes for terms that produce a dummy, rather than crash, when applied to incompatible eliminations.

Constructors

Instances5Show, DeBruijn, Subst, Apply, SubstArg
datadata PatternInfo
#
Instances7Eq, Show, Generic, NFData, KillRange, EmbPrj, …
datadata PatOrigin
#

Origin of the pattern: what did the user write in this position?

Constructors

Instances7Eq, Show, Generic, NFData, KillRange, EmbPrj, …
datadata ConPatternInfo
#

The ConPatternInfo states whether the constructor belongs to a record type (True) or data type (False). In the former case, the PatOrigin of the conPInfo says whether the record pattern orginates from the expansion of an implicit pattern. The Type is the type of the whole record pattern. The scope used for the type is given by any outer scope plus the clause's telescope (clauseTel).

Constructors

  • ConPatternInfo
    • conPInfo :: PatternInfo

      Information on the origin of the pattern.

    • conPRecord :: Bool

      False if data constructor. True if record constructor.

    • conPFallThrough :: Bool

      Should the match block on non-canonical terms or can it proceed to the catch-all clause?

    • conPType :: Maybe (Arg Type)

      The type of the whole constructor pattern. Should be present (Just) if constructor pattern is is generated ordinarily by type-checking. Could be absent (Nothing) if pattern comes from some plugin (like Agsy). Needed e.g. for with-clause stripping.

    • conPLazy :: Bool

      Lazy patterns are generated by the forcing translation in the unifier (Agda.TypeChecking.Rules.LHS.Unify.unifyStep) and are dropped by the clause compiler (TODO: not yet) (compileClauses) when the variables they bind are unused. The GHC backend compiles lazy matches to lazy patterns in Haskell (TODO: not yet).

Instances11Show, Generic, NFData, Subst, Normalise, KillRange, …
datadata DBPatVar
#

Type used when numbering pattern variables.

Instances24Eq, Show, Generic, NFData, Pretty, DeBruijn, …
datadata EqualityView
#

View type as equality type.

Instances11EqualityUnview, Subst, PrettyTCM, Reduce, Simplify, Instantiate, …
datadata EqualityTypeData
#

Constructors

Instances3EqualityUnview, Subst, SubstArg
valueabsurdBody :: Abs Term
#

Absurd lambdas are internally represented as identity with variable name "()".

valuedummyLevel :: CallStack -> Level
#

A dummy level to constitute a level/sort created at location. Note: use macro DUMMY_LEVEL !

classclass Suggest a where
#

Suggest a name if available (i.e. name is not "_")

Methods

Instances4Suggest
  • Suggest NameDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Suggest TermDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Suggest StringDefined in Agda-2.7.0.1 · Agda.Syntax.Internal
  • Suggest (Abs b)Defined in Agda-2.7.0.1 · Agda.Syntax.Internal
valueunSpine :: Term -> Term
#

Convert top-level postfix projections into prefix projections.

familytype family TypeOf a
#
Instances13TypeOf, …
datadata MetaId
#

Meta-variable identifiers use the same structure as NameIds.

Instances28Enum, Eq, Ord, Show, Generic, NFData, …
newtypenewtype ProblemId
#

A "problem" consists of a set of constraints and the same constraint can be part of multiple problems.

Constructors

Instances15Enum, Eq, Integral, Num, Ord, Real, …

Orphan instances

1 instance