LightJason - AgentSpeak(L++)
org.lightjason.agentspeak.action.builtin.string.CNCD Class Reference

calculates the normalized-compression-distance. More...

+ Inheritance diagram for org.lightjason.agentspeak.action.builtin.string.CNCD:
+ Collaboration diagram for org.lightjason.agentspeak.action.builtin.string.CNCD:

Public Member Functions

final IFuzzyValue< Boolean > execute (final boolean p_parallel, @Nonnull final IContext p_context, @Nonnull final List< ITerm > p_argument, @Nonnull final List< ITerm > p_return)
 defines a plan-body operation More...
 
final int minimalArgumentNumber ()
 minimum number of arguments More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
final IPath name ()
 returns the name with path of the action More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.IBaseAction
final boolean equals (final Object p_object)
 
final int hashCode ()
 
final String toString ()
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.IAction
default Stream< IVariable<?> > variables ()
 returns a stream with all used variables More...
 

Static Private Attributes

static final long serialVersionUID = -3828839577514827324L
 serial id More...
 

Additional Inherited Members

- Public Attributes inherited from org.lightjason.agentspeak.action.IAction
long serialVersionUID = -6374480398439703170L
 serial id More...
 
- Protected Member Functions inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
 IBuiltinAction ()
 ctor More...
 
 IBuiltinAction (final int p_length)
 ctor More...
 
- Static Protected Attributes inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
static final Logger LOGGER = CCommon.logger( IBuiltinAction.class )
 logger More...
 
- Static Protected Attributes inherited from org.lightjason.agentspeak.action.IBaseAction
static final Logger LOGGER = org.lightjason.agentspeak.common.CCommon.logger( IAction.class )
 logger More...
 

Detailed Description

The action calculates the normalized-compression-distance between string, if the first argument matches a compression algorithm ( BZIP | GZIP | DEFLATE | PACK200 | XZ ), it will be used for defining the compression, the next string argument will be the input string and the distances will be calculated between the second and all other arguments, the action fails on wrong input

[A|B] = string/ncd( "BZIP|GZIP|DEFLATE|PACK200|XZ", "foo bar", "test foo", "bar foo" );
See also
https://en.wikipedia.org/wiki/Normalized_compression_distance

Definition at line 51 of file action/builtin/string/CNCD.java.

Member Function Documentation

◆ execute()

final IFuzzyValue<Boolean> org.lightjason.agentspeak.action.builtin.string.CNCD.execute ( final boolean  p_parallel,
@Nonnull final IContext  p_context,
@Nonnull final List< ITerm p_argument,
@Nonnull final List< ITerm p_return 
)
Parameters
p_parallelparallel execution
p_contextcurrent execution context
p_argumentparameter of the action
p_returnreturn values
Returns
fuzzy boolean

Implements org.lightjason.agentspeak.language.execution.IExecution.

Definition at line 67 of file action/builtin/string/CNCD.java.

References org.lightjason.agentspeak.language.CCommon.ECompression.BZIP, org.lightjason.agentspeak.language.CCommon.ECompression.exist(), org.lightjason.agentspeak.language.CCommon.flatten(), org.lightjason.agentspeak.language.CRawTerm< T >.from(), org.lightjason.agentspeak.language.fuzzy.CFuzzyValue< T >.from(), org.lightjason.agentspeak.language.CCommon.ECompression.from(), and org.lightjason.agentspeak.language.CCommon.ncd().

Referenced by org.lightjason.agentspeak.action.builtin.TestCActionString.ncd().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ minimalArgumentNumber()

final int org.lightjason.agentspeak.action.builtin.string.CNCD.minimalArgumentNumber ( )
Returns
number of minimal arguments

Implements org.lightjason.agentspeak.action.IAction.

Definition at line 60 of file action/builtin/string/CNCD.java.

Member Data Documentation

◆ serialVersionUID

final long org.lightjason.agentspeak.action.builtin.string.CNCD.serialVersionUID = -3828839577514827324L
staticprivate

Definition at line 56 of file action/builtin/string/CNCD.java.