use of de.bmoth.parser.ast.nodes.ltl.LTLNode in project bmoth by hhu-stups.
the class ConvertImplicationToOr method transformNode.
@Override
public Node transformNode(Node oldNode) {
LTLInfixOperatorNode implicationOperator = (LTLInfixOperatorNode) oldNode;
LTLNode innerLeft = implicationOperator.getLeft();
LTLNode innerRight = implicationOperator.getRight();
return new LTLInfixOperatorNode(OR, new LTLPrefixOperatorNode(NOT, innerLeft), innerRight);
}
use of de.bmoth.parser.ast.nodes.ltl.LTLNode in project bmoth by hhu-stups.
the class ConvertNotFinallyToGloballyNot method transformNode.
@Override
public Node transformNode(Node node) {
LTLPrefixOperatorNode not = (LTLPrefixOperatorNode) node;
LTLPrefixOperatorNode innerFinally = (LTLPrefixOperatorNode) not.getArgument();
LTLNode inner = innerFinally.getArgument();
return new LTLPrefixOperatorNode(GLOBALLY, new LTLPrefixOperatorNode(NOT, inner));
}
use of de.bmoth.parser.ast.nodes.ltl.LTLNode in project bmoth by hhu-stups.
the class ConvertNotFormulaToNegatedBFormula method transformNode.
@Override
public Node transformNode(Node node) {
LTLPrefixOperatorNode notOperator = (LTLPrefixOperatorNode) node;
LTLNode argument = notOperator.getArgument();
LTLBPredicateNode bPredicateNode = (LTLBPredicateNode) argument;
PredicateNode negatedPredicate = bPredicateNode.getPredicate().getNegatedPredicateNode();
return new LTLBPredicateNode(negatedPredicate);
}
use of de.bmoth.parser.ast.nodes.ltl.LTLNode in project bmoth by hhu-stups.
the class ConvertNotNextToNextNot method transformNode.
@Override
public Node transformNode(Node node) {
LTLPrefixOperatorNode notOperator = (LTLPrefixOperatorNode) node;
LTLNode argument = notOperator.getArgument();
LTLPrefixOperatorNode nextOperator = (LTLPrefixOperatorNode) argument;
LTLPrefixOperatorNode newNot = new LTLPrefixOperatorNode(NOT, nextOperator.getArgument());
return new LTLPrefixOperatorNode(NEXT, newNot);
}
use of de.bmoth.parser.ast.nodes.ltl.LTLNode in project bmoth by hhu-stups.
the class ConvertNotRelease method transformNode.
@Override
public Node transformNode(Node node) {
LTLPrefixOperatorNode not = (LTLPrefixOperatorNode) node;
LTLInfixOperatorNode release = (LTLInfixOperatorNode) not.getArgument();
LTLNode innerLeft = release.getLeft();
LTLNode innerRight = release.getRight();
return new LTLInfixOperatorNode(UNTIL, new LTLPrefixOperatorNode(NOT, innerLeft), new LTLPrefixOperatorNode(NOT, innerRight));
}
Aggregations