|
std::ostream & | operator<< (std::ostream &os, const Axiom &axiom) |
|
|
const VAL::operator_* | symbol_ = nullptr |
|
const Pddl * | pddl_ = nullptr |
|
std::string | name_ |
|
std::vector< Object > | parameters_ |
|
ParameterGenerator | param_gen_ |
|
Formula | Preconditions_ |
|
std::function< int(const std::vector< Object > &, State *)> | Apply_ |
|
std::function< int(const std::vector< Object > &, PartialState *)> | ApplyPartial_ |
|
◆ Axiom()
symbolic::Axiom::Axiom |
( |
const Pddl & |
pddl, |
|
|
const VAL::operator_* |
symbol |
|
) |
| |
◆ Apply() [1/2]
Iterate over all argument combinations and apply the implication whenever the context is valid.
◆ Apply() [2/2]
State symbolic::Axiom::Apply |
( |
const State & |
state | ) |
const |
Iterate over all argument combinations and apply the implication whenever the context is valid.
◆ context()
◆ CreateApplicationFunction()
std::optional< AxiomApplicationFunction > symbolic::Axiom::CreateApplicationFunction |
( |
const std::vector< Object > & |
action_params, |
|
|
const std::vector< Object > & |
action_prop_params, |
|
|
const std::vector< Object > & |
axiom_params, |
|
|
const std::vector< Object > & |
axiom_prop_params |
|
) |
| |
|
static |
Creates a function that takes action_args and returns axiom_args based on positional indices of the axiom context proposition. If the action_args are not consistent with the axiom context, returns an empty vector.
◆ IsConsistent() [1/3]
bool symbolic::Axiom::IsConsistent |
( |
const PartialState & |
state | ) |
const |
Determine whether the axiom is satisfied in the given partial state.
- Parameters
-
state | Partial state to evaluate. |
- Returns
- Whether the state is consistent with this axiom.
◆ IsConsistent() [2/3]
bool symbolic::Axiom::IsConsistent |
( |
const State & |
state | ) |
const |
Determine whether the axiom is satisfied in the given state.
- Parameters
-
- Returns
- Whether the state is consistent with this axiom.
◆ IsConsistent() [3/3]
bool symbolic::Axiom::IsConsistent |
( |
const std::vector< std::shared_ptr< Axiom >> & |
axioms, |
|
|
const PartialState & |
state |
|
) |
| |
|
static |
Determine whether all axioms are satisfied in the given partial state.
Returns false only if a partial state fully satisfies the pre-conditions of the axiom and explicitly does not satisfy the post-conditions. If a proposition in the partial state is unknown, the axiom is assumed to be satisfied.
- Parameters
-
state | Partial state to evaluate. |
- Returns
- Whether the state is consistent with this axiom.
The documentation for this class was generated from the following files:
- /home/runner/work/symbolic/symbolic/include/symbolic/axiom.h
- /home/runner/work/symbolic/symbolic/src/axiom.cc