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

Safe Haskell | Safe-Inferred
Language | Haskell2010

Agda.TypeChecking.Telescope.Path

Synopsis

- telePiPath :: (Abs Type -> Abs Type) -> ([Arg ArgName] -> Term -> Term) -> Telescope -> Type -> Boundary -> TCM Type
- telePiPath_ :: Telescope -> Type -> [(Int, (Term, Term))] -> TCM Type
- arityPiPath :: Type -> TCM Int
- iApplyVars :: DeBruijn a => [NamedArg (Pattern' a)] -> [Int]
- isInterval :: (MonadTCM m, MonadReduce m) => Type -> m Bool

# Documentation

telePiPath :: (Abs Type -> Abs Type) -> ([Arg ArgName] -> Term -> Term) -> Telescope -> Type -> Boundary -> TCM Type Source #

In an ambient context Γ, `telePiPath f lams Δ t bs` builds a type that can be `telViewPathBoundaryP'ed` into (TelV Δ t, bs'). Γ.Δ ⊢ t bs = [(i,u_i)] Δ = Δ0,(i : I),Δ1 ∀ b ∈ {0,1}. Γ.Δ0 | lams Δ1 (u_i .b) : (telePiPath f Δ1 t bs)(i = b) -- kinda: see lams Γ ⊢ telePiPath f Δ t bs

telePiPath_ :: Telescope -> Type -> [(Int, (Term, Term))] -> TCM Type Source #

`telePiPath_ Δ t [(i,u)]` Δ ⊢ t i ∈ Δ Δ ⊢ u_b : t for b ∈ {0,1}

arityPiPath :: Type -> TCM Int Source #

arity of the type, including both Pi and Path. Does not reduce the type.

iApplyVars :: DeBruijn a => [NamedArg (Pattern' a)] -> [Int] Source #

isInterval :: (MonadTCM m, MonadReduce m) => Type -> m Bool Source #