Package-level declarations

Types

Link copied to clipboard
interface Library : Pluggable

A type for logic libraries, i.e. aliases aggregates of (possibly empty) collections of

Link copied to clipboard
interface Pluggable

Base type for anything that can be "plugged into" a solver by contributing operators, clauses, primitives, and functions -- namely Library and Runtime (a group of libraries), which both implement this by aggregating their constituents' contributions.

Link copied to clipboard

Represents a group of Library objects constituting the runtime a logic solver may leverage upon, keyed by Library.alias (as the underlying Map<String, Library> reflects).

Functions

Link copied to clipboard
operator fun Library.plus(other: Library): Runtime

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.

Link copied to clipboard

Converts the current library into a Runtime containing a single library