Idris2Doc : Frex.Algebra.Abstract
Definitions
bindTermMapFusion : (ren : (a -> vars)) -> (t : Term sig a) -> (env : (vars -> U alg)) -> bindTerm (map ren t) env = bindTerm t (env . ren)
- Totality: total
Visibility: export bindTermsMapFusion : (ren : (a -> vars)) -> (ts : Vect n (Term sig a)) -> (env : (vars -> U alg)) -> bindTerms (bindTerms ts (Done . ren)) env = bindTerms ts (env . ren)
- Totality: total
Visibility: export bindTermExtensional : (t : Term sig vars) -> ((v : vars) -> lhs v = rhs v) -> bindTerm t lhs = bindTerm t rhs
- Totality: total
Visibility: export bindTermsExtensional : (ts : Vect n (Term sig vars)) -> ((v : vars) -> lhs v = rhs v) -> bindTerms ts lhs = bindTerms ts rhs
- Totality: total
Visibility: export record Abstract : (sig : Signature) -> Term sig (Either a b) -> Type
- Totality: total
Visibility: public export
Constructor: MkAbstract : (u : Term sig (Either (Fin vars) b)) -> (vals : Vect vars a) -> t = map (mapFst (\k => index k vals)) u -> Abstract sig t
Projections:
.u : ({rec:0} : Abstract sig t) -> Term sig (Either (Fin (vars {rec:0})) b)
.valid : ({rec:0} : Abstract sig t) -> t = map (mapFst (\k => index k (vals {rec:0}))) (u {rec:0})
.vals : ({rec:0} : Abstract sig t) -> Vect (vars {rec:0}) a
.vars : Abstract sig t -> Nat
.vars : Abstract sig t -> Nat
- Totality: total
Visibility: public export vars : Abstract sig t -> Nat
- Totality: total
Visibility: public export .u : ({rec:0} : Abstract sig t) -> Term sig (Either (Fin (vars {rec:0})) b)
- Totality: total
Visibility: public export u : ({rec:0} : Abstract sig t) -> Term sig (Either (Fin (vars {rec:0})) b)
- Totality: total
Visibility: public export .vals : ({rec:0} : Abstract sig t) -> Vect (vars {rec:0}) a
- Totality: total
Visibility: public export vals : ({rec:0} : Abstract sig t) -> Vect (vars {rec:0}) a
- Totality: total
Visibility: public export .valid : ({rec:0} : Abstract sig t) -> t = map (mapFst (\k => index k (vals {rec:0}))) (u {rec:0})
- Totality: total
Visibility: public export valid : ({rec:0} : Abstract sig t) -> t = map (mapFst (\k => index k (vals {rec:0}))) (u {rec:0})
- Totality: total
Visibility: public export record Abstracts : (sig : Signature) -> Vect n (Term sig (Either a b)) -> Type
- Totality: total
Visibility: public export
Constructor: MkAbstracts : (us : Vect n (Term sig (Either (Fin vars) b))) -> (vals : Vect vars a) -> ts = map (map (mapFst (\k => index k vals))) us -> Abstracts sig ts
Projections:
.us : ({rec:0} : Abstracts sig ts) -> Vect n (Term sig (Either (Fin (vars {rec:0})) b))
.valid : ({rec:0} : Abstracts sig ts) -> ts = map (map (mapFst (\k => index k (vals {rec:0})))) (us {rec:0})
.vals : ({rec:0} : Abstracts sig ts) -> Vect (vars {rec:0}) a
.vars : Abstracts sig ts -> Nat
.vars : Abstracts sig ts -> Nat
- Totality: total
Visibility: public export vars : Abstracts sig ts -> Nat
- Totality: total
Visibility: public export .us : ({rec:0} : Abstracts sig ts) -> Vect n (Term sig (Either (Fin (vars {rec:0})) b))
- Totality: total
Visibility: public export us : ({rec:0} : Abstracts sig ts) -> Vect n (Term sig (Either (Fin (vars {rec:0})) b))
- Totality: total
Visibility: public export .vals : ({rec:0} : Abstracts sig ts) -> Vect (vars {rec:0}) a
- Totality: total
Visibility: public export vals : ({rec:0} : Abstracts sig ts) -> Vect (vars {rec:0}) a
- Totality: total
Visibility: public export .valid : ({rec:0} : Abstracts sig ts) -> ts = map (map (mapFst (\k => index k (vals {rec:0})))) (us {rec:0})
- Totality: total
Visibility: public export valid : ({rec:0} : Abstracts sig ts) -> ts = map (map (mapFst (\k => index k (vals {rec:0})))) (us {rec:0})
- Totality: total
Visibility: public export (::) : Abstract sig t -> Abstracts sig ts -> Abstracts sig (t :: ts)
- Totality: total
Visibility: export
Fixity Declaration: infixr operator, level 7 mkAbstract : (t : Term sig (Either a (Fin n))) -> Abstract sig t
- Totality: total
Visibility: export mkAbstracts : (ts : Vect len (Term sig (Either a (Fin n)))) -> Abstracts sig ts
- Totality: total
Visibility: export