Idris2Doc : Frex.Signature

Frex.Signature

Definitions and functions dealing with single-sorted finitary signatures

Definitions

recordSignature : Type
  A single-sorted finitary signature

Totality: total
Visibility: public export
Constructor: 
MkSignature : (Nat->Type) ->Signature

Projection: 
.OpWithArity : Signature->Nat->Type
  Type family of operators indexed by their arity.

Hints:
Applicative (Termsig)
sig1~>sig2=>Cast (Equationsig1) (Equationsig2)
Cast (SetoidAlgebrasig) Setoid
Cast (Algebrasig) (SetoidAlgebrasig)
Cast (a<~>b) (a~>b)
Cast (SetoidAlgebrasig) (PresetoidAlgebrasig)
(DecEq (Opsig), DecEqa) =>DecEq (Op (EvaluationSigsiga))
(DecEq (Opsig), DecEqa) =>DecEq (Termsiga)
(Eq (Opsig), Eqa) =>Eq (Op (EvaluationSigsiga))
(Eq (Opsig), Eqa) =>Eq (Termsiga)
Functor (Termsig)
Monad (Termsig)
(Ord (Opsig), Orda) =>Ord (Op (EvaluationSigsiga))
(Ord (Opsig), Orda) =>Ord (Termsiga)
pres.signature=sig=>Semantic (a<~.~>b) (Opsig)
pres.signature=sig=>Semantic (a<~.~>b) (Termsigy)
pres.signature=sig=>Semantic (Coproductab) (Opsig)
pres.signature=sig=>Semantic (Coproductab) (Termsigy)
pres.signature=sig=>Semantic (Extensionax) (Opsig)
pres.signature=sig=>Semantic (Extensionax) (Termsigy)
pres.signature=sig=>Semantic (Frexax) (Opsig)
pres.signature=sig=>Semantic (Frexax) (Termsigy)
pres.signature=sig=>Semantic (Modelpres) (Opsig)
pres.signature=sig=>Semantic (Modelpres) (Termsigx)
pres.signature=sig=>Semantic (ModelOverpresx) (Opsig)
pres.signature=sig=>Semantic (ModelOverpresx) (Termsigy)
pres.signature=sig=>Semantic (Freepresx) (Opsig)
pres.signature=sig=>Semantic (Freepresx) (Termsigy)
Semantic (Algebrasig) (Opsig)
Semantic (Algebrasig) (Termsigx)
Semantic (SetoidAlgebrasig) (Opsig)
Semantic (SetoidAlgebrasig) (Termsigx)
Show (FreePresetoidsigxuv)
Presentation->Signature
Uninhabited (Donex=Callfxs)
Uninhabited (Callfxs=Donex)
.OpWithArity : Signature->Nat->Type
  Type family of operators indexed by their arity.

Totality: total
Visibility: public export
OpWithArity : Signature->Nat->Type
  Type family of operators indexed by their arity.

Totality: total
Visibility: public export
recordOp : Signature->Type
Totality: total
Visibility: public export
Constructor: 
MkOp : sig.OpWithArityarity->Opsig

Projections:
.arity : Opsig->Nat
.snd : ({rec:0} : Opsig) ->sig.OpWithArity (arity{rec:0})

Hints:
(DecEq (Opsig), DecEqa) =>DecEq (Op (EvaluationSigsiga))
(DecEq (Opsig), DecEqa) =>DecEq (Termsiga)
(Eq (Opsig), Eqa) =>Eq (Op (EvaluationSigsiga))
(Eq (Opsig), Eqa) =>Eq (Termsiga)
(Ord (Opsig), Orda) =>Ord (Op (EvaluationSigsiga))
(Ord (Opsig), Orda) =>Ord (Termsiga)
pres.signature=sig=>Semantic (a<~.~>b) (Opsig)
pres.signature=sig=>Semantic (Coproductab) (Opsig)
pres.signature=sig=>Semantic (Extensionax) (Opsig)
pres.signature=sig=>Semantic (Frexax) (Opsig)
pres.signature=sig=>Semantic (Modelpres) (Opsig)
pres.signature=sig=>Semantic (ModelOverpresx) (Opsig)
pres.signature=sig=>Semantic (Freepresx) (Opsig)
Semantic (Algebrasig) (Opsig)
Semantic (SetoidAlgebrasig) (Opsig)
Uninhabited (Donex=Callfxs)
Uninhabited (Callfxs=Donex)
.arity : Opsig->Nat
Totality: total
Visibility: public export
arity : Opsig->Nat
Totality: total
Visibility: public export
.snd : ({rec:0} : Opsig) ->sig.OpWithArity (arity{rec:0})
Totality: total
Visibility: public export
snd : ({rec:0} : Opsig) ->sig.OpWithArity (arity{rec:0})
Totality: total
Visibility: public export
dataPrecedence : Nat->Type
Totality: total
Visibility: public export
Constructors:
Prefix : Nat->Precedence1
InfixL : Nat->Precedence2
InfixR : Nat->Precedence2

Hint: 
Show (Precedencen)
isInfix : Precedencen->Bool
Totality: total
Visibility: export
level : Precedencen->Nat
Totality: total
Visibility: export
interfaceHasPrecedence : Signature->Type
Parameters: sig
Methods:
OpPrecedence : sig.OpWithArity (Sn) ->Maybe (Precedence (Sn))
OpPrecedence : HasPrecedencesig=>sig.OpWithArity (Sn) ->Maybe (Precedence (Sn))
Totality: total
Visibility: public export
precedence : HasPrecedencesig=> (f : Opsig) -> {auto0_ : arityf=Sn} ->Maybe (Precedence (Sn))
Totality: total
Visibility: export
isInfix : HasPrecedencesig=>Opsig->Bool
Totality: total
Visibility: export
recordPrinter : Signature->Type->Type
Totality: total
Visibility: public export
Constructor: 
MkPrinter : String->Showa->Show (Opsig) ->Show (Opsig) ->HasPrecedencesig->Bool->Bool->Printersiga

Projections:
.carrier : Printersiga->String
  Printing the carrier type
.opParens : Printersiga->Bool
  Should all infix operators be wrapped in parens
.opPatterns : Printersiga->Show (Opsig)
  Patterns for operators
.opPrec : Printersiga->HasPrecedencesig
  Operator precedences
.opShow : Printersiga->Show (Opsig)
  Operator printing
.topParens : Printersiga->Bool
  Should we wrap a term in parens at the toplevel
.varShow : Printersiga->Showa
  Variable printing
.carrier : Printersiga->String
  Printing the carrier type

Totality: total
Visibility: public export
carrier : Printersiga->String
  Printing the carrier type

Totality: total
Visibility: public export
.varShow : Printersiga->Showa
  Variable printing

Totality: total
Visibility: public export
varShow : Printersiga->Showa
  Variable printing

Totality: total
Visibility: public export
.opPatterns : Printersiga->Show (Opsig)
  Patterns for operators

Totality: total
Visibility: public export
opPatterns : Printersiga->Show (Opsig)
  Patterns for operators

Totality: total
Visibility: public export
.opShow : Printersiga->Show (Opsig)
  Operator printing

Totality: total
Visibility: public export
opShow : Printersiga->Show (Opsig)
  Operator printing

Totality: total
Visibility: public export
.opPrec : Printersiga->HasPrecedencesig
  Operator precedences

Totality: total
Visibility: public export
opPrec : Printersiga->HasPrecedencesig
  Operator precedences

Totality: total
Visibility: public export
.opParens : Printersiga->Bool
  Should all infix operators be wrapped in parens

Totality: total
Visibility: public export
opParens : Printersiga->Bool
  Should all infix operators be wrapped in parens

Totality: total
Visibility: public export
.topParens : Printersiga->Bool
  Should we wrap a term in parens at the toplevel

Totality: total
Visibility: public export
topParens : Printersiga->Bool
  Should we wrap a term in parens at the toplevel

Totality: total
Visibility: public export
withQuoted : Printersiga->Printersiga
  The modified names we are using when printing a context rather than
a term (i.e. a term with an extra variable in scope: the focus).

Totality: total
Visibility: export
display : Printersig () ->Opsig->Doc ()
Totality: total
Visibility: export
display : Printersig () ->Opsig->Maybe (Doc ())
Totality: total
Visibility: export
display : (sig : Signature) ->Finite (Opsig) =>Printersig () ->Doc ()
Totality: total
Visibility: export