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

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

2 la respuesta

¿Cómo definir el operador de división en Agda?

Quiero dividir dos números naturales. He hecho una función como esta _/_ : N -> N -> frac m / one = m / one (suc m) / n = ?? I dont know what to write here.Por favor ayuda.

1 la respuesta

Tipo de argumento del constructor de clase de caso según el valor del argumento anterior

Estoy tratando de hacer lo siguiente trait Stateful { type State } case class SystemState(system: Stateful, state: system.State) // does not compileEs decir, el tipo destatedepende de (el valor de)system. Eso, sin embargo, no es ...

1 la respuesta

Programación genérica de Arity en Agda

¿Cómo escribir funciones genéricas de aridad en Agda? ¿Es posible escribir funciones genéricas de aridad polimórficas totalmente dependientes y universales?

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

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

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

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

1 la respuesta

¿Entonces cuál es el punto?

¿Cuál es el propósito previsto de laSo [https://github.com/idris-lang/Idris-dev/blob/master/libs/base/Data/So.idr#L14] ¿tipo? Transliterando a Agda: data So : Bool → Set where oh : So trueSo eleva una proposición booleana a una lógica. Documento ...

1 la respuesta

¿Cómo enumerar los elementos de una lista por `Fin`s en tiempo lineal?

Podemos enumerar los elementos de una lista como esta: -- enumerate-ℕ = zip [0..] enumerate-ℕ : ∀ {α} {A : Set α} -> List A -> List (ℕ × A) enumerate-ℕ = go 0 where go : ∀ {α} {A : Set α} -> ℕ -> List A -> List (ℕ × A) go n [] = [] go n (x ∷ xs) ...