concepts.pdsketch.strips.strips_expression.SQuantificationExpression#

class SQuantificationExpression[source]#

Bases: SBoolOutputExpression

The representation of a quantification expression.

Methods

ground(variable_dict[, state])

Return a new expression with all variables grounded according to the given variable dictionary.

iter_effect_predicates()

Iterate over the effect predicate names in the expression.

iter_precondition_predicates()

Iterate over the precondition predicate names in the expression.

Attributes

is_conjunction

Whether the expression is a conjunction (FORALL quantification).

is_exists

Whether the expression is a disjunction (EXISTS quantification).

is_forall

Whether the expression is a conjunction (FORALL quantification).

variable

The variable to be quantified.

expr

The expression to be quantified.

is_disjunction

Whether the expression is a disjunction (EXISTS quantification).

__init__(variable, expr, is_disjunction)[source]#

Initialize a quantification expression.

Parameters:
  • variable (Variable) – the variable to be quantified.

  • expr (SBoolOutputExpression) – the expression to be quantified.

  • is_disjunction (bool) – whether the expression is a disjunction (EXISTS quantification).

__new__(**kwargs)#
ground(variable_dict, state=None)[source]#

Return a new expression with all variables grounded according to the given variable dictionary.

Parameters:
iter_effect_predicates()#

Iterate over the effect predicate names in the expression.

Return type:

Iterable[str]

iter_precondition_predicates()[source]#

Iterate over the precondition predicate names in the expression.

Return type:

Iterable[str]

expr: SBoolOutputExpression#

The expression to be quantified.

property is_conjunction: bool#

Whether the expression is a conjunction (FORALL quantification).

is_disjunction: bool#

Whether the expression is a disjunction (EXISTS quantification).

property is_exists: bool#

Whether the expression is a disjunction (EXISTS quantification).

property is_forall: bool#

Whether the expression is a conjunction (FORALL quantification).

variable: Variable#

The variable to be quantified.