Add first part of verification lecture

This commit is contained in:
Yorick Barbanneau 2023-02-01 00:48:48 +01:00
parent c99698329e
commit e4563cd879
2 changed files with 769 additions and 0 deletions

View file

@ -0,0 +1,616 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="151.26103mm"
height="54.737858mm"
viewBox="0 0 151.26103 54.737857"
version="1.1"
id="svg157"
sodipodi:docname="dickys.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<sodipodi:namedview
id="namedview802"
pagecolor="#ffffff"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#505050"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="2.05704"
inkscape:cx="215.35799"
inkscape:cy="85.802899"
inkscape:window-width="1280"
inkscape:window-height="771"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg157" />
<title
id="title128722">Interception</title>
<defs
id="defs154">
<marker
style="overflow:visible"
id="marker118266"
refX="0"
refY="0"
orient="auto">
<path
transform="scale(-0.6)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
id="path118264" />
</marker>
</defs>
<path
id="path1806"
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="M 74.450753 16.748332 L 48.781519 39.518518 L 48.781519 40.140186 L 74.760295 17.095081 L 74.450753 16.748332 z " />
<g
id="g1792"
transform="rotate(-90,48.46025,48.586829)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1782"
sodipodi:nodetypes="ccccc" />
<g
id="g1790">
<g
id="g1788">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1784" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1786" />
</g>
</g>
</g>
<g
id="g1780"
transform="rotate(90,51.709332,8.012598)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1770"
sodipodi:nodetypes="ccccc" />
<g
id="g1778">
<g
id="g1776">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1772" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1774" />
</g>
</g>
</g>
<g
id="g1708"
transform="rotate(180,49.888195,28.231725)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1698"
sodipodi:nodetypes="ccccc" />
<g
id="g1706">
<g
id="g1704">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1700" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1702" />
</g>
</g>
</g>
<g
id="g1684"
transform="translate(53.753345,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1674"
sodipodi:nodetypes="ccccc" />
<g
id="g1682">
<g
id="g1680">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1676" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1678" />
</g>
</g>
</g>
<g
id="g1672"
transform="translate(23.061659,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1662"
sodipodi:nodetypes="ccccc" />
<g
id="g1670">
<g
id="g1668">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1664" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1666" />
</g>
</g>
</g>
<g
id="g34365"
transform="translate(-39.909185,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path34355"
sodipodi:nodetypes="ccccc" />
<g
id="g34363">
<g
id="g34361">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path34357" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path34359" />
</g>
</g>
</g>
<g
id="path92759"
transform="translate(-116.8743,-68.842611)">
<path
style="color:#000000;fill:#7137c8;-inkscape-stroke:none"
d="m 91.703125,33.816406 c -0.07394,5.834419 5.533855,10.609023 11.826175,10.919922 l 0.0195,-0.398437 C 97.446662,44.036387 92.032875,39.396338 92.103516,33.822266 Z"
id="path131884" />
<g
id="g131874">
<g
id="path131876">
<path
style="color:#000000;fill:#7137c8;fill-rule:evenodd;stroke-width:0.15;stroke-linejoin:round;-inkscape-stroke:none"
d="m 101.49765,43.466982 2.57143,1.092482 -2.6666,0.833675 c 0.44651,-0.547928 0.48253,-1.325992 0.0952,-1.926157 z"
id="path131880" />
<path
style="color:#000000;fill:#7137c8;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 101.49805,43.392578 a 0.0750075,0.0750075 0 0 0 -0.0371,0.128906 l -0.0254,-0.01367 c 0.37016,0.573571 0.33399,1.315386 -0.0918,1.837891 a 0.0750075,0.0750075 0 0 0 0.082,0.119141 l 2.66602,-0.833985 a 0.0750075,0.0750075 0 0 0 0.006,-0.140625 l -2.57032,-1.091797 -0.002,0.0078 a 0.0750075,0.0750075 0 0 0 -0.0273,-0.01367 z m 0.10742,0.201172 2.24609,0.955078 -2.32812,0.728516 c 0.33061,-0.509842 0.35967,-1.136873 0.082,-1.683594 z"
id="path131882" />
</g>
</g>
</g>
<g
id="path103213"
transform="translate(-116.8743,-68.842611)">
<path
style="color:#000000;fill:#7137c8;-inkscape-stroke:none"
d="m 128.95508,34.117187 c -0.30067,6.085299 -5.64553,10.373721 -11.2461,10.302735 l -0.006,0.398437 c 5.80794,0.07361 11.33866,-4.372491 11.65039,-10.68164 z"
id="path131912" />
<g
id="g131902">
<g
id="path131904">
<path
style="color:#000000;fill:#7137c8;fill-rule:evenodd;stroke-width:0.15;stroke-linejoin:round;-inkscape-stroke:none"
d="m 128.08398,36.168413 1.09248,-2.571431 0.83368,2.666601 c -0.54793,-0.446503 -1.32599,-0.48253 -1.92616,-0.09517 z"
id="path131908" />
<path
style="color:#000000;fill:#7137c8;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 129.17969,33.521484 a 0.0750075,0.0750075 0 0 0 -0.0723,0.04687 l -1.0918,2.570313 a 0.0750075,0.0750075 0 0 0 0.10938,0.0918 c 0.57358,-0.370196 1.31538,-0.33399 1.83789,0.0918 a 0.0750075,0.0750075 0 0 0 0.11914,-0.08203 l -0.83398,-2.666015 a 0.0750075,0.0750075 0 0 0 -0.0684,-0.05273 z m -0.0137,0.292969 0.72851,2.328125 c -0.51003,-0.331408 -1.1364,-0.359932 -1.68359,-0.08203 z"
id="path131910" />
</g>
</g>
</g>
<g
id="path103394"
transform="translate(-116.8743,-68.842611)">
<path
style="color:#000000;fill:#ff2ad4;-inkscape-stroke:none"
d="m 88.806641,34.435547 c -0.03237,7.058597 5.615007,12.9257 14.431639,12.892578 l -0.002,-0.398438 C 94.596705,46.962145 89.17564,41.282809 89.207031,34.4375 Z"
id="path131898" />
<g
id="g131888">
<g
id="path131890">
<path
style="color:#000000;fill:#ff2ad4;fill-rule:evenodd;stroke-width:0.15;stroke-linejoin:round;-inkscape-stroke:none"
d="m 88.029762,36.524968 0.976268,-2.617762 0.952218,2.626605 c -0.567367,-0.421525 -1.346264,-0.422683 -1.928486,-0.0088 z"
id="path131894" />
<path
style="color:#000000;fill:#ff2ad4;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 89.005859,33.832031 a 0.0750075,0.0750075 0 0 0 -0.07031,0.04883 l -0.976563,2.617188 a 0.0750075,0.0750075 0 0 0 -0.0039,0.02734 0.0750075,0.0750075 0 0 0 0.117188,0.06055 c 0.556422,-0.395542 1.300754,-0.394154 1.841796,0.0078 a 0.0750075,0.0750075 0 0 0 0.115235,-0.08594 L 89.07618,33.880846 a 0.0750075,0.0750075 0 0 0 -0.07031,-0.04883 z m 0,0.292969 0.832032,2.292969 c -0.524151,-0.30777 -1.151636,-0.307722 -1.685547,-0.0059 z"
id="path131896" />
</g>
</g>
</g>
<g
id="path107300"
transform="translate(-116.8743,-68.842611)">
<path
style="color:#000000;fill:#ff2ad4;-inkscape-stroke:none"
d="m 131.61914,33.902344 -0.40039,0.002 c 0.0324,8.631342 -6.17913,13.498237 -13.03516,13.466797 l -0.002,0.40039 c 7.04788,0.03232 13.47066,-5.04424 13.4375,-13.86914 z"
id="path131926" />
<g
id="g131916">
<g
id="path131918">
<path
style="color:#000000;fill:#ff2ad4;fill-rule:evenodd;stroke-width:0.15;stroke-linejoin:round;-inkscape-stroke:none"
d="m 120.2712,48.549454 -2.61776,-0.976268 2.6266,-0.952218 c -0.42152,0.567367 -0.42268,1.346264 -0.009,1.928486 z"
id="path131922" />
<path
style="color:#000000;fill:#ff2ad4;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 120.25391,46.550781 -2.62696,0.951172 a 0.0750075,0.0750075 0 0 0 0,0.140625 l 2.61719,0.976563 0.002,-0.0078 a 0.0750075,0.0750075 0 0 0 0.0254,0.01367 0.0750075,0.0750075 0 0 0 0.041,-0.128906 l 0.0195,0.0098 c -0.39535,-0.556422 -0.39415,-1.298801 0.008,-1.839843 a 0.0750075,0.0750075 0 0 0 -0.0859,-0.115235 z m -0.0879,0.191406 c -0.30749,0.523587 -0.3105,1.149979 -0.01,1.683594 l -2.2832,-0.851562 z"
id="path131924" />
</g>
</g>
</g>
<metadata
id="metadata128720">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:title>Interception</dc:title>
<dc:creator>
<cc:Agent>
<dc:title>Yorick Barbanneau ^ ephase</dc:title>
</cc:Agent>
</dc:creator>
<dc:rights>
<cc:Agent>
<dc:title>CC BY-SA</dc:title>
</cc:Agent>
</dc:rights>
<cc:license
rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" />
</cc:Work>
<cc:License
rdf:about="http://creativecommons.org/licenses/by-sa/4.0/">
<cc:permits
rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
rdf:resource="http://creativecommons.org/ns#Attribution" />
<cc:permits
rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
<cc:requires
rdf:resource="http://creativecommons.org/ns#ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
<g
id="g1571"
transform="matrix(1.3313077,0,0,1.3313077,-41.527813,-12.112637)">
<path
id="ellipse21095"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.6"
d="m 45.639228,17.744139 a 3.773,3.7733111 0 0 1 -3.773,3.773311 3.773,3.7733111 0 0 1 -3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,3.773311 z" />
<g
aria-label="0"
id="text1019"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228">
<path
d="m 42.324117,17.740001 q 0,-0.772344 -0.132402,-1.086798 -0.129643,-0.317212 -0.435822,-0.317212 -0.308938,0 -0.441339,0.317212 -0.129644,0.314454 -0.129644,1.086798 0,0.780618 0.129644,1.100589 0.132401,0.319971 0.441339,0.319971 0.30342,0 0.435822,-0.319971 0.132402,-0.319971 0.132402,-1.100589 z m 0.954395,0.0083 q 0,1.023355 -0.397205,1.580545 -0.397205,0.554433 -1.125414,0.554433 -0.733727,0 -1.130932,-0.554433 -0.397205,-0.55719 -0.397205,-1.580545 0,-1.026113 0.397205,-1.580546 0.397205,-0.55719 1.130932,-0.55719 0.728209,0 1.125414,0.55719 0.397205,0.554433 0.397205,1.580546 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1547" />
</g>
</g>
<g
id="g1601"
transform="translate(-30.00918,1.6962201)">
<path
id="ellipse21095-3"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.798785"
d="M 80.813714,40.37296 A 5.023024,5.0234382 0 0 1 75.79069,45.396398 5.023024,5.0234382 0 0 1 70.767666,40.37296 5.023024,5.0234382 0 0 1 75.79069,35.349522 5.023024,5.0234382 0 0 1 80.813714,40.37296 Z" />
<g
aria-label="2"
id="text1019-6"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228"
transform="matrix(1.3313077,0,0,1.3313077,-2.8071982,3.8566184)">
<path
d="m 58.621592,28.707428 h 1.630197 v 0.780619 H 57.55962 v -0.780619 l 1.351601,-1.326775 q 0.182053,-0.182053 0.267562,-0.35583 0.08827,-0.173777 0.08827,-0.361346 0,-0.289629 -0.176536,-0.466165 -0.173777,-0.176535 -0.463406,-0.176535 -0.223428,0 -0.490989,0.107576 -0.264804,0.104818 -0.568225,0.314454 v -0.904745 q 0.32273,-0.11861 0.637184,-0.179294 0.317212,-0.06344 0.620633,-0.06344 0.664767,0 1.03163,0.325487 0.369621,0.325488 0.369621,0.907504 0,0.336521 -0.157227,0.628908 -0.154468,0.289629 -0.656492,0.77786 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1559" />
</g>
</g>
<g
id="g1660"
transform="translate(-8.1591833,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1650"
sodipodi:nodetypes="ccccc" />
<g
id="g1658">
<g
id="g1656">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1652" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1654" />
</g>
</g>
</g>
<g
id="g1576"
transform="matrix(1.3313077,0,0,1.3313077,-32.816377,-10.916392)">
<path
id="ellipse21095-5"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.6"
d="m 62.811107,16.84559 a 3.773,3.7733111 0 0 1 -3.773,3.773311 3.773,3.7733111 0 0 1 -3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,3.773311 z" />
<g
aria-label="1"
id="text1019-3"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228">
<path
d="m 57.752706,18.170988 h 0.844061 v -2.661826 l -0.866128,0.198603 V 14.985072 L 58.59125,14.78647 h 0.910262 v 3.384518 h 0.844061 v 0.733727 h -2.592867 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1550" />
</g>
</g>
<g
id="g1596"
transform="translate(-39.742664,1.6962201)">
<path
id="ellipse21095-6"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.798785"
d="m 58.974706,40.37296 a 5.023024,5.0234382 0 0 1 -5.023024,5.023438 5.023024,5.0234382 0 0 1 -5.023024,-5.023438 5.023024,5.0234382 0 0 1 5.023024,-5.023438 5.023024,5.0234382 0 0 1 5.023024,5.023438 z" />
<g
aria-label="3"
id="text1019-2"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228"
transform="matrix(1.3313077,0,0,1.3313077,-2.8071982,3.8566184)">
<path
d="m 43.122155,27.26756 q 0.37238,0.107576 0.568224,0.375138 0.195844,0.264803 0.195844,0.6758 0,0.612358 -0.42203,0.932329 -0.422031,0.317212 -1.232991,0.317212 -0.284112,0 -0.570983,-0.05241 -0.28687,-0.04965 -0.568224,-0.15171 v -0.819236 q 0.267562,0.148952 0.532366,0.226187 0.264803,0.07448 0.521331,0.07448 0.380655,0 0.582016,-0.146194 0.201361,-0.146193 0.201361,-0.419272 0,-0.281354 -0.206877,-0.424789 -0.206878,-0.146193 -0.612358,-0.146193 h -0.380655 v -0.684076 h 0.402722 q 0.358588,0 0.535123,-0.124127 0.176536,-0.126885 0.176536,-0.383413 0,-0.23722 -0.171019,-0.366863 -0.171019,-0.129643 -0.485473,-0.129643 -0.231703,0 -0.466164,0.05793 -0.234462,0.05793 -0.468923,0.171019 v -0.77786 q 0.284112,-0.08827 0.559949,-0.132401 0.278595,-0.04413 0.546157,-0.04413 0.722693,0 1.081281,0.264803 0.358588,0.262045 0.358588,0.791652 0,0.361346 -0.171019,0.593049 -0.171019,0.228945 -0.504782,0.32273 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1562" />
</g>
</g>
<g
id="g1581"
transform="matrix(1.3313077,0,0,1.3313077,-1.2438865,-39.800232)">
<path
id="ellipse21095-1"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.6"
d="m 62.811107,38.541431 a 3.773,3.7733111 0 0 1 -3.773,3.773311 3.773,3.7733111 0 0 1 -3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,3.773311 z" />
<g
aria-label="4"
id="text1019-27"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228">
<path
d="m 59.029831,37.356713 -1.04818,1.723981 h 1.04818 z M 58.869846,36.48231 h 1.061972 v 2.598384 h 0.529607 v 0.769585 h -0.529607 v 0.750276 h -0.901987 v -0.750276 h -1.643988 v -0.910262 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1565" />
</g>
</g>
<g
id="g1591"
transform="matrix(1.3313077,0,0,1.3313077,43.584508,-30.641939)">
<path
id="ellipse21095-9"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.6"
d="m 76.569449,31.66226 a 3.773,3.7733111 0 0 1 -3.773,3.773311 3.773,3.7733111 0 0 1 -3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,3.773311 z" />
<g
aria-label="6"
id="text1019-36"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228">
<path
d="m 72.755077,31.688464 q -0.251011,0 -0.377896,0.182052 -0.124127,0.179294 -0.124127,0.540641 0,0.361346 0.124127,0.543399 0.126885,0.179294 0.377896,0.179294 0.25377,0 0.377897,-0.179294 0.126885,-0.182053 0.126885,-0.543399 0,-0.361347 -0.126885,-0.540641 -0.124127,-0.182052 -0.377897,-0.182052 z m 1.180582,-1.977751 v 0.76131 q -0.234461,-0.124126 -0.444097,-0.182052 -0.206878,-0.06068 -0.40548,-0.06068 -0.427548,0 -0.667526,0.264803 -0.23722,0.262045 -0.275837,0.780619 0.162744,-0.13516 0.353072,-0.201361 0.193085,-0.06896 0.416513,-0.06896 0.570983,0 0.918537,0.369621 0.350313,0.369622 0.350313,0.968188 0,0.662008 -0.391688,1.061972 -0.38893,0.397205 -1.045422,0.397205 -0.722693,0 -1.119898,-0.54064 -0.394447,-0.543399 -0.394447,-1.53917 0,-1.020597 0.463406,-1.602613 0.463406,-0.584774 1.26885,-0.584774 0.256528,0 0.496506,0.04413 0.242737,0.04413 0.477198,0.132401 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1556" />
</g>
</g>
<g
id="g1586"
transform="matrix(1.3313077,0,0,1.3313077,12.492508,-15.352901)">
<path
id="ellipse21095-2"
style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;fill:#ffffff;stroke:#41e6a8;stroke-width:0.6"
d="m 76.208533,20.178035 a 3.773,3.7733111 0 0 1 -3.773,3.773311 3.773,3.7733111 0 0 1 -3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,-3.773311 3.773,3.7733111 0 0 1 3.773,3.773311 z" />
<g
aria-label="5"
id="text1019-61"
style="font-size:5.64914px;line-height:1.25;fill:#4d4d4d;stroke-width:0.141228">
<path
d="m 71.092203,18.118913 h 2.377714 v 0.780618 h -1.613646 v 0.637183 q 0.107577,-0.0331 0.217912,-0.04965 0.110334,-0.01931 0.228944,-0.01931 0.678559,0 1.056456,0.377897 0.377896,0.375138 0.377896,1.04818 0,0.667525 -0.410997,1.045422 -0.410997,0.377897 -1.141965,0.377897 -0.314454,0 -0.623391,-0.06896 -0.308937,-0.0662 -0.615116,-0.204119 v -0.835786 q 0.30342,0.193086 0.57374,0.289629 0.273079,0.09654 0.513057,0.09654 0.347555,0 0.546157,-0.187569 0.201361,-0.190328 0.201361,-0.513057 0,-0.325487 -0.201361,-0.513057 -0.198602,-0.187569 -0.546157,-0.187569 -0.204119,0 -0.438581,0.06068 -0.234461,0.05793 -0.502023,0.182053 z"
style="font-weight:bold;font-stretch:semi-condensed;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold Semi-Condensed'"
id="path1553" />
</g>
</g>
<g
id="g1696"
transform="matrix(-1,0,0,1,187.618,-2.3267167)" />
<g
id="g1804"
transform="translate(-71.659205,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1794"
sodipodi:nodetypes="ccccc" />
<g
id="g1802">
<g
id="g1800">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1796" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1798" />
</g>
</g>
</g>
<g
id="g1812"
transform="rotate(-41.524561,80.698075,21.568922)">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1808" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1810" />
</g>
<g
id="g1940"
transform="translate(92.38247,-2.3267167)">
<path
style="color:#000000;fill:#de6a66;-inkscape-stroke:none"
d="m 79.216797,13.818359 -25.273047,0.04102 v 0.464844 l 25.275,-0.04102 z"
id="path1930"
sodipodi:nodetypes="ccccc" />
<g
id="g1938">
<g
id="g1936">
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-width:0.174375;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783741,12.929232 3.049772,1.116986 -3.046861,1.124901 c 0.486134,-0.662437 0.482152,-1.567897 -0.0029,-2.241887 z"
id="path1932" />
<path
style="color:#000000;fill:#de6a66;fill-rule:evenodd;stroke-linejoin:round;-inkscape-stroke:none"
d="m 76.783203,12.841797 a 0.08719622,0.08719622 0 0 0 -0.03711,0.154297 l -0.0332,-0.01563 c 0.463558,0.644123 0.467485,1.50697 0.0039,2.138672 a 0.08719622,0.08719622 0 0 0 0.09961,0.132812 l 3.046875,-1.123047 a 0.08719622,0.08719622 0 0 0 0,-0.164062 l -3.048828,-1.117188 -0.002,0.0098 a 0.08719622,0.08719622 0 0 0 -0.0293,-0.01563 z m 0.134766,0.230469 2.662109,0.974609 -2.660156,0.982422 c 0.353912,-0.611111 0.35205,-1.338657 -0.002,-1.957031 z"
id="path1934" />
</g>
</g>
</g>
<g
aria-label="a"
id="text1944"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-46.82693,-30.281853)">
<path
d="m 75.715579,39.062809 q -0.279446,0 -0.421664,0.09481 -0.139723,0.09481 -0.139723,0.279446 0,0.169664 0.112277,0.266971 0.114773,0.09481 0.316872,0.09481 0.252,0 0.424159,-0.179644 0.172159,-0.182139 0.172159,-0.4541 v -0.102297 z m 1.364794,-0.336832 v 1.594339 h -0.900714 v -0.414179 q -0.179644,0.254496 -0.404199,0.371763 -0.224555,0.114773 -0.546417,0.114773 -0.434139,0 -0.7061,-0.252001 -0.269466,-0.254495 -0.269466,-0.658694 0,-0.491525 0.336833,-0.72107 0.339327,-0.229545 1.062893,-0.229545 h 0.526456 v -0.06986 q 0,-0.212079 -0.167169,-0.309386 -0.167168,-0.0998 -0.521466,-0.0998 -0.286931,0 -0.533941,0.05739 -0.247011,0.05739 -0.45909,0.172158 v -0.681149 q 0.286931,-0.06986 0.576357,-0.104792 0.289426,-0.03743 0.578853,-0.03743 0.756001,0 1.090338,0.299406 0.336832,0.296912 0.336832,0.968081 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2242" />
</g>
<g
aria-label="b"
id="text1948"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-5.8208336,-31.750014)">
<path
d="m 66.217448,41.695669 q 0.286931,0 0.436634,-0.209585 0.152199,-0.209584 0.152199,-0.608793 0,-0.399209 -0.152199,-0.608793 -0.149703,-0.209585 -0.436634,-0.209585 -0.286931,0 -0.441625,0.21208 -0.152198,0.209585 -0.152198,0.606298 0,0.396714 0.152198,0.608793 0.154694,0.209585 0.441625,0.209585 z m -0.593823,-1.808914 q 0.184634,-0.244516 0.409189,-0.359288 0.224555,-0.117268 0.516476,-0.117268 0.516476,0 0.848318,0.411684 0.331842,0.409189 0.331842,1.055408 0,0.646219 -0.331842,1.057903 -0.331842,0.409189 -0.848318,0.409189 -0.291921,0 -0.516476,-0.114773 -0.224555,-0.117267 -0.409189,-0.361783 v 0.404199 h -0.893229 v -3.882303 h 0.893229 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2245" />
</g>
<g
aria-label="c"
id="text1952"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-29.104179,-7.4083337)">
<path
d="m 61.435006,44.335259 v 0.728556 q -0.182139,-0.124753 -0.366773,-0.184634 -0.182139,-0.05988 -0.379248,-0.05988 -0.374258,0 -0.583843,0.219565 -0.207089,0.217069 -0.207089,0.608793 0,0.391723 0.207089,0.611288 0.209585,0.21707 0.583843,0.21707 0.209585,0 0.396714,-0.06238 0.189624,-0.06238 0.349307,-0.184634 v 0.731051 q -0.209584,0.07735 -0.426654,0.114772 -0.214575,0.03992 -0.431644,0.03992 -0.756002,0 -1.182656,-0.386733 -0.426654,-0.389228 -0.426654,-1.080358 0,-0.69113 0.426654,-1.077863 0.426654,-0.389229 1.182656,-0.389229 0.219564,0 0.431644,0.03992 0.214575,0.03743 0.426654,0.114772 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2248" />
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
x="67.960846"
y="47.292683"
id="text1956"><tspan
sodipodi:role="line"
id="tspan1954"
style="stroke-width:0.264583"></tspan></text>
<g
aria-label="d"
id="text1960"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-57.194673,-23.12557)">
<path
d="M 68.48486,50.298212 V 48.80118 h 0.898219 v 3.882303 H 68.48486 v -0.404199 q -0.184634,0.247011 -0.406694,0.361783 -0.222059,0.114773 -0.513981,0.114773 -0.516476,0 -0.848318,-0.409189 -0.331842,-0.411684 -0.331842,-1.057903 0,-0.646219 0.331842,-1.055408 0.331842,-0.411683 0.848318,-0.411683 0.289427,0 0.511486,0.117267 0.224555,0.114773 0.409189,0.359288 z m -0.588833,1.808914 q 0.286932,0 0.436635,-0.209585 0.152198,-0.209584 0.152198,-0.608793 0,-0.399208 -0.152198,-0.608793 -0.149703,-0.209584 -0.436635,-0.209584 -0.284436,0 -0.436634,0.209584 -0.149703,0.209585 -0.149703,0.608793 0,0.399209 0.149703,0.608793 0.152198,0.209585 0.436634,0.209585 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2251" />
</g>
<g
aria-label="a"
id="g2256"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-11.901908,-8.0568402)">
<path
d="m 75.715579,39.062809 q -0.279446,0 -0.421664,0.09481 -0.139723,0.09481 -0.139723,0.279446 0,0.169664 0.112277,0.266971 0.114773,0.09481 0.316872,0.09481 0.252,0 0.424159,-0.179644 0.172159,-0.182139 0.172159,-0.4541 v -0.102297 z m 1.364794,-0.336832 v 1.594339 h -0.900714 v -0.414179 q -0.179644,0.254496 -0.404199,0.371763 -0.224555,0.114773 -0.546417,0.114773 -0.434139,0 -0.7061,-0.252001 -0.269466,-0.254495 -0.269466,-0.658694 0,-0.491525 0.336833,-0.72107 0.339327,-0.229545 1.062893,-0.229545 h 0.526456 v -0.06986 q 0,-0.212079 -0.167169,-0.309386 -0.167168,-0.0998 -0.521466,-0.0998 -0.286931,0 -0.533941,0.05739 -0.247011,0.05739 -0.45909,0.172158 v -0.681149 q 0.286931,-0.06986 0.576357,-0.104792 0.289426,-0.03743 0.578853,-0.03743 0.756001,0 1.090338,0.299406 0.336832,0.296912 0.336832,0.968081 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2254" />
</g>
<g
aria-label="a"
id="g2260"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(46.835617,-29.752686)">
<path
d="m 75.715579,39.062809 q -0.279446,0 -0.421664,0.09481 -0.139723,0.09481 -0.139723,0.279446 0,0.169664 0.112277,0.266971 0.114773,0.09481 0.316872,0.09481 0.252,0 0.424159,-0.179644 0.172159,-0.182139 0.172159,-0.4541 v -0.102297 z m 1.364794,-0.336832 v 1.594339 h -0.900714 v -0.414179 q -0.179644,0.254496 -0.404199,0.371763 -0.224555,0.114773 -0.546417,0.114773 -0.434139,0 -0.7061,-0.252001 -0.269466,-0.254495 -0.269466,-0.658694 0,-0.491525 0.336833,-0.72107 0.339327,-0.229545 1.062893,-0.229545 h 0.526456 v -0.06986 q 0,-0.212079 -0.167169,-0.309386 -0.167168,-0.0998 -0.521466,-0.0998 -0.286931,0 -0.533941,0.05739 -0.247011,0.05739 -0.45909,0.172158 v -0.681149 q 0.286931,-0.06986 0.576357,-0.104792 0.289426,-0.03743 0.578853,-0.03743 0.756001,0 1.090338,0.299406 0.336832,0.296912 0.336832,0.968081 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2258" />
</g>
<g
aria-label="b"
id="g2264"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(-17.462505,-16.404171)">
<path
d="m 66.217448,41.695669 q 0.286931,0 0.436634,-0.209585 0.152199,-0.209584 0.152199,-0.608793 0,-0.399209 -0.152199,-0.608793 -0.149703,-0.209585 -0.436634,-0.209585 -0.286931,0 -0.441625,0.21208 -0.152198,0.209585 -0.152198,0.606298 0,0.396714 0.152198,0.608793 0.154694,0.209585 0.441625,0.209585 z m -0.593823,-1.808914 q 0.184634,-0.244516 0.409189,-0.359288 0.224555,-0.117268 0.516476,-0.117268 0.516476,0 0.848318,0.411684 0.331842,0.409189 0.331842,1.055408 0,0.646219 -0.331842,1.057903 -0.331842,0.409189 -0.848318,0.409189 -0.291921,0 -0.516476,-0.114773 -0.224555,-0.117267 -0.409189,-0.361783 v 0.404199 h -0.893229 v -3.882303 h 0.893229 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2262" />
</g>
<g
aria-label="c"
id="g2268"
style="font-size:5.10987px;line-height:1.25;fill:#de6a66;stroke-width:0.127747"
transform="translate(32.279181,-37.041684)">
<path
d="m 61.435006,44.335259 v 0.728556 q -0.182139,-0.124753 -0.366773,-0.184634 -0.182139,-0.05988 -0.379248,-0.05988 -0.374258,0 -0.583843,0.219565 -0.207089,0.217069 -0.207089,0.608793 0,0.391723 0.207089,0.611288 0.209585,0.21707 0.583843,0.21707 0.209585,0 0.396714,-0.06238 0.189624,-0.06238 0.349307,-0.184634 v 0.731051 q -0.209584,0.07735 -0.426654,0.114772 -0.214575,0.03992 -0.431644,0.03992 -0.756002,0 -1.182656,-0.386733 -0.426654,-0.389228 -0.426654,-1.080358 0,-0.69113 0.426654,-1.077863 0.426654,-0.389229 1.182656,-0.389229 0.219564,0 0.431644,0.03992 0.214575,0.03743 0.426654,0.114772 z"
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
id="path2266" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 39 KiB

View file

@ -0,0 +1,153 @@
---
title: "Conception formelle : Validation et vérification"
date: 2023-01-13
tags: ["Bugs", model-checking"]
categories: ["Conception formelle", "Cours"]
mathjax: true
---
## Définition
### Validation
Losqu'un modèle ressemble à un système, alors il devient alors un candidat pour
devenir un système réel. Mais alors **comment décider qu'un modèle est valide**?
Il doit satisfaire toutes des propriétés qui définissent un bon candidat, mais
une liste de telles propriétés n'existe pas. Uen liste minimale de propriétés
dépends avant tout du type d'application. Pour la validation, les outils de
simulation (jper des scénario pour observer) sont consiérés comme adaptés.
la Validation permet donc de s'assurer **d'avoir construit quelque chose
d'adapté**
### Vérification
Le modèle doit vérifier tous les pré-requis décrits dans les spécifications.
Nous vérifions alors que le modèle satisfasse toutes les exigences du cahier des
charges.
Ici la simulation n'est pas considérée comme une technique adaptée. Par contre
la vérification de modèle (*model checking*) est un bon moyen de vérification.
## Model Checking
\\(
\begin{array}{l}
{Model\ M} \to \\\
{Spec\ \varphi} \to \\\
\end{array}
\boxed{
\begin{array}{l}
{Model} \\\
{Checking} \\\
\end{array}
}
\to \? M \models \varphi
\\)
En entrée nous avons notre modèle \\(M\\) et notre spécification \\(\varphi\\),
nous devons alors vérifier que \\(M\\) modélise \\(\varphi\\).
### Deux classes de propriété
#### Sureté
Quelque chose **est impossible**, une configuration est inaccessible par
exemple. À la suite d'un événement, un autre ne peut être atteint.
Si une propriété de sureté est non-satisfaite, alors le contre exemple est un
scénario fini.
**Il faut s'assurer que quelque chose de mauvais n'arrive jamais**
#### Vivacité
À l'inverse de la sureté, quelque chose est **toujours possible**. Un événement
est toujours suivi d'un autre événement dans un temps fini. Quoi que l'on fasse,
on arrive toujours à *B* après *A*. Si une propriété de vivacité est non
satisfaire, alors le contre exemple est un scénario infini.
**Il faut s'assurer que quelque chose de bien arrive toujours**
### Limites théoriques
Il existe deux grande famille de classe de couples modèles / spécification :
* **systèmes finis**: toutes les formules, d'un point de vue logique sont
décidable (calculable), il existe d'ailleurs un ensemble d'outils académiques
pour le faire.
* **systèmes infinis**: seules quelques formules sont décidable (automates avec
des compteurs, des horloges, des file FIFO). Il n'existe que quelques
documents de recherches et peut d'outils
### Limites pratiques
La première de ces limites concerne le matériel (CPU, RAM, etc.). La
représentation de certains graphes peut être relativement gourmande
La seconde concerne les limites logiques. Modéliser est une tâche complexe, des
difficultés peuvent apparaître notamment lorsqu'il s'agit de s'assurer qu'un
modèle est valide.
## Formalisme
D'après [Wikipedia][l_formalisme]: Un formalisme a pour objectif de représenter
de manière non-ambiguë un objet d'étude en science
[l_formalisme]:https://fr.wikipedia.org/wiki/Formalisme
### Outils
Nous avons à notre disposition tout un tas d'outils pour décrire les
formalismes:
* Réseaux de Petri
* State Charts
* Message Sequence Chart (diagrammes de séquence en UML)
* Diagrammes de flux très utilisés par les électroniciens
* Process Algebra
* Les langages dédiés
### Choix de la logique
* CTL -- *Computational Tree Logic*
* LTL -- *Linear Tree Logic*
* Hennessy-Milner Logic
* Calcul infinitésimal
* La logique de Dicky, logique basée sur les états.
### Pour ce cours
Nous nous limiterons aux variables avec un domaine fini: exit donc les `int`,
`float`, `string` etc. Nous utiliserons les **intervales** et les
**énumérations** (`enum`).
Comme outil, nous utiliserons *Altarica Checker* qui utilise la logique de Dicky
et u-calculus. Le tout avec des relation dans des domaines finis.
## La logique de Dicky
Soit le graphe suivant:
![Graphe ](./images/dickys.svg)
D'après le graphe, trouvons les états:
* `a` est-il possible?: \\(\\{(0,a,1), (5,a,6), (2,a,5)\\}\\)
* `c` est-il possible?: \\(\\{(2,c,3), (4,c,5)\\}\\)
* avant `a`: \\(\\{0,5,2\\}\\)
* après `c`: \\(3,5\\)
* `c.a` possible?: \\((avant\ a) \cup (après\ c) = \\{5\\}\\)
Il est question de logique comportementale : on s'intéresse au comportement
d'un système. Une propriété logique est un ensemble de conditions, Dans notre
exemple la preuve que `c.a` est possible. Comment vérifier, calculer ces
propriétés? Par un **algorithme de parcours de graphes** avec une complexité
linéaire.
Nous utilisons aussi la logique ensemblistes (union, intersection etc.).
Nous avons dans les graphes deux type de propriétés : les **états** et les
**transitions**.