(* Content-type: application/vnd.wolfram.mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 11.1' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 158, 7] NotebookDataLength[ 71896, 1708] NotebookOptionsPosition[ 61345, 1564] NotebookOutlinePosition[ 61701, 1580] CellTagsIndexPosition[ 61658, 1577] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[CellGroupData[{ Cell["Basic Gate types", "Subsection", CellChangeTimes->{{3.759143803408662*^9, 3.759143821525689*^9}},ExpressionUUID->"3e766eb5-06bf-47a0-a66f-\ fafbaa4ee04b"], Cell["\<\ This package decomposes arbitrary gates into a sequence of CNOTs and single \ qubit rotations. The latter are expressed using the convention that an \ rotation by angle t about the x-axis of the Bloch sphere is\ \>", "Text", CellChangeTimes->{{3.757504829038189*^9, 3.757504869429008*^9}, { 3.757513275714047*^9, 3.757513321267272*^9}},ExpressionUUID->"13933661-a847-444a-a129-\ 5c5a23af4781"], Cell[BoxData[ RowBox[{ RowBox[{"RxM", "[", RowBox[{"t", ",", "1"}], "]"}], "//", "MatrixForm"}]], "Input", CellChangeTimes->{{3.757504871907605*^9, 3.757504909245626*^9}, { 3.757504958970851*^9, 3.757504964803595*^9}, {3.757513244526589*^9, 3.757513265185267*^9}, {3.757513355555419*^9, 3.757513356819161*^9}, { 3.758114277242445*^9, 3.75811428178724*^9}},ExpressionUUID->"ec17790d-20f1-4844-97a4-\ f6b568ad57b9"], Cell["In our notation this is represented", "Text", CellChangeTimes->{{3.77702228472031*^9, 3.7770222899006367`*^9}},ExpressionUUID->"39d6ea7b-b0b2-434a-b7df-\ 77e6a1dfc20f"], Cell[BoxData[ RowBox[{"Rx", "[", RowBox[{"t", ",", "1"}], "]"}]], "Input", CellChangeTimes->{{3.7770222634472933`*^9, 3.777022267731372*^9}}, CellLabel-> "In[399]:=",ExpressionUUID->"160fb449-6c42-469c-b9dc-dc4560d8520e"], Cell["A y-rotation by angle t is:", "Text", CellChangeTimes->{{3.757513285348769*^9, 3.757513298669304*^9}},ExpressionUUID->"e069fb84-0b4d-4624-8c81-\ 714b690e9a19"], Cell[BoxData[ RowBox[{ RowBox[{"RyM", "[", RowBox[{"t", ",", "1"}], "]"}], "//", "MatrixForm"}]], "Input", CellChangeTimes->{{3.757513339057673*^9, 3.757513352211108*^9}, { 3.7581142909154787`*^9, 3.7581142990130663`*^9}},ExpressionUUID->"da38e1a1-b5c9-48f3-9d54-\ a4eabb4522c6"], Cell["And a z-rotation is", "Text", CellChangeTimes->{{3.757504971877866*^9, 3.7575049844651337`*^9}, 3.757513332369804*^9, {3.75751336288623*^9, 3.757513368732534*^9}},ExpressionUUID->"58acf036-49b7-4808-a85c-\ a74180f30ff6"], Cell[BoxData[ RowBox[{ RowBox[{"RzM", "[", RowBox[{"t", ",", "1"}], "]"}], "//", "MatrixForm"}]], "Input", CellChangeTimes->{{3.757504998507731*^9, 3.757505037835672*^9}, { 3.757513373286056*^9, 3.757513379881426*^9}, {3.758114303010721*^9, 3.75811430590427*^9}},ExpressionUUID->"d1f4b781-1422-4101-b0f6-\ e1f9a88927db"], Cell["A CNOT with qubit 1 as the control and 2 as the target is", "Text", CellChangeTimes->{{3.7591437407680063`*^9, 3.759143762679596*^9}},ExpressionUUID->"1a2b7497-934d-4988-9b82-\ ac399a51300a"], Cell[BoxData[ RowBox[{ RowBox[{"CNOTM", "[", RowBox[{"1", ",", "2"}], "]"}], "//", "MatrixForm"}]], "Input", CellChangeTimes->{{3.759143680961896*^9, 3.759143686648862*^9}, { 3.759143765471484*^9, 3.7591437862333927`*^9}},ExpressionUUID->"7536dac8-3ace-416c-9894-\ 1687f4bef6eb"], Cell[TextData[StyleBox["Single-qubit unitaries", "Subsection"]], \ "Subsubsection", CellChangeTimes->{{3.759143830805934*^9, 3.759143834445278*^9}, { 3.7591443150771227`*^9, 3.759144324380033*^9}, {3.759224748829812*^9, 3.7592247514370193`*^9}},ExpressionUUID->"4c1c953f-9419-4dcd-b871-\ 9776d9638b83"], Cell[CellGroupData[{ Cell["Example 1:", "Subsubsection", CellChangeTimes->{{3.776682842994575*^9, 3.776682845794512*^9}},ExpressionUUID->"4409204a-9bfc-48e3-8360-\ 27844b6e53bd"], Cell["Choose a single qubit unitary (here the Hadamard)", "Text", CellChangeTimes->{{3.776682703245235*^9, 3.776682711765019*^9}, { 3.7770140635427513`*^9, 3.777014066648974*^9}},ExpressionUUID->"852a6a42-e98e-4f43-983e-\ d34e5e2a69c7"], Cell[BoxData[ RowBox[{"u", "=", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "1"}]}], "}"}]}], "}"}], "/", RowBox[{"2", "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}]}]}]], "Input", CellChangeTimes->{{3.776678828417716*^9, 3.776678843643634*^9}, { 3.7766828174677896`*^9, 3.7766828175070877`*^9}},ExpressionUUID->"4083ec65-0d39-42ba-9ade-\ 06b6bda96f18"], Cell["Check for unitarity", "Text", CellChangeTimes->{{3.7766827162924757`*^9, 3.776682719948778*^9}},ExpressionUUID->"51b76a17-8517-4fe8-84a7-\ af38120aa8af"], Cell[BoxData[ RowBox[{"u", ".", RowBox[{"CT", "[", "u", "]"}]}]], "Input", CellChangeTimes->{{3.776678847675519*^9, 3.776678849635231*^9}, { 3.776682819963415*^9, 3.7766828208989277`*^9}},ExpressionUUID->"b2197213-ea34-4522-8daf-\ eac440114880"], Cell["Decompose it (a unitary is a special case of an isometry)", "Text", CellChangeTimes->{{3.77668272499701*^9, 3.776682737028352*^9}},ExpressionUUID->"99976163-9110-49a3-8b94-\ cf4346c6f399"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "u", "]"}]}]], "Input", CellChangeTimes->{{3.776678868797255*^9, 3.7766788712428913`*^9}, { 3.776678918825513*^9, 3.776678939161738*^9}, {3.776682823467472*^9, 3.776682823514751*^9}},ExpressionUUID->"1dfd5efc-ffed-4ee9-8765-\ 1a0c97bd032d"], Cell["\<\ This is the standard form for gate outputs. The first gate in the list is an \ Rz on qubit 1, etc. We can construct the unitary from these (up to phase) as \ follows. To get a reminder of the conventions, use GateTypes[]\ \>", "Text", CellChangeTimes->{{3.757506090720849*^9, 3.7575061687263813`*^9}, { 3.75750620310247*^9, 3.757506210599783*^9}, {3.757607643539291*^9, 3.7576076618249063`*^9}, {3.75914402697755*^9, 3.759144037089456*^9}, { 3.7593740208263283`*^9, 3.759374021263846*^9}, {3.759374523054968*^9, 3.7593745242378473`*^9}, 3.759374587218397*^9},ExpressionUUID->"ececfe09-5b1e-4aa8-8ff3-\ 477d53ba786b"], Cell[BoxData[ RowBox[{"GateTypes", "[", "]"}]], "Input", CellChangeTimes->{{3.777022391575562*^9, 3.7770223935936947`*^9}},ExpressionUUID->"dc875492-7784-4eb2-9585-\ ad1f56586783"], Cell["Check the result:", "Text", CellChangeTimes->{{3.776682745972493*^9, 3.7766827481479063`*^9}},ExpressionUUID->"bfc5a5a1-d51e-48c1-8bfe-\ 5529bb6c14aa"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"RzM", "[", "\[Pi]", "]"}], ".", RowBox[{"RyM", "[", RowBox[{"\[Pi]", "/", "2"}], "]"}]}], "//", "MatrixForm"}]], "Input", CellChangeTimes->{{3.776679256861246*^9, 3.77667928225066*^9}, { 3.7770223695705633`*^9, 3.777022371799581*^9}},ExpressionUUID->"318c4726-eac6-4600-a843-\ bf2d91762970"], Cell["Draw the result:", "Text", CellChangeTimes->{{3.776682751474732*^9, 3.776682754628327*^9}},ExpressionUUID->"afd6fe86-e1e2-4dc4-8679-\ 618810692fd8"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", RowBox[{"gatelist", ",", RowBox[{"AnglePrecision", "\[Rule]", "1"}]}], "]"}]], "Input", CellChangeTimes->{{3.77667896350865*^9, 3.7766789688167763`*^9}, { 3.7766790722159348`*^9, 3.776679104886601*^9}},ExpressionUUID->"bdd1a511-607a-43ab-9692-\ c968ef733c8d"] }, Open ]], Cell[CellGroupData[{ Cell["Example 2:", "Subsubsection", CellChangeTimes->{{3.776682852250512*^9, 3.77668285516605*^9}},ExpressionUUID->"58f6a298-b6fc-4e45-9b35-\ fd5aa0701eef"], Cell["\<\ Choose a random 2x2 unitary and decompose it into a Z rotation, a Y rotation \ then a Z rotation\ \>", "Text", CellChangeTimes->{{3.75750457836036*^9, 3.757504654509059*^9}},ExpressionUUID->"66deabb9-6313-4d19-8209-\ e03eedd9f750"], Cell[BoxData[ RowBox[{"u", "=", RowBox[{"PickRandomUnitary", "[", "2", "]"}]}]], "Input", CellChangeTimes->{{3.7575045978429813`*^9, 3.7575046109584093`*^9}},ExpressionUUID->"2ab4a585-5598-4aa4-951a-\ 4b85964ab118"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "u", "]"}]}]], "Input", CellChangeTimes->{{3.759143858892935*^9, 3.7591438620482283`*^9}, { 3.759143905709166*^9, 3.759143907692178*^9}, 3.759143981871148*^9, 3.7630376485440683`*^9, {3.7766828684263277`*^9, 3.776682873633957*^9}, { 3.776682941833761*^9, 3.776682942561112*^9}},ExpressionUUID->"4e575915-15f6-4c2c-8c85-\ d12a3be54c7a"], Cell["\<\ Confirm the result (note that decompositions are always up to phase)\ \>", "Text", CellChangeTimes->{{3.757504752351391*^9, 3.757504755599193*^9}, { 3.759143918515605*^9, 3.759143930243575*^9}},ExpressionUUID->"f9736414-c06b-4cb1-a6b7-\ 92ef4475c9c8"], Cell[BoxData[ RowBox[{"outu", "=", RowBox[{"CreateOperationFromGateList", "[", "gates", "]"}]}]], "Input", CellChangeTimes->{{3.759143940563486*^9, 3.759143941755369*^9}, { 3.7591441084647503`*^9, 3.7591441092637377`*^9}, 3.761712732366712*^9},ExpressionUUID->"3cc7ed6b-6e08-4175-a13d-\ 4094a577cc9a"], Cell["This is equal to u up to phase:", "Text", CellChangeTimes->{{3.757506218021734*^9, 3.757506231727025*^9}},ExpressionUUID->"7c64162d-ff6b-4bce-92ff-\ e126cb0ecfc4"], Cell[BoxData[ RowBox[{"Chop", "[", RowBox[{ RowBox[{ RowBox[{"outu", "/", RowBox[{"outu", "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}]}], "*", RowBox[{"u", "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}]}], "-", "u"}], "]"}]], "Input", CellChangeTimes->{{3.757504758668923*^9, 3.757504778067955*^9}, { 3.757505074400775*^9, 3.757505099184412*^9}, {3.757513397098743*^9, 3.7575134171250763`*^9}, {3.758114317514697*^9, 3.7581143332196617`*^9}, { 3.7591438821971684`*^9, 3.759143910556131*^9}, {3.75914394892474*^9, 3.759143962426612*^9}, {3.759144111761479*^9, 3.7591441138230658`*^9}},ExpressionUUID->"7dfb57e5-3311-41fa-9376-\ cb1110ecc250"], Cell["We can also re-express the output as matrices", "Text", CellChangeTimes->{{3.757506315452639*^9, 3.757506345934491*^9}, { 3.776682906865057*^9, 3.776682909105143*^9}},ExpressionUUID->"ed97c194-dbb9-4152-b79e-\ d4e259344dc5"], Cell[BoxData[ RowBox[{"Chop", "[", RowBox[{"Map", "[", RowBox[{"MatrixForm", ",", RowBox[{"ListFormToOp", "[", "gatelist", "]"}]}], "]"}], "]"}]], "Input", CellChangeTimes->{{3.7575295468184023`*^9, 3.757529554080926*^9}, { 3.757529587735498*^9, 3.7575296155088997`*^9}, {3.757529870016635*^9, 3.757529870450592*^9}, {3.7575338460449047`*^9, 3.75753385188165*^9}, { 3.757534438834427*^9, 3.757534467755519*^9}, {3.759144133119823*^9, 3.7591441351272087`*^9}, {3.776682953081376*^9, 3.776682954256755*^9}},ExpressionUUID->"96939bd6-b32c-4aa1-b52f-\ 38e0de268b20"], Cell["Or draw the topology for it:", "Text", CellChangeTimes->{{3.7575064350272923`*^9, 3.757506475762617*^9}},ExpressionUUID->"2b5d61ae-6dd7-4e62-b1a4-\ bd51fad55346"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.757506461125391*^9, 3.757506463818823*^9}, { 3.757517040075848*^9, 3.757517041566894*^9}},ExpressionUUID->"1f576111-ad20-4e20-a256-\ 646794ca1267"], Cell[TextData[{ "If you use the package QCircuit in ", Cell[BoxData[ FormBox[ StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox["A", BoxBaselineShift->-0.4, BoxMargins->{{-0.5, -0.3}, {0, 0}}], FontSize->Smaller], "T", AdjustmentBox["E", BoxBaselineShift->0.5, BoxMargins->{{-0.3, 0}, {0, 0}}], "X"}], SingleLetterItalics->False], TraditionalForm]],ExpressionUUID-> "18288635-4491-4459-8223-07bd376f383a"], " then the command LatexQCircuit can be used to generate the circuit in a \ compatible form:" }], "Text", CellChangeTimes->{{3.759212088845142*^9, 3.759212150827793*^9}},ExpressionUUID->"7eb36da7-4902-4faa-9d72-\ 27594d2b5898"], Cell[BoxData[ RowBox[{"LatexQCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.759212081389986*^9, 3.759212085941531*^9}},ExpressionUUID->"af79f8ef-73f7-4b16-b481-\ 9e3e0bdb6812"], Cell["\<\ We can also do analytic calculations (although for larger cases they get very \ slow)\ \>", "Text", CellChangeTimes->{{3.776686597278987*^9, 3.776686619036853*^9}},ExpressionUUID->"3c05994d-d12e-4f85-b26f-\ 198f0bf29b57"], Cell[BoxData[ RowBox[{ RowBox[{"U", "=", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ FractionBox["5", RowBox[{"3", " ", SqrtBox["26"]}]], ",", FractionBox["1", RowBox[{"3", " ", SqrtBox["26"]}]]}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{"-", FractionBox["1", SqrtBox["26"]]}], ",", FractionBox["5", SqrtBox["26"]]}], "}"}], ",", RowBox[{"{", RowBox[{ FractionBox[ RowBox[{"5", " ", SqrtBox[ FractionBox["2", "13"]]}], "3"], ",", FractionBox[ SqrtBox[ FractionBox["2", "13"]], "3"]}], "}"}], ",", RowBox[{"{", RowBox[{ FractionBox[ RowBox[{"5", " ", SqrtBox[ FractionBox["2", "13"]]}], "3"], ",", FractionBox[ SqrtBox[ FractionBox["2", "13"]], "3"]}], "}"}]}], "}"}]}], ";"}]], "Input", CellChangeTimes->{{3.776679398473137*^9, 3.7766794017385197`*^9}, 3.77701413901383*^9},ExpressionUUID->"35561596-bdf3-498f-a879-\ 5a439e29153b"], Cell[BoxData[ RowBox[{ RowBox[{"CT", "[", "U", "]"}], ".", "U"}]], "Input", CellChangeTimes->{{3.77667940923974*^9, 3.776679410271446*^9}},ExpressionUUID->"e3ed3738-768b-40ad-bb12-\ 822ec43405d7"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"ColumnByColumnDec", "[", "U", "]"}]}]], "Input", CellChangeTimes->{{3.7766794208394403`*^9, 3.776679421287949*^9}},ExpressionUUID->"2d3e5bf0-025d-4975-ba34-\ fbf965856267"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Two-qubit unitaries", "Subsection", CellChangeTimes->{{3.7766865579275837`*^9, 3.776686566247347*^9}},ExpressionUUID->"38bcbb06-da07-413c-9a84-\ bc057d1877ba"], Cell[BoxData[ RowBox[{"U", "=", RowBox[{"PickRandomUnitary", "[", "4", "]"}]}]], "Input", CellChangeTimes->{{3.776679311946114*^9, 3.776679312009734*^9}},ExpressionUUID->"60e0c4e2-8edc-413a-9166-\ 56763ea033ad"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "U", "]"}]}]], "Input",ExpressionUUID->\ "26246b1d-568f-4eec-940f-ab71957c804d"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"e0db060a-c24e-4d1c-b27f-5af16316942a"] }, Open ]], Cell[CellGroupData[{ Cell["Performance for more qubits:", "Subsection", CellChangeTimes->{{3.776686629494329*^9, 3.7766866382859898`*^9}},ExpressionUUID->"c249a143-2c75-48ec-b958-\ 63fdd0c2603d"], Cell[BoxData[ RowBox[{ RowBox[{"u", "=", RowBox[{"PickRandomUnitary", "[", RowBox[{"2", "^", "5"}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.757518295611693*^9, 3.757518309269421*^9}, { 3.7575183457315817`*^9, 3.75751834598177*^9}, {3.759294670447521*^9, 3.759294671255643*^9}},ExpressionUUID->"b5a24bf0-2beb-47d3-bcd4-\ 629990d94454"], Cell[BoxData[ RowBox[{ RowBox[{"Timing", "[", RowBox[{"gatelist", "=", RowBox[{"DecIsometryGeneric", "[", "u", "]"}]}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}]], "Input", CellChangeTimes->{{3.757518314536619*^9, 3.757518336119945*^9}, { 3.7575349901618013`*^9, 3.757534991797017*^9}, {3.757535984069079*^9, 3.757535984870933*^9}},ExpressionUUID->"e2674db7-9ab1-4315-b454-\ 19feff4fad9c"], Cell[BoxData[ RowBox[{"Length", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.7575183561689*^9, 3.7575183652637587`*^9}},ExpressionUUID->"7d85d830-1630-47e8-ad75-\ dd37753b1743"], Cell[BoxData[ RowBox[{"CNOTCount", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"fb3897dd-8c01-498c-8111-f4a7b2143851"], Cell[BoxData[ RowBox[{ RowBox[{"u", "=", RowBox[{"PickRandomUnitary", "[", RowBox[{"2", "^", "6"}], "]"}]}], ";"}]], "Input",ExpressionUUID->\ "b4c7653a-082c-4e2c-aac6-cde56109d9a0"], Cell[BoxData[ RowBox[{ RowBox[{"Timing", "[", RowBox[{"gatelist", "=", RowBox[{"DecIsometryGeneric", "[", "u", "]"}]}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}]], "Input",ExpressionUUID->"12f13007-3500-\ 42ad-a976-6c6700f702fe"], Cell[BoxData[ RowBox[{"Length", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"eb2dd76a-e76c-4bd3-935a-d767fca17705"], Cell[BoxData[ RowBox[{"CNOTCount", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"0da685ac-aecb-4532-9b57-ea9a63766a11"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", RowBox[{"Take", "[", RowBox[{"gatelist", ",", RowBox[{"-", "25"}]}], "]"}], "]"}]], "Input", CellChangeTimes->{{3.776679647921904*^9, 3.7766797052577763`*^9}},ExpressionUUID->"e2dc6191-be1d-4e11-bcc2-\ 400aaf32d5e3"], Cell[CellGroupData[{ Cell["More general isometries", "Subsubsection", CellChangeTimes->{{3.7766867045651712`*^9, 3.776686709980521*^9}, { 3.7770142245352297`*^9, 3.777014226799852*^9}},ExpressionUUID->"56174a62-8224-4dd2-968f-\ 2a176272bc2f"], Cell["Look at an isometry from 1 qubit to 2", "Text", CellChangeTimes->{{3.7766867144366627`*^9, 3.776686724564601*^9}},ExpressionUUID->"9ebfd985-3dc8-44bd-89a5-\ 867ddbc9225a"], Cell[BoxData[ RowBox[{ RowBox[{"u", "=", RowBox[{"PickRandomIsometry", "[", RowBox[{ RowBox[{"2", "^", "1"}], ",", RowBox[{"2", "^", "2"}]}], "]"}]}], ";", RowBox[{"u", "//", "MatrixForm"}]}]], "Input", CellChangeTimes->{{3.776686765620552*^9, 3.7766867779562693`*^9}},ExpressionUUID->"23826099-18b8-4b9f-9b5a-\ 68c1b3049ccf"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "u", "]"}]}]], "Input",ExpressionUUID->\ "33338328-c355-42aa-a462-34818637f3d0"], Cell["\<\ The circuit now specifies that one of the qubits starts in state |0>\ \>", "Text", CellChangeTimes->{{3.7766868096586323`*^9, 3.7766868235779552`*^9}},ExpressionUUID->"e4a85caf-2a6e-44de-a552-\ 922fccde9d88"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"43d02d90-6ffd-4a0c-b45b-a34ea3348c77"], Cell["State preparation is another special case", "Text", CellChangeTimes->{{3.776686855177622*^9, 3.776686861728982*^9}},ExpressionUUID->"f8bbb377-0090-4f60-9cd4-\ 8b4fc2616ad6"], Cell[BoxData[ RowBox[{"state", "=", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", "1", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "1", "}"}], ",", RowBox[{"{", "1", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "1", "}"}]}], "}"}], "/", "2"}]}]], "Input", CellChangeTimes->{{3.757516718478341*^9, 3.7575167296038218`*^9}, { 3.776686895138598*^9, 3.776686921464733*^9}},ExpressionUUID->"4f268b9d-41d0-4e95-9c1d-\ 42e5e507cf7b"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"StatePreparation", "[", "state", "]"}]}]], "Input", CellChangeTimes->{{3.7575167357045*^9, 3.757516753237501*^9}},ExpressionUUID->"584bb72d-36f0-4421-9070-\ 2e0cdfbe6f1d"], Cell[BoxData[ RowBox[{"CNOTCount", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.759381502256336*^9, 3.759381508584725*^9}},ExpressionUUID->"a7dcc7cb-6cc9-4d2b-99ee-\ 7d631e9cdcb2"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.759381830885811*^9, 3.759381835921575*^9}},ExpressionUUID->"86a29376-e4e8-4d8f-ac61-\ 373fcf8f5d1c"], Cell["Choose a GHZ state", "Text", CellChangeTimes->{{3.776687033037956*^9, 3.776687036206678*^9}},ExpressionUUID->"1e9ac4af-664c-4061-817b-\ 2531180ba9bf"], Cell[BoxData[ RowBox[{"state", "=", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", "1", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", "1", "}"}]}], "}"}], "/", RowBox[{"(", RowBox[{"2", "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}], ")"}]}]}]], "Input", CellChangeTimes->{{3.776686956568019*^9, 3.776686964191834*^9}},ExpressionUUID->"b1ba5c54-20fb-47ff-a67e-\ 33cf0bbd010a"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "state", "]"}]}]], "Input", CellChangeTimes->{{3.7575167357045*^9, 3.757516753237501*^9}, { 3.77668710431814*^9, 3.776687105564197*^9}},ExpressionUUID->"ac509606-4fe9-4335-afcb-\ b85c054dce47"], Cell[BoxData[ RowBox[{"CNOTCount", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.759381502256336*^9, 3.759381508584725*^9}},ExpressionUUID->"359036dc-5597-490e-8cc0-\ 61b4bd44cc89"], Cell["\<\ The output circuit is not optimal -- we could get away with only two rotation \ gates\ \>", "Text", CellChangeTimes->{{3.7766870451415977`*^9, 3.776687079941307*^9}},ExpressionUUID->"95d88fab-41f6-4fa4-8ee3-\ 0e64c9870e13"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.759381830885811*^9, 3.759381835921575*^9}},ExpressionUUID->"9537cfc3-f182-4237-acbf-\ ad1865824036"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Constructing circuits", "Subsection", CellChangeTimes->{{3.7591447743066874`*^9, 3.759144782610339*^9}},ExpressionUUID->"17546751-d9f1-4961-b851-\ cfbc77701ca6"], Cell["\<\ We can also build our own circuits and use the code to simplify them\ \>", "Text", CellChangeTimes->{{3.757610325689752*^9, 3.757610341345042*^9}},ExpressionUUID->"5f10b201-5f0d-426e-a4fe-\ 04503df4c2c4"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"{", RowBox[{ RowBox[{"CNOT", "[", RowBox[{"1", ",", "2"}], "]"}], ",", RowBox[{"CNOT", "[", RowBox[{"2", ",", "1"}], "]"}], ",", RowBox[{"Rz", "[", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", "3"}], "]"}], ",", RowBox[{"Rz", "[", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", "1"}], "]"}], ",", RowBox[{"Rx", "[", RowBox[{ RowBox[{"\[Pi]", "/", "4"}], ",", "2"}], "]"}], ",", RowBox[{"CNOT", "[", RowBox[{"1", ",", "2"}], "]"}], ",", RowBox[{"Rz", "[", RowBox[{ RowBox[{"\[Pi]", "/", "4"}], ",", "1"}], "]"}], ",", RowBox[{"CNOT", "[", RowBox[{"3", ",", "2"}], "]"}], ",", RowBox[{"Rx", "[", RowBox[{ RowBox[{"\[Pi]", "/", "8"}], ",", "2"}], "]"}], ",", RowBox[{"Ry", "[", RowBox[{ RowBox[{"\[Pi]", "/", "3"}], ",", "3"}], "]"}], ",", RowBox[{"Rx", "[", RowBox[{ RowBox[{"\[Pi]", "/", "4"}], ",", "3"}], "]"}], ",", RowBox[{"Rz", "[", RowBox[{ RowBox[{"\[Pi]", "/", "6"}], ",", "3"}], "]"}], ",", RowBox[{"CNOT", "[", RowBox[{"1", ",", "2"}], "]"}]}], "}"}]}]], "Input", CellChangeTimes->{{3.7576103438945827`*^9, 3.757610419544932*^9}, { 3.757610617280759*^9, 3.757610645195834*^9}, {3.757610676334146*^9, 3.757610779597756*^9}, {3.757610820375698*^9, 3.757610831429715*^9}, { 3.7576108773712807`*^9, 3.757610927700643*^9}, {3.7576109849315233`*^9, 3.757610985808168*^9}},ExpressionUUID->"c3ce52d6-39c3-46fc-89ff-\ 33af38d0e149"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.75761065001544*^9, 3.757610655702881*^9}},ExpressionUUID->"7345aa71-a6dd-42ed-b704-\ 7e1d64445401"], Cell["However, there is a simpler way to express this:", "Text", CellChangeTimes->{{3.776687343895795*^9, 3.7766873547914457`*^9}},ExpressionUUID->"7b5a380a-cedb-4373-9a2b-\ 8ee65fd702c7"], Cell[BoxData[ RowBox[{"gatelist2", "=", RowBox[{"NSimplifyGateList", "[", "gatelist", "]"}]}]], "Input", CellChangeTimes->{{3.761367156074109*^9, 3.761367172592923*^9}, 3.761712802912055*^9, {3.776687315559054*^9, 3.776687332336268*^9}},ExpressionUUID->"92bc1b67-ff68-42a5-b754-\ 65af98053942"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist2", "]"}]], "Input", CellChangeTimes->{{3.7576107878604803`*^9, 3.7576108024066677`*^9}, { 3.757611111716605*^9, 3.757611116363168*^9}},ExpressionUUID->"a01d582d-0b24-4a8a-9e92-\ 8beede2f2134"], Cell["We can also recover the matrix", "Text", CellChangeTimes->{{3.776688364731345*^9, 3.776688368922971*^9}},ExpressionUUID->"d0ff7db6-430d-443b-bd13-\ 9273f09764e8"], Cell[BoxData[ RowBox[{"CreateOperationFromGateList", "[", "gatelist2", "]"}]], "Input", CellChangeTimes->{{3.776688354132182*^9, 3.7766883590334272`*^9}},ExpressionUUID->"3a5061b3-c2be-4c0e-8ef8-\ df12f29a5616"] }, Open ]], Cell[CellGroupData[{ Cell["Channel decomposition", "Subsection", CellChangeTimes->{{3.776687448781646*^9, 3.776687453261363*^9}},ExpressionUUID->"c646f020-a6ea-47eb-8883-\ 8ede76b96378"], Cell["Pick a channel (amplitude damping)", "Text", CellChangeTimes->{{3.776687457093425*^9, 3.7766874589651546`*^9}, { 3.7766879005725*^9, 3.776687904284273*^9}},ExpressionUUID->"02e6b822-e011-4d97-9326-\ 53260b7fdd3f"], Cell[BoxData[ RowBox[{ RowBox[{"chan", "=", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", RowBox[{ RowBox[{"(", RowBox[{"1", "-", "p"}], ")"}], "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}]}], "}"}]}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"0", ",", RowBox[{"p", "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}]}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "0"}], "}"}]}], "}"}]}], "}"}]}], ";"}]], "Input", CellChangeTimes->{{3.776687460387884*^9, 3.77668746198162*^9}, { 3.776687606362946*^9, 3.776687630714534*^9}, 3.777014308509697*^9},ExpressionUUID->"78208a84-483a-4a5c-9395-\ c52ddb39a5d0"], Cell[BoxData[ RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"CT", "[", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ".", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "2"}], "}"}]}], "]"}]], "Input",ExpressionUUID\ ->"f6572bda-b2cf-4aae-b0c6-e4906f47a410"], Cell[BoxData[ RowBox[{"Simplify", "[", RowBox[{ RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"CT", "[", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ".", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "2"}], "}"}]}], "]"}], ",", RowBox[{"0", "\[LessEqual]", "p", "\[LessEqual]", "1"}]}], "]"}]], "Input",\ CellChangeTimes->{{3.7766876350442*^9, 3.776687693777472*^9}},ExpressionUUID->"b5d319b5-89bb-4f4e-ac91-\ 55e53c72d536"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecChannelInQCM", "[", RowBox[{"chan", "/.", RowBox[{"p", "\[Rule]", "0.4"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.776687711143138*^9, 3.776687715544745*^9}, { 3.776687752057047*^9, 3.7766877974629908`*^9}},ExpressionUUID->"727e9587-c601-451a-af6a-\ 89574558c921"], Cell["\<\ The channel is a qubit channel, but is implemented using an ancilla that is \ traced out at the end\ \>", "Text", CellChangeTimes->{{3.776687911004361*^9, 3.776687928268138*^9}},ExpressionUUID->"02e287bc-cb57-4751-a3c0-\ 1ad6a6f84b9e"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.776687789923965*^9, 3.776687802494679*^9}},ExpressionUUID->"437558bd-b4c8-4961-a6f8-\ 6da5187dcdc0"], Cell[CellGroupData[{ Cell["Depolarizing channel", "Subsubsection", CellChangeTimes->{{3.7766879669551163`*^9, 3.776687970898983*^9}},ExpressionUUID->"ed0a1762-eaf4-46e0-a57f-\ 455e7a8dcba7"], Cell[BoxData[ RowBox[{ RowBox[{"chan", "=", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"1", "-", "p"}], ")"}], "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}], "*", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"p", "/", "3"}], ")"}], "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}], "*", RowBox[{"\[Sigma]", "[", "1", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"p", "/", "3"}], ")"}], "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}], "*", RowBox[{"\[Sigma]", "[", "2", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"p", "/", "3"}], ")"}], "^", RowBox[{"(", RowBox[{"1", "/", "2"}], ")"}]}], "*", RowBox[{"\[Sigma]", "[", "3", "]"}]}]}], "}"}]}], ";"}]], "Input", CellChangeTimes->{{3.7766879814434137`*^9, 3.776688056474351*^9}, { 3.776688110898172*^9, 3.776688147624681*^9}, 3.777014342100767*^9},ExpressionUUID->"f0e98ca3-ca6b-4862-a8f0-\ c8b948ba83b6"], Cell[BoxData[ RowBox[{"Simplify", "[", RowBox[{ RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"CT", "[", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ".", RowBox[{"chan", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "4"}], "}"}]}], "]"}], ",", RowBox[{"0", "\[LessEqual]", "p", "\[LessEqual]", "1"}]}], "]"}]], "Input",\ CellChangeTimes->{ 3.7766882127364073`*^9},ExpressionUUID->"b0c55225-4db1-4651-ac9d-\ 7a946cfe307f"], Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecChannelInQCM", "[", RowBox[{"chan", "/.", RowBox[{"p", "\[Rule]", "0.4"}]}], "]"}]}]], "Input",ExpressionUUID->\ "e0d3861c-1ff6-4e3a-a3f3-97cfda4bc6a9"], Cell["\<\ The channel is a qubit channel, but is implemented using two ancilla (2 \ ancilla are needed for 4 Kraus operators)\ \>", "Text", CellChangeTimes->{{3.776687911004361*^9, 3.776687928268138*^9}, { 3.776688266453369*^9, 3.776688277485137*^9}, {3.7766967784521112`*^9, 3.776696782083783*^9}},ExpressionUUID->"18eab17f-530b-410d-9ecc-\ 236a9a771440"], Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input",ExpressionUUID->"62b0e636-55a7-4bd0-afb3-4d7a0f33f64d"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Uswap", "=", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}]}], ")"}], ".", RowBox[{"CT", "[", RowBox[{ RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}]}], "]"}]}], "+", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}]}], ")"}], ".", RowBox[{"CT", "[", RowBox[{ RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}]}], "]"}]}], "+", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}]}], ")"}], ".", RowBox[{"CT", "[", RowBox[{ RowBox[{"KetV", "[", RowBox[{"0", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}]}], "]"}]}], "+", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}]}], ")"}], ".", RowBox[{"CT", "[", RowBox[{ RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}], "\[CircleTimes]", RowBox[{"KetV", "[", RowBox[{"1", ",", "2"}], "]"}]}], "]"}]}]}]}]], "Input", CellChangeTimes->{{3.777021504476482*^9, 3.777021698625494*^9}}, CellLabel-> "In[392]:=",ExpressionUUID->"56077f33-f3f1-40a1-a166-8899264c8e75"], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "0", ",", "0", ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "0", ",", "1", ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1", ",", "0", ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "0", ",", "0", ",", "1"}], "}"}]}], "}"}]], "Output", CellChangeTimes->{ 3.7770215063119507`*^9, {3.777021595979273*^9, 3.7770216622888947`*^9}, 3.777021699170433*^9}, CellLabel-> "Out[392]=",ExpressionUUID->"56e80e02-059b-481e-b8f5-c2e61da074cc"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"u2", "=", RowBox[{"Tensor", "[", RowBox[{"Uswap", ",", RowBox[{"IdentityMatrix", "[", "2", "]"}], ",", RowBox[{"{", RowBox[{"1", ",", "2", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "2", ",", "2"}], "}"}]}], "]"}]}], ";", RowBox[{"u2", "//", "MatrixForm"}]}]], "Input", CellChangeTimes->{{3.7770217039218616`*^9, 3.777021733314242*^9}}, CellLabel-> "In[395]:=",ExpressionUUID->"2fee6285-557a-4f3a-bf17-20c36db126e0"], Cell[BoxData[ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"1", "0", "0", "0", "0", "0", "0", "0"}, {"0", "0", "0", "0", "1", "0", "0", "0"}, {"0", "0", "1", "0", "0", "0", "0", "0"}, {"0", "0", "0", "0", "0", "0", "1", "0"}, {"0", "1", "0", "0", "0", "0", "0", "0"}, {"0", "0", "0", "0", "0", "1", "0", "0"}, {"0", "0", "0", "1", "0", "0", "0", "0"}, {"0", "0", "0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]]], "Output", CellChangeTimes->{{3.7770217209111156`*^9, 3.777021734074127*^9}}, CellLabel-> "Out[395]//MatrixForm=",ExpressionUUID->"ce57bff3-f706-4631-86e4-\ ea7a7f22eeb3"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"gatelist", "=", RowBox[{"DecIsometry", "[", "u2", "]"}]}]], "Input", CellChangeTimes->{{3.777021747666058*^9, 3.777021778924123*^9}}, CellLabel-> "In[397]:=",ExpressionUUID->"5faf6cc9-ac93-42c8-8714-a8663cc22097"], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "2"], ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox["\[Pi]", "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"7", " ", "\[Pi]"}], "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "3", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "3", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "2"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "\[Pi]", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"7", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", FractionBox["\[Pi]", "2"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", "\[Pi]", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "3", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", "\[Pi]", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "3", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "2"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox[ RowBox[{"7", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "2"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "2"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", FractionBox["\[Pi]", "2"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "3", ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "2"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "2"], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", "\[Pi]", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", "\[Pi]", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox["\[Pi]", "4"], ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "2", ",", "3"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", FractionBox[ RowBox[{"3", " ", "\[Pi]"}], "4"], ",", "3"}], "}"}]}], "}"}]], "Output",\ CellChangeTimes->{{3.777021769159979*^9, 3.777021791204104*^9}}, CellLabel-> "Out[397]=",ExpressionUUID->"9fee35e5-8bf4-4461-9b36-d8874bcb9015"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"PrintCircuit", "[", "gatelist", "]"}]], "Input", CellChangeTimes->{{3.777021782422249*^9, 3.777021787068513*^9}}, CellLabel-> "In[398]:=",ExpressionUUID->"f7604389-013e-4fc7-bcd1-1197f93b06a4"], Cell[BoxData[ GraphicsBox[ TagBox[{{ {GrayLevel[0], Thickness[Large], LineBox[{{1., -1.}, {2., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{2., -1.}, {3., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{3., -1.}, {4., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{3., -1.}, {3., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{4., -1.}, {5., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{5., -1.}, {6., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{5., -1.}, {5., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{6., -1.}, {7., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{7., -1.}, {8., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{8., -1.}, {9., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{9., -1.}, {10., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{10., -1.}, {11., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{11., -1.}, {12., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{12., -1.}, {13., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{13., -1.}, {14., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{14., -1.}, {15., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{15., -1.}, {16., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{16., -1.}, {17., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{17., -1.}, {18., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{18., -1.}, {19., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{19., -1.}, {20., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{19., -1.}, {19., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{20., -1.}, {21., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{21., -1.}, {22., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{22., -1.}, {23., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{22., -1.}, {22., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{23., -1.}, {24., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{24., -1.}, {25., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{24., -1.}, {24., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{25., -1.}, {26., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{26., -1.}, {27., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{27., -1.}, {28., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{28., -1.}, {29., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{29., -1.}, {30., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{30., -1.}, {31., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{31., -1.}, {32., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{32., -1.}, {33., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{33., -1.}, {34., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{34., -1.}, {35., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{34., -1.}, {34., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{35., -1.}, {36., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{36., -1.}, {37., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{37., -1.}, {38., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{38., -1.}, {39., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{39., -1.}, {40., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{40., -1.}, {41., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{41., -1.}, {42., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{42., -1.}, {43., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{43., -1.}, {44., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{3., -2.}, {4., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{5., -2.}, {6., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{19., -3.}, {20., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{22., -2.}, {23., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{24., -3.}, {25., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{34., -3.}, {35., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{1., -2.}, {2., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{2., -2.}, {3., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{4., -2.}, {5., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{6., -2.}, {7., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{6., -2.}, {6., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{7., -2.}, {8., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{8., -2.}, {9., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{8., -2.}, {8., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{9., -2.}, {10., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{10., -2.}, {11., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{11., -2.}, {12., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{12., -2.}, {13., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{13., -2.}, {14., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{14., -2.}, {15., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{15., -2.}, {16., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{16., -2.}, {17., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{17., -2.}, {18., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{18., -2.}, {19., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{19., -2.}, {20., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{20., -2.}, {21., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{21., -2.}, {22., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{23., -2.}, {24., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{24., -2.}, {25., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{25., -2.}, {26., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{26., -2.}, {27., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{27., -2.}, {28., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{28., -2.}, {29., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{29., -2.}, {30., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{30., -2.}, {31., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{31., -2.}, {32., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{32., -2.}, {33., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{33., -2.}, {34., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{34., -2.}, {35., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{35., -2.}, {36., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{36., -2.}, {37., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{37., -2.}, {38., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{38., -2.}, {39., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{39., -2.}, {40., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{40., -2.}, {41., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{41., -2.}, {42., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{42., -2.}, {43., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{43., -2.}, {44., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{6., -3.}, {7., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{8., -3.}, {9., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{1., -3.}, {2., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{2., -3.}, {3., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{3., -3.}, {4., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{4., -3.}, {5., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{5., -3.}, {6., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{7., -3.}, {8., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{9., -3.}, {10., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{10., -3.}, {11., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{11., -3.}, {12., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{11., -3.}, {11., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{12., -3.}, {13., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{13., -3.}, {14., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{14., -3.}, {15., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{14., -3.}, {14., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{15., -3.}, {16., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{16., -3.}, {17., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{17., -3.}, {18., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{17., -3.}, {17., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{18., -3.}, {19., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{20., -3.}, {21., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{21., -3.}, {22., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{22., -3.}, {23., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{23., -3.}, {24., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{25., -3.}, {26., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{26., -3.}, {27., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{27., -3.}, {28., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{27., -3.}, {27., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{28., -3.}, {29., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{29., -3.}, {30., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{29., -3.}, {29., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{30., -3.}, {31., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{31., -3.}, {32., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{32., -3.}, {33., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{32., -3.}, {32., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{33., -3.}, {34., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{35., -3.}, {36., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{36., -3.}, {37., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{37., -3.}, {38., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{37., -3.}, {37., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{38., -3.}, {39., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{39., -3.}, {40., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{40., -3.}, {41., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{40., -3.}, {40., -1.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{41., -3.}, {42., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{42., -3.}, {43., -3.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{42., -3.}, {42., -2.}}]}, {GrayLevel[0], Thickness[Large], LineBox[{{43., -3.}, {44., -3.}}]}}, {{}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{1.8, -1.2}, {2.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {2., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{3., -1.}, 0.2], {GrayLevel[0], LineBox[{{3., -1.2}, {3., -0.8}}], LineBox[{{2.8, -1.}, {3.2, -1.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{3.8, -1.2}, {4.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {4., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{5., -1.}, 0.2], {GrayLevel[0], LineBox[{{5., -1.2}, {5., -0.8}}], LineBox[{{4.8, -1.}, {5.2, -1.}}]}}, {}, {}, {}, {}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{14., -1.}, 0.1]}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{14.8, -1.2}, {15.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {15., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{15.8, -1.2}, {16.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {16., -1.}]}}, {}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{19., -1.}, 0.2], {GrayLevel[0], LineBox[{{19., -1.2}, {19., -0.8}}], LineBox[{{18.8, -1.}, {19.2, -1.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{19.8, -1.2}, {20.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {20., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{20.8, -1.2}, {21.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rx\"\>", {21., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{22., -1.}, 0.2], {GrayLevel[0], LineBox[{{22., -1.2}, {22., -0.8}}], LineBox[{{21.8, -1.}, {22.2, -1.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{22.8, -1.2}, {23.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {23., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{24., -1.}, 0.2], {GrayLevel[0], LineBox[{{24., -1.2}, {24., -0.8}}], LineBox[{{23.8, -1.}, {24.2, -1.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{24.8, -1.2}, {25.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {25., -1.}]}}, {}, {}, {}, {GrayLevel[0], DiskBox[{29., -1.}, 0.1]}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{29.8, -1.2}, {30.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {30., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{30.8, -1.2}, {31.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {31., -1.}]}}, {}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{34., -1.}, 0.2], {GrayLevel[0], LineBox[{{34., -1.2}, {34., -0.8}}], LineBox[{{33.8, -1.}, {34.2, -1.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{34.8, -1.2}, {35.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {35., -1.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{35.8, -1.2}, {36.2, -0.8}], {GrayLevel[0], InsetBox["\<\"Rx\"\>", {36., -1.}]}}, {}, {}, {}, {GrayLevel[0], DiskBox[{40., -1.}, 0.1]}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{3., -2.}, 0.1]}, {GrayLevel[0], DiskBox[{5., -2.}, 0.1]}, {GrayLevel[0], DiskBox[{19., -3.}, 0.1]}, {GrayLevel[0], DiskBox[{22., -2.}, 0.1]}, {GrayLevel[0], DiskBox[{24., -3.}, 0.1]}, {GrayLevel[0], DiskBox[{34., -3.}, 0.1]}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{1.8, -2.2}, {2.2, -1.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {2., -2.}]}}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{6., -2.}, 0.2], {GrayLevel[0], LineBox[{{6., -2.2}, {6., -1.8}}], LineBox[{{5.8, -2.}, {6.2, -2.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{6.8, -2.2}, {7.2, -1.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {7., -2.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{8., -2.}, 0.2], {GrayLevel[0], LineBox[{{8., -2.2}, {8., -1.8}}], LineBox[{{7.8, -2.}, {8.2, -2.}}]}}, {}, {}, {GrayLevel[0], DiskBox[{11., -2.}, 0.1]}, {}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{17., -2.}, 0.1]}, {}, {}, {}, {}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{27., -2.}, 0.1]}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{32., -2.}, 0.1]}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{37., -2.}, 0.1]}, {}, {}, {}, {}, {GrayLevel[0], DiskBox[{42., -2.}, 0.1]}, {}, {}, {GrayLevel[0], DiskBox[{6., -3.}, 0.1]}, {GrayLevel[0], DiskBox[{8., -3.}, 0.1]}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{1.8, -3.2}, {2.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {2., -3.}]}}, {}, {}, {}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{8.8, -3.2}, {9.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {9., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{9.8, -3.2}, {10.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {10., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{11., -3.}, 0.2], {GrayLevel[0], LineBox[{{11., -3.2}, {11., -2.8}}], LineBox[{{10.8, -3.}, {11.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{11.8, -3.2}, {12.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {12., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{12.8, -3.2}, {13.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {13., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{14., -3.}, 0.2], {GrayLevel[0], LineBox[{{14., -3.2}, {14., -2.8}}], LineBox[{{13.8, -3.}, {14.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{14.8, -3.2}, {15.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {15., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{15.8, -3.2}, {16.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rx\"\>", {16., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{17., -3.}, 0.2], {GrayLevel[0], LineBox[{{17., -3.2}, {17., -2.8}}], LineBox[{{16.8, -3.}, {17.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{17.8, -3.2}, {18.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {18., -3.}]}}, {}, {}, {}, {}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{24.8, -3.2}, {25.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {25., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{25.8, -3.2}, {26.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {26., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{27., -3.}, 0.2], {GrayLevel[0], LineBox[{{27., -3.2}, {27., -2.8}}], LineBox[{{26.8, -3.}, {27.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{27.8, -3.2}, {28.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {28., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{29., -3.}, 0.2], {GrayLevel[0], LineBox[{{29., -3.2}, {29., -2.8}}], LineBox[{{28.8, -3.}, {29.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{29.8, -3.2}, {30.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {30., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{30.8, -3.2}, {31.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rx\"\>", {31., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{32., -3.}, 0.2], {GrayLevel[0], LineBox[{{32., -3.2}, {32., -2.8}}], LineBox[{{31.8, -3.}, {32.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{32.8, -3.2}, {33.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {33., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{34.8, -3.2}, {35.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {35., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{35.8, -3.2}, {36.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rz\"\>", {36., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{37., -3.}, 0.2], {GrayLevel[0], LineBox[{{37., -3.2}, {37., -2.8}}], LineBox[{{36.8, -3.}, {37.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{37.8, -3.2}, {38.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {38., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{38.8, -3.2}, {39.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Rx\"\>", {39., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{40., -3.}, 0.2], {GrayLevel[0], LineBox[{{40., -3.2}, {40., -2.8}}], LineBox[{{39.8, -3.}, {40.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{40.8, -3.2}, {41.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {41., -3.}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], DiskBox[{42., -3.}, 0.2], {GrayLevel[0], LineBox[{{42., -3.2}, {42., -2.8}}], LineBox[{{41.8, -3.}, {42.2, -3.}}]}}, {GrayLevel[1], EdgeForm[GrayLevel[0]], RectangleBox[{42.8, -3.2}, {43.2, -2.8}], {GrayLevel[0], InsetBox["\<\"Ry\"\>", {43., -3.}]}}, {}}}, Annotation[#, VertexCoordinateRules -> CompressedData[" 1:eJxd1DtqAlEYhuFDqiktLCwsjIiIiHi/66i5LCBLCKTOFiyyr7ikLCEJ+h+Y RxgOz7zTzTc+vn++fTyklL7+rv/z9vsp7+f3/cax6gLXcB03cBO3cBt3cBf3 cB8P8BCP8BhP8BTP8Bwv8BKv8Bpv8Bbv8B4fcImPVV9wOtFxOtNxeqLj9EzH 6YWO0yuOfabr7ajjeH/F3Qv6in7C8X3E8/F9hGu4gZu4hdu4g7u4h/t4gId4 hMd4gqd4hud4iVd4jTd4i3d4jw+4xMeqLzi/7+g47z06znuPjvPeo+O89+g4 7919xT5bOPYaTvQC13AdN3Ebd3AX93AfD/AQj/AYT/AMz/ECL/Eab/AW7/Ae H3CJj1VftP9HZzrOe4yO8x6j47zH6Djvsbj+AuIp1c8= "]]& ], AspectRatio->Automatic, FrameTicks->None, ImageSize->{Automatic, 96.29767441860389}, PlotRange->All, PlotRangePadding->Scaled[0.1]]], "Output", CellChangeTimes->{3.777021791330249*^9}, CellLabel-> "Out[398]=",ExpressionUUID->"7ee7fc91-d580-47cb-90af-1d067db74c18"] }, Open ]] }, Open ]] }, Open ]] }, WindowSize->{1246, 846}, WindowMargins->{{Automatic, 150}, {68, Automatic}}, Magnification->1.5, FrontEndVersion->"11.3 for Linux x86 (64-bit) (March 6, 2018)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[580, 22, 164, 3, 82, "Subsection",ExpressionUUID->"3e766eb5-06bf-47a0-a66f-fafbaa4ee04b"], Cell[747, 27, 409, 8, 90, "Text",ExpressionUUID->"13933661-a847-444a-a129-5c5a23af4781"], Cell[1159, 37, 431, 9, 47, "Input",ExpressionUUID->"ec17790d-20f1-4844-97a4-f6b568ad57b9"], Cell[1593, 48, 178, 3, 54, "Text",ExpressionUUID->"39d6ea7b-b0b2-434a-b7df-77e6a1dfc20f"], Cell[1774, 53, 229, 5, 47, "Input",ExpressionUUID->"160fb449-6c42-469c-b9dc-dc4560d8520e"], Cell[2006, 60, 169, 3, 54, "Text",ExpressionUUID->"e069fb84-0b4d-4624-8c81-714b690e9a19"], Cell[2178, 65, 292, 7, 47, "Input",ExpressionUUID->"da38e1a1-b5c9-48f3-9d54-a4eabb4522c6"], Cell[2473, 74, 235, 4, 54, "Text",ExpressionUUID->"58acf036-49b7-4808-a85c-a74180f30ff6"], Cell[2711, 80, 333, 7, 47, "Input",ExpressionUUID->"d1f4b781-1422-4101-b0f6-e1f9a88927db"], Cell[3047, 89, 201, 3, 54, "Text",ExpressionUUID->"1a2b7497-934d-4988-9b82-ac399a51300a"], Cell[3251, 94, 292, 7, 47, "Input",ExpressionUUID->"7536dac8-3ace-416c-9894-1687f4bef6eb"], Cell[3546, 103, 308, 5, 70, "Subsubsection",ExpressionUUID->"4c1c953f-9419-4dcd-b871-9776d9638b83"], Cell[CellGroupData[{ Cell[3879, 112, 161, 3, 54, "Subsubsection",ExpressionUUID->"4409204a-9bfc-48e3-8360-27844b6e53bd"], Cell[4043, 117, 242, 4, 54, "Text",ExpressionUUID->"852a6a42-e98e-4f43-983e-d34e5e2a69c7"], Cell[4288, 123, 504, 16, 47, "Input",ExpressionUUID->"4083ec65-0d39-42ba-9ade-06b6bda96f18"], Cell[4795, 141, 163, 3, 54, "Text",ExpressionUUID->"51b76a17-8517-4fe8-84a7-af38120aa8af"], Cell[4961, 146, 255, 6, 47, "Input",ExpressionUUID->"b2197213-ea34-4522-8daf-eac440114880"], Cell[5219, 154, 198, 3, 54, "Text",ExpressionUUID->"99976163-9110-49a3-8b94-cf4346c6f399"], Cell[5420, 159, 317, 6, 47, "Input",ExpressionUUID->"1dfd5efc-ffed-4ee9-8765-1a0c97bd032d"], Cell[5740, 167, 646, 11, 90, "Text",ExpressionUUID->"ececfe09-5b1e-4aa8-8ff3-477d53ba786b"], Cell[6389, 180, 185, 4, 47, "Input",ExpressionUUID->"dc875492-7784-4eb2-9585-ad1f56586783"], Cell[6577, 186, 161, 3, 54, "Text",ExpressionUUID->"bfc5a5a1-d51e-48c1-8bfe-5529bb6c14aa"], Cell[6741, 191, 353, 9, 47, "Input",ExpressionUUID->"318c4726-eac6-4600-a843-bf2d91762970"], Cell[7097, 202, 158, 3, 54, "Text",ExpressionUUID->"afd6fe86-e1e2-4dc4-8679-618810692fd8"], Cell[7258, 207, 316, 7, 47, "Input",ExpressionUUID->"bdd1a511-607a-43ab-9692-c968ef733c8d"] }, Open ]], Cell[CellGroupData[{ Cell[7611, 219, 160, 3, 68, "Subsubsection",ExpressionUUID->"58f6a298-b6fc-4e45-9b35-fd5aa0701eef"], Cell[7774, 224, 245, 6, 54, "Text",ExpressionUUID->"66deabb9-6313-4d19-8209-e03eedd9f750"], Cell[8022, 232, 223, 5, 47, "Input",ExpressionUUID->"2ab4a585-5598-4aa4-951a-4b85964ab118"], Cell[8248, 239, 421, 8, 47, "Input",ExpressionUUID->"4e575915-15f6-4c2c-8c85-d12a3be54c7a"], Cell[8672, 249, 267, 6, 54, "Text",ExpressionUUID->"f9736414-c06b-4cb1-a6b7-92ef4475c9c8"], Cell[8942, 257, 313, 6, 47, "Input",ExpressionUUID->"3cc7ed6b-6e08-4175-a13d-4094a577cc9a"], Cell[9258, 265, 173, 3, 54, "Text",ExpressionUUID->"7c64162d-ff6b-4bce-92ff-e126cb0ecfc4"], Cell[9434, 270, 725, 17, 47, "Input",ExpressionUUID->"7dfb57e5-3311-41fa-9376-cb1110ecc250"], Cell[10162, 289, 236, 4, 54, "Text",ExpressionUUID->"ed97c194-dbb9-4152-b79e-d4e259344dc5"], Cell[10401, 295, 589, 11, 47, "Input",ExpressionUUID->"96939bd6-b32c-4aa1-b52f-38e0de268b20"], Cell[10993, 308, 172, 3, 54, "Text",ExpressionUUID->"2b5d61ae-6dd7-4e62-b1a4-bd51fad55346"], Cell[11168, 313, 247, 5, 47, "Input",ExpressionUUID->"1f576111-ad20-4e20-a256-646794ca1267"], Cell[11418, 320, 703, 21, 90, "Text",ExpressionUUID->"7eb36da7-4902-4faa-9d72-27594d2b5898"], Cell[12124, 343, 199, 4, 47, "Input",ExpressionUUID->"af79f8ef-73f7-4b16-b481-9e3e0bdb6812"], Cell[12326, 349, 235, 6, 54, "Text",ExpressionUUID->"3c05994d-d12e-4f85-b26f-198f0bf29b57"], Cell[12564, 357, 1117, 40, 136, "Input",ExpressionUUID->"35561596-bdf3-498f-a879-5a439e29153b"], Cell[13684, 399, 203, 5, 47, "Input",ExpressionUUID->"e3ed3738-768b-40ad-bb12-822ec43405d7"], Cell[13890, 406, 228, 5, 47, "Input",ExpressionUUID->"2d3e5bf0-025d-4975-ba34-fbf965856267"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[14167, 417, 169, 3, 82, "Subsection",ExpressionUUID->"38bcbb06-da07-413c-9a84-bc057d1877ba"], Cell[14339, 422, 219, 5, 47, "Input",ExpressionUUID->"60e0c4e2-8edc-413a-9166-56763ea033ad"], Cell[14561, 429, 151, 3, 47, "Input",ExpressionUUID->"26246b1d-568f-4eec-940f-ab71957c804d"], Cell[14715, 434, 127, 1, 47, "Input",ExpressionUUID->"e0db060a-c24e-4d1c-b27f-5af16316942a"] }, Open ]], Cell[CellGroupData[{ Cell[14879, 440, 178, 3, 82, "Subsection",ExpressionUUID->"c249a143-2c75-48ec-b958-63fdd0c2603d"], Cell[15060, 445, 359, 8, 47, "Input",ExpressionUUID->"b5a24bf0-2beb-47d3-bcd4-629990d94454"], Cell[15422, 455, 411, 9, 47, "Input",ExpressionUUID->"e2674db7-9ab1-4315-b454-19feff4fad9c"], Cell[15836, 466, 192, 4, 47, "Input",ExpressionUUID->"7d85d830-1630-47e8-ad75-dd37753b1743"], Cell[16031, 472, 124, 1, 47, "Input",ExpressionUUID->"fb3897dd-8c01-498c-8111-f4a7b2143851"], Cell[16158, 475, 194, 5, 47, "Input",ExpressionUUID->"b4c7653a-082c-4e2c-aac6-cde56109d9a0"], Cell[16355, 482, 245, 6, 47, "Input",ExpressionUUID->"12f13007-3500-42ad-a976-6c6700f702fe"], Cell[16603, 490, 121, 1, 47, "Input",ExpressionUUID->"eb2dd76a-e76c-4bd3-935a-d767fca17705"], Cell[16727, 493, 124, 1, 47, "Input",ExpressionUUID->"0da685ac-aecb-4532-9b57-ea9a63766a11"], Cell[16854, 496, 276, 7, 47, "Input",ExpressionUUID->"e2dc6191-be1d-4e11-bcc2-400aaf32d5e3"], Cell[CellGroupData[{ Cell[17155, 507, 227, 4, 68, "Subsubsection",ExpressionUUID->"56174a62-8224-4dd2-968f-2a176272bc2f"], Cell[17385, 513, 181, 3, 54, "Text",ExpressionUUID->"9ebfd985-3dc8-44bd-89a5-867ddbc9225a"], Cell[17569, 518, 356, 10, 47, "Input",ExpressionUUID->"23826099-18b8-4b9f-9b5a-68c1b3049ccf"], Cell[17928, 530, 151, 3, 47, "Input",ExpressionUUID->"33338328-c355-42aa-a462-34818637f3d0"], Cell[18082, 535, 222, 5, 54, "Text",ExpressionUUID->"e4a85caf-2a6e-44de-a552-922fccde9d88"], Cell[18307, 542, 127, 1, 47, "Input",ExpressionUUID->"43d02d90-6ffd-4a0c-b45b-a34ea3348c77"], Cell[18437, 545, 183, 3, 54, "Text",ExpressionUUID->"f8bbb377-0090-4f60-9cd4-8b4fc2616ad6"], Cell[18623, 550, 570, 16, 47, "Input",ExpressionUUID->"4f268b9d-41d0-4e95-9c1d-42e5e507cf7b"], Cell[19196, 568, 227, 5, 47, "Input",ExpressionUUID->"584bb72d-36f0-4421-9070-2e0cdfbe6f1d"], Cell[19426, 575, 195, 4, 47, "Input",ExpressionUUID->"a7dcc7cb-6cc9-4d2b-99ee-7d631e9cdcb2"], Cell[19624, 581, 198, 4, 47, "Input",ExpressionUUID->"86a29376-e4e8-4d8f-ac61-373fcf8f5d1c"], Cell[19825, 587, 160, 3, 54, "Text",ExpressionUUID->"1e9ac4af-664c-4061-817b-2531180ba9bf"], Cell[19988, 592, 621, 19, 47, "Input",ExpressionUUID->"b1ba5c54-20fb-47ff-a67e-33cf0bbd010a"], Cell[20612, 613, 270, 6, 47, "Input",ExpressionUUID->"ac509606-4fe9-4335-afcb-b85c054dce47"], Cell[20885, 621, 195, 4, 47, "Input",ExpressionUUID->"359036dc-5597-490e-8cc0-61b4bd44cc89"], Cell[21083, 627, 237, 6, 54, "Text",ExpressionUUID->"95d88fab-41f6-4fa4-8ee3-0e64c9870e13"], Cell[21323, 635, 198, 4, 47, "Input",ExpressionUUID->"9537cfc3-f182-4237-acbf-ad1865824036"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[21570, 645, 171, 3, 82, "Subsection",ExpressionUUID->"17546751-d9f1-4961-b851-cfbc77701ca6"], Cell[21744, 650, 218, 5, 54, "Text",ExpressionUUID->"5f10b201-5f0d-426e-a4fe-04503df4c2c4"], Cell[21965, 657, 1583, 43, 116, "Input",ExpressionUUID->"c3ce52d6-39c3-46fc-89ff-33af38d0e149"], Cell[23551, 702, 197, 4, 47, "Input",ExpressionUUID->"7345aa71-a6dd-42ed-b704-7e1d64445401"], Cell[23751, 708, 192, 3, 54, "Text",ExpressionUUID->"7b5a380a-cedb-4373-9a2b-8ee65fd702c7"], Cell[23946, 713, 307, 6, 47, "Input",ExpressionUUID->"92bc1b67-ff68-42a5-b754-65af98053942"], Cell[24256, 721, 252, 5, 47, "Input",ExpressionUUID->"a01d582d-0b24-4a8a-9e92-8beede2f2134"], Cell[24511, 728, 172, 3, 54, "Text",ExpressionUUID->"d0ff7db6-430d-443b-bd13-9273f09764e8"], Cell[24686, 733, 216, 4, 47, "Input",ExpressionUUID->"3a5061b3-c2be-4c0e-8ef8-df12f29a5616"] }, Open ]], Cell[CellGroupData[{ Cell[24939, 742, 169, 3, 82, "Subsection",ExpressionUUID->"c646f020-a6ea-47eb-8883-8ede76b96378"], Cell[25111, 747, 225, 4, 54, "Text",ExpressionUUID->"02e6b822-e011-4d97-9326-53260b7fdd3f"], Cell[25339, 753, 900, 28, 47, "Input",ExpressionUUID->"78208a84-483a-4a5c-9395-c52ddb39a5d0"], Cell[26242, 783, 370, 11, 47, "Input",ExpressionUUID->"f6572bda-b2cf-4aae-b0c6-e4906f47a410"], Cell[26615, 796, 572, 17, 47, "Input",ExpressionUUID->"b5d319b5-89bb-4f4e-ac91-55e53c72d536"], Cell[27190, 815, 336, 8, 47, "Input",ExpressionUUID->"727e9587-c601-451a-af6a-89574558c921"], Cell[27529, 825, 249, 6, 54, "Text",ExpressionUUID->"02e287bc-cb57-4751-a3c0-1ad6a6f84b9e"], Cell[27781, 833, 198, 4, 47, "Input",ExpressionUUID->"437558bd-b4c8-4961-a6f8-6da5187dcdc0"], Cell[CellGroupData[{ Cell[28004, 841, 173, 3, 68, "Subsubsection",ExpressionUUID->"ed0a1762-eaf4-46e0-a57f-455e7a8dcba7"], Cell[28180, 846, 1298, 41, 82, "Input",ExpressionUUID->"f0e98ca3-ca6b-4862-a8f0-c8b948ba83b6"], Cell[29481, 889, 552, 17, 47, "Input",ExpressionUUID->"b0c55225-4db1-4651-ac9d-7a946cfe307f"], Cell[30036, 908, 216, 5, 47, "Input",ExpressionUUID->"e0d3861c-1ff6-4e3a-a3f3-97cfda4bc6a9"], Cell[30255, 915, 362, 7, 90, "Text",ExpressionUUID->"18eab17f-530b-410d-9ecc-236a9a771440"], Cell[30620, 924, 127, 1, 47, "Input",ExpressionUUID->"62b0e636-55a7-4bd0-afb3-4d7a0f33f64d"], Cell[CellGroupData[{ Cell[30772, 929, 1885, 57, 150, "Input",ExpressionUUID->"56077f33-f3f1-40a1-a166-8899264c8e75"], Cell[32660, 988, 573, 15, 76, "Output",ExpressionUUID->"56e80e02-059b-481e-b8f5-c2e61da074cc"] }, Open ]], Cell[CellGroupData[{ Cell[33270, 1008, 511, 13, 82, "Input",ExpressionUUID->"2fee6285-557a-4f3a-bf17-20c36db126e0"], Cell[33784, 1023, 1092, 27, 275, "Output",ExpressionUUID->"ce57bff3-f706-4631-86e4-ea7a7f22eeb3"] }, Open ]], Cell[CellGroupData[{ Cell[34913, 1055, 244, 5, 47, "Input",ExpressionUUID->"5faf6cc9-ac93-42c8-8714-a8663cc22097"], Cell[35160, 1062, 4906, 150, 438, "Output",ExpressionUUID->"9fee35e5-8bf4-4461-9b36-d8874bcb9015"] }, Open ]], Cell[CellGroupData[{ Cell[40103, 1217, 221, 4, 47, "Input",ExpressionUUID->"f7604389-013e-4fc7-bcd1-1197f93b06a4"], Cell[40327, 1223, 20978, 336, 193, "Output",ExpressionUUID->"7ee7fc91-d580-47cb-90af-1d067db74c18"] }, Open ]] }, Open ]] }, Open ]] } ] *)