Resultados da pesquisa a pedido "dependent-type"

1 a resposta

função de replicação para uma lista indexada em comprimento usando GHC.TypeLits e singletons

Estou tentando escrever uma função de replicação para uma lista indexada por comprimento usando o mecanismo deGHC.TypeLits [https://hackage.haskell.org/package/base-4.11.0.0/docs/GHC-TypeLits.html], singletons ...

2 a resposta

Por que as novas linguagens de tipo dependente não adotaram a abordagem do SSReflect?

Existem duas convenções que encontrei na extensão SSReflect da Coq que parecem particularmente úteis, mas que não vi amplamente adotadas em linguagens de tipo dependente mais recentes (Lean, Agda, Idris). Em primeiro lugar, sempre que possível, ...

1 a resposta

Por que precisamos especificar um tipo refinado (ou seu equivalente Aux) para a saída de determinados cálculos de tipo?

Nohttps://jto.github.io/articles/typelevel_quicksort [https://jto.github.io/articles/typelevel_quicksort] : Estamos expostos a umSum tipo cujaapply se parece com isso: def apply[A <: Nat, B <: Nat](implicit sum: Sum[A, B]): Aux[A, B, sum.Out] = ...

2 a resposta

Qual é a alternativa preferida para Fin de Idris em Haskell

Eu gostaria de ter um tipo que possa conter valores de 0 a n, onde n mora no nível de tipo. Eu estava tentando algo como: import GHC.TypeLits import Data.Proxy newtype FiniteNat n = FiniteNat { toInteger :: Integer } smartConstructFiniteNat :: ...

1 a resposta

Como posso expressar a validade do intervalo no Idris?

Estou tentando modelar um formulário de pesquisa simples em Idris e atualmente lutando com a validação de entrada do usuário, que vem como uma string, w.r.t. ao tipo de perguntas feitas. Atualmente, tenho os seguintes tipos: data Question : ...

2 a resposta

Qual biblioteca de vetores usar no coq?

Gostaria de saber, existe uma biblioteca comumente usada para vetores em coq, ie. listas indexadas pelo tamanho em seu tipo. Alguns tutoriais fazem referência ao Bvector, mas não é encontrado quando tento importá-lo. Há Coq.Vectors.Vectordef, ...

2 a resposta

Não foi possível deduzir o KnownNat em dois existenciais com relação à biblioteca de singletons

Eu estava experimentando a biblioteca de singletons e encontrei um caso que não entendi. {-# LANGUAGE GADTs, StandaloneDeriving, RankNTypes, ScopedTypeVariables, FlexibleInstances, KindSignatures, DataKinds, StandaloneDeriving #-} ...

3 a resposta

Haskell: Como escrever uma instância `Monoid` para algo que depende de parâmetros

Estou trabalhando em uma pequena biblioteca para a universidade que faz cálculos inteiros em umgrupo cíclico [https://en.wikipedia.org/wiki/Cyclic_group]; Coisas como: (3 (% 11)) + (10 (% 11)) --> (2 (% 11))'Inteiros (% n)' formar claramente ...

1 a resposta

Uso de igualdade booleana linguística (singletons)

Quero criar uma estrutura de dados para armazenar itens marcados no nível de tipo usando o Symbol. Este: data Store e (ss :: [Symbol]) where Nil :: Store e '[] Cons :: e s -> Store e ss -> Store e (s ': ss) data HasElem (a :: k) (as :: [k]) ...

2 a resposta

Computação do tipo não trivial de Idris para indexação de tensores

Eu tenho mexido com uma simples biblioteca de tensores, na qual defini o seguinte tipo. data Tensor : Vect n Nat -> Type -> Type where Scalar : a -> Tensor [] a Dimension : Vect n (Tensor d a) -> Tensor (n :: d) aO parâmetro vetorial do ...