Ejemplo n.º 1
0
 class main(model.Module):
     c1 = model.Var(model.Range(0, 2))
     c2 = model.Var(model.Range(0, 2))
     
     INIT = [c1 == 0, c2 == 0]
     TRANS = [model.Next(c1) == (c1 + 1) % 2,
              model.Next(c2) == (c2 + 1) % 2]
Ejemplo n.º 2
0
        class main(model.Module):

            J = model.Var(model.Boolean(), "J")
            K = model.Var(model.Boolean(), "K")
            Q = model.Var(model.Boolean(), "Q")

            INIT = [(Q == model.Falseexp())]

            ASSIGN = {model.Next(Q): model.Case(((J & K, ~Q),
                                                 (J, model.Trueexp()),
                                                 (K, model.Falseexp()),
                                                 (model.Trueexp(), Q)))}
Ejemplo n.º 3
0
 class main(model.Module):
     c1 = model.Var(model.Range(0, 2))
     VAR = collections.OrderedDict((("c2", "0..2"),))
     
     INIT = [c1 == 0, model.Identifier("c2") == 0]
     TRANS = [model.Next(c1) == (c1 + 1) % 2,
              model.Next("c2") == (model.Identifier("c2") + 1) % 2]
Ejemplo n.º 4
0
 class Counter(model.Module):
     run = model.Identifier("run")
     ARGS = [run]
     c = model.Var(model.Range(0, 2))
     INIT = c == 0
     TRANS = [run.implies(c.next() == (c + 1) % 2),
              (~run).implies(c.next() == c)]
Ejemplo n.º 5
0
 class main(model.Module):
     v = model.Var(model.Boolean())
     i = model.IVar(model.Boolean())
     INIT = [model.Case(((model.Trueexp(),
                          model.Comment(~v, "Initially FALSE")),))]
     TRANS = [model.Case(((v,
                           model.Comment(
                           model.Comment(v.next(), "Stay true"),
                           "when v is already true")),
                          (~i, model.Comment(v.next() == v,
                                             "Stay the same")),
                          (~v & i, v.next()),
                          (v & i, model.Comment(~v.next(),
                                                "Change to false"))))]
Ejemplo n.º 6
0
        class main(model.Module):
            COMMENT = "This is the main module"

            myvar = model.Var(model.Comment(model.Boolean(), "My variable"))

            var2 = model.Identifier("var2")
            VAR = {var2: model.Comment(model.Range(0, 3), "The counter")}

            INIT = [model.Comment(~myvar, "myvar is false") &
                    model.Comment(var2 == 0, "we start at 0")]

            TRANS = [
                     model.Case(((myvar,
                                  model.Comment(
                                  model.Comment(var2.next() ==
                                                ((var2 + 1) % 4),
                                          "Increase var2"),
                                  "Only when myvar is true"
                                  )
                                 ),
                                 (model.Trueexp(),
                                  model.Comment(var2.next() == var2,
                                          "otherwise do nothing"))))
                    ]
 class main(md.Module):
     a1 = md.Var(agent())
     a2 = md.Var(agent())
     TRANS = (a1.a == a2.v)
 class agent(md.Module):
     v = md.Var(md.Boolean())
     a = md.IVar(md.Boolean())
     INIT = v
     TRANS = (v.next() == a)
 class main(md.Module):
     a1 = md.Var(agent())
     a2 = md.Var(agent())
Ejemplo n.º 10
0
 class main(md.Module):
     a1 = md.Var(agent())
     a2 = md.Var(agent())
     TRANS = a2.a.implies(a1.a)
Ejemplo n.º 11
0
 class main(smv.Module):
     c = smv.Var(smv.Range(0, 3))
     INIT = [c == 0]
     TRANS = [c.next() == (c + 1)]
Ejemplo n.º 12
0
 class main(md.Module):
     c = md.Var(md.Boolean())
     INIT = c
     TRANS = (c.next() == ~c)
     FAIRNESS = [c, ~c]
Ejemplo n.º 13
0
 class main(model.Module):
     v = model.Var(model.Comment(model.Boolean(), "The variable"))
     w = model.Var(model.Comment(model.Comment(model.Boolean(),
                                 "Another variable"),
                   "and a new name!"))
Ejemplo n.º 14
0
 class main(model.Module):
     v = model.Var(model.Boolean())
     INIT = [model.Comment(~v, "Initially FALSE") | v]
Ejemplo n.º 15
0
 class main(model.Module):
     COMMENT = "This is the main module"
     v = model.Var(model.Boolean())
Ejemplo n.º 16
0
 class main(model.Module):
     run = model.IVar(model.Boolean())
     c1 = model.Var(Counter(run))