public ActionPreCondition applySubst(Substitution subst) { return new ActionPreCondition((getPreCondition() == null) ? null : getPreCondition().applySubst(subst), getSignatures(), getSourceInfo()); }
/** * @return A {@link MentalStateCondition} of the form "bel(precondition)" that * represents the precondition of this action. */ @Override public MentalStateCondition getPrecondition() { // Create mental state condition of the form "self.bel(precondition)". if (this.precondition == null) { return new MentalStateCondition(null, null); } else { List<MentalFormula> formulalist = new ArrayList<>(1); formulalist.add(new BelLiteral(true, new Selector(SelectorType.SELF, this.precondition.getSourceInfo()), this.precondition.getPreCondition(), this.precondition.getSignatures(), this.precondition.getSourceInfo())); return new MentalStateCondition(formulalist, this.precondition.getSourceInfo()); } }
postvars.addAll(negativePostcondition.getPostCondition().getFreeVar()); if (precondition != null && precondition.getPreCondition() != null) { postvars.removeAll(precondition.getPreCondition().getFreeVar());