Examples.Structures.Signatures¶
Example signatures for general structures¶
This is the Examples.Structures.Signatures module of the Agda Universal Algebra Library.
Eight tiny signatures for the general structure type of the frozen Legacy.Base
tree, named by an arity-counting convention: position k of the digit string
counts the symbols of arity k, so S001 has one binary symbol and S111 has one
nullary, one unary, and one binary. They give the structure examples of
Examples.Structures.Basic and the finite-CSP exercises of
Exercises.Complexity.FiniteCSP something concrete to instantiate.
Examples of finite signatures¶
Each is a signature record whose symbol type is š, š, š, or š and
whose arity map sends a symbol to the finite type of its argument positions: Sā
(no symbols, so bare sets), S1 (one constant, pointed sets), S01 (one unary),
S001 (one binary, magmas and their kin), S0001 (one ternary, the NAE-3-SAT
relation), S021 (two unary and one binary), S101 (one constant and one binary,
monoids), and S111 (one constant, one unary, and one binary, groups).
-- The signature with... -- ... no symbols (e.g., sets) Sā : signature āā āā Sā = record { symbol = š ; arity = Ī» () } -- ... one nullary symbol (e.g., pointed sets) S1 : signature āā āā S1 = record { symbol = š ; arity = Ī» _ ā š } S01 : signature āā āā -- ...one unary S01 = record { symbol = š ; arity = Ī» _ ā š } -- ...one binary symbol (e.g., magmas, semigroups, semilattices) S001 : signature āā āā S001 = record { symbol = š ; arity = Ī» _ ā š } -- ...one ternary symbol (e.g., boolean NAE-3-SAT relational structure) S0001 : signature āā āā S0001 = record { symbol = š ; arity = Ī» _ ā š } -- ...0 nullary, 2 unary, and 1 binary S021 : signature āā āā S021 = record { symbol = š ; arity = Ī»{ š.š ā š ; š.š ā š ; š.š ā š } } -- ...one nullary and one binary (e.g., monoids) S101 : signature āā āā S101 = record { symbol = š ; arity = Ī»{ š.š ā š ; š.š ā š } } -- ...one nullary, one unary, and one binary (e.g., groups) S111 : signature āā āā S111 = record { symbol = š ; arity = Ī»{ š.š ā š ; š.š ā š ; š.š ā š } }