LightJason - AgentSpeak(L++)
|
unification algorithm More...
Public Member Functions | |
CUnifier () | |
ctor More... | |
CUnifier ( @Nonnull final IUnifier.IAlgorithm p_hashbased, @Nonnull final IUnifier.IAlgorithm p_recursive) | |
ctor More... | |
final boolean | equals (final Object p_object) |
final int | hashCode () |
final String | toString () |
final Set< IVariable<?> > | unify ( @Nonnull final ILiteral p_source, @Nonnull final ILiteral p_target) |
unifies a literal More... | |
IFuzzyValue< Boolean > | unify ( @Nonnull final IContext p_context, @Nonnull final ILiteral p_literal, final long p_variables, @Nonnull final IExpression p_expression, final boolean p_parallel) |
unifies the literal with the expression More... | |
Private Member Functions | |
List< Set< IVariable<?> > > | variables (final IAgent<?> p_agent, final ILiteral p_literal, final long p_variablenumber) |
search all relevant literals within the agent beliefbase and unifies the variables More... | |
Static Private Member Functions | |
static boolean | evaluateexpression (final IContext p_context, final IExpression p_expression, final Set< IVariable<?>> p_variables) |
evaluate expression More... | |
static< T > Stream< T > | parallelstream (final Stream< T > p_stream, final boolean p_parallel) |
execute stream in parallel More... | |
Private Attributes | |
final IAlgorithm | m_hashbased |
hash-based unify algorithm More... | |
final IAlgorithm | m_recursive |
recursive unify algorithm More... | |
Additional Inherited Members | |
Public Attributes inherited from org.lightjason.agentspeak.language.unify.IUnifier | |
IUnifier | EMPTY |
empty unifier More... | |
Definition at line 50 of file CUnifier.java.
org.lightjason.agentspeak.language.unify.CUnifier.CUnifier | ( | ) |
Definition at line 64 of file CUnifier.java.
org.lightjason.agentspeak.language.unify.CUnifier.CUnifier | ( | @Nonnull final IUnifier.IAlgorithm | p_hashbased, |
@Nonnull final IUnifier.IAlgorithm | p_recursive | ||
) |
p_hashbased | hash-based unification algorithm |
p_recursive | recursive-based unification algorithm |
Definition at line 75 of file CUnifier.java.
final boolean org.lightjason.agentspeak.language.unify.CUnifier.equals | ( | final Object | p_object | ) |
Definition at line 141 of file CUnifier.java.
References org.lightjason.agentspeak.language.unify.CUnifier.hashCode().
|
staticprivate |
p_context | execution context (will be duplicated) |
p_expression | expression |
p_variables | current variables |
Definition at line 173 of file CUnifier.java.
References org.lightjason.agentspeak.language.execution.IContext.duplicate(), org.lightjason.agentspeak.language.execution.IExecution.execute(), and org.lightjason.agentspeak.language.CCommon.updatecontext().
Referenced by org.lightjason.agentspeak.language.unify.CUnifier.unify().
final int org.lightjason.agentspeak.language.unify.CUnifier.hashCode | ( | ) |
Definition at line 134 of file CUnifier.java.
Referenced by org.lightjason.agentspeak.language.unify.CUnifier.equals().
|
staticprivate |
p_stream | stream |
p_parallel | parallel |
T | stream elements |
Definition at line 160 of file CUnifier.java.
Referenced by org.lightjason.agentspeak.language.unify.CUnifier.unify().
final String org.lightjason.agentspeak.language.unify.CUnifier.toString | ( | ) |
Definition at line 147 of file CUnifier.java.
final Set<IVariable<?> > org.lightjason.agentspeak.language.unify.CUnifier.unify | ( | @Nonnull final ILiteral | p_source, |
@Nonnull final ILiteral | p_target | ||
) |
p_source | source literal (with data) |
p_target | target literal (with variables) |
Implements org.lightjason.agentspeak.language.unify.IUnifier.
Definition at line 85 of file CUnifier.java.
References org.lightjason.agentspeak.language.CCommon.flattenrecursive(), and org.lightjason.agentspeak.language.unify.IUnifier.IAlgorithm.unify().
Referenced by org.lightjason.agentspeak.language.unify.CUnifier.variables().
IFuzzyValue<Boolean> org.lightjason.agentspeak.language.unify.CUnifier.unify | ( | @Nonnull final IContext | p_context, |
@Nonnull final ILiteral | p_literal, | ||
final long | p_variables, | ||
@Nonnull final IExpression | p_expression, | ||
final boolean | p_parallel | ||
) |
p_context | running context |
p_literal | literal with variables (creates a deep-copy) |
p_variables | number of unified variables |
p_expression | expression |
p_parallel | parallel executon |
Implements org.lightjason.agentspeak.language.unify.IUnifier.
Definition at line 109 of file CUnifier.java.
References org.lightjason.agentspeak.language.unify.CUnifier.evaluateexpression(), org.lightjason.agentspeak.language.fuzzy.CFuzzyValue< T >.from(), org.lightjason.agentspeak.language.unify.CUnifier.parallelstream(), org.lightjason.agentspeak.language.CCommon.updatecontext(), and org.lightjason.agentspeak.language.unify.CUnifier.variables().
|
private |
p_agent | agent |
p_literal | literal search |
p_variablenumber | number of unified variables |
Definition at line 193 of file CUnifier.java.
References org.lightjason.agentspeak.agent.IAgent< T extends IAgent<?>.beliefbase(), org.lightjason.agentspeak.language.IDeepCopy< T >.deepcopy(), org.lightjason.agentspeak.language.ILiteral.emptyValues(), org.lightjason.agentspeak.language.ITerm.fqnfunctor(), org.lightjason.agentspeak.language.ILiteral.negated(), org.lightjason.agentspeak.beliefbase.view.IView.stream(), and org.lightjason.agentspeak.language.unify.CUnifier.unify().
Referenced by org.lightjason.agentspeak.language.unify.CUnifier.unify().
|
private |
Definition at line 55 of file CUnifier.java.
|
private |
Definition at line 59 of file CUnifier.java.