AbstractLibrary
Base Library implementation defaulting every contribution (operators, clauses, primitives, functions) to empty, and providing structural equals/hashCode/toString; subclasses only need to override Library.alias plus whichever contributions they actually provide.
Inheritors
Properties
LogicFunctions to be loaded by a solver when the library is used, indexed by their Signature in the eyes of the solver
Operators to be loaded by a solver when the library is used
Functions
Shorthand for this Library's declared Library.operators, as a Sequence.
Checks whether this library has a LogicFunction with provided signature
Checks whether this library has a Primitive with provided signature
Checks whether the provided signature, is protected in this library
Combines this Library and other into a two-library Runtime, via Runtime.of. Note that, unlike Runtime.plus, this does not reject a clashing Library.alias: if both share the same alias, other silently wins.