flowsTo

fun <C : HeytingAlgebra<C>, V, T> Term<C, V>.flowsTo(that: Term<C, V>, failWith: (C, C) -> T): Constraint<C, V, T>

Returns a constraint that represents [this] flowsTo [that].

Parameters

failWith

a function that generates the exception to throw if the returned constraint is unsatisfiable. The function will be given best-effort estimates for the values of this and that.

Throws

if this or that is not allowed to appear in constraints.