Beispiel #1
0
        /// <summary>
        ///   Visits the <paramref name="formula." />
        /// </summary>
        public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
        {
            var referenceFormula = _referenceFormula as BoundedUnaryFormula;

            if (referenceFormula == null)
            {
                IsEqual = false;
            }
            else
            {
                if (formula.Operator != referenceFormula.Operator)
                {
                    IsEqual = false;
                }
                else if (formula.Bound != referenceFormula.Bound)
                {
                    IsEqual = false;
                }
                else
                {
                    _referenceFormula = referenceFormula.Operand;
                    Visit(formula.Operand);
                }
            }
        }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     Visit(formula.Operand);
     if (IsNormalizable)
     {
         MaximalNormalizableFormulas.Add(formula.Operand);
     }
     IsNormalizable = false;
 }
        /// <summary>
        ///   Visits the <paramref name="formula." />
        /// </summary>
        public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
        {
            _builder.Append("(");

            switch (formula.Operator)
            {
            case UnaryOperator.Finally:
                _builder.Append(" F");
                break;

            default:
                Assert.NotReached($"Unknown or unsupported unary operator '{formula.Operator}'.");
                break;
            }
            _builder.Append($"<={formula.Bound} ");

            Visit(formula.Operand);
            _builder.Append(")");
        }
Beispiel #4
0
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     throw new InvalidOperationException("Only state formulas can be evaluated.");
 }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     throw new NotImplementedException();
 }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     IsFormulaReturningBoolValue = true;
 }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     Visit(formula.Operand);
 }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     IsReturningRewardResult = false;
 }
Beispiel #9
0
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     Visit(formula.Operand);
     IsCompilable = false;
 }
 /// <summary>
 ///   Visits the <paramref name="formula." />
 /// </summary>
 public override void VisitBoundedUnaryFormula(BoundedUnaryFormula formula)
 {
     Visit(formula.Operand);
     CurrentFormula = new BoundedUnaryFormula(CurrentFormula, formula.Operator, formula.Bound);
 }