View Source Guesswork.Ast.Stop (Guesswork v0.6.0)

Defines when the search for answer sets should stop. Note that negation is not considered here.

Meeting Stop Conditions

Stop conditions can be met either through substitution or unification. Substitution is relatively simple; if all of the inputs are concrete when Guesswork.Ast.Statement.resolve/2 is called, an empty stream is returned if the stop condition is met.

However, if the stop condition is resolved met unification, one must be careful to define the condition (at least partially) in concrete terms. Otherwise, the stop coniditon will never be met and the query will result in an infinate stream.

Summary

Types

Functions