<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://courses.cs.taltech.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jishu</id>
	<title>Kursused - Kasutaja kaastöö [et]</title>
	<link rel="self" type="application/atom+xml" href="http://courses.cs.taltech.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jishu"/>
	<link rel="alternate" type="text/html" href="http://courses.cs.taltech.ee/pages/Eri:Kaast%C3%B6%C3%B6/Jishu"/>
	<updated>2026-05-21T19:58:30Z</updated>
	<subtitle>Kasutaja kaastöö</subtitle>
	<generator>MediaWiki 1.35.9</generator>
	<entry>
		<id>http://courses.cs.taltech.ee/w/index.php?title=Fail:ITI8531_synthesis2_2017.pdf&amp;diff=5505</id>
		<title>Fail:ITI8531 synthesis2 2017.pdf</title>
		<link rel="alternate" type="text/html" href="http://courses.cs.taltech.ee/w/index.php?title=Fail:ITI8531_synthesis2_2017.pdf&amp;diff=5505"/>
		<updated>2017-04-06T10:20:39Z</updated>

		<summary type="html">&lt;p&gt;Jishu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jishu</name></author>
	</entry>
	<entry>
		<id>http://courses.cs.taltech.ee/w/index.php?title=Software_Synthesis_and_Verification&amp;diff=5504</id>
		<title>Software Synthesis and Verification</title>
		<link rel="alternate" type="text/html" href="http://courses.cs.taltech.ee/w/index.php?title=Software_Synthesis_and_Verification&amp;diff=5504"/>
		<updated>2017-04-06T10:20:09Z</updated>

		<summary type="html">&lt;p&gt;Jishu: /* Lecture plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Course code&amp;#039;&amp;#039;&amp;#039;: ITI8531 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Link&amp;#039;&amp;#039;&amp;#039;: http://courses.cs.ttu.ee/pages/ITI0130&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lecturer&amp;#039;&amp;#039;&amp;#039;: prof. Jüri Vain &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Contact&amp;#039;&amp;#039;&amp;#039;: juri.vain ätt ttu.ee, ICT-418 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lab assistants&amp;#039;&amp;#039;&amp;#039;: &lt;br /&gt;
Evelin Halling, Jishu Quin &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Contact&amp;#039;&amp;#039;&amp;#039;: evelin.halling ätt ttu.ee, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous courses: [http://vana.cs.ttu.ee/tiki-index.php?page=ITI0060 2014]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Time and place==&lt;br /&gt;
&lt;br /&gt;
Lectures: Thursdays 10:00, ICT-A2 &amp;lt;br&amp;gt;&lt;br /&gt;
Labs: Thursdays 12:00, ICT-402 - Evelin Halling, Jishu Quin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red; font-weight: bold&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;Lab on March 16 will be cancelled due to the sickness of lab instructor.&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Lecture plan==&lt;br /&gt;
* [[Media:ITI8531_Lecture_1_16_intro.pdf|Lecture 1]]: Introduction&lt;br /&gt;
* [[Media:ITI8531_Lecture_2_17.pdf|Lecture 2]]: Modelling state transition systems&lt;br /&gt;
* [[Media:ITI8531_Lecture_3_17_CTL.pdf|Lecture 3]]: Temporal logic CTL*&lt;br /&gt;
* [[Media:ITI8531_Lecture_4_17_modelchecking.pdf|Lecture 4]]: CTL model checking&lt;br /&gt;
* [[Media:ITI8531_Lecture_5_17_TA_and_TCTL.pdf|Lecture 5]]: Timed automata and TCTL model checking&lt;br /&gt;
* Practicing for Test 1 (see Exercises 1 below)&lt;br /&gt;
* Test 1: Model checking (&amp;#039;&amp;#039;&amp;#039;16.03.2017&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
** [[Media:ITI8531_Exercises_1_2016.pdf|Exercises]]: Model checking&lt;br /&gt;
* [[Media:ITI8531_Lecture_5_16_Specifications.pdf|Lecture 7]]: Program specifications&lt;br /&gt;
* [[Media:ITI8531_synthesis1_2017.pdf|Lecture 8]]: Program synthesis I&lt;br /&gt;
* [[Media:ITI8531_synthesis2_2017.pdf|Lecture 9]]: Program synthesis II&lt;br /&gt;
* Test 2 (13.04.2017): Program synthesis&lt;br /&gt;
* [[Media:ITI8531_Lecture_6_16_rules.pdf|Lecture 11]]: Proving partial correctness of programs&lt;br /&gt;
* [[Media:ITI0130_lecture9_1_2015.pdf|Lecture 12.1]]: Proof techniques (1): derived rules, backwards proof, annotations&lt;br /&gt;
* [[Media:ITI0130_lecture9_2_2015.pdf|Lecture 12.2]]: Proof techniques (2): Array- and FOR-rule&lt;br /&gt;
* [[Media:ITI0130_lecture10_2015.pdf|Lecture 13]]: Proving total correctness of while-programs &lt;br /&gt;
* Test 3 (05.05.2016): Deductive verification of sequential programs&lt;br /&gt;
* [[Media:ITI0130_lecture11_2015nondeterministic.pdf|Lecture 15]]: Non-deterministic programs&lt;br /&gt;
* [[Media:ITI0130_lecture_12_2015.pdf|Lecture 16]]: Parallel programs with shared variables&lt;br /&gt;
* [[Media:ITI0130_lecture_13_2015.pdf|Lecture 17]]: Parallel programs with message passing&lt;br /&gt;
* [[Media:ITI8531_lecture_14_2016.pdf|Lecture 18]]: Program synthesis&lt;br /&gt;
* Test 3 (26.05.2016): Deductive verification of non-deterministic and parallel programs&lt;br /&gt;
&lt;br /&gt;
==Labs==&lt;br /&gt;
* Lab 1 -2: Introduction to modelling in UPPAAL &lt;br /&gt;
** [http://www.uppaal.org/ UPPAAL website]&lt;br /&gt;
** [http://www.it.uu.se/research/group/darts/uppaal/small_tutorial.pdf Small tutorial on UPPAAL]&lt;br /&gt;
** [http://www.it.uu.se/research/group/darts/papers/texts/new-tutorial.pdf Tutorial on UPPAAL]&lt;br /&gt;
** Slides: [[Media:ITI0130_uppaal_eng_2013.pdf|UPPAAL introduction]]&lt;br /&gt;
** Model: [[Media:ITI0130_Light.xml|Lamp example]]&lt;br /&gt;
** Query: [[Media:ITI0130_Light.q|Lamp example]]&lt;br /&gt;
* Lab 3: Introduction to modelling in UPPAAL&lt;br /&gt;
** Assignment: Coffee Machine&lt;br /&gt;
** Slides: [[Media:ITI0130_Lab1_Coffee_machine_2015.pdf|Example and explanation]]&lt;br /&gt;
** Model: [[Media:ITI0130_Coffee.xml|Coffee machine]]&lt;br /&gt;
** Query: [[Media:ITI0130_Coffee.q|Coffee machine]]&lt;br /&gt;
* Lab 4: UPPAAL&lt;br /&gt;
** Assignment: Reader-Writer (unreliable) communication protocol&lt;br /&gt;
** Slides: [[Media:ITI0130_Lab2_2015.pdf|Example and explanation]]&lt;br /&gt;
* Lab 5: UPPAAL&lt;br /&gt;
** Assignment: Leader election protocol &lt;br /&gt;
** Slides: [[Media:ITI0130_Lab3_IEEE1394.pdf|Explanation]]&lt;br /&gt;
** [http://perso.ens-lyon.fr/pierre.lescanne/ENSEIGNEMENT/REECRITURE/ABRIAL/sldp.ieee1394.pdf The Leader Election Protocol (IEEE 1394)]&lt;br /&gt;
** [http://link.springer.com/article/10.1023%2FA%3A1008764923992 Verification of a Leader Election Protocol: Formal Methods Applied to IEEE 1394]&lt;br /&gt;
* Lab 6: UPPAAL&lt;br /&gt;
** Homework defenses&lt;br /&gt;
* Lab 7: KeY Introduction&lt;br /&gt;
** Installation: [[Media:ITI0130_Lab7_2016_KeY.pdf|KeY Installation]]&lt;br /&gt;
** Bank example: [[Media:ITI0130_Lab7_2016_Bank.zip|Bank example]]&lt;br /&gt;
** Bank JML: [[Media:ITI0130_Lab7_2016_Bank_JML.zip|Bank JML]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Lab 5: Design-by-Contract&lt;br /&gt;
** [https://github.com/nhatminhle/cofoja Contracts for Java (Cofoja)]&lt;br /&gt;
** [https://code.google.com/p/cofoja/w/list Cofoja wiki page]&lt;br /&gt;
** [[Media:ITI0130_Lab5_cofoja_setup.pdf|Installation instructions]]&lt;br /&gt;
** [[Media:ITI0130_Lab5_FM_cofoja.zip|Sample code]]&lt;br /&gt;
&lt;br /&gt;
* Lab 6: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab5_db.zip|Database]]&lt;br /&gt;
&lt;br /&gt;
* Lab 7: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab7_db2.zip|Secure Database]]&lt;br /&gt;
&lt;br /&gt;
* Lab 8: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab7_assignment_cofoja.zip|Cofoja Assignment]]&lt;br /&gt;
*** [[Media:ITI0130_Lab7_assignment_Instruction.pdf|Instructions]]&lt;br /&gt;
&lt;br /&gt;
* Lab 9: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab8_Key_Instruction.pdf|Installation]]&lt;br /&gt;
&lt;br /&gt;
* Lab 10: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab9_Key_practise.zip|Key Examples]]&lt;br /&gt;
&lt;br /&gt;
* Lab 11: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab11_Key_practise.zip|JML]]&lt;br /&gt;
** [[Media:ITI0130_Lab11_summax.zip|SumAndMax Example]]&lt;br /&gt;
&lt;br /&gt;
* Lab 12: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab12_Key_assignment.zip|Key assignment]]&lt;br /&gt;
&lt;br /&gt;
* Lab 13: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab13_Bank_example_solution.zip|Solution to Bank example]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Exercises==&lt;br /&gt;
* [[Media:Test 1_2017for practicing.pdf|Exercises 1]]: Model checking (explicit and symbolic state)&lt;br /&gt;
* [[Media:Exercises_2.pdf|Exercises 2]]: Partial correctness of WHILE-programs&lt;br /&gt;
** [[Media:while_program_example_2015.pdf|Example 1]]: Partial correctness of WHILE-loop&lt;br /&gt;
** [[Media:DEDUCTIVE_VERIFICATION_Example_2.pdf|Example 2]]: Partial correctness of FOR-loop&lt;br /&gt;
* Partial correctness of non-deterministic and parallel programs&lt;br /&gt;
** [[Media:Exercises__3.pdf|Exercises 3.1]]: Partial correctness of non-deterministic and parallel programs&lt;br /&gt;
** [[Media:Test3_exercises_solutions.pdf|Exercises 3.2]]: Partial correctness of non-deterministic and parallel programs NEW!!!&lt;br /&gt;
&lt;br /&gt;
==Resources==&lt;br /&gt;
* [http://www.fmeurope.org/ Formal Methods Europe]&lt;br /&gt;
* [[Media: 1st_order_proof_rules.pdf|Genzen&amp;#039;s proof system for 1st order logic]]: &lt;br /&gt;
* [[Media: Proof_rules_of_Hoare_logic.pdf|HL proof rules for sequential and parallel programs]]:&lt;br /&gt;
* [[Media: Invariants.pdf|Some guidlines how to find invariants]]&lt;br /&gt;
* Mike Gordon&amp;#039;s lecture notes on Hoare logic [http://www.lsv.ens-cachan.fr/~demri/Gordon14.pdf]&lt;/div&gt;</summary>
		<author><name>Jishu</name></author>
	</entry>
	<entry>
		<id>http://courses.cs.taltech.ee/w/index.php?title=Fail:ITI8531_synthesis1_2017.pdf&amp;diff=5495</id>
		<title>Fail:ITI8531 synthesis1 2017.pdf</title>
		<link rel="alternate" type="text/html" href="http://courses.cs.taltech.ee/w/index.php?title=Fail:ITI8531_synthesis1_2017.pdf&amp;diff=5495"/>
		<updated>2017-03-30T12:40:27Z</updated>

		<summary type="html">&lt;p&gt;Jishu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jishu</name></author>
	</entry>
	<entry>
		<id>http://courses.cs.taltech.ee/w/index.php?title=Software_Synthesis_and_Verification&amp;diff=5494</id>
		<title>Software Synthesis and Verification</title>
		<link rel="alternate" type="text/html" href="http://courses.cs.taltech.ee/w/index.php?title=Software_Synthesis_and_Verification&amp;diff=5494"/>
		<updated>2017-03-30T12:38:50Z</updated>

		<summary type="html">&lt;p&gt;Jishu: /* Lecture plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Course code&amp;#039;&amp;#039;&amp;#039;: ITI8531 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Link&amp;#039;&amp;#039;&amp;#039;: http://courses.cs.ttu.ee/pages/ITI0130&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lecturer&amp;#039;&amp;#039;&amp;#039;: prof. Jüri Vain &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Contact&amp;#039;&amp;#039;&amp;#039;: juri.vain ätt ttu.ee, ICT-418 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Lab assistants&amp;#039;&amp;#039;&amp;#039;: &lt;br /&gt;
Evelin Halling, Jishu Quin &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Contact&amp;#039;&amp;#039;&amp;#039;: evelin.halling ätt ttu.ee, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous courses: [http://vana.cs.ttu.ee/tiki-index.php?page=ITI0060 2014]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Time and place==&lt;br /&gt;
&lt;br /&gt;
Lectures: Thursdays 10:00, ICT-A2 &amp;lt;br&amp;gt;&lt;br /&gt;
Labs: Thursdays 12:00, ICT-402 - Evelin Halling, Jishu Quin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red; font-weight: bold&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;Lab on March 16 will be cancelled due to the sickness of lab instructor.&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Lecture plan==&lt;br /&gt;
* [[Media:ITI8531_Lecture_1_16_intro.pdf|Lecture 1]]: Introduction&lt;br /&gt;
* [[Media:ITI8531_Lecture_2_17.pdf|Lecture 2]]: Modelling state transition systems&lt;br /&gt;
* [[Media:ITI8531_Lecture_3_17_CTL.pdf|Lecture 3]]: Temporal logic CTL*&lt;br /&gt;
* [[Media:ITI8531_Lecture_4_17_modelchecking.pdf|Lecture 4]]: CTL model checking&lt;br /&gt;
* [[Media:ITI8531_Lecture_5_17_TA_and_TCTL.pdf|Lecture 5]]: Timed automata and TCTL model checking&lt;br /&gt;
* Practicing for Test 1 (see Exercises 1 below)&lt;br /&gt;
* Test 1: Model checking (&amp;#039;&amp;#039;&amp;#039;16.03.2017&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
** [[Media:ITI8531_Exercises_1_2016.pdf|Exercises]]: Model checking&lt;br /&gt;
* [[Media:ITI8531_Lecture_5_16_Specifications.pdf|Lecture 7]]: Program specifications&lt;br /&gt;
* [[Media:ITI8531_synthesis1_2017.pdf|Lecture 8]]: Program synthesis I&lt;br /&gt;
* Test 2 (13.04.2017): Program synthesis&lt;br /&gt;
* [[Media:ITI8531_Lecture_6_16_rules.pdf|Lecture 11]]: Proving partial correctness of programs&lt;br /&gt;
* [[Media:ITI0130_lecture9_1_2015.pdf|Lecture 12.1]]: Proof techniques (1): derived rules, backwards proof, annotations&lt;br /&gt;
* [[Media:ITI0130_lecture9_2_2015.pdf|Lecture 12.2]]: Proof techniques (2): Array- and FOR-rule&lt;br /&gt;
* [[Media:ITI0130_lecture10_2015.pdf|Lecture 13]]: Proving total correctness of while-programs &lt;br /&gt;
* Test 3 (05.05.2016): Deductive verification of sequential programs&lt;br /&gt;
* [[Media:ITI0130_lecture11_2015nondeterministic.pdf|Lecture 15]]: Non-deterministic programs&lt;br /&gt;
* [[Media:ITI0130_lecture_12_2015.pdf|Lecture 16]]: Parallel programs with shared variables&lt;br /&gt;
* [[Media:ITI0130_lecture_13_2015.pdf|Lecture 17]]: Parallel programs with message passing&lt;br /&gt;
* [[Media:ITI8531_lecture_14_2016.pdf|Lecture 18]]: Program synthesis&lt;br /&gt;
* Test 3 (26.05.2016): Deductive verification of non-deterministic and parallel programs&lt;br /&gt;
&lt;br /&gt;
==Labs==&lt;br /&gt;
* Lab 1 -2: Introduction to modelling in UPPAAL &lt;br /&gt;
** [http://www.uppaal.org/ UPPAAL website]&lt;br /&gt;
** [http://www.it.uu.se/research/group/darts/uppaal/small_tutorial.pdf Small tutorial on UPPAAL]&lt;br /&gt;
** [http://www.it.uu.se/research/group/darts/papers/texts/new-tutorial.pdf Tutorial on UPPAAL]&lt;br /&gt;
** Slides: [[Media:ITI0130_uppaal_eng_2013.pdf|UPPAAL introduction]]&lt;br /&gt;
** Model: [[Media:ITI0130_Light.xml|Lamp example]]&lt;br /&gt;
** Query: [[Media:ITI0130_Light.q|Lamp example]]&lt;br /&gt;
* Lab 3: Introduction to modelling in UPPAAL&lt;br /&gt;
** Assignment: Coffee Machine&lt;br /&gt;
** Slides: [[Media:ITI0130_Lab1_Coffee_machine_2015.pdf|Example and explanation]]&lt;br /&gt;
** Model: [[Media:ITI0130_Coffee.xml|Coffee machine]]&lt;br /&gt;
** Query: [[Media:ITI0130_Coffee.q|Coffee machine]]&lt;br /&gt;
* Lab 4: UPPAAL&lt;br /&gt;
** Assignment: Reader-Writer (unreliable) communication protocol&lt;br /&gt;
** Slides: [[Media:ITI0130_Lab2_2015.pdf|Example and explanation]]&lt;br /&gt;
* Lab 5: UPPAAL&lt;br /&gt;
** Assignment: Leader election protocol &lt;br /&gt;
** Slides: [[Media:ITI0130_Lab3_IEEE1394.pdf|Explanation]]&lt;br /&gt;
** [http://perso.ens-lyon.fr/pierre.lescanne/ENSEIGNEMENT/REECRITURE/ABRIAL/sldp.ieee1394.pdf The Leader Election Protocol (IEEE 1394)]&lt;br /&gt;
** [http://link.springer.com/article/10.1023%2FA%3A1008764923992 Verification of a Leader Election Protocol: Formal Methods Applied to IEEE 1394]&lt;br /&gt;
* Lab 6: UPPAAL&lt;br /&gt;
** Homework defenses&lt;br /&gt;
* Lab 7: KeY Introduction&lt;br /&gt;
** Installation: [[Media:ITI0130_Lab7_2016_KeY.pdf|KeY Installation]]&lt;br /&gt;
** Bank example: [[Media:ITI0130_Lab7_2016_Bank.zip|Bank example]]&lt;br /&gt;
** Bank JML: [[Media:ITI0130_Lab7_2016_Bank_JML.zip|Bank JML]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Lab 5: Design-by-Contract&lt;br /&gt;
** [https://github.com/nhatminhle/cofoja Contracts for Java (Cofoja)]&lt;br /&gt;
** [https://code.google.com/p/cofoja/w/list Cofoja wiki page]&lt;br /&gt;
** [[Media:ITI0130_Lab5_cofoja_setup.pdf|Installation instructions]]&lt;br /&gt;
** [[Media:ITI0130_Lab5_FM_cofoja.zip|Sample code]]&lt;br /&gt;
&lt;br /&gt;
* Lab 6: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab5_db.zip|Database]]&lt;br /&gt;
&lt;br /&gt;
* Lab 7: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab7_db2.zip|Secure Database]]&lt;br /&gt;
&lt;br /&gt;
* Lab 8: Design-by-Contract&lt;br /&gt;
** [[Media:ITI0130_Lab7_assignment_cofoja.zip|Cofoja Assignment]]&lt;br /&gt;
*** [[Media:ITI0130_Lab7_assignment_Instruction.pdf|Instructions]]&lt;br /&gt;
&lt;br /&gt;
* Lab 9: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab8_Key_Instruction.pdf|Installation]]&lt;br /&gt;
&lt;br /&gt;
* Lab 10: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab9_Key_practise.zip|Key Examples]]&lt;br /&gt;
&lt;br /&gt;
* Lab 11: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab11_Key_practise.zip|JML]]&lt;br /&gt;
** [[Media:ITI0130_Lab11_summax.zip|SumAndMax Example]]&lt;br /&gt;
&lt;br /&gt;
* Lab 12: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab12_Key_assignment.zip|Key assignment]]&lt;br /&gt;
&lt;br /&gt;
* Lab 13: Key Tool&lt;br /&gt;
** [[Media:ITI0130_Lab13_Bank_example_solution.zip|Solution to Bank example]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Exercises==&lt;br /&gt;
* [[Media:Test 1_2017for practicing.pdf|Exercises 1]]: Model checking (explicit and symbolic state)&lt;br /&gt;
* [[Media:Exercises_2.pdf|Exercises 2]]: Partial correctness of WHILE-programs&lt;br /&gt;
** [[Media:while_program_example_2015.pdf|Example 1]]: Partial correctness of WHILE-loop&lt;br /&gt;
** [[Media:DEDUCTIVE_VERIFICATION_Example_2.pdf|Example 2]]: Partial correctness of FOR-loop&lt;br /&gt;
* Partial correctness of non-deterministic and parallel programs&lt;br /&gt;
** [[Media:Exercises__3.pdf|Exercises 3.1]]: Partial correctness of non-deterministic and parallel programs&lt;br /&gt;
** [[Media:Test3_exercises_solutions.pdf|Exercises 3.2]]: Partial correctness of non-deterministic and parallel programs NEW!!!&lt;br /&gt;
&lt;br /&gt;
==Resources==&lt;br /&gt;
* [http://www.fmeurope.org/ Formal Methods Europe]&lt;br /&gt;
* [[Media: 1st_order_proof_rules.pdf|Genzen&amp;#039;s proof system for 1st order logic]]: &lt;br /&gt;
* [[Media: Proof_rules_of_Hoare_logic.pdf|HL proof rules for sequential and parallel programs]]:&lt;br /&gt;
* [[Media: Invariants.pdf|Some guidlines how to find invariants]]&lt;br /&gt;
* Mike Gordon&amp;#039;s lecture notes on Hoare logic [http://www.lsv.ens-cachan.fr/~demri/Gordon14.pdf]&lt;/div&gt;</summary>
		<author><name>Jishu</name></author>
	</entry>
</feed>