~peter-bulychev/dbmpyuppaal/dbmpyuppaal_discrete_states

1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE nta PUBLIC '-//Uppaal Team//DTD Flat System 1.1//EN' 'http://www.it.uu.se/research/group/darts/uppaal/flat-1_1.dtd'><nta><declaration>clock x, y;
chan good;
chan bad;

&lt;DBMPYUPPAAL_DECL&gt;
li = [1, 2, 3]
i = 0
&lt;/DBMPYUPPAAL_DECL&gt;</declaration><template><name x="5" y="5">P2</name><location id="id0" x="280" y="184"><name x="270" y="154">Ok3</name><label kind="invariant" x="270" y="199">x&lt;=2</label></location><location id="id1" x="288" y="16"></location><location id="id2" x="-408" y="104"><name x="-418" y="74">Ok2</name></location><location id="id3" x="-232" y="-64"></location><location id="id4" x="112" y="120"><name x="102" y="90">Bad</name></location><location id="id5" x="-112" y="112"><name x="-122" y="82">Ok</name></location><location id="id6" x="16" y="-40"><name x="6" y="-70">l1</name><label kind="invariant" x="0" y="-80">x&lt;=10</label></location><init ref="id6"/><transition><source ref="id1"/><target ref="id4"/><label kind="guard" x="168" y="48">x&lt;=1</label><label kind="assignment" x="140" y="68">x=0</label></transition><transition><source ref="id1"/><target ref="id0"/><label kind="assignment" x="232" y="88">x=0</label></transition><transition><source ref="id6"/><target ref="id1"/><label kind="guard" x="176" y="-24">x&gt;3</label></transition><transition><source ref="id3"/><target ref="id4"/><label kind="guard" x="-128" y="184">len(li)&lt;3</label><nail x="-272" y="208"/><nail x="72" y="224"/></transition><transition><source ref="id3"/><target ref="id3"/><label kind="guard" x="-328" y="-110">len(li) &lt;= 20</label><label kind="assignment" x="-320" y="-136">li.append(1)</label><nail x="-304" y="-96"/><nail x="-184" y="-128"/></transition><transition><source ref="id3"/><target ref="id2"/><label kind="guard" x="-376" y="-16">len(li)&gt;10</label></transition><transition><source ref="id6"/><target ref="id3"/></transition><transition><source ref="id6"/><target ref="id6"/><label kind="assignment" x="0" y="-152">x=0</label><nail x="120" y="-120"/><nail x="-80" y="-120"/></transition><transition><source ref="id6"/><target ref="id4"/><label kind="guard" x="72" y="8">x==15</label><label kind="synchronisation" x="72" y="24">bad!</label></transition><transition><source ref="id6"/><target ref="id5"/><label kind="guard" x="-108" y="6">x==5</label><label kind="synchronisation" x="-108" y="21">good!</label><label kind="assignment" x="-108" y="36">i = i + 1</label></transition></template><template><name>P</name><location id="id7" x="0" y="-8"><name x="-10" y="-38">Bad</name></location><location id="id8" x="-144" y="-8"><name x="-154" y="-38">Ok</name></location><location id="id9" x="-56" y="-72"><name x="-66" y="-102">l1</name></location><init ref="id9"/><transition><source ref="id9"/><target ref="id7"/><label kind="synchronisation" x="-32" y="-72">bad?</label></transition><transition><source ref="id9"/><target ref="id8"/><label kind="synchronisation" x="-136" y="-64">good?</label></transition></template><system></system></nta>