This commit is contained in:
Boris Marinov 2020-05-04 09:15:16 +03:00
parent fc7c9599d4
commit cd86095ea4
7 changed files with 959 additions and 38 deletions

View File

@ -13,12 +13,14 @@
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 359"
viewBox="0 0 595.3 150"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg29165"
sodipodi:docname="arrows.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"><metadata
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="150"><metadata
id="metadata29171"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
@ -50,7 +52,8 @@
inkscape:window-maximized="1"
inkscape:current-layer="g29161" />
<switch
id="switch29163">
id="switch29163"
transform="translate(0,-209)">
<foreignObject
requiredExtensions="http://ns.adobe.com/AdobeIllustrator/10.0/"
x="0"
@ -62,8 +65,21 @@
<g
i:extraneous="self"
id="g29161">
<g
transform="matrix(-1.2201296,0.60572002,0.6457003,1.144582,662.53476,-249.44069)"
id="Layer_2"
transform="matrix(1.2421138,0.50680151,-0.50680151,1.2421138,-7.7975065,-173.70882)">
</g>
<circle
style="fill:#999491;fill-opacity:1;stroke:#858585;stroke-width:8.04899979;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="circle29154"
cy="119.77016"
cx="454.18988"
stroke-miterlimit="10"
transform="rotate(22.196215)"
r="33.00156" /><g
transform="matrix(-1.2201296,0.60572002,0.6457003,1.144582,649.57091,-75.650885)"
id="g38229-2-1"
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3-8"
@ -73,32 +89,8 @@
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-1" /></g></g></g>
<g
id="Layer_2"
transform="matrix(1.2421138,0.50680151,-0.50680151,1.2421138,5.1663434,-349.49862)">
</g>
<g
transform="matrix(-1.4019703,-0.62650283,0.736991,-1.1917898,714.66329,483.05994)"
id="g38229-2"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38225-0"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><path
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9" /></g></g></g><circle
style="fill:#999491;stroke:#858585;stroke-width:8.049;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;fill-opacity:1"
id="circle29154"
cy="-48.230995"
cx="395.32413"
stroke-miterlimit="10"
transform="rotate(22.196215)"
r="33.00156" /><g
transform="matrix(-1.3033795,0.56946081,0.68975667,1.0760658,683.8303,-213.60034)"
id="path38223-9-1" /></g></g></g><g
transform="matrix(-1.3033795,0.56946081,0.68975667,1.0760658,670.86645,-37.810535)"
id="g38229-2-1-4"
style="fill:#e90909;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3-8-4"
@ -109,7 +101,18 @@
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-1-9" /></g></g></g><g
transform="matrix(-1.2465626,-0.49575787,0.49575787,-1.2465626,687.98705,422.5252)"
transform="matrix(-1.4019703,-0.62650283,0.736991,-1.1917898,701.69944,660.84974)"
id="g38229-2"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38225-0"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><path
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9" /></g></g></g><g
transform="matrix(-1.2465626,-0.49575787,0.49575787,-1.2465626,675.0232,606.315)"
id="g38229-2-2"
style="fill:#04bd3d;fill-opacity:1;stroke:none;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"><g
id="g38227-3-5"
@ -120,10 +123,10 @@
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-5" /></g></g></g><circle
style="fill:#b5b5b1;stroke:#878578;stroke-width:8.04916096;stroke-miterlimit:10;fill-opacity:1;stroke-opacity:1"
style="fill:#b5b5b1;fill-opacity:1;stroke:#878578;stroke-width:8.04916096;stroke-miterlimit:10;stroke-opacity:1"
id="circle29148"
cy="18.246941"
cx="229.5435"
cy="191.46278"
cx="286.2168"
stroke-miterlimit="10"
transform="rotate(22.196215)"
r="33.00156" /></g>

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

174
03_logic/composition.svg Normal file
View File

@ -0,0 +1,174 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns1="&amp;#38;#38;#38;ns_ai;"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 200"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg21609"
sodipodi:docname="composition.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="200"><metadata
id="metadata21615"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
id="defs21613" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1057"
id="namedview21611"
showgrid="false"
inkscape:zoom="2.8284271"
inkscape:cx="291.87107"
inkscape:cy="165.43934"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g5251-7-3" />
<g
id="g25684"
ns1:extraneous="self"
transform="matrix(0.47127474,0,0,0.46782992,157.84981,-68.78863)"><circle
id="circle25632"
r="61.799999"
cy="233.92288"
cx="147.15361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25636"
r="61.299999"
cy="237.42288"
cx="398.35361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25640"
r="58.5"
cy="470.12292"
cx="385.8222"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25642"
r="58.5"
cy="466.32291"
cx="392.7536"
stroke-miterlimit="10"
style="fill:#e1e1e1;fill-opacity:1;stroke:#808285;stroke-width:10.64851189;stroke-miterlimit:10;stroke-dasharray:none" /><g
id="g25646"
transform="translate(-13.046386,145.52287)"><path
id="path25644"
d="M 431.8,281.3"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25650"
transform="translate(-13.046386,145.52287)"><path
id="path25648"
d="M 413.1,73"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25654"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25652"
d="M 422.4,283.7"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25658"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25656"
d="M 417.1,288.8"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g5251"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
transform="translate(-8.8025769,136.97276)" /><g
transform="matrix(0,1.0073634,-0.99269042,0,480.74016,-286.30432)"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5251-7-3"><g
id="g5344"
transform="matrix(0,-0.90233877,0.81138434,0,437.3206,465.76019)"><g
style="fill:none;fill-opacity:1;stroke:#177fef;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#177fef;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#177fef;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#f6dd2a;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9"
transform="matrix(0.89549116,-0.02139737,0.01924054,0.81712904,368.44527,20.787568)"><g
style="fill:none;fill-opacity:1;stroke:#f6dd2a;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#f6dd2a;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#f6dd2a;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#07ff45;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9-2"
transform="matrix(0.58447062,-0.68378363,-0.61485923,-0.53332511,574.34477,435.3218)"><g
style="fill:none;fill-opacity:1;stroke:#07ff45;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9-6"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6-4"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#07ff45;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#07ff45;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="M 93.695049,115.70849 C 154.96699,80.566702 239.12788,66.50773 317.49826,86.172676"
id="path5246-5-8-3-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g></g><circle
id="circle25638"
r="61.299999"
cy="233.52289"
cx="396.59741"
stroke-miterlimit="10"
style="fill:#dbdbe5;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /><circle
id="circle25634"
r="61.799999"
cy="230.02289"
cx="141.05362"
stroke-miterlimit="10"
style="fill:#dddddd;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /></g></svg>

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@ -0,0 +1,206 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns1="&amp;#38;#38;#38;ns_ai;"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 200"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg21609"
sodipodi:docname="composition_arrows.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="200"><metadata
id="metadata21615"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs21613" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1057"
id="namedview21611"
showgrid="false"
inkscape:zoom="2.8284271"
inkscape:cx="291.87107"
inkscape:cy="135.74085"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g5251-7-3" />
<g
id="g25684"
ns1:extraneous="self"
transform="matrix(0.47127474,0,0,0.46782992,157.84981,-68.78863)"><circle
id="circle25632"
r="61.799999"
cy="233.92288"
cx="147.15361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25636"
r="61.299999"
cy="237.42288"
cx="398.35361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25640"
r="58.5"
cy="470.12292"
cx="385.8222"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25642"
r="58.5"
cy="466.32291"
cx="392.7536"
stroke-miterlimit="10"
style="fill:#e1e1e1;fill-opacity:1;stroke:#808285;stroke-width:10.64851189;stroke-miterlimit:10;stroke-dasharray:none" /><g
id="g25646"
transform="translate(-13.046386,145.52287)"><path
id="path25644"
d="M 431.8,281.3"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25650"
transform="translate(-13.046386,145.52287)"><path
id="path25648"
d="M 413.1,73"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25654"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25652"
d="M 422.4,283.7"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25658"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25656"
d="M 417.1,288.8"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g5251"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
transform="translate(-8.8025769,136.97276)" /><g
transform="matrix(0,1.0073634,-0.99269042,0,480.74016,-286.30432)"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5251-7-3"><g
id="g5344"
transform="matrix(0,-0.90233877,0.81138434,0,437.3206,465.76019)"><g
style="fill:none;fill-opacity:1;stroke:#177fef;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#177fef;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#177fef;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#f6dd2a;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9"
transform="matrix(0.89549116,-0.02139737,0.01924054,0.81712904,368.44527,20.787568)"><g
style="fill:none;fill-opacity:1;stroke:#f6dd2a;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#f6dd2a;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#f6dd2a;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#d3d3d3;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9-2-3"
transform="matrix(0.58447062,-0.68378363,-0.61485922,-0.5333251,590.59374,444.7162)"><g
style="fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9-6-7"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6-4-3"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#d3d3d3;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="M 93.695049,115.70849 C 154.96699,80.566702 239.12788,66.50773 317.49826,86.172676"
id="path5246-5-8-3-8-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#d3d3d3;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9-2-3-2"
transform="matrix(0.68590105,-0.58034568,0.52184768,0.6258796,429.02157,292.58626)"><g
style="fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9-6-7-9"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6-4-3-8"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#d3d3d3;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="M 93.695049,115.70849 C 154.96699,80.566702 239.12788,66.50773 317.49826,86.172676"
id="path5246-5-8-3-8-9-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#07ff45;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9-2"
transform="matrix(0.58447062,-0.68378363,-0.61485923,-0.53332511,574.34477,435.3218)"><g
style="fill:none;fill-opacity:1;stroke:#07ff45;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9-6"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6-4"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#07ff45;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#07ff45;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="M 93.695049,115.70849 C 154.96699,80.566702 239.12788,66.50773 317.49826,86.172676"
id="path5246-5-8-3-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g></g><circle
id="circle25638"
r="61.299999"
cy="233.52289"
cx="396.59741"
stroke-miterlimit="10"
style="fill:#dbdbe5;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /><circle
id="circle25634"
r="61.799999"
cy="230.02289"
cx="141.05362"
stroke-miterlimit="10"
style="fill:#dddddd;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /></g></svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns2="&amp;#38;#38;#38;#38;ns_ai;"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 200"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg21609"
sodipodi:docname="composition_commuting_diagram.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="200"><metadata
id="metadata21615"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs21613" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1057"
id="namedview21611"
showgrid="false"
inkscape:zoom="2.8284271"
inkscape:cx="290.98719"
inkscape:cy="250.29215"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g5251-7-3" />
<g
id="g25684"
ns2:extraneous="self"
transform="matrix(0.47127474,0,0,0.46782992,157.84981,-68.78863)"><circle
id="circle25632"
r="61.799999"
cy="233.92288"
cx="147.15361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25636"
r="61.299999"
cy="237.42288"
cx="398.35361"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25640"
r="58.5"
cy="470.12292"
cx="385.8222"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:6;stroke-miterlimit:10" /><circle
id="circle25642"
r="58.5"
cy="466.32291"
cx="392.7536"
stroke-miterlimit="10"
style="fill:#e1e1e1;fill-opacity:1;stroke:#808285;stroke-width:10.64851189;stroke-miterlimit:10;stroke-dasharray:none" /><g
id="g25646"
transform="translate(-13.046386,145.52287)"><path
id="path25644"
d="M 431.8,281.3"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25650"
transform="translate(-13.046386,145.52287)"><path
id="path25648"
d="M 413.1,73"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25654"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25652"
d="M 422.4,283.7"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25658"
style="opacity:0.49000005"
transform="translate(-13.046386,145.52287)"><path
id="path25656"
d="M 417.1,288.8"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g5251"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
transform="translate(-8.8025769,136.97276)" /><g
transform="matrix(0,1.0073634,-0.99269042,0,480.74016,-286.30432)"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5251-7-3"><g
id="g5344"
transform="matrix(0,-0.90233877,0.81138434,0,437.3206,465.76019)"
style="fill:#dddddd;fill-opacity:1;stroke:#838383;stroke-opacity:1"><g
style="fill:#dddddd;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:#dddddd;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:#dddddd;fill-opacity:1;fill-rule:nonzero;stroke:#838383;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#838383;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9"
transform="matrix(0.89549116,-0.02139737,0.01924054,0.81712904,368.44527,20.787568)"><g
style="fill:none;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#838383;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 197.0364,89.48934 c 39.23625,-9.723549 89.30276,-9.826991 120.46186,-3.316664"
id="path5246-5-8-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g><g
style="stroke:#838383;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9-2"
transform="matrix(0.58447062,-0.68378363,-0.61485923,-0.53332511,574.34477,435.3218)"><g
style="fill:none;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9-6"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6-4"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#838383;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#838383;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="M 93.695049,115.70849 C 154.96699,80.566702 239.12788,66.50773 317.49826,86.172676"
id="path5246-5-8-3-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /></g></g><circle
id="circle25638"
r="61.299999"
cy="233.52289"
cx="396.59741"
stroke-miterlimit="10"
style="fill:#dbdbe5;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /><circle
id="circle25634"
r="61.799999"
cy="230.02289"
cx="141.05362"
stroke-miterlimit="10"
style="fill:#dddddd;stroke:#808285;stroke-width:10.64851204;stroke-miterlimit:10;fill-opacity:1;stroke-dasharray:none" /></g></svg>

After

Width:  |  Height:  |  Size: 8.6 KiB

119
03_logic/identity.svg Normal file
View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns1="&amp;#38;#38;#38;ns_ai;"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 200"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg21609"
sodipodi:docname="identity.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="200"><metadata
id="metadata21615"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs21613" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1057"
id="namedview21611"
showgrid="false"
inkscape:zoom="2.8284271"
inkscape:cx="263.5868"
inkscape:cy="148.46878"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g25684" />
<g
id="g25684"
ns1:extraneous="self"
transform="matrix(0.47127474,0,0,0.46782992,157.84981,-68.78863)"><ellipse
id="circle25640"
cy="432.24237"
cx="362.48532"
enable-background="new "
stroke-miterlimit="10"
style="opacity:0.13999999;stroke:#000000;stroke-width:8.92242336;stroke-miterlimit:10"
rx="89.267967"
ry="84.777237" /><g
id="g25646"
transform="matrix(1.5259482,0,0,1.4491835,-142.55425,79.548751)"><path
id="path25644"
d="M 431.8,281.3"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25650"
transform="matrix(1.5259482,0,0,1.4491835,-142.55425,79.548751)"><path
id="path25648"
d="M 413.1,73"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25654"
style="opacity:0.49000005"
transform="matrix(1.5259482,0,0,1.4491835,-142.55425,79.548751)"><path
id="path25652"
d="M 422.4,283.7"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g25658"
style="opacity:0.49000005"
transform="matrix(1.5259482,0,0,1.4491835,-142.55425,79.548751)"><path
id="path25656"
d="M 417.1,288.8"
stroke-miterlimit="10"
inkscape:connector-curvature="0"
style="fill:none;stroke:#95979a;stroke-miterlimit:10" /></g><g
id="g5251"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
transform="matrix(1.5259482,0,0,1.4491835,-136.07842,67.158073)" /><g
transform="matrix(0,1.4598544,-1.5147941,0,610.93842,-546.24808)"
style="stroke:#818485;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5251-7-3"><g
style="stroke:#f6dd2a;stroke-width:6.38910723;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g5344-9"
transform="matrix(0.89549116,-0.02139737,0.01924054,0.81712904,282.4952,103.1622)"><g
style="fill:none;fill-opacity:1;stroke:#6d6d6d;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="g25662-9-07-9"
transform="matrix(0.5323051,-0.03587537,0.03588209,0.52445332,144.23328,52.768064)"><path
id="path25660-5-99-6"
d="M 315.1,101.7909 C 325.78189,97.654679 336.86942,94.052162 348.22738,90.716499 339.70891,82.577479 330.64958,74.705313 321.04941,67.1 319.0099,79.218677 317.94578,88.763174 315.1,101.7909 Z"
inkscape:connector-curvature="0"
style="fill:none;fill-opacity:1;stroke:#6d6d6d;stroke-width:35.52577591;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
sodipodi:nodetypes="cccc" /></g><path
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#6d6d6d;stroke-width:10.64851189;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke"
d="m 382.50059,152.61214 c -51.1662,72.82269 -102.36784,60.97622 -124.51452,26.90416 -16.47603,-25.34791 -11.8563,-92.972944 59.51219,-93.343624"
id="path5246-5-8-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="csc" /></g></g><ellipse
id="circle25642"
cy="420.54001"
cx="347.15887"
stroke-miterlimit="10"
style="fill:#e1e1e1;fill-opacity:1;stroke:#808285;stroke-width:15.83508873;stroke-miterlimit:10;stroke-dasharray:none"
rx="89.267967"
ry="84.777237" /></g></svg>

After

Width:  |  Height:  |  Size: 5.2 KiB

203
03_logic/set_arrows.svg Normal file
View File

@ -0,0 +1,203 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:i="&amp;ns_ai;"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
x="0px"
y="0px"
viewBox="0 0 595.3 200"
enable-background="new 0 0 595.3 359"
xml:space="preserve"
id="svg29165"
sodipodi:docname="set_arrows.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
width="595.29999"
height="200"><metadata
id="metadata29171"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs29169">
</defs><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1057"
id="namedview29167"
showgrid="false"
inkscape:zoom="1.9284395"
inkscape:cx="252.5358"
inkscape:cy="216.97171"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g29161" />
<switch
id="switch29163"
transform="translate(0,-159)">
<foreignObject
requiredExtensions="http://ns.adobe.com/AdobeIllustrator/10.0/"
x="0"
y="0"
width="1"
height="1">
</foreignObject>
<g
i:extraneous="self"
id="g29161">
<g
id="Layer_2"
transform="matrix(2.3764571,0.96963105,-0.96963105,2.3764571,-262.25528,-621.09754)">
</g>
<g
transform="matrix(-2.3343962,1.1588855,1.2353772,2.1898557,999.44581,-439.48954)"
id="g38229-2-1"
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3-8"
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38225-0-8"
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><path
style="fill:#9d539f;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-1" /></g></g></g><g
transform="matrix(-2.4936729,1.0895131,1.3196674,2.0587681,1036.1892,-361.09201)"
id="g38229-2-1-4"
style="fill:#e90909;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3-8-4"
style="fill:#e90909;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38225-0-8-0"
style="fill:#e90909;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><path
style="fill:#e90909;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-1-9" /></g></g></g><g
transform="matrix(-2.6823004,-1.1986479,1.4100379,-2.2801755,1095.18,989.61023)"
id="g38229-2"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38227-3"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><g
id="g38225-0"
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"><path
style="fill:#0e2db8;fill-opacity:1;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9" /></g></g></g><g
transform="matrix(-2.3849687,-0.94850194,0.94850194,-2.3849687,1044.142,871.27231)"
id="g38229-2-2"
style="fill:#04bd3d;fill-opacity:1;stroke:none;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"><g
id="g38227-3-5"
style="fill:#04bd3d;fill-opacity:1;stroke:none;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"><g
id="g38225-0-9"
style="fill:#04bd3d;fill-opacity:1;stroke:none;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"><path
style="fill:#04bd3d;fill-opacity:1;stroke:none;stroke-width:0.30000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 395.9,86.5 c 0,0 -1,0.2 -2.7,0.6 -0.9,0.2 -1.9,0.4 -3.1,0.7 -1.2,0.3 -2.5,0.6 -4,1 -5.8,1.5 -13.4,4 -20.7,7.1 -7.3,3.1 -14.4,6.9 -19.5,10.1 -2.5,1.6 -4.7,2.9 -6.1,3.9 -0.6,0.4 -0.9,0.6 -0.9,0.6 l -6.6,-9.5 c -4.3,8.3 -7.8,16.7 -10.3,25.1 8.5,-2 17,-3.1 25.2,-3.4 l -6.5,-9.5 c 0,0 0.3,-0.2 0.9,-0.6 1.4,-1 3.5,-2.3 6,-3.8 5,-3.1 11.9,-6.8 19.1,-9.8 7.2,-3.1 14.6,-5.5 20.3,-7 1.4,-0.4 2.7,-0.7 3.9,-1 1.2,-0.3 2.2,-0.5 3,-0.7 1.7,-0.4 2.6,-0.6 2.6,-0.6 z"
id="path38223-9-5" /></g></g></g><circle
style="fill:#dbdb8b;fill-opacity:1;stroke:#878578;stroke-width:10.54409981;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="circle29148"
cy="202.19402"
cx="197.63191"
stroke-miterlimit="10"
transform="rotate(22.196215)"
r="89.62722" /><text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:26.66666603px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#9d539f;fill-opacity:1;stroke:none"
x="199.41707"
y="216.16484"
id="text42684"
transform="rotate(-4.8888786)"><tspan
sodipodi:role="line"
id="tspan42682"
x="199.41707"
y="216.16484">isEven</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:26.66666603px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#e90909;fill-opacity:1;stroke:none"
x="196.38765"
y="251.78436"
id="text42684-3"
transform="rotate(-4.2272235)"><tspan
sodipodi:role="line"
id="tspan42682-0"
x="196.38765"
y="251.78436">isOdd</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:26.66666603px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#04bd3d;fill-opacity:1;stroke:none"
x="202.42693"
y="295.54776"
id="text42684-3-6"
transform="rotate(-2.196899)"><tspan
sodipodi:role="line"
id="tspan42682-0-6"
x="202.42693"
y="295.54776">isPrime</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:26.66666603px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0e2db8;fill-opacity:1;stroke:none"
x="256.15338"
y="321.4971"
id="text42684-3-6-0"
transform="rotate(0.66195486)"><tspan
sodipodi:role="line"
id="tspan42682-0-6-0"
x="256.15338"
y="321.4971">&gt;0</tspan></text>
<circle
style="fill:#d9d98d;fill-opacity:1;stroke:#878578;stroke-width:10.54409981;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
id="circle29148-6"
cy="51.771816"
cx="545.72998"
stroke-miterlimit="10"
transform="rotate(22.196215)"
r="89.62722" /><text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:30.30848503px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#9d539f;fill-opacity:1;stroke:none;stroke-width:1.13656819"
x="39.765812"
y="268.37988"
id="text42684-1"
transform="rotate(0.22123489)"><tspan
sodipodi:role="line"
id="tspan42682-7"
x="39.765812"
y="268.37988"
style="fill:#797979;fill-opacity:1;stroke-width:1.13656819">number</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:30.30848503px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#9d539f;fill-opacity:1;stroke:none;stroke-width:1.13656819"
x="420.13235"
y="260.22424"
id="text42684-1-2"
transform="rotate(0.22123489)"><tspan
sodipodi:role="line"
id="tspan42682-7-0"
x="420.13235"
y="260.22424"
style="fill:#797979;fill-opacity:1;stroke-width:1.13656819">boolean</tspan></text>
</g>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -3,12 +3,12 @@ Some other categories
Every category theory guide (including mine) starts by talking about set theory. However looking back I really don't know why that is the case (most books that center around a specific subject don't start by introducing a different subject). Perhaps the set-first approach is the best way to introduce people to categories, or perhaps that is just one of the things that people just do, simply because everyone else does it.
One thing is for sure - we don't need to study sets in order to understand categories. So in this chapter I would like to start over and talk about categories as a first concept.
One thing is for sure - we don't need to study sets in order to understand categories. So in this chapter I would like to start over and talk about categories as a first concept. Pretend like it's a new book:
Starting over with categories
===
So, a category is a collection of objects (things) where the "things" can be anything you want. Consider, for example, these colourful balls that we saw last time:
So, a category is a collection of objects (things) where the "things" can be anything you want. Consider, for example, these ~~colourful~~ grey balls:
![Balls](elements.svg)
@ -16,12 +16,53 @@ A category consists of a collection of objects **as well as** some arrows connec
![A category](category.svg)
Wait a sec so we said that all sets form a category, but at the same time just one set can be seen as a category by itself with, just one which has no morphisms. This is an example of a phenomenon that is very characteristic of category theory - one object can be examined in many different ways.
We said that all sets form a category, but at the same time any one set can be seen as a category by itself (just one which has no morphisms). This is an example of a phenomenon that is very characteristic of category theory - one structure can be examined in many different ways and play many different roles, often in a recursive fashion.
The analogy of a set as a category with no morphisms is, however, is not very useful, simply because category theory **is all about the morphisms**. If in set theory an arrow is nothing but a pointer from a source to a destination, in category theory an object is nothing but a source and destination for the arrows that are involved in. In category theory objects can be connected by multiple arrows, each of which is unique, this is why objects in this chapter are all grey, while the arrows are in different colours:
This particular role of a set as a category with no morphisms is, however, not very useful - category theory is **all about the morphisms**. If in set theory, an arrow is nothing but its source and destination, in category theory, an **object** is nothing but a source and destination for the arrows that connect it to other objects. This is why in this chapter the arrows and not the objects are displayed in different colours the category of sets is really the category of set functions.
Speaking of which, note that objects in a category can be connected by multiple arrows and that arrows having the same domain and codomain does not in any way make the equivalent.
![Two objects connected with multiple arrows](arrows.svg)
That's pretty obvious if we go back to set theory for a second - there are, for example, an infinite number of functions that go from number to boolean and the fact that they have the same signature does in no way make them equivalent to one another.
![Two sets connected with multiple functions](set_arrows.svg)
Composition
---
One of the few, or maybe even the only, requirement for a structure to be called a category is that two morphisms can make a third, or that morphisms are *composable*. In practice this means that given two successive arrows, we can draw a third one that is equivalent to the consecutive application of the other two.
![Composition of morphisms](composition.svg)
Again, note that this criteria is not met by just *any* morphism with this type signature. There is *exactly one* morphism that fits these criteria.
![Composition of morphisms in the context of additional morphism](composition_arrows.svg)
Commuting diagrams
---
In the function composition diagrams above, we used colors to illustrate that the third morphism is equivalent to the other two and not just some unrelated morphism. In practice this notation is a little redundant - the only reason to draw diagrams with arrows in the first place is represent paths between objects that are equivalent to each other.
![Composition of morphisms - a commuting diagram](composition_commuting_diagram.svg)
Diagrams that are like that in which any two paths between two objects are equivalent to one another are called commutative diagrams (or diagrams that commute). All diagrams that we have here (except the wrong ones) commute.
Identity
---
In order to be able to define more stuff using morphisms, we define what we call the "identity morphism" for each object. In short, this is a morphism, that doesn't do anything to the object.
![The identity morphism (but can also be any other morphism)](identity.svg)
Let's add the very important (and also very boring) reminder that there can be many morphisms from one object to the same object, that actually do stuff, for example mathematics deals with a multitude of functions that have the set of numbers as domain and codomain (e.g. negate, square, add one etc.) and are not at all the identity morphism.
**Question:** What is the identity morphism in the category of sets?
Isomorphisms
---
The concept of identity morphism, provides us with a category-theoretic definition of an isomoprhism - an isomorphism between two objects (**A** and **B**) consists of two functions - (**A → B**. and **B → A**) such that their composition is equivalent to the identity function.