예제 #1
0
  private String dw_bf(MITLFormula xi, MITLFormula upsilon, CLTLTranslator t) {

    String orig = t.atom("O");

    return t.and(
        xi.low(t),
        t.or(
            orig,
            upsilon.low(t),
            t.and(t.S(t.neg(xi.low(t)), upsilon.high(t)), t.neg(upsilon.high(t)))));
  }
예제 #2
0
  @Override
  public String translate(CLTLTranslator t) {
    // TODO Auto-generated method stub

    // Some alias...
    MITLFormula subf1 = subformula1;
    MITLFormula subf2 = subformula2;

    String f1 = t.iff(high(t), t.or(up_af(subf1, subf2, t), up_af(subf2, subf1, t)));

    String f2 = t.iff(low(t), t.or(dw_bf(subf1, subf2, t), dw_bf(subf2, subf1, t)));

    return t.and(super.clocksEventsConstraints(t), t.G(t.and(f1, f2)));
  }
예제 #3
0
  @Override
  public String translate(CLTLTranslator t) {

    return t.and(super.clocksEventsConstraints(t), low(t), t.G(t.neg(interval(t))));
  }
예제 #4
0
  private String up_af(MITLFormula xi, MITLFormula upsilon, CLTLTranslator t) {

    return t.and(xi.high(t), t.and(t.S(t.neg(xi.low(t)), upsilon.high(t))));
  }