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

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 ...

5 la respuesta

Cómo hacer un tipo con restricciones

Por ejemplo, quiero hacer un tipo MyType de triples enteros. Pero no solo producto cartesiano de tres enteros, quiero que el tipo represente todos (x, y, z) de modo que x + y + z = 5 ¿Cómo puedo hacer eso? Excepto de usar solo (x, y) ya que z = ...

1 la respuesta

Recursión estructural en un parámetro dependiente.

Estoy tratando de escribir el colador de Eratóstenes en Coq. Tengo una función

1 la respuesta

¿Cuál es una buena manera de representar grupos libres?

Es fácil representar magmas libres (árboles de hojas binarias), semigrupos libres (listas no vacías) y monoides (listas) libres, y no es difícil demostrar que realmente son lo que dicen ser. Pero los grupos libres parecen mucho más complicados. ...

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

¿Cómo indexar un tipo de "elemento" por un valor de "contenedor de origen"?

Así que tengo una situación muy similar a este código (muy simplificado):

2 la respuesta

Haskell: especificación de restricciones de igual longitud de listas en el sistema de tipos

En Haskell, a menudo tengo una función comof, que acepta una lista y devuelve una lista de igual longitud: f :: [a] -> [a] -- length f(xs) == length xsDel mismo modo, podría tener una función comog, que acepta dos listas que deberían tener la ...

1 la respuesta

¿Cosa 'Refl' en Cálculo de Construcciones?

En idiomas comoAgda, IdrisoHaskell con extensiones de tipo, hay un= escriba algo así como lo siguiente data a :~: b where Refl :: a :~: aa :~: b significa quea yb son lo mismo. ¿Se puede definir tal tipo en elcálculo de ...

1 la respuesta

¿Puede sizeof anidado dos veces ser una expresión dependiente?

Noté que gcc 5.0 rechaza el siguiente código, mientras que clang 3.6 lo acepta. template<int n> struct I { typedef int Type; }; template<typename T> struct A { typedef I<sizeof(sizeof(T))>::Type Type; };Los dos compiladores parecen diferir sobre ...

3 la respuesta

¿Puedes crear funciones que devuelvan funciones de una aridad dependiente en un lenguaje de tipo dependiente?

Por lo que sé sobre los tipos dependientes, creo que debería ser posible, pero nunca antes había visto un ejemplo de esto en un lenguaje de tipo dependiente, por lo que no estoy exactamente seguro de por dónde empezar. Lo que quiero es una ...