ConstraintSystem

class ConstraintSystem<C : HeytingAlgebra<C>, V, T : Throwable>(constraints: Iterable<Constraint<C, V, T>>, bounds: BoundedLattice<C>, delegationContext: LatticeCongruence<C>)

Given a set of SecurityLattice constraints, finds an assignment to all variables that minimizes the trust assigned to each variable (if one exists).

Parameters

T

type of exceptions thrown when there are unsatisfiable constraints.

Constructors

Link copied to clipboard
fun <C : HeytingAlgebra<C>> ConstraintSystem(constraints: Iterable<Constraint<C, V, T>>, bounds: BoundedLattice<C>, delegationContext: LatticeCongruence<C>)

Functions

Link copied to clipboard
fun exportDotGraph(writer: Writer)

Outputs the constraint system as a DOT graph to writer.

Link copied to clipboard

Returns the least-trust solution to the set of constraints in the system.