Resultados de la búsqueda a petición "dependent-type"

1 la respuesta

replicar la función para una lista indexada por longitud usando GHC.TypeLits y singletons

Estoy tratando de escribir una función de réplica para una lista indexada por longitud usando la maquinaria deGHC.TypeLits [https://hackage.haskell.org/package/base-4.11.0.0/docs/GHC-TypeLits.html], solteros ...

2 la respuesta

¿Por qué los nuevos lenguajes de tipo dependiente no han adoptado el enfoque de SSReflect?

Hay dos convenciones que he encontrado en la extensión SSReflect de Coq que parecen particularmente útiles pero que no he visto ampliamente adoptadas en los nuevos lenguajes de tipo dependiente (Lean, Agda, Idris). En primer lugar, cuando los ...

1 la respuesta

¿Por qué necesitamos especificar un tipo refinado (o su Aux equivalente) para la salida de ciertos cálculos de tipo?

Enhttps://jto.github.io/articles/typelevel_quicksort [https://jto.github.io/articles/typelevel_quicksort] : Estamos expuestos a unSum tipo cuyoapply Se ve como esto: def apply[A <: Nat, B <: Nat](implicit sum: Sum[A, B]): Aux[A, B, sum.Out] = ...

2 la respuesta

¿Cuál es la alternativa preferida a Fin de Idris en Haskell?

Me gustaría tener un tipo que pueda contener valores de 0 a n, donde n vive en el nivel de tipo. Estaba intentando algo como: import GHC.TypeLits import Data.Proxy newtype FiniteNat n = FiniteNat { toInteger :: Integer } smartConstructFiniteNat ...

1 la respuesta

¿Cómo puedo expresar la validez de rango en Idris?

Estoy tratando de modelar un formulario de encuesta simple en Idris y actualmente estoy luchando con la validación de la entrada del usuario, que viene como una cadena, w.r.t. al tipo de preguntas formuladas. Actualmente tengo los siguientes ...

2 la respuesta

¿Qué biblioteca de vectores usar en coq?

Me pregunto, ¿hay una biblioteca comúnmente utilizada para vectores en coq, es decir? listas indexadas por su longitud en su tipo. Algunos tutoriales hacen referencia a Bvector, pero no se encuentra cuando intento importarlo. Hay ...

2 la respuesta

No se pudo deducir KnownNat en dos existenciales con respecto a la biblioteca de singletons

Estaba experimentando con la biblioteca de singletons y encontré un caso que no entiendo. {-# LANGUAGE GADTs, StandaloneDeriving, RankNTypes, ScopedTypeVariables, FlexibleInstances, KindSignatures, DataKinds, StandaloneDeriving #-} ...

3 la respuesta

Haskell: Cómo escribir una instancia de 'Monoid' para algo que depende de parámetros

Estoy trabajando en una pequeña biblioteca para la universidad que hace cálculos enteros en ungrupo cíclico [https://en.wikipedia.org/wiki/Cyclic_group]; Cosas como: (3 (% 11)) + (10 (% 11)) --> (2 (% 11))'Enteros (% n)' claramente formar ...

1 la respuesta

Uso de igualdad booleana idiomática (singletons)

Quiero crear una estructura de datos para almacenar elementos etiquetados a nivel de tipo usando Symbol. Esta: data Store e (ss :: [Symbol]) where Nil :: Store e '[] Cons :: e s -> Store e ss -> Store e (s ': ss) data HasElem (a :: k) (as :: ...

2 la respuesta

Idris de cálculo de tipo no trivial para la indexación de tensor

He estado jugando con una biblioteca de tensor simple, en la que he definido el siguiente tipo. data Tensor : Vect n Nat -> Type -> Type where Scalar : a -> Tensor [] a Dimension : Vect n (Tensor d a) -> Tensor (n :: d) aEl parámetro vectorial ...