Package-level declarations

Types

Link copied to clipboard
class AdmissibleSet(arity: Int) : Primitive

admissibleSet: every attacker of an IN argument is attacked by an IN argument other than itself. admissibleSet(+Ids): every attacker of an IN argument, or of an argument in Ids, is attacked by one of them other than itself (the arguments in Ids taken as IN).

Link copied to clipboard
object ConflictFreeSubset : Primitive

conflictFreeSubset(+Args, +Forced, -Set): the subsets of Args including Forced where no argument attacks another one (itself included), each once. The search only adds arguments compatible with those already chosen, so every branch ends in a solution: the cost grows with the number of sets, not with the subsets of Args.

Link copied to clipboard
object GroundedFixpoint : Primitive

groundedFixpoint: extends the IN/OUT labelling of the active context to the grounded fixpoint, labelling UND the arguments left. Each round labels IN the arguments whose attackers are all OUT, then OUT the arguments attacked by an IN one; the context is read once and only the new labels are asserted.

Link copied to clipboard
object MaximalAdmissibleSubset : Primitive

maximalAdmissibleSubset(+Ids, -Subset): the largest admissible subset of the conflict-free set Ids, removing the arguments with an attacker not attacked by the remaining ones until none is left (a greatest fixpoint, polynomial)

Link copied to clipboard
object NaiveSubset : Primitive

naiveSubset(+Args, +Forced, +In, -Set): the maximal conflict-free subsets of Args including Forced, each once: every argument of Args left out either attacks itself or conflicts with an argument of Set or In (already IN). An argument left out that no later argument can conflict with prunes the search.

Link copied to clipboard
object NewLabelling : Primitive

newLabelling(+Branch, +Ids): in a new branch of Branch (left active), the arguments of Ids IN, the unlabelled arguments attacked by an IN one OUT, and the other unlabelled ones UND, asserted with a single context_assert_all

Link copied to clipboard
object StronglyAdmissibleSet : Primitive

stronglyAdmissibleSet: every IN argument is reachable from the unattacked ones, iteratively adding the IN arguments whose attackers are all attacked by those added so far