Package jason.stdlib
Class intersection
java.lang.Object
jason.asSemantics.DefaultInternalAction
jason.stdlib.difference
jason.stdlib.intersection
- All Implemented Interfaces:
InternalAction
,Serializable
@Manual(literal=".intersection(arg0,arg1,arg2)",
hint="results a sorted set of the intersection of two sets",
argsHint={"the first set","the other set to intersect with the first","the result of the intersection"},
argsType={"list","list","list"},
examples={".intersection(\"[a,b,c]\",\"[b,e]\",X): X unifies with \"[b]\"",".intersection(\"[a,b,a,c]\",\"[f,e,a,c]\",X): X unifies with \"[a,c]\""},
seeAlso={"jason.stdlib.concat","jason.stdlib.delete","jason.stdlib.length","jason.stdlib.member","jason.stdlib.sort","jason.stdlib.shuffle","jason.stdlib.substring","jason.stdlib.prefix","jason.stdlib.suffix","jason.stdlib.nth","jason.stdlib.max","jason.stdlib.min","jason.stdlib.reverse","jason.stdlib.difference","jason.stdlib.intersection","jason.stdlib.union"})
public class intersection
extends difference
Internal action: .intersection(S1,S2,S3)
.
Description: S3 is the intersection of the sets S1 and S2 (represented by lists). The result set is sorted.
Parameters:
- + arg[0] (a list).
- + arg[1] (a list).
- +/- arg[2]: the result of the intersection.
Examples:
-
.intersection("[a,b,c]","[b,e]",X)
:X
unifies with "[b]". -
.intersection("[a,b,a,c]","[f,e,a,c]",X)
:X
unifies with "[a,c]".
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic InternalAction
create()
execute
(TransitionSystem ts, Unifier un, Term[] args) Executes the internal action.Methods inherited from class jason.stdlib.difference
checkArguments, getMaxArgs, getMinArgs
Methods inherited from class jason.asSemantics.DefaultInternalAction
canBeUsedInContext, destroy, prepareArguments, suspendIntention
-
Constructor Details
-
intersection
public intersection()
-
-
Method Details
-
create
-
execute
Description copied from interface:InternalAction
Executes the internal action. It should return a Boolean or an Iterator. A true boolean return means that the IA was successfully executed. An Iterator result means that there is more than one answer for this IA (e.g. see member internal action). - Specified by:
execute
in interfaceInternalAction
- Overrides:
execute
in classdifference
- Throws:
Exception
-