[{"data":1,"prerenderedAt":19780},["ShallowReactive",2],{"lesson:\u002Falgorithms\u002Fcomputational-geometry\u002Fpolygons-and-proximity":3,"course-wordcounts":13948,"ref-card-index":14858,"nav:algorithms":19540,"tikz:c135bd10ece269665a88ebb8f34cc699cea7222d2b49a086e9f5ad49610981b4":19771,"tikz:44773d0b4dd76d03dd1410f976fa9f563da9f43def0058856ec359ffaaabb2fb":19772,"tikz:373ba2ad0f60438a5645aa7779c12ca335b96ae1da1e3d000cc1b9b02d8b48c9":19773,"tikz:e385dae13bbab9e19514bd9f1b9209536afea006808af2f5545e1e58d90ca2ef":19774,"tikz:176f3967b6a54592deacc801502fbdd5d7d080ec78c305dc0053ef5a98b4daa2":19775,"tikz:3802eb7148b52103aa3d53468aeb0efe8d4b6f95ca1b10e991d7b48e02297089":19776,"tikz:7903948aa78f46dc16c6b7fec1f9e4a96e901421f73b6031103f69f8668fa701":19777,"tikz:e61607e211f17e07c6b52fe433dd0c1993164ef86d738d4d5cd19e482faf1ef2":19778,"tikz:14bd0a3d7f692ddb6c0556f6b30224dab1ca3b71cdbbd922e710f867035f3597":19779},{"id":4,"title":5,"blurb":6,"body":7,"brief":13906,"category":13907,"description":13908,"draft":13909,"extension":13910,"meta":13911,"module":13913,"navigation":2751,"path":13914,"practice":13915,"rawbody":13927,"readingTime":13928,"seo":13933,"sources":13934,"status":13942,"stem":13943,"summary":13944,"topics":13945,"__hash__":13947},"course\u002F01.algorithms\u002F11.computational-geometry\u002F04.polygons-and-proximity.md","Polygons & Proximity","",{"type":8,"value":9,"toc":13894},"minimark",[10,47,52,88,267,707,711,857,949,1746,1749,1752,1808,1916,2223,2329,2715,4300,4303,4486,4491,4546,4549,4894,4901,5341,5700,6283,6287,6531,6630,6755,6758,6852,7047,7051,7197,8037,8060,8366,10288,10291,10306,10634,10638,10652,10668,10881,11071,11450,11453,11518,11521,11720,11756,12765,12769,12776,12890,12893,13029,13033,13748,13890],[11,12,13,14,19,20,24,25,29,30,34,35,38,39,42,43,46],"p",{},"The first three lessons built the planar toolkit: the\n",[15,16,18],"a",{"href":17},"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives","orientation primitive",",\nthe ",[15,21,23],{"href":22},"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull","convex hull",", and the\n",[15,26,28],{"href":27},"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line","plane sweep",". This lesson applies\nthose tools to four problems every geometry library ships, each fast and exact\nby a counting or sign argument: the\n",[31,32,33],"strong",{},"closest pair"," of a point set, the ",[31,36,37],{},"point-in-polygon"," test, the ",[31,40,41],{},"area"," of a\npolygon, and the ",[31,44,45],{},"diameter and width"," of a convex polygon. Three of them need\nnothing beyond the cross product; the fourth turns the hull into a linear\nscan by walking two pointers in lock-step.",[48,49,51],"h2",{"id":50},"closest-pair-of-points","Closest pair of points",[53,54,56],"callout",{"type":55},"problem",[11,57,58,61,62,87],{},[31,59,60],{},"Problem."," Given ",[63,64,67],"span",{"className":65},[66],"katex",[63,68,72],{"className":69,"ariaHidden":71},[70],"katex-html","true",[63,73,76,81],{"className":74},[75],"base",[63,77],{"className":78,"style":80},[79],"strut","height:0.4306em;",[63,82,86],{"className":83},[84,85],"mord","mathnormal","n"," points in the plane, find the two whose Euclidean\ndistance is smallest.",[11,89,90,91,196,197,252,253,257,258,262,263,266],{},"The brute force compares all ",[63,92,94],{"className":93},[66],[63,95,97],{"className":96,"ariaHidden":71},[70],[63,98,100,104],{"className":99},[75],[63,101],{"className":102,"style":103},[79],"height:1.2em;vertical-align:-0.35em;",[63,105,107,119,188],{"className":106},[84],[63,108,113],{"className":109,"style":112},[110,111],"mopen","delimcenter","top:0em;",[63,114,118],{"className":115},[116,117],"delimsizing","size1","(",[63,120,123],{"className":121},[122],"mfrac",[63,124,128,179],{"className":125},[126,127],"vlist-t","vlist-t2",[63,129,132,174],{"className":130},[131],"vlist-r",[63,133,137,159],{"className":134,"style":136},[135],"vlist","height:0.7454em;",[63,138,140,145],{"style":139},"top:-2.355em;",[63,141],{"className":142,"style":144},[143],"pstrut","height:2.7em;",[63,146,152],{"className":147},[148,149,150,151],"sizing","reset-size6","size3","mtight",[63,153,155],{"className":154},[84,151],[63,156,158],{"className":157},[84,151],"2",[63,160,162,165],{"style":161},"top:-3.144em;",[63,163],{"className":164,"style":144},[143],[63,166,168],{"className":167},[148,149,150,151],[63,169,171],{"className":170},[84,151],[63,172,86],{"className":173},[84,85,151],[63,175,178],{"className":176},[177],"vlist-s","​",[63,180,182],{"className":181},[131],[63,183,186],{"className":184,"style":185},[135],"height:0.345em;",[63,187],{},[63,189,192],{"className":190,"style":112},[191,111],"mclose",[63,193,195],{"className":194},[116,117],")"," pairs in ",[63,198,200],{"className":199},[66],[63,201,203],{"className":202,"ariaHidden":71},[70],[63,204,206,210,214,217,249],{"className":205},[75],[63,207],{"className":208,"style":209},[79],"height:1.0641em;vertical-align:-0.25em;",[63,211,213],{"className":212},[84],"Θ",[63,215,118],{"className":216},[110],[63,218,220,223],{"className":219},[84],[63,221,86],{"className":222},[84,85],[63,224,227],{"className":225},[226],"msupsub",[63,228,230],{"className":229},[126],[63,231,233],{"className":232},[131],[63,234,237],{"className":235,"style":236},[135],"height:0.8141em;",[63,238,240,243],{"style":239},"top:-3.063em;margin-right:0.05em;",[63,241],{"className":242,"style":144},[143],[63,244,246],{"className":245},[148,149,150,151],[63,247,158],{"className":248},[84,151],[63,250,195],{"className":251},[191],". The classic\nimprovement is divide-and-conquer, and it is the geometry that makes it work: a\npacking bound caps the cross-boundary work at a ",[254,255,256],"em",{},"constant"," per point. This is the\nfull treatment — the ",[15,259,261],{"href":260},"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection","Selection lesson","\nintroduces it as a divide-and-conquer classic alongside sorting, and the\n",[15,264,265],{"href":27},"sweep-line lesson"," gives a\none-pass alternative on a dynamic strip.",[11,268,269,272,273,289,290,305,306,323,324,341,342,380,381,384,385,443,444,496,497,380,633,636,637,640,641,644,645,660,661,676,677,706],{},[31,270,271],{},"Divide."," Sort by ",[63,274,276],{"className":275},[66],[63,277,279],{"className":278,"ariaHidden":71},[70],[63,280,282,285],{"className":281},[75],[63,283],{"className":284,"style":80},[79],[63,286,288],{"className":287},[84,85],"x"," and split at the median ",[63,291,293],{"className":292},[66],[63,294,296],{"className":295,"ariaHidden":71},[70],[63,297,299,302],{"className":298},[75],[63,300],{"className":301,"style":80},[79],[63,303,288],{"className":304},[84,85]," into a left half ",[63,307,309],{"className":308},[66],[63,310,312],{"className":311,"ariaHidden":71},[70],[63,313,315,319],{"className":314},[75],[63,316],{"className":317,"style":318},[79],"height:0.6833em;",[63,320,322],{"className":321},[84,85],"L"," and a\nright half ",[63,325,327],{"className":326},[66],[63,328,330],{"className":329,"ariaHidden":71},[70],[63,331,333,336],{"className":332},[75],[63,334],{"className":335,"style":318},[79],[63,337,340],{"className":338,"style":339},[84,85],"margin-right:0.0077em;","R"," by a vertical line ",[63,343,345],{"className":344},[66],[63,346,348,370],{"className":347,"ariaHidden":71},[70],[63,349,351,354,357,362,367],{"className":350},[75],[63,352],{"className":353,"style":80},[79],[63,355,288],{"className":356},[84,85],[63,358],{"className":359,"style":361},[360],"mspace","margin-right:0.2778em;",[63,363,366],{"className":364},[365],"mrel","=",[63,368],{"className":369,"style":361},[360],[63,371,373,376],{"className":372},[75],[63,374],{"className":375,"style":80},[79],[63,377,379],{"className":378},[84,85],"m",". ",[31,382,383],{},"Conquer."," Recurse on each half;\nlet ",[63,386,388],{"className":387},[66],[63,389,391],{"className":390,"ariaHidden":71},[70],[63,392,394,398],{"className":393},[75],[63,395],{"className":396,"style":397},[79],"height:0.8444em;vertical-align:-0.15em;",[63,399,401,406],{"className":400},[84],[63,402,405],{"className":403,"style":404},[84,85],"margin-right:0.0379em;","δ",[63,407,409],{"className":408},[226],[63,410,412,434],{"className":411},[126,127],[63,413,415,431],{"className":414},[131],[63,416,419],{"className":417,"style":418},[135],"height:0.3283em;",[63,420,422,425],{"style":421},"top:-2.55em;margin-left:-0.0379em;margin-right:0.05em;",[63,423],{"className":424,"style":144},[143],[63,426,428],{"className":427},[148,149,150,151],[63,429,322],{"className":430},[84,85,151],[63,432,178],{"className":433},[177],[63,435,437],{"className":436},[131],[63,438,441],{"className":439,"style":440},[135],"height:0.15em;",[63,442],{}," and ",[63,445,447],{"className":446},[66],[63,448,450],{"className":449,"ariaHidden":71},[70],[63,451,453,456],{"className":452},[75],[63,454],{"className":455,"style":397},[79],[63,457,459,462],{"className":458},[84],[63,460,405],{"className":461,"style":404},[84,85],[63,463,465],{"className":464},[226],[63,466,468,488],{"className":467},[126,127],[63,469,471,485],{"className":470},[131],[63,472,474],{"className":473,"style":418},[135],[63,475,476,479],{"style":421},[63,477],{"className":478,"style":144},[143],[63,480,482],{"className":481},[148,149,150,151],[63,483,340],{"className":484,"style":339},[84,85,151],[63,486,178],{"className":487},[177],[63,489,491],{"className":490},[131],[63,492,494],{"className":493,"style":440},[135],[63,495],{}," be the best distances found, and\n",[63,498,500],{"className":499},[66],[63,501,503,522],{"className":502,"ariaHidden":71},[70],[63,504,506,510,513,516,519],{"className":505},[75],[63,507],{"className":508,"style":509},[79],"height:0.6944em;",[63,511,405],{"className":512,"style":404},[84,85],[63,514],{"className":515,"style":361},[360],[63,517,366],{"className":518},[365],[63,520],{"className":521,"style":361},[360],[63,523,525,529,538,541,581,586,590,630],{"className":524},[75],[63,526],{"className":527,"style":528},[79],"height:1em;vertical-align:-0.25em;",[63,530,533],{"className":531},[532],"mop",[63,534,537],{"className":535},[84,536],"mathrm","min",[63,539,118],{"className":540},[110],[63,542,544,547],{"className":543},[84],[63,545,405],{"className":546,"style":404},[84,85],[63,548,550],{"className":549},[226],[63,551,553,573],{"className":552},[126,127],[63,554,556,570],{"className":555},[131],[63,557,559],{"className":558,"style":418},[135],[63,560,561,564],{"style":421},[63,562],{"className":563,"style":144},[143],[63,565,567],{"className":566},[148,149,150,151],[63,568,322],{"className":569},[84,85,151],[63,571,178],{"className":572},[177],[63,574,576],{"className":575},[131],[63,577,579],{"className":578,"style":440},[135],[63,580],{},[63,582,585],{"className":583},[584],"mpunct",",",[63,587],{"className":588,"style":589},[360],"margin-right:0.1667em;",[63,591,593,596],{"className":592},[84],[63,594,405],{"className":595,"style":404},[84,85],[63,597,599],{"className":598},[226],[63,600,602,622],{"className":601},[126,127],[63,603,605,619],{"className":604},[131],[63,606,608],{"className":607,"style":418},[135],[63,609,610,613],{"style":421},[63,611],{"className":612,"style":144},[143],[63,614,616],{"className":615},[148,149,150,151],[63,617,340],{"className":618,"style":339},[84,85,151],[63,620,178],{"className":621},[177],[63,623,625],{"className":624},[131],[63,626,628],{"className":627,"style":440},[135],[63,629],{},[63,631,195],{"className":632},[191],[31,634,635],{},"Combine."," The closest pair overall is\neither one of these two ",[254,638,639],{},"or"," a pair that ",[31,642,643],{},"straddles"," the line — one point in\n",[63,646,648],{"className":647},[66],[63,649,651],{"className":650,"ariaHidden":71},[70],[63,652,654,657],{"className":653},[75],[63,655],{"className":656,"style":318},[79],[63,658,322],{"className":659},[84,85],", one in ",[63,662,664],{"className":663},[66],[63,665,667],{"className":666,"ariaHidden":71},[70],[63,668,670,673],{"className":669},[75],[63,671],{"className":672,"style":318},[79],[63,674,340],{"className":675,"style":339},[84,85]," — at distance ",[63,678,680],{"className":679},[66],[63,681,683,697],{"className":682,"ariaHidden":71},[70],[63,684,686,690,694],{"className":685},[75],[63,687],{"className":688,"style":689},[79],"height:0.5782em;vertical-align:-0.0391em;",[63,691,693],{"className":692},[365],"\u003C",[63,695],{"className":696,"style":361},[360],[63,698,700,703],{"className":699},[75],[63,701],{"className":702,"style":509},[79],[63,704,405],{"className":705,"style":404},[84,85],". The whole difficulty is bounding that\nstraddling case.",[708,709],"tikz-figure",{"hash":710},"c135bd10ece269665a88ebb8f34cc699cea7222d2b49a086e9f5ad49610981b4",[11,712,713,714,729,730,745,746,749,750,768,769,802,803,821,822,837,838,840,841,856],{},"A straddling pair closer than ",[63,715,717],{"className":716},[66],[63,718,720],{"className":719,"ariaHidden":71},[70],[63,721,723,726],{"className":722},[75],[63,724],{"className":725,"style":509},[79],[63,727,405],{"className":728,"style":404},[84,85]," must have both endpoints within horizontal\ndistance ",[63,731,733],{"className":732},[66],[63,734,736],{"className":735,"ariaHidden":71},[70],[63,737,739,742],{"className":738},[75],[63,740],{"className":741,"style":509},[79],[63,743,405],{"className":744,"style":404},[84,85]," of the line, so both lie in a vertical ",[31,747,748],{},"strip"," of width\n",[63,751,753],{"className":752},[66],[63,754,756],{"className":755,"ariaHidden":71},[70],[63,757,759,762,765],{"className":758},[75],[63,760],{"className":761,"style":509},[79],[63,763,158],{"className":764},[84],[63,766,405],{"className":767,"style":404},[84,85]," centred on ",[63,770,772],{"className":771},[66],[63,773,775,793],{"className":774,"ariaHidden":71},[70],[63,776,778,781,784,787,790],{"className":777},[75],[63,779],{"className":780,"style":80},[79],[63,782,288],{"className":783},[84,85],[63,785],{"className":786,"style":361},[360],[63,788,366],{"className":789},[365],[63,791],{"className":792,"style":361},[360],[63,794,796,799],{"className":795},[75],[63,797],{"className":798,"style":80},[79],[63,800,379],{"className":801},[84,85],". Discard everything outside the strip; sort the\nsurvivors by ",[63,804,806],{"className":805},[66],[63,807,809],{"className":808,"ariaHidden":71},[70],[63,810,812,816],{"className":811},[75],[63,813],{"className":814,"style":815},[79],"height:0.625em;vertical-align:-0.1944em;",[63,817,820],{"className":818,"style":819},[84,85],"margin-right:0.0359em;","y"," (in practice, filter the already-",[63,823,825],{"className":824},[66],[63,826,828],{"className":827,"ariaHidden":71},[70],[63,829,831,834],{"className":830},[75],[63,832],{"className":833,"style":815},[79],[63,835,820],{"className":836,"style":819},[84,85],"-sorted list); then walk up\nthe strip. The decisive fact is that each point need only be compared against a\n",[254,839,256],{}," number of its successors in ",[63,842,844],{"className":843},[66],[63,845,847],{"className":846,"ariaHidden":71},[70],[63,848,850,853],{"className":849},[75],[63,851],{"className":852,"style":815},[79],[63,854,820],{"className":855,"style":819},[84,85],"-order.",[53,858,860],{"type":859},"lemma",[11,861,862,865,866,881,882,897,898,913,914,929,930,933,934,856],{},[31,863,864],{},"Lemma (Strip packing)."," Sort the strip points by ",[63,867,869],{"className":868},[66],[63,870,872],{"className":871,"ariaHidden":71},[70],[63,873,875,878],{"className":874},[75],[63,876],{"className":877,"style":815},[79],[63,879,820],{"className":880,"style":819},[84,85],". For any strip point\n",[63,883,885],{"className":884},[66],[63,886,888],{"className":887,"ariaHidden":71},[70],[63,889,891,894],{"className":890},[75],[63,892],{"className":893,"style":815},[79],[63,895,11],{"className":896},[84,85],", every later point that could lie within ",[63,899,901],{"className":900},[66],[63,902,904],{"className":903,"ariaHidden":71},[70],[63,905,907,910],{"className":906},[75],[63,908],{"className":909,"style":509},[79],[63,911,405],{"className":912,"style":404},[84,85]," of ",[63,915,917],{"className":916},[66],[63,918,920],{"className":919,"ariaHidden":71},[70],[63,921,923,926],{"className":922},[75],[63,924],{"className":925,"style":815},[79],[63,927,11],{"className":928},[84,85]," sits among the next\n",[31,931,932],{},"seven"," points in the ",[63,935,937],{"className":936},[66],[63,938,940],{"className":939,"ariaHidden":71},[70],[63,941,943,946],{"className":942},[75],[63,944],{"className":945,"style":815},[79],[63,947,820],{"className":948,"style":819},[84,85],[53,950,952],{"type":951},"proof",[11,953,954,957,958,974,975,990,991,1046,1047,1238,1239,1254,1255,1293,1294,1309,1310,1329,1330,1385,1386,1389,1390,1423,1424,1453,1454,1472,1473,1641,1642,1657,1658,1673,1674,1690,1691,1706,1707,1722,1723],{},[31,955,956],{},"Proof."," A point ",[63,959,961],{"className":960},[66],[63,962,964],{"className":963,"ariaHidden":71},[70],[63,965,967,970],{"className":966},[75],[63,968],{"className":969,"style":815},[79],[63,971,973],{"className":972,"style":819},[84,85],"q"," above ",[63,976,978],{"className":977},[66],[63,979,981],{"className":980,"ariaHidden":71},[70],[63,982,984,987],{"className":983},[75],[63,985],{"className":986,"style":815},[79],[63,988,11],{"className":989},[84,85]," with ",[63,992,994],{"className":993},[66],[63,995,997,1037],{"className":996,"ariaHidden":71},[70],[63,998,1000,1003,1010,1013,1016,1019,1022,1025,1028,1031,1034],{"className":999},[75],[63,1001],{"className":1002,"style":528},[79],[63,1004,1006],{"className":1005},[532],[63,1007,1009],{"className":1008},[84,536],"dist",[63,1011,118],{"className":1012},[110],[63,1014,11],{"className":1015},[84,85],[63,1017,585],{"className":1018},[584],[63,1020],{"className":1021,"style":589},[360],[63,1023,973],{"className":1024,"style":819},[84,85],[63,1026,195],{"className":1027},[191],[63,1029],{"className":1030,"style":361},[360],[63,1032,693],{"className":1033},[365],[63,1035],{"className":1036,"style":361},[360],[63,1038,1040,1043],{"className":1039},[75],[63,1041],{"className":1042,"style":509},[79],[63,1044,405],{"className":1045,"style":404},[84,85]," has\n",[63,1048,1050],{"className":1049},[66],[63,1051,1053,1113,1170,1229],{"className":1052,"ariaHidden":71},[70],[63,1054,1056,1060,1103,1106,1110],{"className":1055},[75],[63,1057],{"className":1058,"style":1059},[79],"height:0.9221em;vertical-align:-0.2861em;",[63,1061,1063,1066],{"className":1062},[84],[63,1064,11],{"className":1065},[84,85],[63,1067,1069],{"className":1068},[226],[63,1070,1072,1094],{"className":1071},[126,127],[63,1073,1075,1091],{"className":1074},[131],[63,1076,1079],{"className":1077,"style":1078},[135],"height:0.1514em;",[63,1080,1082,1085],{"style":1081},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[63,1083],{"className":1084,"style":144},[143],[63,1086,1088],{"className":1087},[148,149,150,151],[63,1089,820],{"className":1090,"style":819},[84,85,151],[63,1092,178],{"className":1093},[177],[63,1095,1097],{"className":1096},[131],[63,1098,1101],{"className":1099,"style":1100},[135],"height:0.2861em;",[63,1102],{},[63,1104],{"className":1105,"style":361},[360],[63,1107,1109],{"className":1108},[365],"≤",[63,1111],{"className":1112,"style":361},[360],[63,1114,1116,1120,1161,1164,1167],{"className":1115},[75],[63,1117],{"className":1118,"style":1119},[79],"height:0.8252em;vertical-align:-0.2861em;",[63,1121,1123,1126],{"className":1122},[84],[63,1124,973],{"className":1125,"style":819},[84,85],[63,1127,1129],{"className":1128},[226],[63,1130,1132,1153],{"className":1131},[126,127],[63,1133,1135,1150],{"className":1134},[131],[63,1136,1138],{"className":1137,"style":1078},[135],[63,1139,1141,1144],{"style":1140},"top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;",[63,1142],{"className":1143,"style":144},[143],[63,1145,1147],{"className":1146},[148,149,150,151],[63,1148,820],{"className":1149,"style":819},[84,85,151],[63,1151,178],{"className":1152},[177],[63,1154,1156],{"className":1155},[131],[63,1157,1159],{"className":1158,"style":1100},[135],[63,1160],{},[63,1162],{"className":1163,"style":361},[360],[63,1165,693],{"className":1166},[365],[63,1168],{"className":1169,"style":361},[360],[63,1171,1173,1177,1217,1221,1226],{"className":1172},[75],[63,1174],{"className":1175,"style":1176},[79],"height:0.8694em;vertical-align:-0.2861em;",[63,1178,1180,1183],{"className":1179},[84],[63,1181,11],{"className":1182},[84,85],[63,1184,1186],{"className":1185},[226],[63,1187,1189,1209],{"className":1188},[126,127],[63,1190,1192,1206],{"className":1191},[131],[63,1193,1195],{"className":1194,"style":1078},[135],[63,1196,1197,1200],{"style":1081},[63,1198],{"className":1199,"style":144},[143],[63,1201,1203],{"className":1202},[148,149,150,151],[63,1204,820],{"className":1205,"style":819},[84,85,151],[63,1207,178],{"className":1208},[177],[63,1210,1212],{"className":1211},[131],[63,1213,1215],{"className":1214,"style":1100},[135],[63,1216],{},[63,1218],{"className":1219,"style":1220},[360],"margin-right:0.2222em;",[63,1222,1225],{"className":1223},[1224],"mbin","+",[63,1227],{"className":1228,"style":1220},[360],[63,1230,1232,1235],{"className":1231},[75],[63,1233],{"className":1234,"style":509},[79],[63,1236,405],{"className":1237,"style":404},[84,85],", so ",[63,1240,1242],{"className":1241},[66],[63,1243,1245],{"className":1244,"ariaHidden":71},[70],[63,1246,1248,1251],{"className":1247},[75],[63,1249],{"className":1250,"style":815},[79],[63,1252,973],{"className":1253,"style":819},[84,85]," lies in the ",[63,1256,1258],{"className":1257},[66],[63,1259,1261,1284],{"className":1260,"ariaHidden":71},[70],[63,1262,1264,1268,1271,1274,1277,1281],{"className":1263},[75],[63,1265],{"className":1266,"style":1267},[79],"height:0.7778em;vertical-align:-0.0833em;",[63,1269,158],{"className":1270},[84],[63,1272,405],{"className":1273,"style":404},[84,85],[63,1275],{"className":1276,"style":1220},[360],[63,1278,1280],{"className":1279},[1224],"×",[63,1282],{"className":1283,"style":1220},[360],[63,1285,1287,1290],{"className":1286},[75],[63,1288],{"className":1289,"style":509},[79],[63,1291,405],{"className":1292,"style":404},[84,85],"\nrectangle spanning the strip just above ",[63,1295,1297],{"className":1296},[66],[63,1298,1300],{"className":1299,"ariaHidden":71},[70],[63,1301,1303,1306],{"className":1302},[75],[63,1304],{"className":1305,"style":815},[79],[63,1307,11],{"className":1308},[84,85],". Tile that rectangle with a grid of\ncells of side ",[63,1311,1313],{"className":1312},[66],[63,1314,1316],{"className":1315,"ariaHidden":71},[70],[63,1317,1319,1322,1325],{"className":1318},[75],[63,1320],{"className":1321,"style":528},[79],[63,1323,405],{"className":1324,"style":404},[84,85],[63,1326,1328],{"className":1327},[84],"\u002F2","; it holds exactly ",[63,1331,1333],{"className":1332},[66],[63,1334,1336,1355,1375],{"className":1335,"ariaHidden":71},[70],[63,1337,1339,1343,1346,1349,1352],{"className":1338},[75],[63,1340],{"className":1341,"style":1342},[79],"height:0.7278em;vertical-align:-0.0833em;",[63,1344,158],{"className":1345},[84],[63,1347],{"className":1348,"style":1220},[360],[63,1350,1280],{"className":1351},[1224],[63,1353],{"className":1354,"style":1220},[360],[63,1356,1358,1362,1366,1369,1372],{"className":1357},[75],[63,1359],{"className":1360,"style":1361},[79],"height:0.6444em;",[63,1363,1365],{"className":1364},[84],"4",[63,1367],{"className":1368,"style":361},[360],[63,1370,366],{"className":1371},[365],[63,1373],{"className":1374,"style":361},[360],[63,1376,1378,1381],{"className":1377},[75],[63,1379],{"className":1380,"style":1361},[79],[63,1382,1384],{"className":1383},[84],"8"," cells. No cell can\ncontain two strip points: two points in one cell lie on the ",[31,1387,1388],{},"same side"," of the\ndividing line (each cell sits entirely left or entirely right of ",[63,1391,1393],{"className":1392},[66],[63,1394,1396,1414],{"className":1395,"ariaHidden":71},[70],[63,1397,1399,1402,1405,1408,1411],{"className":1398},[75],[63,1400],{"className":1401,"style":80},[79],[63,1403,288],{"className":1404},[84,85],[63,1406],{"className":1407,"style":361},[360],[63,1409,366],{"className":1410},[365],[63,1412],{"className":1413,"style":361},[360],[63,1415,1417,1420],{"className":1416},[75],[63,1418],{"className":1419,"style":80},[79],[63,1421,379],{"className":1422},[84,85],"), so by\nthe recursive guarantee they are ",[63,1425,1427],{"className":1426},[66],[63,1428,1430,1444],{"className":1429,"ariaHidden":71},[70],[63,1431,1433,1437,1441],{"className":1432},[75],[63,1434],{"className":1435,"style":1436},[79],"height:0.7719em;vertical-align:-0.136em;",[63,1438,1440],{"className":1439},[365],"≥",[63,1442],{"className":1443,"style":361},[360],[63,1445,1447,1450],{"className":1446},[75],[63,1448],{"className":1449,"style":509},[79],[63,1451,405],{"className":1452,"style":404},[84,85]," apart — yet two points in a\n",[63,1455,1457],{"className":1456},[66],[63,1458,1460],{"className":1459,"ariaHidden":71},[70],[63,1461,1463,1466,1469],{"className":1462},[75],[63,1464],{"className":1465,"style":528},[79],[63,1467,405],{"className":1468,"style":404},[84,85],[63,1470,1328],{"className":1471},[84]," square are at most ",[63,1474,1476],{"className":1475},[66],[63,1477,1479,1632],{"className":1478,"ariaHidden":71},[70],[63,1480,1482,1486,1562,1623,1626,1629],{"className":1481},[75],[63,1483],{"className":1484,"style":1485},[79],"height:1.2522em;vertical-align:-0.345em;",[63,1487,1489,1493,1559],{"className":1488},[84],[63,1490],{"className":1491},[110,1492],"nulldelimiter",[63,1494,1496],{"className":1495},[122],[63,1497,1499,1551],{"className":1498},[126,127],[63,1500,1502,1548],{"className":1501},[131],[63,1503,1506,1522,1533],{"className":1504,"style":1505},[135],"height:0.8801em;",[63,1507,1509,1513],{"style":1508},"top:-2.655em;",[63,1510],{"className":1511,"style":1512},[143],"height:3em;",[63,1514,1516],{"className":1515},[148,149,150,151],[63,1517,1519],{"className":1518},[84,151],[63,1520,158],{"className":1521},[84,151],[63,1523,1525,1528],{"style":1524},"top:-3.23em;",[63,1526],{"className":1527,"style":1512},[143],[63,1529],{"className":1530,"style":1532},[1531],"frac-line","border-bottom-width:0.04em;",[63,1534,1536,1539],{"style":1535},"top:-3.394em;",[63,1537],{"className":1538,"style":1512},[143],[63,1540,1542],{"className":1541},[148,149,150,151],[63,1543,1545],{"className":1544},[84,151],[63,1546,405],{"className":1547,"style":404},[84,85,151],[63,1549,178],{"className":1550},[177],[63,1552,1554],{"className":1553},[131],[63,1555,1557],{"className":1556,"style":185},[135],[63,1558],{},[63,1560],{"className":1561},[191,1492],[63,1563,1566],{"className":1564},[84,1565],"sqrt",[63,1567,1569,1614],{"className":1568},[126,127],[63,1570,1572,1611],{"className":1571},[131],[63,1573,1576,1588],{"className":1574,"style":1575},[135],"height:0.9072em;",[63,1577,1581,1584],{"className":1578,"style":1580},[1579],"svg-align","top:-3em;",[63,1582],{"className":1583,"style":1512},[143],[63,1585,158],{"className":1586,"style":1587},[84],"padding-left:0.833em;",[63,1589,1591,1594],{"style":1590},"top:-2.8672em;",[63,1592],{"className":1593,"style":1512},[143],[63,1595,1599],{"className":1596,"style":1598},[1597],"hide-tail","min-width:0.853em;height:1.08em;",[1600,1601,1607],"svg",{"xmlns":1602,"width":1603,"height":1604,"viewBox":1605,"preserveAspectRatio":1606},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","400em","1.08em","0 0 400000 1080","xMinYMin slice",[1608,1609],"path",{"d":1610},"M95,702\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl0 -0\nc5.3,-9.3,12,-14,20,-14\nH400000v40H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM834 80h400000v40h-400000z",[63,1612,178],{"className":1613},[177],[63,1615,1617],{"className":1616},[131],[63,1618,1621],{"className":1619,"style":1620},[135],"height:0.1328em;",[63,1622],{},[63,1624],{"className":1625,"style":361},[360],[63,1627,693],{"className":1628},[365],[63,1630],{"className":1631,"style":361},[360],[63,1633,1635,1638],{"className":1634},[75],[63,1636],{"className":1637,"style":509},[79],[63,1639,405],{"className":1640,"style":404},[84,85]," apart, a\ncontradiction. Hence the rectangle holds at most ",[63,1643,1645],{"className":1644},[66],[63,1646,1648],{"className":1647,"ariaHidden":71},[70],[63,1649,1651,1654],{"className":1650},[75],[63,1652],{"className":1653,"style":1361},[79],[63,1655,1384],{"className":1656},[84]," points, one of them ",[63,1659,1661],{"className":1660},[66],[63,1662,1664],{"className":1663,"ariaHidden":71},[70],[63,1665,1667,1670],{"className":1666},[75],[63,1668],{"className":1669,"style":815},[79],[63,1671,11],{"className":1672},[84,85],"\nitself, leaving at most ",[63,1675,1677],{"className":1676},[66],[63,1678,1680],{"className":1679,"ariaHidden":71},[70],[63,1681,1683,1686],{"className":1682},[75],[63,1684],{"className":1685,"style":1361},[79],[63,1687,1689],{"className":1688},[84],"7"," candidates, all later than ",[63,1692,1694],{"className":1693},[66],[63,1695,1697],{"className":1696,"ariaHidden":71},[70],[63,1698,1700,1703],{"className":1699},[75],[63,1701],{"className":1702,"style":815},[79],[63,1704,11],{"className":1705},[84,85]," in ",[63,1708,1710],{"className":1709},[66],[63,1711,1713],{"className":1712,"ariaHidden":71},[70],[63,1714,1716,1719],{"className":1715},[75],[63,1717],{"className":1718,"style":815},[79],[63,1720,820],{"className":1721,"style":819},[84,85],"-order. ",[63,1724,1726],{"className":1725},[66],[63,1727,1729],{"className":1728,"ariaHidden":71},[70],[63,1730,1732,1736],{"className":1731},[75],[63,1733],{"className":1734,"style":1735},[79],"height:0.675em;",[63,1737,1741],{"className":1738},[1739,1740],"enclosing","qed",[63,1742,1745],{"className":1743},[84,1744],"amsrm","□",[708,1747],{"hash":1748},"44773d0b4dd76d03dd1410f976fa9f563da9f43def0058856ec359ffaaabb2fb",[708,1750],{"hash":1751},"373ba2ad0f60438a5645aa7779c12ca335b96ae1da1e3d000cc1b9b02d8b48c9",[11,1753,1754,1755,1782,1783,1807],{},"The combine step therefore makes ",[63,1756,1758],{"className":1757},[66],[63,1759,1761],{"className":1760,"ariaHidden":71},[70],[63,1762,1764,1767,1772,1775,1779],{"className":1763},[75],[63,1765],{"className":1766,"style":528},[79],[63,1768,1771],{"className":1769,"style":1770},[84,85],"margin-right:0.0278em;","O",[63,1773,118],{"className":1774},[110],[63,1776,1778],{"className":1777},[84],"1",[63,1780,195],{"className":1781},[191]," distance checks per strip point, for\n",[63,1784,1786],{"className":1785},[66],[63,1787,1789],{"className":1788,"ariaHidden":71},[70],[63,1790,1792,1795,1798,1801,1804],{"className":1791},[75],[63,1793],{"className":1794,"style":528},[79],[63,1796,1771],{"className":1797,"style":1770},[84,85],[63,1799,118],{"className":1800},[110],[63,1802,86],{"className":1803},[84,85],[63,1805,195],{"className":1806},[191]," work. The recurrence is the familiar one,",[63,1809,1812],{"className":1810},[1811],"katex-display",[63,1813,1815],{"className":1814},[66],[63,1816,1818,1853,1895],{"className":1817,"ariaHidden":71},[70],[63,1819,1821,1824,1829,1832,1835,1838,1841,1844,1847,1850],{"className":1820},[75],[63,1822],{"className":1823,"style":528},[79],[63,1825,1828],{"className":1826,"style":1827},[84,85],"margin-right:0.1389em;","T",[63,1830,118],{"className":1831},[110],[63,1833,86],{"className":1834},[84,85],[63,1836,195],{"className":1837},[191],[63,1839],{"className":1840,"style":361},[360],[63,1842],{"className":1843,"style":361},[360],[63,1845,366],{"className":1846},[365],[63,1848],{"className":1849,"style":361},[360],[63,1851],{"className":1852,"style":361},[360],[63,1854,1856,1859,1862,1865,1868,1871,1874,1877,1880,1883,1886,1889,1892],{"className":1855},[75],[63,1857],{"className":1858,"style":528},[79],[63,1860,158],{"className":1861},[84],[63,1863],{"className":1864,"style":589},[360],[63,1866,1828],{"className":1867,"style":1827},[84,85],[63,1869,118],{"className":1870},[110],[63,1872,86],{"className":1873},[84,85],[63,1875,1328],{"className":1876},[84],[63,1878,195],{"className":1879},[191],[63,1881],{"className":1882,"style":361},[360],[63,1884],{"className":1885,"style":1220},[360],[63,1887,1225],{"className":1888},[1224],[63,1890],{"className":1891,"style":361},[360],[63,1893],{"className":1894,"style":1220},[360],[63,1896,1898,1901,1904,1907,1910,1913],{"className":1897},[75],[63,1899],{"className":1900,"style":528},[79],[63,1902,213],{"className":1903},[84],[63,1905,118],{"className":1906},[110],[63,1908,86],{"className":1909},[84,85],[63,1911,195],{"className":1912},[191],[63,1914,585],{"className":1915},[584],[11,1917,1918,1919,1923,1924,990,1993,2087,2088,2156,2157,2172,2173,2197,2198,2213,2214],{},"which the ",[15,1920,1922],{"href":1921},"\u002Falgorithms\u002Ffoundations\u002Frecurrences","Master Theorem"," solves in its\nbalanced case (",[63,1925,1927],{"className":1926},[66],[63,1928,1930,1948],{"className":1929,"ariaHidden":71},[70],[63,1931,1933,1936,1939,1942,1945],{"className":1932},[75],[63,1934],{"className":1935,"style":80},[79],[63,1937,15],{"className":1938},[84,85],[63,1940],{"className":1941,"style":361},[360],[63,1943,366],{"className":1944},[365],[63,1946],{"className":1947,"style":361},[360],[63,1949,1951,1955],{"className":1950},[75],[63,1952],{"className":1953,"style":1954},[79],"height:0.8491em;",[63,1956,1958,1962],{"className":1957},[84],[63,1959,1961],{"className":1960},[84,85],"b",[63,1963,1965],{"className":1964},[226],[63,1966,1968],{"className":1967},[126],[63,1969,1971],{"className":1970},[131],[63,1972,1974],{"className":1973,"style":1954},[135],[63,1975,1976,1979],{"style":239},[63,1977],{"className":1978,"style":144},[143],[63,1980,1982],{"className":1981},[148,149,150,151],[63,1983,1985,1989],{"className":1984},[84,151],[63,1986],{"className":1987,"style":1988},[360,151],"margin-right:0.1952em;",[63,1990,1992],{"className":1991},[84,85,151],"d",[63,1994,1996],{"className":1995},[66],[63,1997,1999,2017,2048,2078],{"className":1998,"ariaHidden":71},[70],[63,2000,2002,2005,2008,2011,2014],{"className":2001},[75],[63,2003],{"className":2004,"style":80},[79],[63,2006,15],{"className":2007},[84,85],[63,2009],{"className":2010,"style":361},[360],[63,2012,366],{"className":2013},[365],[63,2015],{"className":2016,"style":361},[360],[63,2018,2020,2024,2027,2030,2033,2036,2039,2042,2045],{"className":2019},[75],[63,2021],{"className":2022,"style":2023},[79],"height:0.8889em;vertical-align:-0.1944em;",[63,2025,158],{"className":2026},[84],[63,2028,585],{"className":2029},[584],[63,2031],{"className":2032,"style":589},[360],[63,2034],{"className":2035,"style":589},[360],[63,2037,1961],{"className":2038},[84,85],[63,2040],{"className":2041,"style":361},[360],[63,2043,366],{"className":2044},[365],[63,2046],{"className":2047,"style":361},[360],[63,2049,2051,2054,2057,2060,2063,2066,2069,2072,2075],{"className":2050},[75],[63,2052],{"className":2053,"style":2023},[79],[63,2055,158],{"className":2056},[84],[63,2058,585],{"className":2059},[584],[63,2061],{"className":2062,"style":589},[360],[63,2064],{"className":2065,"style":589},[360],[63,2067,1992],{"className":2068},[84,85],[63,2070],{"className":2071,"style":361},[360],[63,2073,366],{"className":2074},[365],[63,2076],{"className":2077,"style":361},[360],[63,2079,2081,2084],{"className":2080},[75],[63,2082],{"className":2083,"style":1361},[79],[63,2085,1778],{"className":2086},[84],"), giving\n",[63,2089,2091],{"className":2090},[66],[63,2092,2094,2121],{"className":2093,"ariaHidden":71},[70],[63,2095,2097,2100,2103,2106,2109,2112,2115,2118],{"className":2096},[75],[63,2098],{"className":2099,"style":528},[79],[63,2101,1828],{"className":2102,"style":1827},[84,85],[63,2104,118],{"className":2105},[110],[63,2107,86],{"className":2108},[84,85],[63,2110,195],{"className":2111},[191],[63,2113],{"className":2114,"style":361},[360],[63,2116,366],{"className":2117},[365],[63,2119],{"className":2120,"style":361},[360],[63,2122,2124,2127,2130,2133,2136,2139,2147,2150,2153],{"className":2123},[75],[63,2125],{"className":2126,"style":528},[79],[63,2128,213],{"className":2129},[84],[63,2131,118],{"className":2132},[110],[63,2134,86],{"className":2135},[84,85],[63,2137],{"className":2138,"style":589},[360],[63,2140,2142],{"className":2141},[532],[63,2143,2146],{"className":2144,"style":2145},[84,536],"margin-right:0.0139em;","log",[63,2148],{"className":2149,"style":589},[360],[63,2151,86],{"className":2152},[84,85],[63,2154,195],{"className":2155},[191],". The one implementation subtlety is the inner sort: a\nnaive ",[63,2158,2160],{"className":2159},[66],[63,2161,2163],{"className":2162,"ariaHidden":71},[70],[63,2164,2166,2169],{"className":2165},[75],[63,2167],{"className":2168,"style":815},[79],[63,2170,820],{"className":2171,"style":819},[84,85],"-sort of the strip each level would add a ",[63,2174,2176],{"className":2175},[66],[63,2177,2179],{"className":2178,"ariaHidden":71},[70],[63,2180,2182,2185,2191,2194],{"className":2181},[75],[63,2183],{"className":2184,"style":2023},[79],[63,2186,2188],{"className":2187},[532],[63,2189,2146],{"className":2190,"style":2145},[84,536],[63,2192],{"className":2193,"style":589},[360],[63,2195,86],{"className":2196},[84,85]," factor. Sorting once\nby ",[63,2199,2201],{"className":2200},[66],[63,2202,2204],{"className":2203,"ariaHidden":71},[70],[63,2205,2207,2210],{"className":2206},[75],[63,2208],{"className":2209,"style":815},[79],[63,2211,820],{"className":2212,"style":819},[84,85]," up front and filtering that order at each level keeps the combine linear,\nso the bound holds.",[2215,2216,2217],"sup",{},[15,2218,1778],{"href":2219,"ariaDescribedBy":2220,"dataFootnoteRef":6,"id":2222},"#user-content-fn-clrs-closest",[2221],"footnote-label","user-content-fnref-clrs-closest",[2224,2225,2229],"pre",{"className":2226,"code":2227,"language":2228,"meta":6,"style":6},"language-algorithm shiki shiki-themes Vesper Light - Orange Boost (Quick Open Adjusted) vesper","caption: $\\textsc{Closest-Pair}(P_x, P_y)$ — $P_x$ sorted by $x$, $P_y$ by $y$\nnumber: 1\n$n \\gets |P_x|$\nif $n \\le 3$ then\n  return brute-force closest pair      \u002F\u002F base case, $O(1)$\n$m \\gets (P_x[\\lfloor n\u002F2\\rfloor])_x$  \u002F\u002F median $x$ as the dividing line\nsplit $P_x$ into left $L_x$, right $R_x$ at index $\\lfloor n\u002F2\\rfloor$\npartition $P_y$ into $L_y, R_y$ by side of $m$  \u002F\u002F keeps each half $y$-sorted\n$(a, b) \\gets \\textsc{Closest-Pair}(L_x, L_y)$\n$(c, d) \\gets \\textsc{Closest-Pair}(R_x, R_y)$\n$\\delta \\gets \\min(\\dist(a,b),\\ \\dist(c,d))$\n$S \\gets [\\,q \\in P_y : |q_x - m| \u003C \\delta\\,]$  \u002F\u002F strip, still $y$-sorted\nfor each $q$ in $S$, in $y$-order do\n  for each of the next $7$ points $r$ after $q$ in $S$ do\n    if $\\dist(q, r) \u003C \\delta$ then update best pair and $\\delta$\nreturn the closest of the left, right, and strip pairs\n","algorithm",[2230,2231,2232,2239,2245,2251,2257,2263,2269,2275,2281,2287,2293,2299,2305,2311,2317,2323],"code",{"__ignoreMap":6},[63,2233,2236],{"class":2234,"line":2235},"line",1,[63,2237,2238],{},"caption: $\\textsc{Closest-Pair}(P_x, P_y)$ — $P_x$ sorted by $x$, $P_y$ by $y$\n",[63,2240,2242],{"class":2234,"line":2241},2,[63,2243,2244],{},"number: 1\n",[63,2246,2248],{"class":2234,"line":2247},3,[63,2249,2250],{},"$n \\gets |P_x|$\n",[63,2252,2254],{"class":2234,"line":2253},4,[63,2255,2256],{},"if $n \\le 3$ then\n",[63,2258,2260],{"class":2234,"line":2259},5,[63,2261,2262],{},"  return brute-force closest pair      \u002F\u002F base case, $O(1)$\n",[63,2264,2266],{"class":2234,"line":2265},6,[63,2267,2268],{},"$m \\gets (P_x[\\lfloor n\u002F2\\rfloor])_x$  \u002F\u002F median $x$ as the dividing line\n",[63,2270,2272],{"class":2234,"line":2271},7,[63,2273,2274],{},"split $P_x$ into left $L_x$, right $R_x$ at index $\\lfloor n\u002F2\\rfloor$\n",[63,2276,2278],{"class":2234,"line":2277},8,[63,2279,2280],{},"partition $P_y$ into $L_y, R_y$ by side of $m$  \u002F\u002F keeps each half $y$-sorted\n",[63,2282,2284],{"class":2234,"line":2283},9,[63,2285,2286],{},"$(a, b) \\gets \\textsc{Closest-Pair}(L_x, L_y)$\n",[63,2288,2290],{"class":2234,"line":2289},10,[63,2291,2292],{},"$(c, d) \\gets \\textsc{Closest-Pair}(R_x, R_y)$\n",[63,2294,2296],{"class":2234,"line":2295},11,[63,2297,2298],{},"$\\delta \\gets \\min(\\dist(a,b),\\ \\dist(c,d))$\n",[63,2300,2302],{"class":2234,"line":2301},12,[63,2303,2304],{},"$S \\gets [\\,q \\in P_y : |q_x - m| \u003C \\delta\\,]$  \u002F\u002F strip, still $y$-sorted\n",[63,2306,2308],{"class":2234,"line":2307},13,[63,2309,2310],{},"for each $q$ in $S$, in $y$-order do\n",[63,2312,2314],{"class":2234,"line":2313},14,[63,2315,2316],{},"  for each of the next $7$ points $r$ after $q$ in $S$ do\n",[63,2318,2320],{"class":2234,"line":2319},15,[63,2321,2322],{},"    if $\\dist(q, r) \u003C \\delta$ then update best pair and $\\delta$\n",[63,2324,2326],{"class":2234,"line":2325},16,[63,2327,2328],{},"return the closest of the left, right, and strip pairs\n",[11,2330,2331,2332,2368,2369,2384,2385,2388,2389,2368,2673,2714],{},"The distance comparisons can stay exact: comparing ",[63,2333,2335],{"className":2334},[66],[63,2336,2338],{"className":2337,"ariaHidden":71},[70],[63,2339,2341,2344,2350,2353,2356,2359,2362,2365],{"className":2340},[75],[63,2342],{"className":2343,"style":528},[79],[63,2345,2347],{"className":2346},[532],[63,2348,1009],{"className":2349},[84,536],[63,2351,118],{"className":2352},[110],[63,2354,11],{"className":2355},[84,85],[63,2357,585],{"className":2358},[584],[63,2360],{"className":2361,"style":589},[360],[63,2363,973],{"className":2364,"style":819},[84,85],[63,2366,195],{"className":2367},[191],"\nagainst ",[63,2370,2372],{"className":2371},[66],[63,2373,2375],{"className":2374,"ariaHidden":71},[70],[63,2376,2378,2381],{"className":2377},[75],[63,2379],{"className":2380,"style":509},[79],[63,2382,405],{"className":2383,"style":404},[84,85]," is comparing ",[31,2386,2387],{},"squared"," distances ",[63,2390,2392],{"className":2391},[66],[63,2393,2395,2454,2538,2597],{"className":2394,"ariaHidden":71},[70],[63,2396,2398,2401,2404,2444,2447,2451],{"className":2397},[75],[63,2399],{"className":2400,"style":528},[79],[63,2402,118],{"className":2403},[110],[63,2405,2407,2410],{"className":2406},[84],[63,2408,11],{"className":2409},[84,85],[63,2411,2413],{"className":2412},[226],[63,2414,2416,2436],{"className":2415},[126,127],[63,2417,2419,2433],{"className":2418},[131],[63,2420,2422],{"className":2421,"style":1078},[135],[63,2423,2424,2427],{"style":1081},[63,2425],{"className":2426,"style":144},[143],[63,2428,2430],{"className":2429},[148,149,150,151],[63,2431,288],{"className":2432},[84,85,151],[63,2434,178],{"className":2435},[177],[63,2437,2439],{"className":2438},[131],[63,2440,2442],{"className":2441,"style":440},[135],[63,2443],{},[63,2445],{"className":2446,"style":1220},[360],[63,2448,2450],{"className":2449},[1224],"−",[63,2452],{"className":2453,"style":1220},[360],[63,2455,2457,2460,2500,2529,2532,2535],{"className":2456},[75],[63,2458],{"className":2459,"style":209},[79],[63,2461,2463,2466],{"className":2462},[84],[63,2464,973],{"className":2465,"style":819},[84,85],[63,2467,2469],{"className":2468},[226],[63,2470,2472,2492],{"className":2471},[126,127],[63,2473,2475,2489],{"className":2474},[131],[63,2476,2478],{"className":2477,"style":1078},[135],[63,2479,2480,2483],{"style":1140},[63,2481],{"className":2482,"style":144},[143],[63,2484,2486],{"className":2485},[148,149,150,151],[63,2487,288],{"className":2488},[84,85,151],[63,2490,178],{"className":2491},[177],[63,2493,2495],{"className":2494},[131],[63,2496,2498],{"className":2497,"style":440},[135],[63,2499],{},[63,2501,2503,2506],{"className":2502},[191],[63,2504,195],{"className":2505},[191],[63,2507,2509],{"className":2508},[226],[63,2510,2512],{"className":2511},[126],[63,2513,2515],{"className":2514},[131],[63,2516,2518],{"className":2517,"style":236},[135],[63,2519,2520,2523],{"style":239},[63,2521],{"className":2522,"style":144},[143],[63,2524,2526],{"className":2525},[148,149,150,151],[63,2527,158],{"className":2528},[84,151],[63,2530],{"className":2531,"style":1220},[360],[63,2533,1225],{"className":2534},[1224],[63,2536],{"className":2537,"style":1220},[360],[63,2539,2541,2545,2548,2588,2591,2594],{"className":2540},[75],[63,2542],{"className":2543,"style":2544},[79],"height:1.0361em;vertical-align:-0.2861em;",[63,2546,118],{"className":2547},[110],[63,2549,2551,2554],{"className":2550},[84],[63,2552,11],{"className":2553},[84,85],[63,2555,2557],{"className":2556},[226],[63,2558,2560,2580],{"className":2559},[126,127],[63,2561,2563,2577],{"className":2562},[131],[63,2564,2566],{"className":2565,"style":1078},[135],[63,2567,2568,2571],{"style":1081},[63,2569],{"className":2570,"style":144},[143],[63,2572,2574],{"className":2573},[148,149,150,151],[63,2575,820],{"className":2576,"style":819},[84,85,151],[63,2578,178],{"className":2579},[177],[63,2581,2583],{"className":2582},[131],[63,2584,2586],{"className":2585,"style":1100},[135],[63,2587],{},[63,2589],{"className":2590,"style":1220},[360],[63,2592,2450],{"className":2593},[1224],[63,2595],{"className":2596,"style":1220},[360],[63,2598,2600,2604,2644],{"className":2599},[75],[63,2601],{"className":2602,"style":2603},[79],"height:1.1002em;vertical-align:-0.2861em;",[63,2605,2607,2610],{"className":2606},[84],[63,2608,973],{"className":2609,"style":819},[84,85],[63,2611,2613],{"className":2612},[226],[63,2614,2616,2636],{"className":2615},[126,127],[63,2617,2619,2633],{"className":2618},[131],[63,2620,2622],{"className":2621,"style":1078},[135],[63,2623,2624,2627],{"style":1140},[63,2625],{"className":2626,"style":144},[143],[63,2628,2630],{"className":2629},[148,149,150,151],[63,2631,820],{"className":2632,"style":819},[84,85,151],[63,2634,178],{"className":2635},[177],[63,2637,2639],{"className":2638},[131],[63,2640,2642],{"className":2641,"style":1100},[135],[63,2643],{},[63,2645,2647,2650],{"className":2646},[191],[63,2648,195],{"className":2649},[191],[63,2651,2653],{"className":2652},[226],[63,2654,2656],{"className":2655},[126],[63,2657,2659],{"className":2658},[131],[63,2660,2662],{"className":2661,"style":236},[135],[63,2663,2664,2667],{"style":239},[63,2665],{"className":2666,"style":144},[143],[63,2668,2670],{"className":2669},[148,149,150,151],[63,2671,158],{"className":2672},[84,151],[63,2674,2676],{"className":2675},[66],[63,2677,2679],{"className":2678,"ariaHidden":71},[70],[63,2680,2682,2685],{"className":2681},[75],[63,2683],{"className":2684,"style":236},[79],[63,2686,2688,2691],{"className":2687},[84],[63,2689,405],{"className":2690,"style":404},[84,85],[63,2692,2694],{"className":2693},[226],[63,2695,2697],{"className":2696},[126],[63,2698,2700],{"className":2699},[131],[63,2701,2703],{"className":2702,"style":236},[135],[63,2704,2705,2708],{"style":239},[63,2706],{"className":2707,"style":144},[143],[63,2709,2711],{"className":2710},[148,149,150,151],[63,2712,158],{"className":2713},[84,151],", which are integers for integer inputs — no square root, no\nrounding, the same discipline as the orientation primitive.",[2716,2717,2720],"impl-embed",{"dataImplLabel":2718,"id":2719},"geometry implementations","impl-geometry",[2721,2722,2723,3185],"code-group",{},[2224,2724,2729],{"className":2725,"code":2726,"filename":2727,"language":2728,"meta":6,"style":6},"language-python shiki shiki-themes Vesper Light - Orange Boost (Quick Open Adjusted) vesper","from typing import NamedTuple\n\nclass Point(NamedTuple):\n  \"\"\"\n    A planar point with integer x and y components.\\n\n    Integer coordinates keep every derived primitive exact, so the sign\\n\n    tests built on them never misfire from floating-point rounding.\\n\n  \"\"\"\n  x: int\n  y: int\n\ndef cross(origin: Point, first: Point, second: Point) -> int:\n  \"\"\"\n    Orientation of the ordered triple origin -> first -> second.\\n\n    Returns (first - origin) x (second - origin): > 0 left turn,\\n\n    \u003C 0 right turn, 0 collinear. Twice the signed triangle area.\\n\n  \"\"\"\n  return (\n    (first.x - origin.x) * (second.y - origin.y)\n    - (first.y - origin.y) * (second.x - origin.x)\n  )\n\ndef squared_distance(first: Point, second: Point) -> int:\n  \"\"\"\n    Squared Euclidean distance between two points.\\n\n    Squared so the comparison stays exact integer arithmetic — taking the\\n\n    root is never needed to decide which of two pairs is farther apart.\\n\n  \"\"\"\n  delta_x: int = first.x - second.x\n  delta_y: int = first.y - second.y\n  return delta_x * delta_x + delta_y * delta_y\n\ndef on_segment(start: Point, end: Point, query: Point) -> bool:\n  \"\"\"\n    Whether `query` lies on the closed segment from `start` to `end`.\\n\n    The point must be collinear with the segment and within its bounding\\n\n    box; both checks are exact integer tests.\\n\n  \"\"\"\n  # must be collinear first, then inside the segment's bounding box.\n  if cross(start, end, query) != 0:\n    return False\n  return (\n    min(start.x, end.x) \u003C= query.x \u003C= max(start.x, end.x)\n    and min(start.y, end.y) \u003C= query.y \u003C= max(start.y, end.y)\n  )\n","geometry.py","python",[2230,2730,2731,2747,2753,2765,2771,2779,2786,2793,2797,2805,2812,2816,2833,2837,2844,2851,2858,2863,2872,2895,2919,2925,2930,2945,2950,2958,2966,2974,2979,2998,3016,3038,3043,3059,3064,3072,3080,3088,3093,3100,3117,3126,3133,3156,3180],{"__ignoreMap":6},[63,2732,2733,2737,2741,2744],{"class":2234,"line":2235},[63,2734,2736],{"class":2735},"sdxpw","from",[63,2738,2740],{"class":2739},"s3i95"," typing ",[63,2742,2743],{"class":2735},"import",[63,2745,2746],{"class":2739}," NamedTuple\n",[63,2748,2749],{"class":2234,"line":2241},[63,2750,2752],{"emptyLinePlaceholder":2751},true,"\n",[63,2754,2755,2758,2762],{"class":2234,"line":2247},[63,2756,2757],{"class":2735},"class",[63,2759,2761],{"class":2760},"sat3U"," Point",[63,2763,2764],{"class":2739},"(NamedTuple):\n",[63,2766,2767],{"class":2234,"line":2253},[63,2768,2770],{"class":2769},"sDYuN","  \"\"\"\n",[63,2772,2773,2776],{"class":2234,"line":2259},[63,2774,2775],{"class":2769},"    A planar point with integer x and y components.",[63,2777,2778],{"class":2735},"\\n\n",[63,2780,2781,2784],{"class":2234,"line":2265},[63,2782,2783],{"class":2769},"    Integer coordinates keep every derived primitive exact, so the sign",[63,2785,2778],{"class":2735},[63,2787,2788,2791],{"class":2234,"line":2271},[63,2789,2790],{"class":2769},"    tests built on them never misfire from floating-point rounding.",[63,2792,2778],{"class":2735},[63,2794,2795],{"class":2234,"line":2277},[63,2796,2770],{"class":2769},[63,2798,2799,2802],{"class":2234,"line":2283},[63,2800,2801],{"class":2739},"  x: ",[63,2803,2804],{"class":2760},"int\n",[63,2806,2807,2810],{"class":2234,"line":2289},[63,2808,2809],{"class":2739},"  y: ",[63,2811,2804],{"class":2760},[63,2813,2814],{"class":2234,"line":2295},[63,2815,2752],{"emptyLinePlaceholder":2751},[63,2817,2818,2821,2824,2827,2830],{"class":2234,"line":2301},[63,2819,2820],{"class":2735},"def",[63,2822,2823],{"class":2760}," cross",[63,2825,2826],{"class":2739},"(origin: Point, first: Point, second: Point) -> ",[63,2828,2829],{"class":2760},"int",[63,2831,2832],{"class":2739},":\n",[63,2834,2835],{"class":2234,"line":2307},[63,2836,2770],{"class":2769},[63,2838,2839,2842],{"class":2234,"line":2313},[63,2840,2841],{"class":2769},"    Orientation of the ordered triple origin -> first -> second.",[63,2843,2778],{"class":2735},[63,2845,2846,2849],{"class":2234,"line":2319},[63,2847,2848],{"class":2769},"    Returns (first - origin) x (second - origin): > 0 left turn,",[63,2850,2778],{"class":2735},[63,2852,2853,2856],{"class":2234,"line":2325},[63,2854,2855],{"class":2769},"    \u003C 0 right turn, 0 collinear. Twice the signed triangle area.",[63,2857,2778],{"class":2735},[63,2859,2861],{"class":2234,"line":2860},17,[63,2862,2770],{"class":2769},[63,2864,2866,2869],{"class":2234,"line":2865},18,[63,2867,2868],{"class":2735},"  return",[63,2870,2871],{"class":2739}," (\n",[63,2873,2875,2878,2881,2884,2887,2890,2892],{"class":2234,"line":2874},19,[63,2876,2877],{"class":2739},"    (first.x ",[63,2879,2880],{"class":2735},"-",[63,2882,2883],{"class":2739}," origin.x) ",[63,2885,2886],{"class":2735},"*",[63,2888,2889],{"class":2739}," (second.y ",[63,2891,2880],{"class":2735},[63,2893,2894],{"class":2739}," origin.y)\n",[63,2896,2898,2901,2904,2906,2909,2911,2914,2916],{"class":2234,"line":2897},20,[63,2899,2900],{"class":2735},"    -",[63,2902,2903],{"class":2739}," (first.y ",[63,2905,2880],{"class":2735},[63,2907,2908],{"class":2739}," origin.y) ",[63,2910,2886],{"class":2735},[63,2912,2913],{"class":2739}," (second.x ",[63,2915,2880],{"class":2735},[63,2917,2918],{"class":2739}," origin.x)\n",[63,2920,2922],{"class":2234,"line":2921},21,[63,2923,2924],{"class":2739},"  )\n",[63,2926,2928],{"class":2234,"line":2927},22,[63,2929,2752],{"emptyLinePlaceholder":2751},[63,2931,2933,2935,2938,2941,2943],{"class":2234,"line":2932},23,[63,2934,2820],{"class":2735},[63,2936,2937],{"class":2760}," squared_distance",[63,2939,2940],{"class":2739},"(first: Point, second: Point) -> ",[63,2942,2829],{"class":2760},[63,2944,2832],{"class":2739},[63,2946,2948],{"class":2234,"line":2947},24,[63,2949,2770],{"class":2769},[63,2951,2953,2956],{"class":2234,"line":2952},25,[63,2954,2955],{"class":2769},"    Squared Euclidean distance between two points.",[63,2957,2778],{"class":2735},[63,2959,2961,2964],{"class":2234,"line":2960},26,[63,2962,2963],{"class":2769},"    Squared so the comparison stays exact integer arithmetic — taking the",[63,2965,2778],{"class":2735},[63,2967,2969,2972],{"class":2234,"line":2968},27,[63,2970,2971],{"class":2769},"    root is never needed to decide which of two pairs is farther apart.",[63,2973,2778],{"class":2735},[63,2975,2977],{"class":2234,"line":2976},28,[63,2978,2770],{"class":2769},[63,2980,2982,2985,2987,2990,2993,2995],{"class":2234,"line":2981},29,[63,2983,2984],{"class":2739},"  delta_x: ",[63,2986,2829],{"class":2760},[63,2988,2989],{"class":2735}," =",[63,2991,2992],{"class":2739}," first.x ",[63,2994,2880],{"class":2735},[63,2996,2997],{"class":2739}," second.x\n",[63,2999,3001,3004,3006,3008,3011,3013],{"class":2234,"line":3000},30,[63,3002,3003],{"class":2739},"  delta_y: ",[63,3005,2829],{"class":2760},[63,3007,2989],{"class":2735},[63,3009,3010],{"class":2739}," first.y ",[63,3012,2880],{"class":2735},[63,3014,3015],{"class":2739}," second.y\n",[63,3017,3019,3021,3024,3026,3028,3030,3033,3035],{"class":2234,"line":3018},31,[63,3020,2868],{"class":2735},[63,3022,3023],{"class":2739}," delta_x ",[63,3025,2886],{"class":2735},[63,3027,3023],{"class":2739},[63,3029,1225],{"class":2735},[63,3031,3032],{"class":2739}," delta_y ",[63,3034,2886],{"class":2735},[63,3036,3037],{"class":2739}," delta_y\n",[63,3039,3041],{"class":2234,"line":3040},32,[63,3042,2752],{"emptyLinePlaceholder":2751},[63,3044,3046,3048,3051,3054,3057],{"class":2234,"line":3045},33,[63,3047,2820],{"class":2735},[63,3049,3050],{"class":2760}," on_segment",[63,3052,3053],{"class":2739},"(start: Point, end: Point, query: Point) -> ",[63,3055,3056],{"class":2760},"bool",[63,3058,2832],{"class":2739},[63,3060,3062],{"class":2234,"line":3061},34,[63,3063,2770],{"class":2769},[63,3065,3067,3070],{"class":2234,"line":3066},35,[63,3068,3069],{"class":2769},"    Whether `query` lies on the closed segment from `start` to `end`.",[63,3071,2778],{"class":2735},[63,3073,3075,3078],{"class":2234,"line":3074},36,[63,3076,3077],{"class":2769},"    The point must be collinear with the segment and within its bounding",[63,3079,2778],{"class":2735},[63,3081,3083,3086],{"class":2234,"line":3082},37,[63,3084,3085],{"class":2769},"    box; both checks are exact integer tests.",[63,3087,2778],{"class":2735},[63,3089,3091],{"class":2234,"line":3090},38,[63,3092,2770],{"class":2769},[63,3094,3096],{"class":2234,"line":3095},39,[63,3097,3099],{"class":3098},"sEX4i","  # must be collinear first, then inside the segment's bounding box.\n",[63,3101,3103,3106,3109,3112,3115],{"class":2234,"line":3102},40,[63,3104,3105],{"class":2735},"  if",[63,3107,3108],{"class":2739}," cross(start, end, query) ",[63,3110,3111],{"class":2735},"!=",[63,3113,3114],{"class":2760}," 0",[63,3116,2832],{"class":2739},[63,3118,3120,3123],{"class":2234,"line":3119},41,[63,3121,3122],{"class":2735},"    return",[63,3124,3125],{"class":2739}," False\n",[63,3127,3129,3131],{"class":2234,"line":3128},42,[63,3130,2868],{"class":2735},[63,3132,2871],{"class":2739},[63,3134,3136,3139,3142,3145,3148,3150,3153],{"class":2234,"line":3135},43,[63,3137,3138],{"class":2760},"    min",[63,3140,3141],{"class":2739},"(start.x, end.x) ",[63,3143,3144],{"class":2735},"\u003C=",[63,3146,3147],{"class":2739}," query.x ",[63,3149,3144],{"class":2735},[63,3151,3152],{"class":2760}," max",[63,3154,3155],{"class":2739},"(start.x, end.x)\n",[63,3157,3159,3162,3165,3168,3170,3173,3175,3177],{"class":2234,"line":3158},44,[63,3160,3161],{"class":2735},"    and",[63,3163,3164],{"class":2760}," min",[63,3166,3167],{"class":2739},"(start.y, end.y) ",[63,3169,3144],{"class":2735},[63,3171,3172],{"class":2739}," query.y ",[63,3174,3144],{"class":2735},[63,3176,3152],{"class":2760},[63,3178,3179],{"class":2739},"(start.y, end.y)\n",[63,3181,3183],{"class":2234,"line":3182},45,[63,3184,2924],{"class":2739},[2224,3186,3189],{"className":2725,"code":3187,"filename":3188,"language":2728,"meta":6,"style":6},"from typing import Sequence\n\nfrom geometry import Point, squared_distance\n\n# A candidate result: the squared distance and the pair achieving it.\nPair = tuple[int, Point, Point]\n\ndef _brute_force(points: Sequence[Point]) -> Pair:\n  \"\"\"\n    Closest pair among at most three points by checking every pair.\\n\n    The recursion's base case, where divide-and-conquer is not worth it.\\n\n  \"\"\"\n  # seed with the first pair, then check every remaining pair.\n  best: Pair = (squared_distance(points[0], points[1]), points[0], points[1])\n  for left_index in range(len(points)):\n    for right_index in range(left_index + 1, len(points)):\n      first: Point = points[left_index]\n      second: Point = points[right_index]\n\n      distance: int = squared_distance(first, second)\n      if distance \u003C best[0]:\n        best = (distance, first, second)\n\n  return best\n\ndef _strip_closest(strip: Sequence[Point], best: Pair) -> Pair:\n  \"\"\"\n    Improve `best` using pairs that straddle the dividing line.\\n\n    `strip` holds the survivors within delta of the line, sorted by y. By\\n\n    the strip-packing lemma each point need only be compared against its\\n\n    next seven successors in y-order, so this scan is linear.\\n\n  \"\"\"\n  result: Pair = best\n  for lower_index in range(len(strip)):\n    upper_index: int = lower_index + 1\n\n    # compare each point with at most its next seven y-successors.\n    while upper_index \u003C len(strip) and upper_index \u003C= lower_index + 7:\n      lower: Point = strip[lower_index]\n      upper: Point = strip[upper_index]\n\n      # the y-gap alone already exceeds the bound — no later point can help.\n      gap_y: int = upper.y - lower.y\n      if gap_y * gap_y >= result[0]:\n        break\n\n      # keep the closer straddling pair.\n      distance: int = squared_distance(lower, upper)\n      if distance \u003C result[0]:\n        result = (distance, lower, upper)\n      upper_index += 1\n\n  return result\n\ndef _closest(by_x: Sequence[Point], by_y: Sequence[Point]) -> Pair:\n  \"\"\"\n    Recursive driver: `by_x` is sorted by x, `by_y` the same points by y.\\n\n    Returns the squared distance of the closest pair and the pair itself.\\n\n  \"\"\"\n  # small enough to settle directly.\n  count: int = len(by_x)\n  if count \u003C= 3:\n    return _brute_force(by_x)\n\n  # split by x at the median; ties on the divider stay in the left half.\n  middle: int = count \u002F\u002F 2\n  divider_x: int = by_x[middle].x\n  left_by_x: Sequence[Point] = by_x[:middle]\n  right_by_x: Sequence[Point] = by_x[middle:]\n\n  # partition the y-order to each side while preserving it, so neither\n  # recursive call has to re-sort. Identity tags carry the x-split's tie-break.\n  left_labels: set[int] = {id(point) for point in left_by_x}\n  left_by_y: list[Point] = [p for p in by_y if id(p) in left_labels]\n  right_by_y: list[Point] = [p for p in by_y if id(p) not in left_labels]\n\n  # recurse on each half and keep the better of the two.\n  left_best: Pair = _closest(left_by_x, left_by_y)\n  right_best: Pair = _closest(right_by_x, right_by_y)\n  best: Pair = left_best if left_best[0] \u003C= right_best[0] else right_best\n\n  # the strip: y-sorted points within sqrt(best) of the dividing line.\n  delta_squared: int = best[0]\n  strip: list[Point] = [\n    point\n    for point in by_y\n    if (point.x - divider_x) * (point.x - divider_x) \u003C delta_squared\n  ]\n  return _strip_closest(strip, best)\n\ndef closest_pair(points: Sequence[Point]) -> tuple[Point, Point]:\n  \"\"\"\n    The two points of `points` at smallest Euclidean distance.\\n\n    Requires at least two points. Duplicate coordinates are allowed and\\n\n    yield a zero-distance pair. Runs in Theta(n log n).\\n\n  \"\"\"\n  if len(points) \u003C 2:\n    raise ValueError(\"closest_pair needs at least two points\")\n\n  # pre-sort once by x and by y; the recursion reuses both orders.\n  by_x: list[Point] = sorted(points)\n  by_y: list[Point] = sorted(points, key=lambda point: (point.y, point.x))\n\n  _, first, second = _closest(by_x, by_y)\n  return (first, second)\n","closest_pair_planar.py",[2230,3190,3191,3202,3206,3218,3222,3227,3242,3246,3256,3260,3267,3274,3278,3283,3313,3335,3362,3372,3382,3386,3398,3416,3426,3430,3437,3441,3451,3455,3462,3469,3476,3483,3487,3496,3514,3530,3534,3539,3571,3581,3591,3595,3600,3617,3638,3643,3648,3654,3666,3681,3692,3703,3708,3716,3721,3732,3737,3745,3753,3758,3764,3779,3794,3802,3807,3813,3831,3844,3855,3866,3871,3877,3883,3916,3951,3983,3988,3994,4005,4016,4050,4055,4061,4078,4089,4095,4107,4134,4140,4148,4153,4164,4169,4177,4185,4193,4198,4215,4232,4237,4243,4257,4276,4281,4292],{"__ignoreMap":6},[63,3192,3193,3195,3197,3199],{"class":2234,"line":2235},[63,3194,2736],{"class":2735},[63,3196,2740],{"class":2739},[63,3198,2743],{"class":2735},[63,3200,3201],{"class":2739}," Sequence\n",[63,3203,3204],{"class":2234,"line":2241},[63,3205,2752],{"emptyLinePlaceholder":2751},[63,3207,3208,3210,3213,3215],{"class":2234,"line":2247},[63,3209,2736],{"class":2735},[63,3211,3212],{"class":2739}," geometry ",[63,3214,2743],{"class":2735},[63,3216,3217],{"class":2739}," Point, squared_distance\n",[63,3219,3220],{"class":2234,"line":2253},[63,3221,2752],{"emptyLinePlaceholder":2751},[63,3223,3224],{"class":2234,"line":2259},[63,3225,3226],{"class":3098},"# A candidate result: the squared distance and the pair achieving it.\n",[63,3228,3229,3232,3234,3237,3239],{"class":2234,"line":2265},[63,3230,3231],{"class":2739},"Pair ",[63,3233,366],{"class":2735},[63,3235,3236],{"class":2739}," tuple[",[63,3238,2829],{"class":2760},[63,3240,3241],{"class":2739},", Point, Point]\n",[63,3243,3244],{"class":2234,"line":2271},[63,3245,2752],{"emptyLinePlaceholder":2751},[63,3247,3248,3250,3253],{"class":2234,"line":2277},[63,3249,2820],{"class":2735},[63,3251,3252],{"class":2760}," _brute_force",[63,3254,3255],{"class":2739},"(points: Sequence[Point]) -> Pair:\n",[63,3257,3258],{"class":2234,"line":2283},[63,3259,2770],{"class":2769},[63,3261,3262,3265],{"class":2234,"line":2289},[63,3263,3264],{"class":2769},"    Closest pair among at most three points by checking every pair.",[63,3266,2778],{"class":2735},[63,3268,3269,3272],{"class":2234,"line":2295},[63,3270,3271],{"class":2769},"    The recursion's base case, where divide-and-conquer is not worth it.",[63,3273,2778],{"class":2735},[63,3275,3276],{"class":2234,"line":2301},[63,3277,2770],{"class":2769},[63,3279,3280],{"class":2234,"line":2307},[63,3281,3282],{"class":3098},"  # seed with the first pair, then check every remaining pair.\n",[63,3284,3285,3288,3290,3293,3296,3299,3301,3304,3306,3308,3310],{"class":2234,"line":2313},[63,3286,3287],{"class":2739},"  best: Pair ",[63,3289,366],{"class":2735},[63,3291,3292],{"class":2739}," (squared_distance(points[",[63,3294,3295],{"class":2760},"0",[63,3297,3298],{"class":2739},"], points[",[63,3300,1778],{"class":2760},[63,3302,3303],{"class":2739},"]), points[",[63,3305,3295],{"class":2760},[63,3307,3298],{"class":2739},[63,3309,1778],{"class":2760},[63,3311,3312],{"class":2739},"])\n",[63,3314,3315,3318,3321,3324,3327,3329,3332],{"class":2234,"line":2319},[63,3316,3317],{"class":2735},"  for",[63,3319,3320],{"class":2739}," left_index ",[63,3322,3323],{"class":2735},"in",[63,3325,3326],{"class":2760}," range",[63,3328,118],{"class":2739},[63,3330,3331],{"class":2760},"len",[63,3333,3334],{"class":2739},"(points)):\n",[63,3336,3337,3340,3343,3345,3347,3350,3352,3355,3358,3360],{"class":2234,"line":2325},[63,3338,3339],{"class":2735},"    for",[63,3341,3342],{"class":2739}," right_index ",[63,3344,3323],{"class":2735},[63,3346,3326],{"class":2760},[63,3348,3349],{"class":2739},"(left_index ",[63,3351,1225],{"class":2735},[63,3353,3354],{"class":2760}," 1",[63,3356,3357],{"class":2739},", ",[63,3359,3331],{"class":2760},[63,3361,3334],{"class":2739},[63,3363,3364,3367,3369],{"class":2234,"line":2860},[63,3365,3366],{"class":2739},"      first: Point ",[63,3368,366],{"class":2735},[63,3370,3371],{"class":2739}," points[left_index]\n",[63,3373,3374,3377,3379],{"class":2234,"line":2865},[63,3375,3376],{"class":2739},"      second: Point ",[63,3378,366],{"class":2735},[63,3380,3381],{"class":2739}," points[right_index]\n",[63,3383,3384],{"class":2234,"line":2874},[63,3385,2752],{"emptyLinePlaceholder":2751},[63,3387,3388,3391,3393,3395],{"class":2234,"line":2897},[63,3389,3390],{"class":2739},"      distance: ",[63,3392,2829],{"class":2760},[63,3394,2989],{"class":2735},[63,3396,3397],{"class":2739}," squared_distance(first, second)\n",[63,3399,3400,3403,3406,3408,3411,3413],{"class":2234,"line":2921},[63,3401,3402],{"class":2735},"      if",[63,3404,3405],{"class":2739}," distance ",[63,3407,693],{"class":2735},[63,3409,3410],{"class":2739}," best[",[63,3412,3295],{"class":2760},[63,3414,3415],{"class":2739},"]:\n",[63,3417,3418,3421,3423],{"class":2234,"line":2927},[63,3419,3420],{"class":2739},"        best ",[63,3422,366],{"class":2735},[63,3424,3425],{"class":2739}," (distance, first, second)\n",[63,3427,3428],{"class":2234,"line":2932},[63,3429,2752],{"emptyLinePlaceholder":2751},[63,3431,3432,3434],{"class":2234,"line":2947},[63,3433,2868],{"class":2735},[63,3435,3436],{"class":2739}," best\n",[63,3438,3439],{"class":2234,"line":2952},[63,3440,2752],{"emptyLinePlaceholder":2751},[63,3442,3443,3445,3448],{"class":2234,"line":2960},[63,3444,2820],{"class":2735},[63,3446,3447],{"class":2760}," _strip_closest",[63,3449,3450],{"class":2739},"(strip: Sequence[Point], best: Pair) -> Pair:\n",[63,3452,3453],{"class":2234,"line":2968},[63,3454,2770],{"class":2769},[63,3456,3457,3460],{"class":2234,"line":2976},[63,3458,3459],{"class":2769},"    Improve `best` using pairs that straddle the dividing line.",[63,3461,2778],{"class":2735},[63,3463,3464,3467],{"class":2234,"line":2981},[63,3465,3466],{"class":2769},"    `strip` holds the survivors within delta of the line, sorted by y. By",[63,3468,2778],{"class":2735},[63,3470,3471,3474],{"class":2234,"line":3000},[63,3472,3473],{"class":2769},"    the strip-packing lemma each point need only be compared against its",[63,3475,2778],{"class":2735},[63,3477,3478,3481],{"class":2234,"line":3018},[63,3479,3480],{"class":2769},"    next seven successors in y-order, so this scan is linear.",[63,3482,2778],{"class":2735},[63,3484,3485],{"class":2234,"line":3040},[63,3486,2770],{"class":2769},[63,3488,3489,3492,3494],{"class":2234,"line":3045},[63,3490,3491],{"class":2739},"  result: Pair ",[63,3493,366],{"class":2735},[63,3495,3436],{"class":2739},[63,3497,3498,3500,3503,3505,3507,3509,3511],{"class":2234,"line":3061},[63,3499,3317],{"class":2735},[63,3501,3502],{"class":2739}," lower_index ",[63,3504,3323],{"class":2735},[63,3506,3326],{"class":2760},[63,3508,118],{"class":2739},[63,3510,3331],{"class":2760},[63,3512,3513],{"class":2739},"(strip)):\n",[63,3515,3516,3519,3521,3523,3525,3527],{"class":2234,"line":3066},[63,3517,3518],{"class":2739},"    upper_index: ",[63,3520,2829],{"class":2760},[63,3522,2989],{"class":2735},[63,3524,3502],{"class":2739},[63,3526,1225],{"class":2735},[63,3528,3529],{"class":2760}," 1\n",[63,3531,3532],{"class":2234,"line":3074},[63,3533,2752],{"emptyLinePlaceholder":2751},[63,3535,3536],{"class":2234,"line":3082},[63,3537,3538],{"class":3098},"    # compare each point with at most its next seven y-successors.\n",[63,3540,3541,3544,3547,3549,3552,3555,3558,3560,3562,3564,3566,3569],{"class":2234,"line":3090},[63,3542,3543],{"class":2735},"    while",[63,3545,3546],{"class":2739}," upper_index ",[63,3548,693],{"class":2735},[63,3550,3551],{"class":2760}," len",[63,3553,3554],{"class":2739},"(strip) ",[63,3556,3557],{"class":2735},"and",[63,3559,3546],{"class":2739},[63,3561,3144],{"class":2735},[63,3563,3502],{"class":2739},[63,3565,1225],{"class":2735},[63,3567,3568],{"class":2760}," 7",[63,3570,2832],{"class":2739},[63,3572,3573,3576,3578],{"class":2234,"line":3095},[63,3574,3575],{"class":2739},"      lower: Point ",[63,3577,366],{"class":2735},[63,3579,3580],{"class":2739}," strip[lower_index]\n",[63,3582,3583,3586,3588],{"class":2234,"line":3102},[63,3584,3585],{"class":2739},"      upper: Point ",[63,3587,366],{"class":2735},[63,3589,3590],{"class":2739}," strip[upper_index]\n",[63,3592,3593],{"class":2234,"line":3119},[63,3594,2752],{"emptyLinePlaceholder":2751},[63,3596,3597],{"class":2234,"line":3128},[63,3598,3599],{"class":3098},"      # the y-gap alone already exceeds the bound — no later point can help.\n",[63,3601,3602,3605,3607,3609,3612,3614],{"class":2234,"line":3135},[63,3603,3604],{"class":2739},"      gap_y: ",[63,3606,2829],{"class":2760},[63,3608,2989],{"class":2735},[63,3610,3611],{"class":2739}," upper.y ",[63,3613,2880],{"class":2735},[63,3615,3616],{"class":2739}," lower.y\n",[63,3618,3619,3621,3624,3626,3628,3631,3634,3636],{"class":2234,"line":3158},[63,3620,3402],{"class":2735},[63,3622,3623],{"class":2739}," gap_y ",[63,3625,2886],{"class":2735},[63,3627,3623],{"class":2739},[63,3629,3630],{"class":2735},">=",[63,3632,3633],{"class":2739}," result[",[63,3635,3295],{"class":2760},[63,3637,3415],{"class":2739},[63,3639,3640],{"class":2234,"line":3182},[63,3641,3642],{"class":2735},"        break\n",[63,3644,3646],{"class":2234,"line":3645},46,[63,3647,2752],{"emptyLinePlaceholder":2751},[63,3649,3651],{"class":2234,"line":3650},47,[63,3652,3653],{"class":3098},"      # keep the closer straddling pair.\n",[63,3655,3657,3659,3661,3663],{"class":2234,"line":3656},48,[63,3658,3390],{"class":2739},[63,3660,2829],{"class":2760},[63,3662,2989],{"class":2735},[63,3664,3665],{"class":2739}," squared_distance(lower, upper)\n",[63,3667,3669,3671,3673,3675,3677,3679],{"class":2234,"line":3668},49,[63,3670,3402],{"class":2735},[63,3672,3405],{"class":2739},[63,3674,693],{"class":2735},[63,3676,3633],{"class":2739},[63,3678,3295],{"class":2760},[63,3680,3415],{"class":2739},[63,3682,3684,3687,3689],{"class":2234,"line":3683},50,[63,3685,3686],{"class":2739},"        result ",[63,3688,366],{"class":2735},[63,3690,3691],{"class":2739}," (distance, lower, upper)\n",[63,3693,3695,3698,3701],{"class":2234,"line":3694},51,[63,3696,3697],{"class":2739},"      upper_index ",[63,3699,3700],{"class":2735},"+=",[63,3702,3529],{"class":2760},[63,3704,3706],{"class":2234,"line":3705},52,[63,3707,2752],{"emptyLinePlaceholder":2751},[63,3709,3711,3713],{"class":2234,"line":3710},53,[63,3712,2868],{"class":2735},[63,3714,3715],{"class":2739}," result\n",[63,3717,3719],{"class":2234,"line":3718},54,[63,3720,2752],{"emptyLinePlaceholder":2751},[63,3722,3724,3726,3729],{"class":2234,"line":3723},55,[63,3725,2820],{"class":2735},[63,3727,3728],{"class":2760}," _closest",[63,3730,3731],{"class":2739},"(by_x: Sequence[Point], by_y: Sequence[Point]) -> Pair:\n",[63,3733,3735],{"class":2234,"line":3734},56,[63,3736,2770],{"class":2769},[63,3738,3740,3743],{"class":2234,"line":3739},57,[63,3741,3742],{"class":2769},"    Recursive driver: `by_x` is sorted by x, `by_y` the same points by y.",[63,3744,2778],{"class":2735},[63,3746,3748,3751],{"class":2234,"line":3747},58,[63,3749,3750],{"class":2769},"    Returns the squared distance of the closest pair and the pair itself.",[63,3752,2778],{"class":2735},[63,3754,3756],{"class":2234,"line":3755},59,[63,3757,2770],{"class":2769},[63,3759,3761],{"class":2234,"line":3760},60,[63,3762,3763],{"class":3098},"  # small enough to settle directly.\n",[63,3765,3767,3770,3772,3774,3776],{"class":2234,"line":3766},61,[63,3768,3769],{"class":2739},"  count: ",[63,3771,2829],{"class":2760},[63,3773,2989],{"class":2735},[63,3775,3551],{"class":2760},[63,3777,3778],{"class":2739},"(by_x)\n",[63,3780,3782,3784,3787,3789,3792],{"class":2234,"line":3781},62,[63,3783,3105],{"class":2735},[63,3785,3786],{"class":2739}," count ",[63,3788,3144],{"class":2735},[63,3790,3791],{"class":2760}," 3",[63,3793,2832],{"class":2739},[63,3795,3797,3799],{"class":2234,"line":3796},63,[63,3798,3122],{"class":2735},[63,3800,3801],{"class":2739}," _brute_force(by_x)\n",[63,3803,3805],{"class":2234,"line":3804},64,[63,3806,2752],{"emptyLinePlaceholder":2751},[63,3808,3810],{"class":2234,"line":3809},65,[63,3811,3812],{"class":3098},"  # split by x at the median; ties on the divider stay in the left half.\n",[63,3814,3816,3819,3821,3823,3825,3828],{"class":2234,"line":3815},66,[63,3817,3818],{"class":2739},"  middle: ",[63,3820,2829],{"class":2760},[63,3822,2989],{"class":2735},[63,3824,3786],{"class":2739},[63,3826,3827],{"class":2735},"\u002F\u002F",[63,3829,3830],{"class":2760}," 2\n",[63,3832,3834,3837,3839,3841],{"class":2234,"line":3833},67,[63,3835,3836],{"class":2739},"  divider_x: ",[63,3838,2829],{"class":2760},[63,3840,2989],{"class":2735},[63,3842,3843],{"class":2739}," by_x[middle].x\n",[63,3845,3847,3850,3852],{"class":2234,"line":3846},68,[63,3848,3849],{"class":2739},"  left_by_x: Sequence[Point] ",[63,3851,366],{"class":2735},[63,3853,3854],{"class":2739}," by_x[:middle]\n",[63,3856,3858,3861,3863],{"class":2234,"line":3857},69,[63,3859,3860],{"class":2739},"  right_by_x: Sequence[Point] ",[63,3862,366],{"class":2735},[63,3864,3865],{"class":2739}," by_x[middle:]\n",[63,3867,3869],{"class":2234,"line":3868},70,[63,3870,2752],{"emptyLinePlaceholder":2751},[63,3872,3874],{"class":2234,"line":3873},71,[63,3875,3876],{"class":3098},"  # partition the y-order to each side while preserving it, so neither\n",[63,3878,3880],{"class":2234,"line":3879},72,[63,3881,3882],{"class":3098},"  # recursive call has to re-sort. Identity tags carry the x-split's tie-break.\n",[63,3884,3886,3889,3891,3894,3896,3899,3902,3905,3908,3911,3913],{"class":2234,"line":3885},73,[63,3887,3888],{"class":2739},"  left_labels: set[",[63,3890,2829],{"class":2760},[63,3892,3893],{"class":2739},"] ",[63,3895,366],{"class":2735},[63,3897,3898],{"class":2739}," {",[63,3900,3901],{"class":2760},"id",[63,3903,3904],{"class":2739},"(point) ",[63,3906,3907],{"class":2735},"for",[63,3909,3910],{"class":2739}," point ",[63,3912,3323],{"class":2735},[63,3914,3915],{"class":2739}," left_by_x}\n",[63,3917,3919,3922,3924,3927,3929,3932,3934,3937,3940,3943,3946,3948],{"class":2234,"line":3918},74,[63,3920,3921],{"class":2739},"  left_by_y: list[Point] ",[63,3923,366],{"class":2735},[63,3925,3926],{"class":2739}," [p ",[63,3928,3907],{"class":2735},[63,3930,3931],{"class":2739}," p ",[63,3933,3323],{"class":2735},[63,3935,3936],{"class":2739}," by_y ",[63,3938,3939],{"class":2735},"if",[63,3941,3942],{"class":2760}," id",[63,3944,3945],{"class":2739},"(p) ",[63,3947,3323],{"class":2735},[63,3949,3950],{"class":2739}," left_labels]\n",[63,3952,3954,3957,3959,3961,3963,3965,3967,3969,3971,3973,3975,3978,3981],{"class":2234,"line":3953},75,[63,3955,3956],{"class":2739},"  right_by_y: list[Point] ",[63,3958,366],{"class":2735},[63,3960,3926],{"class":2739},[63,3962,3907],{"class":2735},[63,3964,3931],{"class":2739},[63,3966,3323],{"class":2735},[63,3968,3936],{"class":2739},[63,3970,3939],{"class":2735},[63,3972,3942],{"class":2760},[63,3974,3945],{"class":2739},[63,3976,3977],{"class":2735},"not",[63,3979,3980],{"class":2735}," in",[63,3982,3950],{"class":2739},[63,3984,3986],{"class":2234,"line":3985},76,[63,3987,2752],{"emptyLinePlaceholder":2751},[63,3989,3991],{"class":2234,"line":3990},77,[63,3992,3993],{"class":3098},"  # recurse on each half and keep the better of the two.\n",[63,3995,3997,4000,4002],{"class":2234,"line":3996},78,[63,3998,3999],{"class":2739},"  left_best: Pair ",[63,4001,366],{"class":2735},[63,4003,4004],{"class":2739}," _closest(left_by_x, left_by_y)\n",[63,4006,4008,4011,4013],{"class":2234,"line":4007},79,[63,4009,4010],{"class":2739},"  right_best: Pair ",[63,4012,366],{"class":2735},[63,4014,4015],{"class":2739}," _closest(right_by_x, right_by_y)\n",[63,4017,4019,4021,4023,4026,4028,4031,4033,4035,4037,4040,4042,4044,4047],{"class":2234,"line":4018},80,[63,4020,3287],{"class":2739},[63,4022,366],{"class":2735},[63,4024,4025],{"class":2739}," left_best ",[63,4027,3939],{"class":2735},[63,4029,4030],{"class":2739}," left_best[",[63,4032,3295],{"class":2760},[63,4034,3893],{"class":2739},[63,4036,3144],{"class":2735},[63,4038,4039],{"class":2739}," right_best[",[63,4041,3295],{"class":2760},[63,4043,3893],{"class":2739},[63,4045,4046],{"class":2735},"else",[63,4048,4049],{"class":2739}," right_best\n",[63,4051,4053],{"class":2234,"line":4052},81,[63,4054,2752],{"emptyLinePlaceholder":2751},[63,4056,4058],{"class":2234,"line":4057},82,[63,4059,4060],{"class":3098},"  # the strip: y-sorted points within sqrt(best) of the dividing line.\n",[63,4062,4064,4067,4069,4071,4073,4075],{"class":2234,"line":4063},83,[63,4065,4066],{"class":2739},"  delta_squared: ",[63,4068,2829],{"class":2760},[63,4070,2989],{"class":2735},[63,4072,3410],{"class":2739},[63,4074,3295],{"class":2760},[63,4076,4077],{"class":2739},"]\n",[63,4079,4081,4084,4086],{"class":2234,"line":4080},84,[63,4082,4083],{"class":2739},"  strip: list[Point] ",[63,4085,366],{"class":2735},[63,4087,4088],{"class":2739}," [\n",[63,4090,4092],{"class":2234,"line":4091},85,[63,4093,4094],{"class":2739},"    point\n",[63,4096,4098,4100,4102,4104],{"class":2234,"line":4097},86,[63,4099,3339],{"class":2735},[63,4101,3910],{"class":2739},[63,4103,3323],{"class":2735},[63,4105,4106],{"class":2739}," by_y\n",[63,4108,4110,4113,4116,4118,4121,4123,4125,4127,4129,4131],{"class":2234,"line":4109},87,[63,4111,4112],{"class":2735},"    if",[63,4114,4115],{"class":2739}," (point.x ",[63,4117,2880],{"class":2735},[63,4119,4120],{"class":2739}," divider_x) ",[63,4122,2886],{"class":2735},[63,4124,4115],{"class":2739},[63,4126,2880],{"class":2735},[63,4128,4120],{"class":2739},[63,4130,693],{"class":2735},[63,4132,4133],{"class":2739}," delta_squared\n",[63,4135,4137],{"class":2234,"line":4136},88,[63,4138,4139],{"class":2739},"  ]\n",[63,4141,4143,4145],{"class":2234,"line":4142},89,[63,4144,2868],{"class":2735},[63,4146,4147],{"class":2739}," _strip_closest(strip, best)\n",[63,4149,4151],{"class":2234,"line":4150},90,[63,4152,2752],{"emptyLinePlaceholder":2751},[63,4154,4156,4158,4161],{"class":2234,"line":4155},91,[63,4157,2820],{"class":2735},[63,4159,4160],{"class":2760}," closest_pair",[63,4162,4163],{"class":2739},"(points: Sequence[Point]) -> tuple[Point, Point]:\n",[63,4165,4167],{"class":2234,"line":4166},92,[63,4168,2770],{"class":2769},[63,4170,4172,4175],{"class":2234,"line":4171},93,[63,4173,4174],{"class":2769},"    The two points of `points` at smallest Euclidean distance.",[63,4176,2778],{"class":2735},[63,4178,4180,4183],{"class":2234,"line":4179},94,[63,4181,4182],{"class":2769},"    Requires at least two points. Duplicate coordinates are allowed and",[63,4184,2778],{"class":2735},[63,4186,4188,4191],{"class":2234,"line":4187},95,[63,4189,4190],{"class":2769},"    yield a zero-distance pair. Runs in Theta(n log n).",[63,4192,2778],{"class":2735},[63,4194,4196],{"class":2234,"line":4195},96,[63,4197,2770],{"class":2769},[63,4199,4201,4203,4205,4208,4210,4213],{"class":2234,"line":4200},97,[63,4202,3105],{"class":2735},[63,4204,3551],{"class":2760},[63,4206,4207],{"class":2739},"(points) ",[63,4209,693],{"class":2735},[63,4211,4212],{"class":2760}," 2",[63,4214,2832],{"class":2739},[63,4216,4218,4221,4224,4226,4229],{"class":2234,"line":4217},98,[63,4219,4220],{"class":2735},"    raise",[63,4222,4223],{"class":2760}," ValueError",[63,4225,118],{"class":2739},[63,4227,4228],{"class":2769},"\"closest_pair needs at least two points\"",[63,4230,4231],{"class":2739},")\n",[63,4233,4235],{"class":2234,"line":4234},99,[63,4236,2752],{"emptyLinePlaceholder":2751},[63,4238,4240],{"class":2234,"line":4239},100,[63,4241,4242],{"class":3098},"  # pre-sort once by x and by y; the recursion reuses both orders.\n",[63,4244,4246,4249,4251,4254],{"class":2234,"line":4245},101,[63,4247,4248],{"class":2739},"  by_x: list[Point] ",[63,4250,366],{"class":2735},[63,4252,4253],{"class":2760}," sorted",[63,4255,4256],{"class":2739},"(points)\n",[63,4258,4260,4263,4265,4267,4270,4273],{"class":2234,"line":4259},102,[63,4261,4262],{"class":2739},"  by_y: list[Point] ",[63,4264,366],{"class":2735},[63,4266,4253],{"class":2760},[63,4268,4269],{"class":2739},"(points, key",[63,4271,4272],{"class":2735},"=lambda",[63,4274,4275],{"class":2739}," point: (point.y, point.x))\n",[63,4277,4279],{"class":2234,"line":4278},103,[63,4280,2752],{"emptyLinePlaceholder":2751},[63,4282,4284,4287,4289],{"class":2234,"line":4283},104,[63,4285,4286],{"class":2739},"  _, first, second ",[63,4288,366],{"class":2735},[63,4290,4291],{"class":2739}," _closest(by_x, by_y)\n",[63,4293,4295,4297],{"class":2234,"line":4294},105,[63,4296,2868],{"class":2735},[63,4298,4299],{"class":2739}," (first, second)\n",[48,4301,4302],{"id":37},"Point in polygon",[11,4304,4305,4306,4322,4323,4449,4450,4465,4466,4481,4482,4485],{},"Given a simple polygon ",[63,4307,4309],{"className":4308},[66],[63,4310,4312],{"className":4311,"ariaHidden":71},[70],[63,4313,4315,4318],{"className":4314},[75],[63,4316],{"className":4317,"style":318},[79],[63,4319,4321],{"className":4320,"style":1827},[84,85],"P"," (vertices ",[63,4324,4326],{"className":4325},[66],[63,4327,4329],{"className":4328,"ariaHidden":71},[70],[63,4330,4332,4336,4379,4382,4385,4390,4393,4396,4399],{"className":4331},[75],[63,4333],{"className":4334,"style":4335},[79],"height:0.8917em;vertical-align:-0.2083em;",[63,4337,4339,4343],{"className":4338},[84],[63,4340,4342],{"className":4341,"style":1220},[84,85],"V",[63,4344,4346],{"className":4345},[226],[63,4347,4349,4371],{"className":4348},[126,127],[63,4350,4352,4368],{"className":4351},[131],[63,4353,4356],{"className":4354,"style":4355},[135],"height:0.3011em;",[63,4357,4359,4362],{"style":4358},"top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;",[63,4360],{"className":4361,"style":144},[143],[63,4363,4365],{"className":4364},[148,149,150,151],[63,4366,3295],{"className":4367},[84,151],[63,4369,178],{"className":4370},[177],[63,4372,4374],{"className":4373},[131],[63,4375,4377],{"className":4376,"style":440},[135],[63,4378],{},[63,4380,585],{"className":4381},[584],[63,4383],{"className":4384,"style":589},[360],[63,4386,4389],{"className":4387},[4388],"minner","…",[63,4391],{"className":4392,"style":589},[360],[63,4394,585],{"className":4395},[584],[63,4397],{"className":4398,"style":589},[360],[63,4400,4402,4405],{"className":4401},[84],[63,4403,4342],{"className":4404,"style":1220},[84,85],[63,4406,4408],{"className":4407},[226],[63,4409,4411,4440],{"className":4410},[126,127],[63,4412,4414,4437],{"className":4413},[131],[63,4415,4417],{"className":4416,"style":4355},[135],[63,4418,4419,4422],{"style":4358},[63,4420],{"className":4421,"style":144},[143],[63,4423,4425],{"className":4424},[148,149,150,151],[63,4426,4428,4431,4434],{"className":4427},[84,151],[63,4429,86],{"className":4430},[84,85,151],[63,4432,2450],{"className":4433},[1224,151],[63,4435,1778],{"className":4436},[84,151],[63,4438,178],{"className":4439},[177],[63,4441,4443],{"className":4442},[131],[63,4444,4447],{"className":4445,"style":4446},[135],"height:0.2083em;",[63,4448],{}," in order) and a query\npoint ",[63,4451,4453],{"className":4452},[66],[63,4454,4456],{"className":4455,"ariaHidden":71},[70],[63,4457,4459,4462],{"className":4458},[75],[63,4460],{"className":4461,"style":815},[79],[63,4463,973],{"className":4464,"style":819},[84,85],", is ",[63,4467,4469],{"className":4468},[66],[63,4470,4472],{"className":4471,"ariaHidden":71},[70],[63,4473,4475,4478],{"className":4474},[75],[63,4476],{"className":4477,"style":815},[79],[63,4479,973],{"className":4480,"style":819},[84,85]," inside, outside, or on the boundary? Two tests dominate; both\nwere named in the ",[15,4483,4484],{"href":17},"primitives lesson",",\nand we make them precise here, boundary caveats included.",[4487,4488,4490],"h3",{"id":4489},"ray-casting-the-parity-test","Ray casting (the parity test)",[11,4492,4493,4494,4509,4510,4529,4530,4533,4534,4537,4538,4541,4542,4545],{},"Shoot a ray from ",[63,4495,4497],{"className":4496},[66],[63,4498,4500],{"className":4499,"ariaHidden":71},[70],[63,4501,4503,4506],{"className":4502},[75],[63,4504],{"className":4505,"style":815},[79],[63,4507,973],{"className":4508,"style":819},[84,85]," in a fixed direction — conventionally along ",[63,4511,4513],{"className":4512},[66],[63,4514,4516],{"className":4515,"ariaHidden":71},[70],[63,4517,4519,4523,4526],{"className":4518},[75],[63,4520],{"className":4521,"style":4522},[79],"height:0.6667em;vertical-align:-0.0833em;",[63,4524,1225],{"className":4525},[84],[63,4527,288],{"className":4528},[84,85]," — and count\nhow many polygon edges it crosses. The ",[31,4531,4532],{},"Jordan curve theorem"," guarantees that a\nray from an interior point crosses the boundary an ",[31,4535,4536],{},"odd"," number of times, and a\nray from an exterior point an ",[31,4539,4540],{},"even"," number. So an odd crossing count means\n",[254,4543,4544],{},"inside",".",[708,4547],{"hash":4548},"e385dae13bbab9e19514bd9f1b9209536afea006808af2f5545e1e58d90ca2ef",[11,4550,4551,4552,4699,4700,4771,4772,4824,4825,4840,4841,4893],{},"The arithmetic per edge ",[63,4553,4555],{"className":4554},[66],[63,4556,4558],{"className":4557,"ariaHidden":71},[70],[63,4559,4561,4565],{"className":4560},[75],[63,4562],{"className":4563,"style":4564},[79],"height:1.0917em;vertical-align:-0.2083em;",[63,4566,4569],{"className":4567},[84,4568],"overline",[63,4570,4572,4691],{"className":4571},[126,127],[63,4573,4575,4688],{"className":4574},[131],[63,4576,4579,4678],{"className":4577,"style":4578},[135],"height:0.8833em;",[63,4580,4581,4584],{"style":1580},[63,4582],{"className":4583,"style":1512},[143],[63,4585,4587,4629],{"className":4586},[84],[63,4588,4590,4593],{"className":4589},[84],[63,4591,4342],{"className":4592,"style":1220},[84,85],[63,4594,4596],{"className":4595},[226],[63,4597,4599,4621],{"className":4598},[126,127],[63,4600,4602,4618],{"className":4601},[131],[63,4603,4606],{"className":4604,"style":4605},[135],"height:0.3117em;",[63,4607,4608,4611],{"style":4358},[63,4609],{"className":4610,"style":144},[143],[63,4612,4614],{"className":4613},[148,149,150,151],[63,4615,4617],{"className":4616},[84,85,151],"i",[63,4619,178],{"className":4620},[177],[63,4622,4624],{"className":4623},[131],[63,4625,4627],{"className":4626,"style":440},[135],[63,4628],{},[63,4630,4632,4635],{"className":4631},[84],[63,4633,4342],{"className":4634,"style":1220},[84,85],[63,4636,4638],{"className":4637},[226],[63,4639,4641,4670],{"className":4640},[126,127],[63,4642,4644,4667],{"className":4643},[131],[63,4645,4647],{"className":4646,"style":4605},[135],[63,4648,4649,4652],{"style":4358},[63,4650],{"className":4651,"style":144},[143],[63,4653,4655],{"className":4654},[148,149,150,151],[63,4656,4658,4661,4664],{"className":4657},[84,151],[63,4659,4617],{"className":4660},[84,85,151],[63,4662,1225],{"className":4663},[1224,151],[63,4665,1778],{"className":4666},[84,151],[63,4668,178],{"className":4669},[177],[63,4671,4673],{"className":4672},[131],[63,4674,4676],{"className":4675,"style":4446},[135],[63,4677],{},[63,4679,4681,4684],{"style":4680},"top:-3.8033em;",[63,4682],{"className":4683,"style":1512},[143],[63,4685],{"className":4686,"style":1532},[4687],"overline-line",[63,4689,178],{"className":4690},[177],[63,4692,4694],{"className":4693},[131],[63,4695,4697],{"className":4696,"style":4446},[135],[63,4698],{}," is a two-line test: the edge can\ncross the horizontal ray at ",[63,4701,4703],{"className":4702},[66],[63,4704,4706,4724],{"className":4705,"ariaHidden":71},[70],[63,4707,4709,4712,4715,4718,4721],{"className":4708},[75],[63,4710],{"className":4711,"style":815},[79],[63,4713,820],{"className":4714,"style":819},[84,85],[63,4716],{"className":4717,"style":361},[360],[63,4719,366],{"className":4720},[365],[63,4722],{"className":4723,"style":361},[360],[63,4725,4727,4731],{"className":4726},[75],[63,4728],{"className":4729,"style":4730},[79],"height:0.7167em;vertical-align:-0.2861em;",[63,4732,4734,4737],{"className":4733},[84],[63,4735,973],{"className":4736,"style":819},[84,85],[63,4738,4740],{"className":4739},[226],[63,4741,4743,4763],{"className":4742},[126,127],[63,4744,4746,4760],{"className":4745},[131],[63,4747,4749],{"className":4748,"style":1078},[135],[63,4750,4751,4754],{"style":1140},[63,4752],{"className":4753,"style":144},[143],[63,4755,4757],{"className":4756},[148,149,150,151],[63,4758,820],{"className":4759,"style":819},[84,85,151],[63,4761,178],{"className":4762},[177],[63,4764,4766],{"className":4765},[131],[63,4767,4769],{"className":4768,"style":1100},[135],[63,4770],{}," only if one endpoint is strictly above\n",[63,4773,4775],{"className":4774},[66],[63,4776,4778],{"className":4777,"ariaHidden":71},[70],[63,4779,4781,4784],{"className":4780},[75],[63,4782],{"className":4783,"style":4730},[79],[63,4785,4787,4790],{"className":4786},[84],[63,4788,973],{"className":4789,"style":819},[84,85],[63,4791,4793],{"className":4792},[226],[63,4794,4796,4816],{"className":4795},[126,127],[63,4797,4799,4813],{"className":4798},[131],[63,4800,4802],{"className":4801,"style":1078},[135],[63,4803,4804,4807],{"style":1140},[63,4805],{"className":4806,"style":144},[143],[63,4808,4810],{"className":4809},[148,149,150,151],[63,4811,820],{"className":4812,"style":819},[84,85,151],[63,4814,178],{"className":4815},[177],[63,4817,4819],{"className":4818},[131],[63,4820,4822],{"className":4821,"style":1100},[135],[63,4823],{}," and the other not above it, and then the crossing ",[63,4826,4828],{"className":4827},[66],[63,4829,4831],{"className":4830,"ariaHidden":71},[70],[63,4832,4834,4837],{"className":4833},[75],[63,4835],{"className":4836,"style":80},[79],[63,4838,288],{"className":4839},[84,85]," must lie to the right\nof ",[63,4842,4844],{"className":4843},[66],[63,4845,4847],{"className":4846,"ariaHidden":71},[70],[63,4848,4850,4853],{"className":4849},[75],[63,4851],{"className":4852,"style":815},[79],[63,4854,4856,4859],{"className":4855},[84],[63,4857,973],{"className":4858,"style":819},[84,85],[63,4860,4862],{"className":4861},[226],[63,4863,4865,4885],{"className":4864},[126,127],[63,4866,4868,4882],{"className":4867},[131],[63,4869,4871],{"className":4870,"style":1078},[135],[63,4872,4873,4876],{"style":1140},[63,4874],{"className":4875,"style":144},[143],[63,4877,4879],{"className":4878},[148,149,150,151],[63,4880,288],{"className":4881},[84,85,151],[63,4883,178],{"className":4884},[177],[63,4886,4888],{"className":4887},[131],[63,4889,4891],{"className":4890,"style":440},[135],[63,4892],{},". Both conditions reduce to sign comparisons; the second avoids dividing\nby cross-multiplying.",[11,4895,4896,4897,4900],{},"The pitfalls are all ",[31,4898,4899],{},"degenerate"," rays — those grazing a vertex or running along\nan edge — and they are what make naive implementations report nonsense.",[53,4902,4904],{"type":4903},"note",[11,4905,4906,4909,4910,1706,4913,4928,4929,4932,4933,4985,4986,5340],{},[31,4907,4908],{},"Note (Tie-breaking)."," Treat each edge as ",[31,4911,4912],{},"half-open",[63,4914,4916],{"className":4915},[66],[63,4917,4919],{"className":4918,"ariaHidden":71},[70],[63,4920,4922,4925],{"className":4921},[75],[63,4923],{"className":4924,"style":815},[79],[63,4926,820],{"className":4927,"style":819},[84,85],": count the edge\nonly when exactly one endpoint is ",[31,4930,4931],{},"strictly above"," ",[63,4934,4936],{"className":4935},[66],[63,4937,4939],{"className":4938,"ariaHidden":71},[70],[63,4940,4942,4945],{"className":4941},[75],[63,4943],{"className":4944,"style":4730},[79],[63,4946,4948,4951],{"className":4947},[84],[63,4949,973],{"className":4950,"style":819},[84,85],[63,4952,4954],{"className":4953},[226],[63,4955,4957,4977],{"className":4956},[126,127],[63,4958,4960,4974],{"className":4959},[131],[63,4961,4963],{"className":4962,"style":1078},[135],[63,4964,4965,4968],{"style":1140},[63,4966],{"className":4967,"style":144},[143],[63,4969,4971],{"className":4970},[148,149,150,151],[63,4972,820],{"className":4973,"style":819},[84,85,151],[63,4975,178],{"className":4976},[177],[63,4978,4980],{"className":4979},[131],[63,4981,4983],{"className":4982,"style":1100},[135],[63,4984],{}," (so\n",[63,4987,4989],{"className":4988},[66],[63,4990,4992,5091,5187,5294],{"className":4991,"ariaHidden":71},[70],[63,4993,4995,4998,5001,5041,5081,5084,5088],{"className":4994},[75],[63,4996],{"className":4997,"style":2544},[79],[63,4999,118],{"className":5000},[110],[63,5002,5004,5007],{"className":5003},[84],[63,5005,4342],{"className":5006,"style":1220},[84,85],[63,5008,5010],{"className":5009},[226],[63,5011,5013,5033],{"className":5012},[126,127],[63,5014,5016,5030],{"className":5015},[131],[63,5017,5019],{"className":5018,"style":4605},[135],[63,5020,5021,5024],{"style":4358},[63,5022],{"className":5023,"style":144},[143],[63,5025,5027],{"className":5026},[148,149,150,151],[63,5028,4617],{"className":5029},[84,85,151],[63,5031,178],{"className":5032},[177],[63,5034,5036],{"className":5035},[131],[63,5037,5039],{"className":5038,"style":440},[135],[63,5040],{},[63,5042,5044,5047],{"className":5043},[191],[63,5045,195],{"className":5046},[191],[63,5048,5050],{"className":5049},[226],[63,5051,5053,5073],{"className":5052},[126,127],[63,5054,5056,5070],{"className":5055},[131],[63,5057,5059],{"className":5058,"style":1078},[135],[63,5060,5061,5064],{"style":1081},[63,5062],{"className":5063,"style":144},[143],[63,5065,5067],{"className":5066},[148,149,150,151],[63,5068,820],{"className":5069,"style":819},[84,85,151],[63,5071,178],{"className":5072},[177],[63,5074,5076],{"className":5075},[131],[63,5077,5079],{"className":5078,"style":1100},[135],[63,5080],{},[63,5082],{"className":5083,"style":361},[360],[63,5085,5087],{"className":5086},[365],">",[63,5089],{"className":5090,"style":361},[360],[63,5092,5094,5098,5138,5141,5184],{"className":5093},[75],[63,5095],{"className":5096,"style":5097},[79],"height:0.9805em;vertical-align:-0.2861em;",[63,5099,5101,5104],{"className":5100},[84],[63,5102,973],{"className":5103,"style":819},[84,85],[63,5105,5107],{"className":5106},[226],[63,5108,5110,5130],{"className":5109},[126,127],[63,5111,5113,5127],{"className":5112},[131],[63,5114,5116],{"className":5115,"style":1078},[135],[63,5117,5118,5121],{"style":1140},[63,5119],{"className":5120,"style":144},[143],[63,5122,5124],{"className":5123},[148,149,150,151],[63,5125,820],{"className":5126,"style":819},[84,85,151],[63,5128,178],{"className":5129},[177],[63,5131,5133],{"className":5132},[131],[63,5134,5136],{"className":5135,"style":1100},[135],[63,5137],{},[63,5139],{"className":5140,"style":361},[360],[63,5142,5144,5177,5181],{"className":5143},[365],[63,5145,5147],{"className":5146},[365],[63,5148,5151],{"className":5149},[84,5150],"vbox",[63,5152,5155],{"className":5153},[5154],"thinbox",[63,5156,5159,5162,5173],{"className":5157},[5158],"rlap",[63,5160],{"className":5161,"style":2023},[79],[63,5163,5166],{"className":5164},[5165],"inner",[63,5167,5169],{"className":5168},[84],[63,5170,5172],{"className":5171},[365],"",[63,5174],{"className":5175},[5176],"fix",[63,5178],{"className":5179},[360,5180],"nobreak",[63,5182,366],{"className":5183},[365],[63,5185],{"className":5186,"style":361},[360],[63,5188,5190,5193,5196,5245,5285,5288,5291],{"className":5189},[75],[63,5191],{"className":5192,"style":2544},[79],[63,5194,118],{"className":5195},[110],[63,5197,5199,5202],{"className":5198},[84],[63,5200,4342],{"className":5201,"style":1220},[84,85],[63,5203,5205],{"className":5204},[226],[63,5206,5208,5237],{"className":5207},[126,127],[63,5209,5211,5234],{"className":5210},[131],[63,5212,5214],{"className":5213,"style":4605},[135],[63,5215,5216,5219],{"style":4358},[63,5217],{"className":5218,"style":144},[143],[63,5220,5222],{"className":5221},[148,149,150,151],[63,5223,5225,5228,5231],{"className":5224},[84,151],[63,5226,4617],{"className":5227},[84,85,151],[63,5229,1225],{"className":5230},[1224,151],[63,5232,1778],{"className":5233},[84,151],[63,5235,178],{"className":5236},[177],[63,5238,5240],{"className":5239},[131],[63,5241,5243],{"className":5242,"style":4446},[135],[63,5244],{},[63,5246,5248,5251],{"className":5247},[191],[63,5249,195],{"className":5250},[191],[63,5252,5254],{"className":5253},[226],[63,5255,5257,5277],{"className":5256},[126,127],[63,5258,5260,5274],{"className":5259},[131],[63,5261,5263],{"className":5262,"style":1078},[135],[63,5264,5265,5268],{"style":1081},[63,5266],{"className":5267,"style":144},[143],[63,5269,5271],{"className":5270},[148,149,150,151],[63,5272,820],{"className":5273,"style":819},[84,85,151],[63,5275,178],{"className":5276},[177],[63,5278,5280],{"className":5279},[131],[63,5281,5283],{"className":5282,"style":1100},[135],[63,5284],{},[63,5286],{"className":5287,"style":361},[360],[63,5289,1109],{"className":5290},[365],[63,5292],{"className":5293,"style":361},[360],[63,5295,5297,5300],{"className":5296},[75],[63,5298],{"className":5299,"style":4730},[79],[63,5301,5303,5306],{"className":5302},[84],[63,5304,973],{"className":5305,"style":819},[84,85],[63,5307,5309],{"className":5308},[226],[63,5310,5312,5332],{"className":5311},[126,127],[63,5313,5315,5329],{"className":5314},[131],[63,5316,5318],{"className":5317,"style":1078},[135],[63,5319,5320,5323],{"style":1140},[63,5321],{"className":5322,"style":144},[143],[63,5324,5326],{"className":5325},[148,149,150,151],[63,5327,820],{"className":5328,"style":819},[84,85,151],[63,5330,178],{"className":5331},[177],[63,5333,5335],{"className":5334},[131],[63,5336,5338],{"className":5337,"style":1100},[135],[63,5339],{}," or vice versa). This counts a vertex\nshared by two edges exactly once when the ray passes through it, and ignores\nhorizontal edges (both endpoints at the same height fail the strict test) — the\ntwo cases that otherwise double-count or miscount.",[53,5342,5344],{"type":5343},"remark",[11,5345,5346,5349,5350,5353,5354,5357,5358,4932,5373,5376,5377,5379,5380,5395,5396,5536,5537,443,5684,5699],{},[31,5347,5348],{},"Remark (Boundary)."," Parity classifies ",[254,5351,5352],{},"interior"," versus ",[254,5355,5356],{},"exterior"," but says\nnothing reliable about ",[63,5359,5361],{"className":5360},[66],[63,5362,5364],{"className":5363,"ariaHidden":71},[70],[63,5365,5367,5370],{"className":5366},[75],[63,5368],{"className":5369,"style":815},[79],[63,5371,973],{"className":5372,"style":819},[84,85],[31,5374,5375],{},"on"," an edge — there a crossing is ambiguous. If the\nboundary must count as ",[973,5378,4544],{}," (or be reported separately), test it first:\n",[63,5381,5383],{"className":5382},[66],[63,5384,5386],{"className":5385,"ariaHidden":71},[70],[63,5387,5389,5392],{"className":5388},[75],[63,5390],{"className":5391,"style":815},[79],[63,5393,973],{"className":5394,"style":819},[84,85]," is on edge ",[63,5397,5399],{"className":5398},[66],[63,5400,5402],{"className":5401,"ariaHidden":71},[70],[63,5403,5405,5408],{"className":5404},[75],[63,5406],{"className":5407,"style":4564},[79],[63,5409,5411],{"className":5410},[84,4568],[63,5412,5414,5528],{"className":5413},[126,127],[63,5415,5417,5525],{"className":5416},[131],[63,5418,5420,5517],{"className":5419,"style":4578},[135],[63,5421,5422,5425],{"style":1580},[63,5423],{"className":5424,"style":1512},[143],[63,5426,5428,5468],{"className":5427},[84],[63,5429,5431,5434],{"className":5430},[84],[63,5432,4342],{"className":5433,"style":1220},[84,85],[63,5435,5437],{"className":5436},[226],[63,5438,5440,5460],{"className":5439},[126,127],[63,5441,5443,5457],{"className":5442},[131],[63,5444,5446],{"className":5445,"style":4605},[135],[63,5447,5448,5451],{"style":4358},[63,5449],{"className":5450,"style":144},[143],[63,5452,5454],{"className":5453},[148,149,150,151],[63,5455,4617],{"className":5456},[84,85,151],[63,5458,178],{"className":5459},[177],[63,5461,5463],{"className":5462},[131],[63,5464,5466],{"className":5465,"style":440},[135],[63,5467],{},[63,5469,5471,5474],{"className":5470},[84],[63,5472,4342],{"className":5473,"style":1220},[84,85],[63,5475,5477],{"className":5476},[226],[63,5478,5480,5509],{"className":5479},[126,127],[63,5481,5483,5506],{"className":5482},[131],[63,5484,5486],{"className":5485,"style":4605},[135],[63,5487,5488,5491],{"style":4358},[63,5489],{"className":5490,"style":144},[143],[63,5492,5494],{"className":5493},[148,149,150,151],[63,5495,5497,5500,5503],{"className":5496},[84,151],[63,5498,4617],{"className":5499},[84,85,151],[63,5501,1225],{"className":5502},[1224,151],[63,5504,1778],{"className":5505},[84,151],[63,5507,178],{"className":5508},[177],[63,5510,5512],{"className":5511},[131],[63,5513,5515],{"className":5514,"style":4446},[135],[63,5516],{},[63,5518,5519,5522],{"style":4680},[63,5520],{"className":5521,"style":1512},[143],[63,5523],{"className":5524,"style":1532},[4687],[63,5526,178],{"className":5527},[177],[63,5529,5531],{"className":5530},[131],[63,5532,5534],{"className":5533,"style":4446},[135],[63,5535],{}," iff ",[63,5538,5540],{"className":5539},[66],[63,5541,5543,5675],{"className":5542,"ariaHidden":71},[70],[63,5544,5546,5549,5556,5559,5599,5602,5605,5654,5657,5660,5663,5666,5669,5672],{"className":5545},[75],[63,5547],{"className":5548,"style":528},[79],[63,5550,5552],{"className":5551},[532],[63,5553,5555],{"className":5554,"style":2145},[84,536],"ccw",[63,5557,118],{"className":5558},[110],[63,5560,5562,5565],{"className":5561},[84],[63,5563,4342],{"className":5564,"style":1220},[84,85],[63,5566,5568],{"className":5567},[226],[63,5569,5571,5591],{"className":5570},[126,127],[63,5572,5574,5588],{"className":5573},[131],[63,5575,5577],{"className":5576,"style":4605},[135],[63,5578,5579,5582],{"style":4358},[63,5580],{"className":5581,"style":144},[143],[63,5583,5585],{"className":5584},[148,149,150,151],[63,5586,4617],{"className":5587},[84,85,151],[63,5589,178],{"className":5590},[177],[63,5592,5594],{"className":5593},[131],[63,5595,5597],{"className":5596,"style":440},[135],[63,5598],{},[63,5600,585],{"className":5601},[584],[63,5603],{"className":5604,"style":589},[360],[63,5606,5608,5611],{"className":5607},[84],[63,5609,4342],{"className":5610,"style":1220},[84,85],[63,5612,5614],{"className":5613},[226],[63,5615,5617,5646],{"className":5616},[126,127],[63,5618,5620,5643],{"className":5619},[131],[63,5621,5623],{"className":5622,"style":4605},[135],[63,5624,5625,5628],{"style":4358},[63,5626],{"className":5627,"style":144},[143],[63,5629,5631],{"className":5630},[148,149,150,151],[63,5632,5634,5637,5640],{"className":5633},[84,151],[63,5635,4617],{"className":5636},[84,85,151],[63,5638,1225],{"className":5639},[1224,151],[63,5641,1778],{"className":5642},[84,151],[63,5644,178],{"className":5645},[177],[63,5647,5649],{"className":5648},[131],[63,5650,5652],{"className":5651,"style":4446},[135],[63,5653],{},[63,5655,585],{"className":5656},[584],[63,5658],{"className":5659,"style":589},[360],[63,5661,973],{"className":5662,"style":819},[84,85],[63,5664,195],{"className":5665},[191],[63,5667],{"className":5668,"style":361},[360],[63,5670,366],{"className":5671},[365],[63,5673],{"className":5674,"style":361},[360],[63,5676,5678,5681],{"className":5677},[75],[63,5679],{"className":5680,"style":1361},[79],[63,5682,3295],{"className":5683},[84],[63,5685,5687],{"className":5686},[66],[63,5688,5690],{"className":5689,"ariaHidden":71},[70],[63,5691,5693,5696],{"className":5692},[75],[63,5694],{"className":5695,"style":815},[79],[63,5697,973],{"className":5698,"style":819},[84,85]," lies within the edge's bounding box. Run that on-segment check over\nall edges before the parity count.",[2716,5701,5704],{"dataImplLabel":5702,"id":5703},"point in polygon implementation","impl-point-in-polygon-point-in-polygon",[2224,5705,5708],{"className":2725,"code":5706,"filename":5707,"language":2728,"meta":6,"style":6},"from enum import Enum\nfrom typing import Sequence\nfrom geometry import Point, cross, on_segment\n\n\nclass Location(Enum):\n  \"\"\"\n    Where a query point sits relative to a polygon.\\n\n  \"\"\"\n  INSIDE = \"inside\"\n  OUTSIDE = \"outside\"\n  BOUNDARY = \"boundary\"\n\n\ndef _ray_crossings(polygon: Sequence[Point], query: Point) -> int:\n  \"\"\"\n    Parity of +x-ray crossings: 1 if odd (inside), 0 if even (outside).\\n\n    Each edge is half-open in y — counted only when exactly one endpoint is\\n\n    strictly above the query — so a grazed vertex counts once and horizontal\\n\n    edges are ignored. The crossing-to-the-right check cross-multiplies\\n\n    instead of dividing, keeping it exact.\\n\n  \"\"\"\n  vertex_count: int = len(polygon)\n  is_inside: bool = False\n  for index in range(vertex_count):\n    start: Point = polygon[index]\n    end: Point = polygon[(index + 1) % vertex_count]\n\n    # half-open rule: exactly one endpoint strictly above the ray's height.\n    if (start.y > query.y) != (end.y > query.y):\n\n      # edge's x at y = query.y vs query.x, cross-multiplied to avoid dividing.\n      numerator: int = (query.y - start.y) * (end.x - start.x)\n      denominator: int = end.y - start.y\n      offset: int = (query.x - start.x) * denominator\n\n      # the multiply flips the inequality when the denominator is negative.\n      if denominator > 0:\n        crosses_right: bool = numerator > offset\n      else:\n        crosses_right = numerator \u003C offset\n\n      if crosses_right:\n        is_inside = not is_inside\n\n  return 1 if is_inside else 0\n\n\ndef point_in_polygon(\n  polygon: Sequence[Point],\n  query: Point,\n  boundary_is_inside: bool = True,\n) -> Location:\n  \"\"\"\n    Classify `query` against a simple `polygon` via ray casting.\\n\n    Vertices are listed in order (either orientation). A boundary point is\\n\n    reported as BOUNDARY; set `boundary_is_inside` False only changes how a\\n\n    caller may treat that label, not the classification. Inside is decided\\n\n    by an odd +x-ray crossing count.\\n\n  \"\"\"\n  if on_boundary(polygon, query):\n    return Location.BOUNDARY\n  if _ray_crossings(polygon, query) == 1:\n    return Location.INSIDE\n  return Location.OUTSIDE\n","point_in_polygon.py",[2230,5709,5710,5722,5732,5743,5747,5751,5761,5765,5772,5776,5786,5796,5806,5810,5814,5828,5832,5839,5846,5853,5860,5867,5871,5885,5896,5910,5920,5943,5947,5952,5974,5978,5983,6010,6027,6049,6053,6058,6071,6088,6095,6108,6112,6119,6132,6136,6153,6157,6161,6171,6176,6181,6193,6198,6202,6209,6216,6223,6230,6237,6241,6248,6255,6269,6276],{"__ignoreMap":6},[63,5711,5712,5714,5717,5719],{"class":2234,"line":2235},[63,5713,2736],{"class":2735},[63,5715,5716],{"class":2739}," enum ",[63,5718,2743],{"class":2735},[63,5720,5721],{"class":2739}," Enum\n",[63,5723,5724,5726,5728,5730],{"class":2234,"line":2241},[63,5725,2736],{"class":2735},[63,5727,2740],{"class":2739},[63,5729,2743],{"class":2735},[63,5731,3201],{"class":2739},[63,5733,5734,5736,5738,5740],{"class":2234,"line":2247},[63,5735,2736],{"class":2735},[63,5737,3212],{"class":2739},[63,5739,2743],{"class":2735},[63,5741,5742],{"class":2739}," Point, cross, on_segment\n",[63,5744,5745],{"class":2234,"line":2253},[63,5746,2752],{"emptyLinePlaceholder":2751},[63,5748,5749],{"class":2234,"line":2259},[63,5750,2752],{"emptyLinePlaceholder":2751},[63,5752,5753,5755,5758],{"class":2234,"line":2265},[63,5754,2757],{"class":2735},[63,5756,5757],{"class":2760}," Location",[63,5759,5760],{"class":2739},"(Enum):\n",[63,5762,5763],{"class":2234,"line":2271},[63,5764,2770],{"class":2769},[63,5766,5767,5770],{"class":2234,"line":2277},[63,5768,5769],{"class":2769},"    Where a query point sits relative to a polygon.",[63,5771,2778],{"class":2735},[63,5773,5774],{"class":2234,"line":2283},[63,5775,2770],{"class":2769},[63,5777,5778,5781,5783],{"class":2234,"line":2289},[63,5779,5780],{"class":2739},"  INSIDE ",[63,5782,366],{"class":2735},[63,5784,5785],{"class":2769}," \"inside\"\n",[63,5787,5788,5791,5793],{"class":2234,"line":2295},[63,5789,5790],{"class":2739},"  OUTSIDE ",[63,5792,366],{"class":2735},[63,5794,5795],{"class":2769}," \"outside\"\n",[63,5797,5798,5801,5803],{"class":2234,"line":2301},[63,5799,5800],{"class":2739},"  BOUNDARY ",[63,5802,366],{"class":2735},[63,5804,5805],{"class":2769}," \"boundary\"\n",[63,5807,5808],{"class":2234,"line":2307},[63,5809,2752],{"emptyLinePlaceholder":2751},[63,5811,5812],{"class":2234,"line":2313},[63,5813,2752],{"emptyLinePlaceholder":2751},[63,5815,5816,5818,5821,5824,5826],{"class":2234,"line":2319},[63,5817,2820],{"class":2735},[63,5819,5820],{"class":2760}," _ray_crossings",[63,5822,5823],{"class":2739},"(polygon: Sequence[Point], query: Point) -> ",[63,5825,2829],{"class":2760},[63,5827,2832],{"class":2739},[63,5829,5830],{"class":2234,"line":2325},[63,5831,2770],{"class":2769},[63,5833,5834,5837],{"class":2234,"line":2860},[63,5835,5836],{"class":2769},"    Parity of +x-ray crossings: 1 if odd (inside), 0 if even (outside).",[63,5838,2778],{"class":2735},[63,5840,5841,5844],{"class":2234,"line":2865},[63,5842,5843],{"class":2769},"    Each edge is half-open in y — counted only when exactly one endpoint is",[63,5845,2778],{"class":2735},[63,5847,5848,5851],{"class":2234,"line":2874},[63,5849,5850],{"class":2769},"    strictly above the query — so a grazed vertex counts once and horizontal",[63,5852,2778],{"class":2735},[63,5854,5855,5858],{"class":2234,"line":2897},[63,5856,5857],{"class":2769},"    edges are ignored. The crossing-to-the-right check cross-multiplies",[63,5859,2778],{"class":2735},[63,5861,5862,5865],{"class":2234,"line":2921},[63,5863,5864],{"class":2769},"    instead of dividing, keeping it exact.",[63,5866,2778],{"class":2735},[63,5868,5869],{"class":2234,"line":2927},[63,5870,2770],{"class":2769},[63,5872,5873,5876,5878,5880,5882],{"class":2234,"line":2932},[63,5874,5875],{"class":2739},"  vertex_count: ",[63,5877,2829],{"class":2760},[63,5879,2989],{"class":2735},[63,5881,3551],{"class":2760},[63,5883,5884],{"class":2739},"(polygon)\n",[63,5886,5887,5890,5892,5894],{"class":2234,"line":2947},[63,5888,5889],{"class":2739},"  is_inside: ",[63,5891,3056],{"class":2760},[63,5893,2989],{"class":2735},[63,5895,3125],{"class":2739},[63,5897,5898,5900,5903,5905,5907],{"class":2234,"line":2952},[63,5899,3317],{"class":2735},[63,5901,5902],{"class":2739}," index ",[63,5904,3323],{"class":2735},[63,5906,3326],{"class":2760},[63,5908,5909],{"class":2739},"(vertex_count):\n",[63,5911,5912,5915,5917],{"class":2234,"line":2960},[63,5913,5914],{"class":2739},"    start: Point ",[63,5916,366],{"class":2735},[63,5918,5919],{"class":2739}," polygon[index]\n",[63,5921,5922,5925,5927,5930,5932,5934,5937,5940],{"class":2234,"line":2968},[63,5923,5924],{"class":2739},"    end: Point ",[63,5926,366],{"class":2735},[63,5928,5929],{"class":2739}," polygon[(index ",[63,5931,1225],{"class":2735},[63,5933,3354],{"class":2760},[63,5935,5936],{"class":2739},") ",[63,5938,5939],{"class":2735},"%",[63,5941,5942],{"class":2739}," vertex_count]\n",[63,5944,5945],{"class":2234,"line":2976},[63,5946,2752],{"emptyLinePlaceholder":2751},[63,5948,5949],{"class":2234,"line":2981},[63,5950,5951],{"class":3098},"    # half-open rule: exactly one endpoint strictly above the ray's height.\n",[63,5953,5954,5956,5959,5961,5964,5966,5969,5971],{"class":2234,"line":3000},[63,5955,4112],{"class":2735},[63,5957,5958],{"class":2739}," (start.y ",[63,5960,5087],{"class":2735},[63,5962,5963],{"class":2739}," query.y) ",[63,5965,3111],{"class":2735},[63,5967,5968],{"class":2739}," (end.y ",[63,5970,5087],{"class":2735},[63,5972,5973],{"class":2739}," query.y):\n",[63,5975,5976],{"class":2234,"line":3018},[63,5977,2752],{"emptyLinePlaceholder":2751},[63,5979,5980],{"class":2234,"line":3040},[63,5981,5982],{"class":3098},"      # edge's x at y = query.y vs query.x, cross-multiplied to avoid dividing.\n",[63,5984,5985,5988,5990,5992,5995,5997,6000,6002,6005,6007],{"class":2234,"line":3045},[63,5986,5987],{"class":2739},"      numerator: ",[63,5989,2829],{"class":2760},[63,5991,2989],{"class":2735},[63,5993,5994],{"class":2739}," (query.y ",[63,5996,2880],{"class":2735},[63,5998,5999],{"class":2739}," start.y) ",[63,6001,2886],{"class":2735},[63,6003,6004],{"class":2739}," (end.x ",[63,6006,2880],{"class":2735},[63,6008,6009],{"class":2739}," start.x)\n",[63,6011,6012,6015,6017,6019,6022,6024],{"class":2234,"line":3061},[63,6013,6014],{"class":2739},"      denominator: ",[63,6016,2829],{"class":2760},[63,6018,2989],{"class":2735},[63,6020,6021],{"class":2739}," end.y ",[63,6023,2880],{"class":2735},[63,6025,6026],{"class":2739}," start.y\n",[63,6028,6029,6032,6034,6036,6039,6041,6044,6046],{"class":2234,"line":3066},[63,6030,6031],{"class":2739},"      offset: ",[63,6033,2829],{"class":2760},[63,6035,2989],{"class":2735},[63,6037,6038],{"class":2739}," (query.x ",[63,6040,2880],{"class":2735},[63,6042,6043],{"class":2739}," start.x) ",[63,6045,2886],{"class":2735},[63,6047,6048],{"class":2739}," denominator\n",[63,6050,6051],{"class":2234,"line":3074},[63,6052,2752],{"emptyLinePlaceholder":2751},[63,6054,6055],{"class":2234,"line":3082},[63,6056,6057],{"class":3098},"      # the multiply flips the inequality when the denominator is negative.\n",[63,6059,6060,6062,6065,6067,6069],{"class":2234,"line":3090},[63,6061,3402],{"class":2735},[63,6063,6064],{"class":2739}," denominator ",[63,6066,5087],{"class":2735},[63,6068,3114],{"class":2760},[63,6070,2832],{"class":2739},[63,6072,6073,6076,6078,6080,6083,6085],{"class":2234,"line":3095},[63,6074,6075],{"class":2739},"        crosses_right: ",[63,6077,3056],{"class":2760},[63,6079,2989],{"class":2735},[63,6081,6082],{"class":2739}," numerator ",[63,6084,5087],{"class":2735},[63,6086,6087],{"class":2739}," offset\n",[63,6089,6090,6093],{"class":2234,"line":3102},[63,6091,6092],{"class":2735},"      else",[63,6094,2832],{"class":2739},[63,6096,6097,6100,6102,6104,6106],{"class":2234,"line":3119},[63,6098,6099],{"class":2739},"        crosses_right ",[63,6101,366],{"class":2735},[63,6103,6082],{"class":2739},[63,6105,693],{"class":2735},[63,6107,6087],{"class":2739},[63,6109,6110],{"class":2234,"line":3128},[63,6111,2752],{"emptyLinePlaceholder":2751},[63,6113,6114,6116],{"class":2234,"line":3135},[63,6115,3402],{"class":2735},[63,6117,6118],{"class":2739}," crosses_right:\n",[63,6120,6121,6124,6126,6129],{"class":2234,"line":3158},[63,6122,6123],{"class":2739},"        is_inside ",[63,6125,366],{"class":2735},[63,6127,6128],{"class":2735}," not",[63,6130,6131],{"class":2739}," is_inside\n",[63,6133,6134],{"class":2234,"line":3182},[63,6135,2752],{"emptyLinePlaceholder":2751},[63,6137,6138,6140,6142,6145,6148,6150],{"class":2234,"line":3645},[63,6139,2868],{"class":2735},[63,6141,3354],{"class":2760},[63,6143,6144],{"class":2735}," if",[63,6146,6147],{"class":2739}," is_inside ",[63,6149,4046],{"class":2735},[63,6151,6152],{"class":2760}," 0\n",[63,6154,6155],{"class":2234,"line":3650},[63,6156,2752],{"emptyLinePlaceholder":2751},[63,6158,6159],{"class":2234,"line":3656},[63,6160,2752],{"emptyLinePlaceholder":2751},[63,6162,6163,6165,6168],{"class":2234,"line":3668},[63,6164,2820],{"class":2735},[63,6166,6167],{"class":2760}," point_in_polygon",[63,6169,6170],{"class":2739},"(\n",[63,6172,6173],{"class":2234,"line":3683},[63,6174,6175],{"class":2739},"  polygon: Sequence[Point],\n",[63,6177,6178],{"class":2234,"line":3694},[63,6179,6180],{"class":2739},"  query: Point,\n",[63,6182,6183,6186,6188,6190],{"class":2234,"line":3705},[63,6184,6185],{"class":2739},"  boundary_is_inside: ",[63,6187,3056],{"class":2760},[63,6189,2989],{"class":2735},[63,6191,6192],{"class":2739}," True,\n",[63,6194,6195],{"class":2234,"line":3710},[63,6196,6197],{"class":2739},") -> Location:\n",[63,6199,6200],{"class":2234,"line":3718},[63,6201,2770],{"class":2769},[63,6203,6204,6207],{"class":2234,"line":3723},[63,6205,6206],{"class":2769},"    Classify `query` against a simple `polygon` via ray casting.",[63,6208,2778],{"class":2735},[63,6210,6211,6214],{"class":2234,"line":3734},[63,6212,6213],{"class":2769},"    Vertices are listed in order (either orientation). A boundary point is",[63,6215,2778],{"class":2735},[63,6217,6218,6221],{"class":2234,"line":3739},[63,6219,6220],{"class":2769},"    reported as BOUNDARY; set `boundary_is_inside` False only changes how a",[63,6222,2778],{"class":2735},[63,6224,6225,6228],{"class":2234,"line":3747},[63,6226,6227],{"class":2769},"    caller may treat that label, not the classification. Inside is decided",[63,6229,2778],{"class":2735},[63,6231,6232,6235],{"class":2234,"line":3755},[63,6233,6234],{"class":2769},"    by an odd +x-ray crossing count.",[63,6236,2778],{"class":2735},[63,6238,6239],{"class":2234,"line":3760},[63,6240,2770],{"class":2769},[63,6242,6243,6245],{"class":2234,"line":3766},[63,6244,3105],{"class":2735},[63,6246,6247],{"class":2739}," on_boundary(polygon, query):\n",[63,6249,6250,6252],{"class":2234,"line":3781},[63,6251,3122],{"class":2735},[63,6253,6254],{"class":2739}," Location.BOUNDARY\n",[63,6256,6257,6259,6262,6265,6267],{"class":2234,"line":3796},[63,6258,3105],{"class":2735},[63,6260,6261],{"class":2739}," _ray_crossings(polygon, query) ",[63,6263,6264],{"class":2735},"==",[63,6266,3354],{"class":2760},[63,6268,2832],{"class":2739},[63,6270,6271,6273],{"class":2234,"line":3804},[63,6272,3122],{"class":2735},[63,6274,6275],{"class":2739}," Location.INSIDE\n",[63,6277,6278,6280],{"class":2234,"line":3809},[63,6279,2868],{"class":2735},[63,6281,6282],{"class":2739}," Location.OUTSIDE\n",[4487,6284,6286],{"id":6285},"winding-number","Winding number",[11,6288,6289,6290,6293,6294,6309,6310,4932,6313,6339,6340,6355,6356,6402,6403,6418,6419,6434,6435,6438,6439,6454,6455,6530],{},"The parity test is blind to how the boundary ",[254,6291,6292],{},"wraps"," around ",[63,6295,6297],{"className":6296},[66],[63,6298,6300],{"className":6299,"ariaHidden":71},[70],[63,6301,6303,6306],{"className":6302},[75],[63,6304],{"className":6305,"style":815},[79],[63,6307,973],{"className":6308,"style":819},[84,85],", which is why it\nbreaks on self-intersecting polygons. The ",[31,6311,6312],{},"winding number",[63,6314,6316],{"className":6315},[66],[63,6317,6319],{"className":6318,"ariaHidden":71},[70],[63,6320,6322,6325,6330,6333,6336],{"className":6321},[75],[63,6323],{"className":6324,"style":528},[79],[63,6326,6329],{"className":6327,"style":6328},[84,85],"margin-right:0.0269em;","w",[63,6331,118],{"className":6332},[110],[63,6334,973],{"className":6335,"style":819},[84,85],[63,6337,195],{"className":6338},[191]," counts the net\nnumber of full turns the boundary makes around ",[63,6341,6343],{"className":6342},[66],[63,6344,6346],{"className":6345,"ariaHidden":71},[70],[63,6347,6349,6352],{"className":6348},[75],[63,6350],{"className":6351,"style":815},[79],[63,6353,973],{"className":6354,"style":819},[84,85]," as it is traversed once. For a\nsimple polygon ",[63,6357,6359],{"className":6358},[66],[63,6360,6362,6389],{"className":6361,"ariaHidden":71},[70],[63,6363,6365,6368,6371,6374,6377,6380,6383,6386],{"className":6364},[75],[63,6366],{"className":6367,"style":528},[79],[63,6369,6329],{"className":6370,"style":6328},[84,85],[63,6372,118],{"className":6373},[110],[63,6375,973],{"className":6376,"style":819},[84,85],[63,6378,195],{"className":6379},[191],[63,6381],{"className":6382,"style":361},[360],[63,6384,366],{"className":6385},[365],[63,6387],{"className":6388,"style":361},[360],[63,6390,6392,6395,6399],{"className":6391},[75],[63,6393],{"className":6394,"style":1342},[79],[63,6396,6398],{"className":6397},[84],"±",[63,6400,1778],{"className":6401},[84]," inside (sign by orientation) and ",[63,6404,6406],{"className":6405},[66],[63,6407,6409],{"className":6408,"ariaHidden":71},[70],[63,6410,6412,6415],{"className":6411},[75],[63,6413],{"className":6414,"style":1361},[79],[63,6416,3295],{"className":6417},[84]," outside; for a\nself-intersecting polygon the magnitude can exceed ",[63,6420,6422],{"className":6421},[66],[63,6423,6425],{"className":6424,"ariaHidden":71},[70],[63,6426,6428,6431],{"className":6427},[75],[63,6429],{"className":6430,"style":1361},[79],[63,6432,1778],{"className":6433},[84],", and the ",[31,6436,6437],{},"nonzero rule","\n(",[63,6440,6442],{"className":6441},[66],[63,6443,6445],{"className":6444,"ariaHidden":71},[70],[63,6446,6448,6451],{"className":6447},[75],[63,6449],{"className":6450,"style":815},[79],[63,6452,973],{"className":6453,"style":819},[84,85]," inside iff ",[63,6456,6458],{"className":6457},[66],[63,6459,6461,6521],{"className":6460,"ariaHidden":71},[70],[63,6462,6464,6467,6470,6473,6476,6479,6482,6518],{"className":6463},[75],[63,6465],{"className":6466,"style":528},[79],[63,6468,6329],{"className":6469,"style":6328},[84,85],[63,6471,118],{"className":6472},[110],[63,6474,973],{"className":6475,"style":819},[84,85],[63,6477,195],{"className":6478},[191],[63,6480],{"className":6481,"style":361},[360],[63,6483,6485,6512,6515],{"className":6484},[365],[63,6486,6488],{"className":6487},[365],[63,6489,6491],{"className":6490},[84,5150],[63,6492,6494],{"className":6493},[5154],[63,6495,6497,6500,6509],{"className":6496},[5158],[63,6498],{"className":6499,"style":2023},[79],[63,6501,6503],{"className":6502},[5165],[63,6504,6506],{"className":6505},[84],[63,6507,5172],{"className":6508},[365],[63,6510],{"className":6511},[5176],[63,6513],{"className":6514},[360,5180],[63,6516,366],{"className":6517},[365],[63,6519],{"className":6520,"style":361},[360],[63,6522,6524,6527],{"className":6523},[75],[63,6525],{"className":6526,"style":1361},[79],[63,6528,3295],{"className":6529},[84],") is the one graphics systems use.",[11,6532,6533,6534,6537,6538,6541,6542,6560,6561,6564,6565,3357,6583,6586,6604,6605,6629],{},"Computed naively this would sum signed ",[254,6535,6536],{},"angles"," — irrational, floating point. The\nexact version sums ",[31,6539,6540],{},"signed edge crossings"," of the ",[63,6543,6545],{"className":6544},[66],[63,6546,6548],{"className":6547,"ariaHidden":71},[70],[63,6549,6551,6554,6557],{"className":6550},[75],[63,6552],{"className":6553,"style":4522},[79],[63,6555,1225],{"className":6556},[84],[63,6558,288],{"className":6559},[84,85]," ray instead, weighting by\ndirection: an edge crossing the ray ",[31,6562,6563],{},"upward"," contributes ",[63,6566,6568],{"className":6567},[66],[63,6569,6571],{"className":6570,"ariaHidden":71},[70],[63,6572,6574,6577,6580],{"className":6573},[75],[63,6575],{"className":6576,"style":1342},[79],[63,6578,1225],{"className":6579},[84],[63,6581,1778],{"className":6582},[84],[31,6584,6585],{},"downward",[63,6587,6589],{"className":6588},[66],[63,6590,6592],{"className":6591,"ariaHidden":71},[70],[63,6593,6595,6598,6601],{"className":6594},[75],[63,6596],{"className":6597,"style":1342},[79],[63,6599,2450],{"className":6600},[84],[63,6602,1778],{"className":6603},[84],". The sum is ",[63,6606,6608],{"className":6607},[66],[63,6609,6611],{"className":6610,"ariaHidden":71},[70],[63,6612,6614,6617,6620,6623,6626],{"className":6613},[75],[63,6615],{"className":6616,"style":528},[79],[63,6618,6329],{"className":6619,"style":6328},[84,85],[63,6621,118],{"className":6622},[110],[63,6624,973],{"className":6625,"style":819},[84,85],[63,6627,195],{"className":6628},[191],", computed entirely from orientation signs.",[53,6631,6632],{"type":859},[11,6633,6634,6637,6638,6653,6654,6729,6730,6754],{},[31,6635,6636],{},"Claim."," For a simple polygon, the winding number agrees with parity: ",[63,6639,6641],{"className":6640},[66],[63,6642,6644],{"className":6643,"ariaHidden":71},[70],[63,6645,6647,6650],{"className":6646},[75],[63,6648],{"className":6649,"style":815},[79],[63,6651,973],{"className":6652,"style":819},[84,85]," is\ninside iff ",[63,6655,6657],{"className":6656},[66],[63,6658,6660,6720],{"className":6659,"ariaHidden":71},[70],[63,6661,6663,6666,6669,6672,6675,6678,6681,6717],{"className":6662},[75],[63,6664],{"className":6665,"style":528},[79],[63,6667,6329],{"className":6668,"style":6328},[84,85],[63,6670,118],{"className":6671},[110],[63,6673,973],{"className":6674,"style":819},[84,85],[63,6676,195],{"className":6677},[191],[63,6679],{"className":6680,"style":361},[360],[63,6682,6684,6711,6714],{"className":6683},[365],[63,6685,6687],{"className":6686},[365],[63,6688,6690],{"className":6689},[84,5150],[63,6691,6693],{"className":6692},[5154],[63,6694,6696,6699,6708],{"className":6695},[5158],[63,6697],{"className":6698,"style":2023},[79],[63,6700,6702],{"className":6701},[5165],[63,6703,6705],{"className":6704},[84],[63,6706,5172],{"className":6707},[365],[63,6709],{"className":6710},[5176],[63,6712],{"className":6713},[360,5180],[63,6715,366],{"className":6716},[365],[63,6718],{"className":6719,"style":361},[360],[63,6721,6723,6726],{"className":6722},[75],[63,6724],{"className":6725,"style":1361},[79],[63,6727,3295],{"className":6728},[84]," iff the unsigned crossing count is odd. Winding strictly\ngeneralizes parity, staying correct when the boundary self-overlaps, at the same\n",[63,6731,6733],{"className":6732},[66],[63,6734,6736],{"className":6735,"ariaHidden":71},[70],[63,6737,6739,6742,6745,6748,6751],{"className":6738},[75],[63,6740],{"className":6741,"style":528},[79],[63,6743,1771],{"className":6744,"style":1770},[84,85],[63,6746,118],{"className":6747},[110],[63,6749,86],{"className":6750},[84,85],[63,6752,195],{"className":6753},[191]," cost.",[708,6756],{"hash":6757},"176f3967b6a54592deacc801502fbdd5d7d080ec78c305dc0053ef5a98b4daa2",[11,6759,6760,6761,6785,6786,6789,6790,6792,6793,6826,6827,6851],{},"Both tests are ",[63,6762,6764],{"className":6763},[66],[63,6765,6767],{"className":6766,"ariaHidden":71},[70],[63,6768,6770,6773,6776,6779,6782],{"className":6769},[75],[63,6771],{"className":6772,"style":528},[79],[63,6774,1771],{"className":6775,"style":1770},[84,85],[63,6777,118],{"className":6778},[110],[63,6780,86],{"className":6781},[84,85],[63,6783,195],{"className":6784},[191]," per query. When the polygon is ",[31,6787,6788],{},"convex"," and many queries\nare expected, the ",[15,6791,4484],{"href":17},"'s\n",[63,6794,6796],{"className":6795},[66],[63,6797,6799],{"className":6798,"ariaHidden":71},[70],[63,6800,6802,6805,6808,6811,6817,6820,6823],{"className":6801},[75],[63,6803],{"className":6804,"style":528},[79],[63,6806,1771],{"className":6807,"style":1770},[84,85],[63,6809,118],{"className":6810},[110],[63,6812,6814],{"className":6813},[532],[63,6815,2146],{"className":6816,"style":2145},[84,536],[63,6818],{"className":6819,"style":589},[360],[63,6821,86],{"className":6822},[84,85],[63,6824,195],{"className":6825},[191]," fan binary search wins after an ",[63,6828,6830],{"className":6829},[66],[63,6831,6833],{"className":6832,"ariaHidden":71},[70],[63,6834,6836,6839,6842,6845,6848],{"className":6835},[75],[63,6837],{"className":6838,"style":528},[79],[63,6840,1771],{"className":6841,"style":1770},[84,85],[63,6843,118],{"className":6844},[110],[63,6846,86],{"className":6847},[84,85],[63,6849,195],{"className":6850},[191]," preprocess.",[2716,6853,6856],{"dataImplLabel":6854,"id":6855},"point in polygon winding implementation","impl-point-in-polygon-point-in-polygon-winding",[2224,6857,6859],{"className":2725,"code":6858,"filename":5707,"language":2728,"meta":6,"style":6},"from enum import Enum\nfrom typing import Sequence\nfrom geometry import Point, cross, on_segment\n\n\nclass Location(Enum):\n  \"\"\"\n    Where a query point sits relative to a polygon.\\n\n  \"\"\"\n  INSIDE = \"inside\"\n  OUTSIDE = \"outside\"\n  BOUNDARY = \"boundary\"\n\n\ndef point_in_polygon_winding(\n  polygon: Sequence[Point],\n  query: Point,\n) -> Location:\n  \"\"\"\n    Classify `query` by the nonzero-winding rule.\\n\n    Reports BOUNDARY for points on an edge, INSIDE when the winding number\\n\n    is nonzero, OUTSIDE otherwise. Stays correct for self-intersecting\\n\n    polygons, where the parity test can misclassify.\\n\n  \"\"\"\n  if on_boundary(polygon, query):\n    return Location.BOUNDARY\n  if winding_number(polygon, query) != 0:\n    return Location.INSIDE\n  return Location.OUTSIDE\n",[2230,6860,6861,6871,6881,6891,6895,6899,6907,6911,6917,6921,6929,6937,6945,6949,6953,6962,6966,6970,6974,6978,6985,6992,6999,7006,7010,7016,7022,7035,7041],{"__ignoreMap":6},[63,6862,6863,6865,6867,6869],{"class":2234,"line":2235},[63,6864,2736],{"class":2735},[63,6866,5716],{"class":2739},[63,6868,2743],{"class":2735},[63,6870,5721],{"class":2739},[63,6872,6873,6875,6877,6879],{"class":2234,"line":2241},[63,6874,2736],{"class":2735},[63,6876,2740],{"class":2739},[63,6878,2743],{"class":2735},[63,6880,3201],{"class":2739},[63,6882,6883,6885,6887,6889],{"class":2234,"line":2247},[63,6884,2736],{"class":2735},[63,6886,3212],{"class":2739},[63,6888,2743],{"class":2735},[63,6890,5742],{"class":2739},[63,6892,6893],{"class":2234,"line":2253},[63,6894,2752],{"emptyLinePlaceholder":2751},[63,6896,6897],{"class":2234,"line":2259},[63,6898,2752],{"emptyLinePlaceholder":2751},[63,6900,6901,6903,6905],{"class":2234,"line":2265},[63,6902,2757],{"class":2735},[63,6904,5757],{"class":2760},[63,6906,5760],{"class":2739},[63,6908,6909],{"class":2234,"line":2271},[63,6910,2770],{"class":2769},[63,6912,6913,6915],{"class":2234,"line":2277},[63,6914,5769],{"class":2769},[63,6916,2778],{"class":2735},[63,6918,6919],{"class":2234,"line":2283},[63,6920,2770],{"class":2769},[63,6922,6923,6925,6927],{"class":2234,"line":2289},[63,6924,5780],{"class":2739},[63,6926,366],{"class":2735},[63,6928,5785],{"class":2769},[63,6930,6931,6933,6935],{"class":2234,"line":2295},[63,6932,5790],{"class":2739},[63,6934,366],{"class":2735},[63,6936,5795],{"class":2769},[63,6938,6939,6941,6943],{"class":2234,"line":2301},[63,6940,5800],{"class":2739},[63,6942,366],{"class":2735},[63,6944,5805],{"class":2769},[63,6946,6947],{"class":2234,"line":2307},[63,6948,2752],{"emptyLinePlaceholder":2751},[63,6950,6951],{"class":2234,"line":2313},[63,6952,2752],{"emptyLinePlaceholder":2751},[63,6954,6955,6957,6960],{"class":2234,"line":2319},[63,6956,2820],{"class":2735},[63,6958,6959],{"class":2760}," point_in_polygon_winding",[63,6961,6170],{"class":2739},[63,6963,6964],{"class":2234,"line":2325},[63,6965,6175],{"class":2739},[63,6967,6968],{"class":2234,"line":2860},[63,6969,6180],{"class":2739},[63,6971,6972],{"class":2234,"line":2865},[63,6973,6197],{"class":2739},[63,6975,6976],{"class":2234,"line":2874},[63,6977,2770],{"class":2769},[63,6979,6980,6983],{"class":2234,"line":2897},[63,6981,6982],{"class":2769},"    Classify `query` by the nonzero-winding rule.",[63,6984,2778],{"class":2735},[63,6986,6987,6990],{"class":2234,"line":2921},[63,6988,6989],{"class":2769},"    Reports BOUNDARY for points on an edge, INSIDE when the winding number",[63,6991,2778],{"class":2735},[63,6993,6994,6997],{"class":2234,"line":2927},[63,6995,6996],{"class":2769},"    is nonzero, OUTSIDE otherwise. Stays correct for self-intersecting",[63,6998,2778],{"class":2735},[63,7000,7001,7004],{"class":2234,"line":2932},[63,7002,7003],{"class":2769},"    polygons, where the parity test can misclassify.",[63,7005,2778],{"class":2735},[63,7007,7008],{"class":2234,"line":2947},[63,7009,2770],{"class":2769},[63,7011,7012,7014],{"class":2234,"line":2952},[63,7013,3105],{"class":2735},[63,7015,6247],{"class":2739},[63,7017,7018,7020],{"class":2234,"line":2960},[63,7019,3122],{"class":2735},[63,7021,6254],{"class":2739},[63,7023,7024,7026,7029,7031,7033],{"class":2234,"line":2968},[63,7025,3105],{"class":2735},[63,7027,7028],{"class":2739}," winding_number(polygon, query) ",[63,7030,3111],{"class":2735},[63,7032,3114],{"class":2760},[63,7034,2832],{"class":2739},[63,7036,7037,7039],{"class":2234,"line":2976},[63,7038,3122],{"class":2735},[63,7040,6275],{"class":2739},[63,7042,7043,7045],{"class":2234,"line":2981},[63,7044,2868],{"class":2735},[63,7046,6282],{"class":2739},[48,7048,7050],{"id":7049},"polygon-area-the-shoelace-formula","Polygon area: the shoelace formula",[11,7052,7053,7054,7056,7057,7060,7061,7180,7181,7196],{},"The ",[15,7055,4484],{"href":17},"\nintroduced the ",[31,7058,7059],{},"shoelace formula"," for the area of a simple polygon with vertices\n",[63,7062,7064],{"className":7063},[66],[63,7065,7067],{"className":7066,"ariaHidden":71},[70],[63,7068,7070,7073,7113,7116,7119,7122,7125,7128,7131],{"className":7069},[75],[63,7071],{"className":7072,"style":4335},[79],[63,7074,7076,7079],{"className":7075},[84],[63,7077,4342],{"className":7078,"style":1220},[84,85],[63,7080,7082],{"className":7081},[226],[63,7083,7085,7105],{"className":7084},[126,127],[63,7086,7088,7102],{"className":7087},[131],[63,7089,7091],{"className":7090,"style":4355},[135],[63,7092,7093,7096],{"style":4358},[63,7094],{"className":7095,"style":144},[143],[63,7097,7099],{"className":7098},[148,149,150,151],[63,7100,3295],{"className":7101},[84,151],[63,7103,178],{"className":7104},[177],[63,7106,7108],{"className":7107},[131],[63,7109,7111],{"className":7110,"style":440},[135],[63,7112],{},[63,7114,585],{"className":7115},[584],[63,7117],{"className":7118,"style":589},[360],[63,7120,4389],{"className":7121},[4388],[63,7123],{"className":7124,"style":589},[360],[63,7126,585],{"className":7127},[584],[63,7129],{"className":7130,"style":589},[360],[63,7132,7134,7137],{"className":7133},[84],[63,7135,4342],{"className":7136,"style":1220},[84,85],[63,7138,7140],{"className":7139},[226],[63,7141,7143,7172],{"className":7142},[126,127],[63,7144,7146,7169],{"className":7145},[131],[63,7147,7149],{"className":7148,"style":4355},[135],[63,7150,7151,7154],{"style":4358},[63,7152],{"className":7153,"style":144},[143],[63,7155,7157],{"className":7156},[148,149,150,151],[63,7158,7160,7163,7166],{"className":7159},[84,151],[63,7161,86],{"className":7162},[84,85,151],[63,7164,2450],{"className":7165},[1224,151],[63,7167,1778],{"className":7168},[84,151],[63,7170,178],{"className":7171},[177],[63,7173,7175],{"className":7174},[131],[63,7176,7178],{"className":7177,"style":4446},[135],[63,7179],{}," in order (indices mod ",[63,7182,7184],{"className":7183},[66],[63,7185,7187],{"className":7186,"ariaHidden":71},[70],[63,7188,7190,7193],{"className":7189},[75],[63,7191],{"className":7192,"style":80},[79],[63,7194,86],{"className":7195},[84,85],"):",[63,7198,7200],{"className":7199},[1811],[63,7201,7203],{"className":7202},[66],[63,7204,7206,7243,7709],{"className":7205,"ariaHidden":71},[70],[63,7207,7209,7212,7219,7222,7225,7228,7231,7234,7237,7240],{"className":7208},[75],[63,7210],{"className":7211,"style":528},[79],[63,7213,7215],{"className":7214},[532],[63,7216,7218],{"className":7217},[84,536],"Area",[63,7220,118],{"className":7221},[110],[63,7223,4321],{"className":7224,"style":1827},[84,85],[63,7226,195],{"className":7227},[191],[63,7229],{"className":7230,"style":361},[360],[63,7232],{"className":7233,"style":361},[360],[63,7235,366],{"className":7236},[365],[63,7238],{"className":7239,"style":361},[360],[63,7241],{"className":7242,"style":361},[360],[63,7244,7246,7250,7316,7319,7694,7697,7700,7703,7706],{"className":7245},[75],[63,7247],{"className":7248,"style":7249},[79],"height:3.0788em;vertical-align:-1.2777em;",[63,7251,7253,7256,7313],{"className":7252},[84],[63,7254],{"className":7255},[110,1492],[63,7257,7259],{"className":7258},[122],[63,7260,7262,7304],{"className":7261},[126,127],[63,7263,7265,7301],{"className":7264},[131],[63,7266,7269,7281,7289],{"className":7267,"style":7268},[135],"height:1.3214em;",[63,7270,7272,7275],{"style":7271},"top:-2.314em;",[63,7273],{"className":7274,"style":1512},[143],[63,7276,7278],{"className":7277},[84],[63,7279,158],{"className":7280},[84],[63,7282,7283,7286],{"style":1524},[63,7284],{"className":7285,"style":1512},[143],[63,7287],{"className":7288,"style":1532},[1531],[63,7290,7292,7295],{"style":7291},"top:-3.677em;",[63,7293],{"className":7294,"style":1512},[143],[63,7296,7298],{"className":7297},[84],[63,7299,1778],{"className":7300},[84],[63,7302,178],{"className":7303},[177],[63,7305,7307],{"className":7306},[131],[63,7308,7311],{"className":7309,"style":7310},[135],"height:0.686em;",[63,7312],{},[63,7314],{"className":7315},[191,1492],[63,7317],{"className":7318,"style":589},[360],[63,7320,7322,7369,7452,7455,7657],{"className":7321},[4388],[63,7323,7325],{"className":7324},[110],[63,7326,7329],{"className":7327},[116,7328],"mult",[63,7330,7332,7360],{"className":7331},[126,127],[63,7333,7335,7357],{"className":7334},[131],[63,7336,7339],{"className":7337,"style":7338},[135],"height:1.75em;",[63,7340,7342,7346],{"style":7341},"top:-3.75em;",[63,7343],{"className":7344,"style":7345},[143],"height:5em;",[63,7347,7349],{"style":7348},"width:0.333em;height:3em;",[1600,7350,7354],{"xmlns":1602,"width":7351,"height":7352,"viewBox":7353},"0.333em","3em","0 0 333 3000",[1608,7355],{"d":7356},"M145 15 v585 v1800 v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v-1800 v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v1800 v585 h43z",[63,7358,178],{"className":7359},[177],[63,7361,7363],{"className":7362},[131],[63,7364,7367],{"className":7365,"style":7366},[135],"height:1.25em;",[63,7368],{},[63,7370,7373],{"className":7371},[532,7372],"op-limits",[63,7374,7376,7443],{"className":7375},[126,127],[63,7377,7379,7440],{"className":7378},[131],[63,7380,7383,7405,7419],{"className":7381,"style":7382},[135],"height:1.8011em;",[63,7384,7386,7390],{"style":7385},"top:-1.8723em;margin-left:0em;",[63,7387],{"className":7388,"style":7389},[143],"height:3.05em;",[63,7391,7393],{"className":7392},[148,149,150,151],[63,7394,7396,7399,7402],{"className":7395},[84,151],[63,7397,4617],{"className":7398},[84,85,151],[63,7400,366],{"className":7401},[365,151],[63,7403,3295],{"className":7404},[84,151],[63,7406,7408,7411],{"style":7407},"top:-3.05em;",[63,7409],{"className":7410,"style":7389},[143],[63,7412,7413],{},[63,7414,7418],{"className":7415},[532,7416,7417],"op-symbol","large-op","∑",[63,7420,7422,7425],{"style":7421},"top:-4.3em;margin-left:0em;",[63,7423],{"className":7424,"style":7389},[143],[63,7426,7428],{"className":7427},[148,149,150,151],[63,7429,7431,7434,7437],{"className":7430},[84,151],[63,7432,86],{"className":7433},[84,85,151],[63,7435,2450],{"className":7436},[1224,151],[63,7438,1778],{"className":7439},[84,151],[63,7441,178],{"className":7442},[177],[63,7444,7446],{"className":7445},[131],[63,7447,7450],{"className":7448,"style":7449},[135],"height:1.2777em;",[63,7451],{},[63,7453],{"className":7454,"style":589},[360],[63,7456,7458,7461,7501,7504,7553,7556,7559,7562,7611,7614,7654],{"className":7457},[4388],[63,7459,118],{"className":7460,"style":112},[110,111],[63,7462,7464,7467],{"className":7463},[84],[63,7465,288],{"className":7466},[84,85],[63,7468,7470],{"className":7469},[226],[63,7471,7473,7493],{"className":7472},[126,127],[63,7474,7476,7490],{"className":7475},[131],[63,7477,7479],{"className":7478,"style":4605},[135],[63,7480,7481,7484],{"style":1081},[63,7482],{"className":7483,"style":144},[143],[63,7485,7487],{"className":7486},[148,149,150,151],[63,7488,4617],{"className":7489},[84,85,151],[63,7491,178],{"className":7492},[177],[63,7494,7496],{"className":7495},[131],[63,7497,7499],{"className":7498,"style":440},[135],[63,7500],{},[63,7502],{"className":7503,"style":589},[360],[63,7505,7507,7510],{"className":7506},[84],[63,7508,820],{"className":7509,"style":819},[84,85],[63,7511,7513],{"className":7512},[226],[63,7514,7516,7545],{"className":7515},[126,127],[63,7517,7519,7542],{"className":7518},[131],[63,7520,7522],{"className":7521,"style":4605},[135],[63,7523,7524,7527],{"style":1140},[63,7525],{"className":7526,"style":144},[143],[63,7528,7530],{"className":7529},[148,149,150,151],[63,7531,7533,7536,7539],{"className":7532},[84,151],[63,7534,4617],{"className":7535},[84,85,151],[63,7537,1225],{"className":7538},[1224,151],[63,7540,1778],{"className":7541},[84,151],[63,7543,178],{"className":7544},[177],[63,7546,7548],{"className":7547},[131],[63,7549,7551],{"className":7550,"style":4446},[135],[63,7552],{},[63,7554],{"className":7555,"style":1220},[360],[63,7557,2450],{"className":7558},[1224],[63,7560],{"className":7561,"style":1220},[360],[63,7563,7565,7568],{"className":7564},[84],[63,7566,288],{"className":7567},[84,85],[63,7569,7571],{"className":7570},[226],[63,7572,7574,7603],{"className":7573},[126,127],[63,7575,7577,7600],{"className":7576},[131],[63,7578,7580],{"className":7579,"style":4605},[135],[63,7581,7582,7585],{"style":1081},[63,7583],{"className":7584,"style":144},[143],[63,7586,7588],{"className":7587},[148,149,150,151],[63,7589,7591,7594,7597],{"className":7590},[84,151],[63,7592,4617],{"className":7593},[84,85,151],[63,7595,1225],{"className":7596},[1224,151],[63,7598,1778],{"className":7599},[84,151],[63,7601,178],{"className":7602},[177],[63,7604,7606],{"className":7605},[131],[63,7607,7609],{"className":7608,"style":4446},[135],[63,7610],{},[63,7612],{"className":7613,"style":589},[360],[63,7615,7617,7620],{"className":7616},[84],[63,7618,820],{"className":7619,"style":819},[84,85],[63,7621,7623],{"className":7622},[226],[63,7624,7626,7646],{"className":7625},[126,127],[63,7627,7629,7643],{"className":7628},[131],[63,7630,7632],{"className":7631,"style":4605},[135],[63,7633,7634,7637],{"style":1140},[63,7635],{"className":7636,"style":144},[143],[63,7638,7640],{"className":7639},[148,149,150,151],[63,7641,4617],{"className":7642},[84,85,151],[63,7644,178],{"className":7645},[177],[63,7647,7649],{"className":7648},[131],[63,7650,7652],{"className":7651,"style":440},[135],[63,7653],{},[63,7655,195],{"className":7656,"style":112},[191,111],[63,7658,7660],{"className":7659},[191],[63,7661,7663],{"className":7662},[116,7328],[63,7664,7666,7686],{"className":7665},[126,127],[63,7667,7669,7683],{"className":7668},[131],[63,7670,7672],{"className":7671,"style":7338},[135],[63,7673,7674,7677],{"style":7341},[63,7675],{"className":7676,"style":7345},[143],[63,7678,7679],{"style":7348},[1600,7680,7681],{"xmlns":1602,"width":7351,"height":7352,"viewBox":7353},[1608,7682],{"d":7356},[63,7684,178],{"className":7685},[177],[63,7687,7689],{"className":7688},[131],[63,7690,7692],{"className":7691,"style":7366},[135],[63,7693],{},[63,7695],{"className":7696,"style":361},[360],[63,7698],{"className":7699,"style":361},[360],[63,7701,366],{"className":7702},[365],[63,7704],{"className":7705,"style":361},[360],[63,7707],{"className":7708,"style":361},[360],[63,7710,7712,7715,7777,7780,8031,8034],{"className":7711},[75],[63,7713],{"className":7714,"style":7249},[79],[63,7716,7718,7721,7774],{"className":7717},[84],[63,7719],{"className":7720},[110,1492],[63,7722,7724],{"className":7723},[122],[63,7725,7727,7766],{"className":7726},[126,127],[63,7728,7730,7763],{"className":7729},[131],[63,7731,7733,7744,7752],{"className":7732,"style":7268},[135],[63,7734,7735,7738],{"style":7271},[63,7736],{"className":7737,"style":1512},[143],[63,7739,7741],{"className":7740},[84],[63,7742,158],{"className":7743},[84],[63,7745,7746,7749],{"style":1524},[63,7747],{"className":7748,"style":1512},[143],[63,7750],{"className":7751,"style":1532},[1531],[63,7753,7754,7757],{"style":7291},[63,7755],{"className":7756,"style":1512},[143],[63,7758,7760],{"className":7759},[84],[63,7761,1778],{"className":7762},[84],[63,7764,178],{"className":7765},[177],[63,7767,7769],{"className":7768},[131],[63,7770,7772],{"className":7771,"style":7310},[135],[63,7773],{},[63,7775],{"className":7776},[191,1492],[63,7778],{"className":7779,"style":589},[360],[63,7781,7783,7820,7893,7896,7936,7939,7942,7945,7994],{"className":7782},[4388],[63,7784,7786],{"className":7785},[110],[63,7787,7789],{"className":7788},[116,7328],[63,7790,7792,7812],{"className":7791},[126,127],[63,7793,7795,7809],{"className":7794},[131],[63,7796,7798],{"className":7797,"style":7338},[135],[63,7799,7800,7803],{"style":7341},[63,7801],{"className":7802,"style":7345},[143],[63,7804,7805],{"style":7348},[1600,7806,7807],{"xmlns":1602,"width":7351,"height":7352,"viewBox":7353},[1608,7808],{"d":7356},[63,7810,178],{"className":7811},[177],[63,7813,7815],{"className":7814},[131],[63,7816,7818],{"className":7817,"style":7366},[135],[63,7819],{},[63,7821,7823],{"className":7822},[532,7372],[63,7824,7826,7885],{"className":7825},[126,127],[63,7827,7829,7882],{"className":7828},[131],[63,7830,7832,7852,7862],{"className":7831,"style":7382},[135],[63,7833,7834,7837],{"style":7385},[63,7835],{"className":7836,"style":7389},[143],[63,7838,7840],{"className":7839},[148,149,150,151],[63,7841,7843,7846,7849],{"className":7842},[84,151],[63,7844,4617],{"className":7845},[84,85,151],[63,7847,366],{"className":7848},[365,151],[63,7850,3295],{"className":7851},[84,151],[63,7853,7854,7857],{"style":7407},[63,7855],{"className":7856,"style":7389},[143],[63,7858,7859],{},[63,7860,7418],{"className":7861},[532,7416,7417],[63,7863,7864,7867],{"style":7421},[63,7865],{"className":7866,"style":7389},[143],[63,7868,7870],{"className":7869},[148,149,150,151],[63,7871,7873,7876,7879],{"className":7872},[84,151],[63,7874,86],{"className":7875},[84,85,151],[63,7877,2450],{"className":7878},[1224,151],[63,7880,1778],{"className":7881},[84,151],[63,7883,178],{"className":7884},[177],[63,7886,7888],{"className":7887},[131],[63,7889,7891],{"className":7890,"style":7449},[135],[63,7892],{},[63,7894],{"className":7895,"style":589},[360],[63,7897,7899,7902],{"className":7898},[84],[63,7900,4342],{"className":7901,"style":1220},[84,85],[63,7903,7905],{"className":7904},[226],[63,7906,7908,7928],{"className":7907},[126,127],[63,7909,7911,7925],{"className":7910},[131],[63,7912,7914],{"className":7913,"style":4605},[135],[63,7915,7916,7919],{"style":4358},[63,7917],{"className":7918,"style":144},[143],[63,7920,7922],{"className":7921},[148,149,150,151],[63,7923,4617],{"className":7924},[84,85,151],[63,7926,178],{"className":7927},[177],[63,7929,7931],{"className":7930},[131],[63,7932,7934],{"className":7933,"style":440},[135],[63,7935],{},[63,7937],{"className":7938,"style":1220},[360],[63,7940,1280],{"className":7941},[1224],[63,7943],{"className":7944,"style":1220},[360],[63,7946,7948,7951],{"className":7947},[84],[63,7949,4342],{"className":7950,"style":1220},[84,85],[63,7952,7954],{"className":7953},[226],[63,7955,7957,7986],{"className":7956},[126,127],[63,7958,7960,7983],{"className":7959},[131],[63,7961,7963],{"className":7962,"style":4605},[135],[63,7964,7965,7968],{"style":4358},[63,7966],{"className":7967,"style":144},[143],[63,7969,7971],{"className":7970},[148,149,150,151],[63,7972,7974,7977,7980],{"className":7973},[84,151],[63,7975,4617],{"className":7976},[84,85,151],[63,7978,1225],{"className":7979},[1224,151],[63,7981,1778],{"className":7982},[84,151],[63,7984,178],{"className":7985},[177],[63,7987,7989],{"className":7988},[131],[63,7990,7992],{"className":7991,"style":4446},[135],[63,7993],{},[63,7995,7997],{"className":7996},[191],[63,7998,8000],{"className":7999},[116,7328],[63,8001,8003,8023],{"className":8002},[126,127],[63,8004,8006,8020],{"className":8005},[131],[63,8007,8009],{"className":8008,"style":7338},[135],[63,8010,8011,8014],{"style":7341},[63,8012],{"className":8013,"style":7345},[143],[63,8015,8016],{"style":7348},[1600,8017,8018],{"xmlns":1602,"width":7351,"height":7352,"viewBox":7353},[1608,8019],{"d":7356},[63,8021,178],{"className":8022},[177],[63,8024,8026],{"className":8025},[131],[63,8027,8029],{"className":8028,"style":7366},[135],[63,8030],{},[63,8032],{"className":8033,"style":589},[360],[63,8035,4545],{"className":8036},[84],[11,8038,8039,8040,8043,8044,8059],{},"Here we prove it. The cleanest argument is the ",[31,8041,8042],{},"trapezoid sum",": each edge, with\nthe ",[63,8045,8047],{"className":8046},[66],[63,8048,8050],{"className":8049,"ariaHidden":71},[70],[63,8051,8053,8056],{"className":8052},[75],[63,8054],{"className":8055,"style":80},[79],[63,8057,288],{"className":8058},[84,85],"-axis, bounds a trapezoid whose signed area is added as the boundary is\nwalked, and the trapezoids below exterior edges cancel against those below\ninterior edges, leaving exactly the enclosed region.",[53,8061,8063],{"type":8062},"theorem",[11,8064,8065,8068,8069,8365],{},[31,8066,8067],{},"Theorem (Shoelace)."," For a simple polygon with vertices listed\ncounterclockwise, ",[63,8070,8072],{"className":8071},[66],[63,8073,8075,8231,8338],{"className":8074,"ariaHidden":71},[70],[63,8076,8078,8082,8130,8133,8173,8222,8225,8228],{"className":8077},[75],[63,8079],{"className":8080,"style":8081},[79],"height:1.0497em;vertical-align:-0.2997em;",[63,8083,8085,8090],{"className":8084},[532],[63,8086,7418],{"className":8087,"style":8089},[532,7416,8088],"small-op","position:relative;top:0em;",[63,8091,8093],{"className":8092},[226],[63,8094,8096,8121],{"className":8095},[126,127],[63,8097,8099,8118],{"className":8098},[131],[63,8100,8103],{"className":8101,"style":8102},[135],"height:0.162em;",[63,8104,8106,8109],{"style":8105},"top:-2.4003em;margin-left:0em;margin-right:0.05em;",[63,8107],{"className":8108,"style":144},[143],[63,8110,8112],{"className":8111},[148,149,150,151],[63,8113,8115],{"className":8114},[84,151],[63,8116,4617],{"className":8117},[84,85,151],[63,8119,178],{"className":8120},[177],[63,8122,8124],{"className":8123},[131],[63,8125,8128],{"className":8126,"style":8127},[135],"height:0.2997em;",[63,8129],{},[63,8131,118],{"className":8132},[110],[63,8134,8136,8139],{"className":8135},[84],[63,8137,288],{"className":8138},[84,85],[63,8140,8142],{"className":8141},[226],[63,8143,8145,8165],{"className":8144},[126,127],[63,8146,8148,8162],{"className":8147},[131],[63,8149,8151],{"className":8150,"style":4605},[135],[63,8152,8153,8156],{"style":1081},[63,8154],{"className":8155,"style":144},[143],[63,8157,8159],{"className":8158},[148,149,150,151],[63,8160,4617],{"className":8161},[84,85,151],[63,8163,178],{"className":8164},[177],[63,8166,8168],{"className":8167},[131],[63,8169,8171],{"className":8170,"style":440},[135],[63,8172],{},[63,8174,8176,8179],{"className":8175},[84],[63,8177,820],{"className":8178,"style":819},[84,85],[63,8180,8182],{"className":8181},[226],[63,8183,8185,8214],{"className":8184},[126,127],[63,8186,8188,8211],{"className":8187},[131],[63,8189,8191],{"className":8190,"style":4605},[135],[63,8192,8193,8196],{"style":1140},[63,8194],{"className":8195,"style":144},[143],[63,8197,8199],{"className":8198},[148,149,150,151],[63,8200,8202,8205,8208],{"className":8201},[84,151],[63,8203,4617],{"className":8204},[84,85,151],[63,8206,1225],{"className":8207},[1224,151],[63,8209,1778],{"className":8210},[84,151],[63,8212,178],{"className":8213},[177],[63,8215,8217],{"className":8216},[131],[63,8218,8220],{"className":8219,"style":4446},[135],[63,8221],{},[63,8223],{"className":8224,"style":1220},[360],[63,8226,2450],{"className":8227},[1224],[63,8229],{"className":8230,"style":1220},[360],[63,8232,8234,8237,8286,8326,8329,8332,8335],{"className":8233},[75],[63,8235],{"className":8236,"style":528},[79],[63,8238,8240,8243],{"className":8239},[84],[63,8241,288],{"className":8242},[84,85],[63,8244,8246],{"className":8245},[226],[63,8247,8249,8278],{"className":8248},[126,127],[63,8250,8252,8275],{"className":8251},[131],[63,8253,8255],{"className":8254,"style":4605},[135],[63,8256,8257,8260],{"style":1081},[63,8258],{"className":8259,"style":144},[143],[63,8261,8263],{"className":8262},[148,149,150,151],[63,8264,8266,8269,8272],{"className":8265},[84,151],[63,8267,4617],{"className":8268},[84,85,151],[63,8270,1225],{"className":8271},[1224,151],[63,8273,1778],{"className":8274},[84,151],[63,8276,178],{"className":8277},[177],[63,8279,8281],{"className":8280},[131],[63,8282,8284],{"className":8283,"style":4446},[135],[63,8285],{},[63,8287,8289,8292],{"className":8288},[84],[63,8290,820],{"className":8291,"style":819},[84,85],[63,8293,8295],{"className":8294},[226],[63,8296,8298,8318],{"className":8297},[126,127],[63,8299,8301,8315],{"className":8300},[131],[63,8302,8304],{"className":8303,"style":4605},[135],[63,8305,8306,8309],{"style":1140},[63,8307],{"className":8308,"style":144},[143],[63,8310,8312],{"className":8311},[148,149,150,151],[63,8313,4617],{"className":8314},[84,85,151],[63,8316,178],{"className":8317},[177],[63,8319,8321],{"className":8320},[131],[63,8322,8324],{"className":8323,"style":440},[135],[63,8325],{},[63,8327,195],{"className":8328},[191],[63,8330],{"className":8331,"style":361},[360],[63,8333,366],{"className":8334},[365],[63,8336],{"className":8337,"style":361},[360],[63,8339,8341,8344,8347,8350,8356,8359,8362],{"className":8340},[75],[63,8342],{"className":8343,"style":528},[79],[63,8345,158],{"className":8346},[84],[63,8348],{"className":8349,"style":589},[360],[63,8351,8353],{"className":8352},[532],[63,8354,7218],{"className":8355},[84,536],[63,8357,118],{"className":8358},[110],[63,8360,4321],{"className":8361,"style":1827},[84,85],[63,8363,195],{"className":8364},[191],";\nclockwise listing negates it.",[53,8367,8368],{"type":951},[11,8369,8370,8372,8373,8533,8534,8720,8721,8736,8737,9042,9043,9233,9234,9356,9357,9360,9361,10032,10033,443,10125,10236,10237,380,10270],{},[31,8371,956],{}," The directed edge from ",[63,8374,8376],{"className":8375},[66],[63,8377,8379,8435],{"className":8378,"ariaHidden":71},[70],[63,8380,8382,8386,8426,8429,8432],{"className":8381},[75],[63,8383],{"className":8384,"style":8385},[79],"height:0.8333em;vertical-align:-0.15em;",[63,8387,8389,8392],{"className":8388},[84],[63,8390,4342],{"className":8391,"style":1220},[84,85],[63,8393,8395],{"className":8394},[226],[63,8396,8398,8418],{"className":8397},[126,127],[63,8399,8401,8415],{"className":8400},[131],[63,8402,8404],{"className":8403,"style":4605},[135],[63,8405,8406,8409],{"style":4358},[63,8407],{"className":8408,"style":144},[143],[63,8410,8412],{"className":8411},[148,149,150,151],[63,8413,4617],{"className":8414},[84,85,151],[63,8416,178],{"className":8417},[177],[63,8419,8421],{"className":8420},[131],[63,8422,8424],{"className":8423,"style":440},[135],[63,8425],{},[63,8427],{"className":8428,"style":361},[360],[63,8430,366],{"className":8431},[365],[63,8433],{"className":8434,"style":361},[360],[63,8436,8438,8441,8444,8484,8487,8490,8530],{"className":8437},[75],[63,8439],{"className":8440,"style":528},[79],[63,8442,118],{"className":8443},[110],[63,8445,8447,8450],{"className":8446},[84],[63,8448,288],{"className":8449},[84,85],[63,8451,8453],{"className":8452},[226],[63,8454,8456,8476],{"className":8455},[126,127],[63,8457,8459,8473],{"className":8458},[131],[63,8460,8462],{"className":8461,"style":4605},[135],[63,8463,8464,8467],{"style":1081},[63,8465],{"className":8466,"style":144},[143],[63,8468,8470],{"className":8469},[148,149,150,151],[63,8471,4617],{"className":8472},[84,85,151],[63,8474,178],{"className":8475},[177],[63,8477,8479],{"className":8478},[131],[63,8480,8482],{"className":8481,"style":440},[135],[63,8483],{},[63,8485,585],{"className":8486},[584],[63,8488],{"className":8489,"style":589},[360],[63,8491,8493,8496],{"className":8492},[84],[63,8494,820],{"className":8495,"style":819},[84,85],[63,8497,8499],{"className":8498},[226],[63,8500,8502,8522],{"className":8501},[126,127],[63,8503,8505,8519],{"className":8504},[131],[63,8506,8508],{"className":8507,"style":4605},[135],[63,8509,8510,8513],{"style":1140},[63,8511],{"className":8512,"style":144},[143],[63,8514,8516],{"className":8515},[148,149,150,151],[63,8517,4617],{"className":8518},[84,85,151],[63,8520,178],{"className":8521},[177],[63,8523,8525],{"className":8524},[131],[63,8526,8528],{"className":8527,"style":440},[135],[63,8529],{},[63,8531,195],{"className":8532},[191]," to ",[63,8535,8537],{"className":8536},[66],[63,8538,8540,8604],{"className":8539,"ariaHidden":71},[70],[63,8541,8543,8546,8595,8598,8601],{"className":8542},[75],[63,8544],{"className":8545,"style":4335},[79],[63,8547,8549,8552],{"className":8548},[84],[63,8550,4342],{"className":8551,"style":1220},[84,85],[63,8553,8555],{"className":8554},[226],[63,8556,8558,8587],{"className":8557},[126,127],[63,8559,8561,8584],{"className":8560},[131],[63,8562,8564],{"className":8563,"style":4605},[135],[63,8565,8566,8569],{"style":4358},[63,8567],{"className":8568,"style":144},[143],[63,8570,8572],{"className":8571},[148,149,150,151],[63,8573,8575,8578,8581],{"className":8574},[84,151],[63,8576,4617],{"className":8577},[84,85,151],[63,8579,1225],{"className":8580},[1224,151],[63,8582,1778],{"className":8583},[84,151],[63,8585,178],{"className":8586},[177],[63,8588,8590],{"className":8589},[131],[63,8591,8593],{"className":8592,"style":4446},[135],[63,8594],{},[63,8596],{"className":8597,"style":361},[360],[63,8599,366],{"className":8600},[365],[63,8602],{"className":8603,"style":361},[360],[63,8605,8607,8610,8613,8662,8665,8668,8717],{"className":8606},[75],[63,8608],{"className":8609,"style":528},[79],[63,8611,118],{"className":8612},[110],[63,8614,8616,8619],{"className":8615},[84],[63,8617,288],{"className":8618},[84,85],[63,8620,8622],{"className":8621},[226],[63,8623,8625,8654],{"className":8624},[126,127],[63,8626,8628,8651],{"className":8627},[131],[63,8629,8631],{"className":8630,"style":4605},[135],[63,8632,8633,8636],{"style":1081},[63,8634],{"className":8635,"style":144},[143],[63,8637,8639],{"className":8638},[148,149,150,151],[63,8640,8642,8645,8648],{"className":8641},[84,151],[63,8643,4617],{"className":8644},[84,85,151],[63,8646,1225],{"className":8647},[1224,151],[63,8649,1778],{"className":8650},[84,151],[63,8652,178],{"className":8653},[177],[63,8655,8657],{"className":8656},[131],[63,8658,8660],{"className":8659,"style":4446},[135],[63,8661],{},[63,8663,585],{"className":8664},[584],[63,8666],{"className":8667,"style":589},[360],[63,8669,8671,8674],{"className":8670},[84],[63,8672,820],{"className":8673,"style":819},[84,85],[63,8675,8677],{"className":8676},[226],[63,8678,8680,8709],{"className":8679},[126,127],[63,8681,8683,8706],{"className":8682},[131],[63,8684,8686],{"className":8685,"style":4605},[135],[63,8687,8688,8691],{"style":1140},[63,8689],{"className":8690,"style":144},[143],[63,8692,8694],{"className":8693},[148,149,150,151],[63,8695,8697,8700,8703],{"className":8696},[84,151],[63,8698,4617],{"className":8699},[84,85,151],[63,8701,1225],{"className":8702},[1224,151],[63,8704,1778],{"className":8705},[84,151],[63,8707,178],{"className":8708},[177],[63,8710,8712],{"className":8711},[131],[63,8713,8715],{"className":8714,"style":4446},[135],[63,8716],{},[63,8718,195],{"className":8719},[191],", together with the verticals dropped to the ",[63,8722,8724],{"className":8723},[66],[63,8725,8727],{"className":8726,"ariaHidden":71},[70],[63,8728,8730,8733],{"className":8729},[75],[63,8731],{"className":8732,"style":80},[79],[63,8734,288],{"className":8735},[84,85],"-axis, bounds\na trapezoid of signed area\n",[63,8738,8740],{"className":8739},[66],[63,8741,8743,8871,8981],{"className":8742,"ariaHidden":71},[70],[63,8744,8746,8750,8819,8822,8862,8865,8868],{"className":8745},[75],[63,8747],{"className":8748,"style":8749},[79],"height:1.1901em;vertical-align:-0.345em;",[63,8751,8753,8756,8816],{"className":8752},[84],[63,8754],{"className":8755},[110,1492],[63,8757,8759],{"className":8758},[122],[63,8760,8762,8808],{"className":8761},[126,127],[63,8763,8765,8805],{"className":8764},[131],[63,8766,8769,8783,8791],{"className":8767,"style":8768},[135],"height:0.8451em;",[63,8770,8771,8774],{"style":1508},[63,8772],{"className":8773,"style":1512},[143],[63,8775,8777],{"className":8776},[148,149,150,151],[63,8778,8780],{"className":8779},[84,151],[63,8781,158],{"className":8782},[84,151],[63,8784,8785,8788],{"style":1524},[63,8786],{"className":8787,"style":1512},[143],[63,8789],{"className":8790,"style":1532},[1531],[63,8792,8793,8796],{"style":1535},[63,8794],{"className":8795,"style":1512},[143],[63,8797,8799],{"className":8798},[148,149,150,151],[63,8800,8802],{"className":8801},[84,151],[63,8803,1778],{"className":8804},[84,151],[63,8806,178],{"className":8807},[177],[63,8809,8811],{"className":8810},[131],[63,8812,8814],{"className":8813,"style":185},[135],[63,8815],{},[63,8817],{"className":8818},[191,1492],[63,8820,118],{"className":8821},[110],[63,8823,8825,8828],{"className":8824},[84],[63,8826,288],{"className":8827},[84,85],[63,8829,8831],{"className":8830},[226],[63,8832,8834,8854],{"className":8833},[126,127],[63,8835,8837,8851],{"className":8836},[131],[63,8838,8840],{"className":8839,"style":4605},[135],[63,8841,8842,8845],{"style":1081},[63,8843],{"className":8844,"style":144},[143],[63,8846,8848],{"className":8847},[148,149,150,151],[63,8849,4617],{"className":8850},[84,85,151],[63,8852,178],{"className":8853},[177],[63,8855,8857],{"className":8856},[131],[63,8858,8860],{"className":8859,"style":440},[135],[63,8861],{},[63,8863],{"className":8864,"style":1220},[360],[63,8866,2450],{"className":8867},[1224],[63,8869],{"className":8870,"style":1220},[360],[63,8872,8874,8877,8926,8929,8932,8972,8975,8978],{"className":8873},[75],[63,8875],{"className":8876,"style":528},[79],[63,8878,8880,8883],{"className":8879},[84],[63,8881,288],{"className":8882},[84,85],[63,8884,8886],{"className":8885},[226],[63,8887,8889,8918],{"className":8888},[126,127],[63,8890,8892,8915],{"className":8891},[131],[63,8893,8895],{"className":8894,"style":4605},[135],[63,8896,8897,8900],{"style":1081},[63,8898],{"className":8899,"style":144},[143],[63,8901,8903],{"className":8902},[148,149,150,151],[63,8904,8906,8909,8912],{"className":8905},[84,151],[63,8907,4617],{"className":8908},[84,85,151],[63,8910,1225],{"className":8911},[1224,151],[63,8913,1778],{"className":8914},[84,151],[63,8916,178],{"className":8917},[177],[63,8919,8921],{"className":8920},[131],[63,8922,8924],{"className":8923,"style":4446},[135],[63,8925],{},[63,8927,195],{"className":8928},[191],[63,8930,118],{"className":8931},[110],[63,8933,8935,8938],{"className":8934},[84],[63,8936,820],{"className":8937,"style":819},[84,85],[63,8939,8941],{"className":8940},[226],[63,8942,8944,8964],{"className":8943},[126,127],[63,8945,8947,8961],{"className":8946},[131],[63,8948,8950],{"className":8949,"style":4605},[135],[63,8951,8952,8955],{"style":1140},[63,8953],{"className":8954,"style":144},[143],[63,8956,8958],{"className":8957},[148,149,150,151],[63,8959,4617],{"className":8960},[84,85,151],[63,8962,178],{"className":8963},[177],[63,8965,8967],{"className":8966},[131],[63,8968,8970],{"className":8969,"style":440},[135],[63,8971],{},[63,8973],{"className":8974,"style":1220},[360],[63,8976,1225],{"className":8977},[1224],[63,8979],{"className":8980,"style":1220},[360],[63,8982,8984,8987,9036,9039],{"className":8983},[75],[63,8985],{"className":8986,"style":528},[79],[63,8988,8990,8993],{"className":8989},[84],[63,8991,820],{"className":8992,"style":819},[84,85],[63,8994,8996],{"className":8995},[226],[63,8997,8999,9028],{"className":8998},[126,127],[63,9000,9002,9025],{"className":9001},[131],[63,9003,9005],{"className":9004,"style":4605},[135],[63,9006,9007,9010],{"style":1140},[63,9008],{"className":9009,"style":144},[143],[63,9011,9013],{"className":9012},[148,149,150,151],[63,9014,9016,9019,9022],{"className":9015},[84,151],[63,9017,4617],{"className":9018},[84,85,151],[63,9020,1225],{"className":9021},[1224,151],[63,9023,1778],{"className":9024},[84,151],[63,9026,178],{"className":9027},[177],[63,9029,9031],{"className":9030},[131],[63,9032,9034],{"className":9033,"style":4446},[135],[63,9035],{},[63,9037,195],{"className":9038},[191],[63,9040,585],{"className":9041},[584],"\nthe average height ",[63,9044,9046],{"className":9045},[66],[63,9047,9049,9175],{"className":9048,"ariaHidden":71},[70],[63,9050,9052,9055,9123,9126,9166,9169,9172],{"className":9051},[75],[63,9053],{"className":9054,"style":8749},[79],[63,9056,9058,9061,9120],{"className":9057},[84],[63,9059],{"className":9060},[110,1492],[63,9062,9064],{"className":9063},[122],[63,9065,9067,9112],{"className":9066},[126,127],[63,9068,9070,9109],{"className":9069},[131],[63,9071,9073,9087,9095],{"className":9072,"style":8768},[135],[63,9074,9075,9078],{"style":1508},[63,9076],{"className":9077,"style":1512},[143],[63,9079,9081],{"className":9080},[148,149,150,151],[63,9082,9084],{"className":9083},[84,151],[63,9085,158],{"className":9086},[84,151],[63,9088,9089,9092],{"style":1524},[63,9090],{"className":9091,"style":1512},[143],[63,9093],{"className":9094,"style":1532},[1531],[63,9096,9097,9100],{"style":1535},[63,9098],{"className":9099,"style":1512},[143],[63,9101,9103],{"className":9102},[148,149,150,151],[63,9104,9106],{"className":9105},[84,151],[63,9107,1778],{"className":9108},[84,151],[63,9110,178],{"className":9111},[177],[63,9113,9115],{"className":9114},[131],[63,9116,9118],{"className":9117,"style":185},[135],[63,9119],{},[63,9121],{"className":9122},[191,1492],[63,9124,118],{"className":9125},[110],[63,9127,9129,9132],{"className":9128},[84],[63,9130,820],{"className":9131,"style":819},[84,85],[63,9133,9135],{"className":9134},[226],[63,9136,9138,9158],{"className":9137},[126,127],[63,9139,9141,9155],{"className":9140},[131],[63,9142,9144],{"className":9143,"style":4605},[135],[63,9145,9146,9149],{"style":1140},[63,9147],{"className":9148,"style":144},[143],[63,9150,9152],{"className":9151},[148,149,150,151],[63,9153,4617],{"className":9154},[84,85,151],[63,9156,178],{"className":9157},[177],[63,9159,9161],{"className":9160},[131],[63,9162,9164],{"className":9163,"style":440},[135],[63,9165],{},[63,9167],{"className":9168,"style":1220},[360],[63,9170,1225],{"className":9171},[1224],[63,9173],{"className":9174,"style":1220},[360],[63,9176,9178,9181,9230],{"className":9177},[75],[63,9179],{"className":9180,"style":528},[79],[63,9182,9184,9187],{"className":9183},[84],[63,9185,820],{"className":9186,"style":819},[84,85],[63,9188,9190],{"className":9189},[226],[63,9191,9193,9222],{"className":9192},[126,127],[63,9194,9196,9219],{"className":9195},[131],[63,9197,9199],{"className":9198,"style":4605},[135],[63,9200,9201,9204],{"style":1140},[63,9202],{"className":9203,"style":144},[143],[63,9205,9207],{"className":9206},[148,149,150,151],[63,9208,9210,9213,9216],{"className":9209},[84,151],[63,9211,4617],{"className":9212},[84,85,151],[63,9214,1225],{"className":9215},[1224,151],[63,9217,1778],{"className":9218},[84,151],[63,9220,178],{"className":9221},[177],[63,9223,9225],{"className":9224},[131],[63,9226,9228],{"className":9227,"style":4446},[135],[63,9229],{},[63,9231,195],{"className":9232},[191]," times the signed width\n",[63,9235,9237],{"className":9236},[66],[63,9238,9240,9298],{"className":9239,"ariaHidden":71},[70],[63,9241,9243,9246,9249,9289,9292,9295],{"className":9242},[75],[63,9244],{"className":9245,"style":528},[79],[63,9247,118],{"className":9248},[110],[63,9250,9252,9255],{"className":9251},[84],[63,9253,288],{"className":9254},[84,85],[63,9256,9258],{"className":9257},[226],[63,9259,9261,9281],{"className":9260},[126,127],[63,9262,9264,9278],{"className":9263},[131],[63,9265,9267],{"className":9266,"style":4605},[135],[63,9268,9269,9272],{"style":1081},[63,9270],{"className":9271,"style":144},[143],[63,9273,9275],{"className":9274},[148,149,150,151],[63,9276,4617],{"className":9277},[84,85,151],[63,9279,178],{"className":9280},[177],[63,9282,9284],{"className":9283},[131],[63,9285,9287],{"className":9286,"style":440},[135],[63,9288],{},[63,9290],{"className":9291,"style":1220},[360],[63,9293,2450],{"className":9294},[1224],[63,9296],{"className":9297,"style":1220},[360],[63,9299,9301,9304,9353],{"className":9300},[75],[63,9302],{"className":9303,"style":528},[79],[63,9305,9307,9310],{"className":9306},[84],[63,9308,288],{"className":9309},[84,85],[63,9311,9313],{"className":9312},[226],[63,9314,9316,9345],{"className":9315},[126,127],[63,9317,9319,9342],{"className":9318},[131],[63,9320,9322],{"className":9321,"style":4605},[135],[63,9323,9324,9327],{"style":1081},[63,9325],{"className":9326,"style":144},[143],[63,9328,9330],{"className":9329},[148,149,150,151],[63,9331,9333,9336,9339],{"className":9332},[84,151],[63,9334,4617],{"className":9335},[84,85,151],[63,9337,1225],{"className":9338},[1224,151],[63,9340,1778],{"className":9341},[84,151],[63,9343,178],{"className":9344},[177],[63,9346,9348],{"className":9347},[131],[63,9349,9351],{"className":9350,"style":4446},[135],[63,9352],{},[63,9354,195],{"className":9355},[191],". The sign is positive when the edge runs ",[31,9358,9359],{},"right to left","\n(top of the polygon) and negative left to right (bottom), so summing over the\nboundary adds the area under the top chain and subtracts the area under the\nbottom chain — exactly the enclosed area. Expanding and summing,\n",[63,9362,9364],{"className":9363},[66],[63,9365,9367,9536,9646,9713,9931],{"className":9366,"ariaHidden":71},[70],[63,9368,9370,9373,9413,9416,9484,9487,9527,9530,9533],{"className":9369},[75],[63,9371],{"className":9372,"style":8749},[79],[63,9374,9376,9379],{"className":9375},[532],[63,9377,7418],{"className":9378,"style":8089},[532,7416,8088],[63,9380,9382],{"className":9381},[226],[63,9383,9385,9405],{"className":9384},[126,127],[63,9386,9388,9402],{"className":9387},[131],[63,9389,9391],{"className":9390,"style":8102},[135],[63,9392,9393,9396],{"style":8105},[63,9394],{"className":9395,"style":144},[143],[63,9397,9399],{"className":9398},[148,149,150,151],[63,9400,4617],{"className":9401},[84,85,151],[63,9403,178],{"className":9404},[177],[63,9406,9408],{"className":9407},[131],[63,9409,9411],{"className":9410,"style":8127},[135],[63,9412],{},[63,9414],{"className":9415,"style":589},[360],[63,9417,9419,9422,9481],{"className":9418},[84],[63,9420],{"className":9421},[110,1492],[63,9423,9425],{"className":9424},[122],[63,9426,9428,9473],{"className":9427},[126,127],[63,9429,9431,9470],{"className":9430},[131],[63,9432,9434,9448,9456],{"className":9433,"style":8768},[135],[63,9435,9436,9439],{"style":1508},[63,9437],{"className":9438,"style":1512},[143],[63,9440,9442],{"className":9441},[148,149,150,151],[63,9443,9445],{"className":9444},[84,151],[63,9446,158],{"className":9447},[84,151],[63,9449,9450,9453],{"style":1524},[63,9451],{"className":9452,"style":1512},[143],[63,9454],{"className":9455,"style":1532},[1531],[63,9457,9458,9461],{"style":1535},[63,9459],{"className":9460,"style":1512},[143],[63,9462,9464],{"className":9463},[148,149,150,151],[63,9465,9467],{"className":9466},[84,151],[63,9468,1778],{"className":9469},[84,151],[63,9471,178],{"className":9472},[177],[63,9474,9476],{"className":9475},[131],[63,9477,9479],{"className":9478,"style":185},[135],[63,9480],{},[63,9482],{"className":9483},[191,1492],[63,9485,118],{"className":9486},[110],[63,9488,9490,9493],{"className":9489},[84],[63,9491,288],{"className":9492},[84,85],[63,9494,9496],{"className":9495},[226],[63,9497,9499,9519],{"className":9498},[126,127],[63,9500,9502,9516],{"className":9501},[131],[63,9503,9505],{"className":9504,"style":4605},[135],[63,9506,9507,9510],{"style":1081},[63,9508],{"className":9509,"style":144},[143],[63,9511,9513],{"className":9512},[148,149,150,151],[63,9514,4617],{"className":9515},[84,85,151],[63,9517,178],{"className":9518},[177],[63,9520,9522],{"className":9521},[131],[63,9523,9525],{"className":9524,"style":440},[135],[63,9526],{},[63,9528],{"className":9529,"style":1220},[360],[63,9531,2450],{"className":9532},[1224],[63,9534],{"className":9535,"style":1220},[360],[63,9537,9539,9542,9591,9594,9597,9637,9640,9643],{"className":9538},[75],[63,9540],{"className":9541,"style":528},[79],[63,9543,9545,9548],{"className":9544},[84],[63,9546,288],{"className":9547},[84,85],[63,9549,9551],{"className":9550},[226],[63,9552,9554,9583],{"className":9553},[126,127],[63,9555,9557,9580],{"className":9556},[131],[63,9558,9560],{"className":9559,"style":4605},[135],[63,9561,9562,9565],{"style":1081},[63,9563],{"className":9564,"style":144},[143],[63,9566,9568],{"className":9567},[148,149,150,151],[63,9569,9571,9574,9577],{"className":9570},[84,151],[63,9572,4617],{"className":9573},[84,85,151],[63,9575,1225],{"className":9576},[1224,151],[63,9578,1778],{"className":9579},[84,151],[63,9581,178],{"className":9582},[177],[63,9584,9586],{"className":9585},[131],[63,9587,9589],{"className":9588,"style":4446},[135],[63,9590],{},[63,9592,195],{"className":9593},[191],[63,9595,118],{"className":9596},[110],[63,9598,9600,9603],{"className":9599},[84],[63,9601,820],{"className":9602,"style":819},[84,85],[63,9604,9606],{"className":9605},[226],[63,9607,9609,9629],{"className":9608},[126,127],[63,9610,9612,9626],{"className":9611},[131],[63,9613,9615],{"className":9614,"style":4605},[135],[63,9616,9617,9620],{"style":1140},[63,9618],{"className":9619,"style":144},[143],[63,9621,9623],{"className":9622},[148,149,150,151],[63,9624,4617],{"className":9625},[84,85,151],[63,9627,178],{"className":9628},[177],[63,9630,9632],{"className":9631},[131],[63,9633,9635],{"className":9634,"style":440},[135],[63,9636],{},[63,9638],{"className":9639,"style":1220},[360],[63,9641,1225],{"className":9642},[1224],[63,9644],{"className":9645,"style":1220},[360],[63,9647,9649,9652,9701,9704,9707,9710],{"className":9648},[75],[63,9650],{"className":9651,"style":528},[79],[63,9653,9655,9658],{"className":9654},[84],[63,9656,820],{"className":9657,"style":819},[84,85],[63,9659,9661],{"className":9660},[226],[63,9662,9664,9693],{"className":9663},[126,127],[63,9665,9667,9690],{"className":9666},[131],[63,9668,9670],{"className":9669,"style":4605},[135],[63,9671,9672,9675],{"style":1140},[63,9673],{"className":9674,"style":144},[143],[63,9676,9678],{"className":9677},[148,149,150,151],[63,9679,9681,9684,9687],{"className":9680},[84,151],[63,9682,4617],{"className":9683},[84,85,151],[63,9685,1225],{"className":9686},[1224,151],[63,9688,1778],{"className":9689},[84,151],[63,9691,178],{"className":9692},[177],[63,9694,9696],{"className":9695},[131],[63,9697,9699],{"className":9698,"style":4446},[135],[63,9700],{},[63,9702,195],{"className":9703},[191],[63,9705],{"className":9706,"style":361},[360],[63,9708,366],{"className":9709},[365],[63,9711],{"className":9712,"style":361},[360],[63,9714,9716,9719,9787,9790,9830,9833,9873,9922,9925,9928],{"className":9715},[75],[63,9717],{"className":9718,"style":8749},[79],[63,9720,9722,9725,9784],{"className":9721},[84],[63,9723],{"className":9724},[110,1492],[63,9726,9728],{"className":9727},[122],[63,9729,9731,9776],{"className":9730},[126,127],[63,9732,9734,9773],{"className":9733},[131],[63,9735,9737,9751,9759],{"className":9736,"style":8768},[135],[63,9738,9739,9742],{"style":1508},[63,9740],{"className":9741,"style":1512},[143],[63,9743,9745],{"className":9744},[148,149,150,151],[63,9746,9748],{"className":9747},[84,151],[63,9749,158],{"className":9750},[84,151],[63,9752,9753,9756],{"style":1524},[63,9754],{"className":9755,"style":1512},[143],[63,9757],{"className":9758,"style":1532},[1531],[63,9760,9761,9764],{"style":1535},[63,9762],{"className":9763,"style":1512},[143],[63,9765,9767],{"className":9766},[148,149,150,151],[63,9768,9770],{"className":9769},[84,151],[63,9771,1778],{"className":9772},[84,151],[63,9774,178],{"className":9775},[177],[63,9777,9779],{"className":9778},[131],[63,9780,9782],{"className":9781,"style":185},[135],[63,9783],{},[63,9785],{"className":9786},[191,1492],[63,9788],{"className":9789,"style":589},[360],[63,9791,9793,9796],{"className":9792},[532],[63,9794,7418],{"className":9795,"style":8089},[532,7416,8088],[63,9797,9799],{"className":9798},[226],[63,9800,9802,9822],{"className":9801},[126,127],[63,9803,9805,9819],{"className":9804},[131],[63,9806,9808],{"className":9807,"style":8102},[135],[63,9809,9810,9813],{"style":8105},[63,9811],{"className":9812,"style":144},[143],[63,9814,9816],{"className":9815},[148,149,150,151],[63,9817,4617],{"className":9818},[84,85,151],[63,9820,178],{"className":9821},[177],[63,9823,9825],{"className":9824},[131],[63,9826,9828],{"className":9827,"style":8127},[135],[63,9829],{},[63,9831,118],{"className":9832},[110],[63,9834,9836,9839],{"className":9835},[84],[63,9837,288],{"className":9838},[84,85],[63,9840,9842],{"className":9841},[226],[63,9843,9845,9865],{"className":9844},[126,127],[63,9846,9848,9862],{"className":9847},[131],[63,9849,9851],{"className":9850,"style":4605},[135],[63,9852,9853,9856],{"style":1081},[63,9854],{"className":9855,"style":144},[143],[63,9857,9859],{"className":9858},[148,149,150,151],[63,9860,4617],{"className":9861},[84,85,151],[63,9863,178],{"className":9864},[177],[63,9866,9868],{"className":9867},[131],[63,9869,9871],{"className":9870,"style":440},[135],[63,9872],{},[63,9874,9876,9879],{"className":9875},[84],[63,9877,820],{"className":9878,"style":819},[84,85],[63,9880,9882],{"className":9881},[226],[63,9883,9885,9914],{"className":9884},[126,127],[63,9886,9888,9911],{"className":9887},[131],[63,9889,9891],{"className":9890,"style":4605},[135],[63,9892,9893,9896],{"style":1140},[63,9894],{"className":9895,"style":144},[143],[63,9897,9899],{"className":9898},[148,149,150,151],[63,9900,9902,9905,9908],{"className":9901},[84,151],[63,9903,4617],{"className":9904},[84,85,151],[63,9906,1225],{"className":9907},[1224,151],[63,9909,1778],{"className":9910},[84,151],[63,9912,178],{"className":9913},[177],[63,9915,9917],{"className":9916},[131],[63,9918,9920],{"className":9919,"style":4446},[135],[63,9921],{},[63,9923],{"className":9924,"style":1220},[360],[63,9926,2450],{"className":9927},[1224],[63,9929],{"className":9930,"style":1220},[360],[63,9932,9934,9937,9986,10026,10029],{"className":9933},[75],[63,9935],{"className":9936,"style":528},[79],[63,9938,9940,9943],{"className":9939},[84],[63,9941,288],{"className":9942},[84,85],[63,9944,9946],{"className":9945},[226],[63,9947,9949,9978],{"className":9948},[126,127],[63,9950,9952,9975],{"className":9951},[131],[63,9953,9955],{"className":9954,"style":4605},[135],[63,9956,9957,9960],{"style":1081},[63,9958],{"className":9959,"style":144},[143],[63,9961,9963],{"className":9962},[148,149,150,151],[63,9964,9966,9969,9972],{"className":9965},[84,151],[63,9967,4617],{"className":9968},[84,85,151],[63,9970,1225],{"className":9971},[1224,151],[63,9973,1778],{"className":9974},[84,151],[63,9976,178],{"className":9977},[177],[63,9979,9981],{"className":9980},[131],[63,9982,9984],{"className":9983,"style":4446},[135],[63,9985],{},[63,9987,9989,9992],{"className":9988},[84],[63,9990,820],{"className":9991,"style":819},[84,85],[63,9993,9995],{"className":9994},[226],[63,9996,9998,10018],{"className":9997},[126,127],[63,9999,10001,10015],{"className":10000},[131],[63,10002,10004],{"className":10003,"style":4605},[135],[63,10005,10006,10009],{"style":1140},[63,10007],{"className":10008,"style":144},[143],[63,10010,10012],{"className":10011},[148,149,150,151],[63,10013,4617],{"className":10014},[84,85,151],[63,10016,178],{"className":10017},[177],[63,10019,10021],{"className":10020},[131],[63,10022,10024],{"className":10023,"style":440},[135],[63,10025],{},[63,10027,195],{"className":10028},[191],[63,10030,585],{"className":10031},[584],"\nafter the ",[63,10034,10036],{"className":10035},[66],[63,10037,10039],{"className":10038,"ariaHidden":71},[70],[63,10040,10042,10045,10085],{"className":10041},[75],[63,10043],{"className":10044,"style":815},[79],[63,10046,10048,10051],{"className":10047},[84],[63,10049,288],{"className":10050},[84,85],[63,10052,10054],{"className":10053},[226],[63,10055,10057,10077],{"className":10056},[126,127],[63,10058,10060,10074],{"className":10059},[131],[63,10061,10063],{"className":10062,"style":4605},[135],[63,10064,10065,10068],{"style":1081},[63,10066],{"className":10067,"style":144},[143],[63,10069,10071],{"className":10070},[148,149,150,151],[63,10072,4617],{"className":10073},[84,85,151],[63,10075,178],{"className":10076},[177],[63,10078,10080],{"className":10079},[131],[63,10081,10083],{"className":10082,"style":440},[135],[63,10084],{},[63,10086,10088,10091],{"className":10087},[84],[63,10089,820],{"className":10090,"style":819},[84,85],[63,10092,10094],{"className":10093},[226],[63,10095,10097,10117],{"className":10096},[126,127],[63,10098,10100,10114],{"className":10099},[131],[63,10101,10103],{"className":10102,"style":4605},[135],[63,10104,10105,10108],{"style":1140},[63,10106],{"className":10107,"style":144},[143],[63,10109,10111],{"className":10110},[148,149,150,151],[63,10112,4617],{"className":10113},[84,85,151],[63,10115,178],{"className":10116},[177],[63,10118,10120],{"className":10119},[131],[63,10121,10123],{"className":10122,"style":440},[135],[63,10124],{},[63,10126,10128],{"className":10127},[66],[63,10129,10131],{"className":10130,"ariaHidden":71},[70],[63,10132,10134,10138,10187],{"className":10133},[75],[63,10135],{"className":10136,"style":10137},[79],"height:0.6389em;vertical-align:-0.2083em;",[63,10139,10141,10144],{"className":10140},[84],[63,10142,288],{"className":10143},[84,85],[63,10145,10147],{"className":10146},[226],[63,10148,10150,10179],{"className":10149},[126,127],[63,10151,10153,10176],{"className":10152},[131],[63,10154,10156],{"className":10155,"style":4605},[135],[63,10157,10158,10161],{"style":1081},[63,10159],{"className":10160,"style":144},[143],[63,10162,10164],{"className":10163},[148,149,150,151],[63,10165,10167,10170,10173],{"className":10166},[84,151],[63,10168,4617],{"className":10169},[84,85,151],[63,10171,1225],{"className":10172},[1224,151],[63,10174,1778],{"className":10175},[84,151],[63,10177,178],{"className":10178},[177],[63,10180,10182],{"className":10181},[131],[63,10183,10185],{"className":10184,"style":4446},[135],[63,10186],{},[63,10188,10190,10193],{"className":10189},[84],[63,10191,820],{"className":10192,"style":819},[84,85],[63,10194,10196],{"className":10195},[226],[63,10197,10199,10228],{"className":10198},[126,127],[63,10200,10202,10225],{"className":10201},[131],[63,10203,10205],{"className":10204,"style":4605},[135],[63,10206,10207,10210],{"style":1140},[63,10208],{"className":10209,"style":144},[143],[63,10211,10213],{"className":10212},[148,149,150,151],[63,10214,10216,10219,10222],{"className":10215},[84,151],[63,10217,4617],{"className":10218},[84,85,151],[63,10220,1225],{"className":10221},[1224,151],[63,10223,1778],{"className":10224},[84,151],[63,10226,178],{"className":10227},[177],[63,10229,10231],{"className":10230},[131],[63,10232,10234],{"className":10233,"style":4446},[135],[63,10235],{}," terms cancel telescopically around the\nclosed loop. This is the shoelace sum, equal to ",[63,10238,10240],{"className":10239},[66],[63,10241,10243],{"className":10242,"ariaHidden":71},[70],[63,10244,10246,10249,10252,10255,10261,10264,10267],{"className":10245},[75],[63,10247],{"className":10248,"style":528},[79],[63,10250,158],{"className":10251},[84],[63,10253],{"className":10254,"style":589},[360],[63,10256,10258],{"className":10257},[532],[63,10259,7218],{"className":10260},[84,536],[63,10262,118],{"className":10263},[110],[63,10265,4321],{"className":10266,"style":1827},[84,85],[63,10268,195],{"className":10269},[191],[63,10271,10273],{"className":10272},[66],[63,10274,10276],{"className":10275,"ariaHidden":71},[70],[63,10277,10279,10282],{"className":10278},[75],[63,10280],{"className":10281,"style":1735},[79],[63,10283,10285],{"className":10284},[1739,1740],[63,10286,1745],{"className":10287},[84,1744],[708,10289],{"hash":10290},"3802eb7148b52103aa3d53468aeb0efe8d4b6f95ca1b10e991d7b48e02297089",[11,10292,10293,10294,10301,10302,10305],{},"The sum is an integer for integer vertices, so the area is an exact\nhalf-integer.",[2215,10295,10296],{},[15,10297,158],{"href":10298,"ariaDescribedBy":10299,"dataFootnoteRef":6,"id":10300},"#user-content-fn-skiena-area",[2221],"user-content-fnref-skiena-area"," Dropping the absolute value keeps the sign, which\ngives the ",[31,10303,10304],{},"winding direction"," for free: positive means the vertices are\ncounterclockwise, negative clockwise — the cheapest orientation test for a whole\npolygon.",[2716,10307,10310],{"dataImplLabel":10308,"id":10309},"shoelace implementation","impl-shoelace",[2224,10311,10314],{"className":2725,"code":10312,"filename":10313,"language":2728,"meta":6,"style":6},"from fractions import Fraction\nfrom typing import Sequence\n\nfrom geometry import Point\n\ndef twice_signed_area(polygon: Sequence[Point]) -> int:\n  \"\"\"\n    The shoelace sum, equal to twice the signed area of `polygon`.\\n\n    Positive for counterclockwise vertices, negative for clockwise, zero\\n\n    for a degenerate (collinear) polygon. Exact integer arithmetic.\\n\n  \"\"\"\n  # sum each edge's cross product around the closed boundary (wraps at the end).\n  vertex_count: int = len(polygon)\n  return sum(\n    polygon[index].x * polygon[(index + 1) % vertex_count].y\n    - polygon[(index + 1) % vertex_count].x * polygon[index].y\n    for index in range(vertex_count)\n  )\n\ndef signed_area(polygon: Sequence[Point]) -> Fraction:\n  \"\"\"\n    The signed area of `polygon` as an exact half-integer.\\n\n    Sign carries the winding direction: positive counterclockwise, negative\\n\n    clockwise.\\n\n  \"\"\"\n  return Fraction(twice_signed_area(polygon), 2)\n\ndef polygon_area(polygon: Sequence[Point]) -> Fraction:\n  \"\"\"\n    The (unsigned) area enclosed by `polygon`, an exact half-integer.\\n\n  \"\"\"\n  return abs(signed_area(polygon))\n\ndef is_counterclockwise(polygon: Sequence[Point]) -> bool:\n  \"\"\"\n    Whether `polygon`'s vertices are listed counterclockwise.\\n\n    The cheapest orientation test for a whole polygon: the sign of the\\n\n    shoelace sum, with no per-triple turn checks.\\n\n  \"\"\"\n  return twice_signed_area(polygon) > 0\n","shoelace.py",[2230,10315,10316,10328,10338,10342,10353,10357,10371,10375,10382,10389,10396,10400,10405,10417,10426,10446,10468,10481,10485,10489,10499,10503,10510,10517,10524,10528,10539,10543,10552,10556,10563,10567,10577,10581,10594,10598,10605,10612,10619,10623],{"__ignoreMap":6},[63,10317,10318,10320,10323,10325],{"class":2234,"line":2235},[63,10319,2736],{"class":2735},[63,10321,10322],{"class":2739}," fractions ",[63,10324,2743],{"class":2735},[63,10326,10327],{"class":2739}," Fraction\n",[63,10329,10330,10332,10334,10336],{"class":2234,"line":2241},[63,10331,2736],{"class":2735},[63,10333,2740],{"class":2739},[63,10335,2743],{"class":2735},[63,10337,3201],{"class":2739},[63,10339,10340],{"class":2234,"line":2247},[63,10341,2752],{"emptyLinePlaceholder":2751},[63,10343,10344,10346,10348,10350],{"class":2234,"line":2253},[63,10345,2736],{"class":2735},[63,10347,3212],{"class":2739},[63,10349,2743],{"class":2735},[63,10351,10352],{"class":2739}," Point\n",[63,10354,10355],{"class":2234,"line":2259},[63,10356,2752],{"emptyLinePlaceholder":2751},[63,10358,10359,10361,10364,10367,10369],{"class":2234,"line":2265},[63,10360,2820],{"class":2735},[63,10362,10363],{"class":2760}," twice_signed_area",[63,10365,10366],{"class":2739},"(polygon: Sequence[Point]) -> ",[63,10368,2829],{"class":2760},[63,10370,2832],{"class":2739},[63,10372,10373],{"class":2234,"line":2271},[63,10374,2770],{"class":2769},[63,10376,10377,10380],{"class":2234,"line":2277},[63,10378,10379],{"class":2769},"    The shoelace sum, equal to twice the signed area of `polygon`.",[63,10381,2778],{"class":2735},[63,10383,10384,10387],{"class":2234,"line":2283},[63,10385,10386],{"class":2769},"    Positive for counterclockwise vertices, negative for clockwise, zero",[63,10388,2778],{"class":2735},[63,10390,10391,10394],{"class":2234,"line":2289},[63,10392,10393],{"class":2769},"    for a degenerate (collinear) polygon. Exact integer arithmetic.",[63,10395,2778],{"class":2735},[63,10397,10398],{"class":2234,"line":2295},[63,10399,2770],{"class":2769},[63,10401,10402],{"class":2234,"line":2301},[63,10403,10404],{"class":3098},"  # sum each edge's cross product around the closed boundary (wraps at the end).\n",[63,10406,10407,10409,10411,10413,10415],{"class":2234,"line":2307},[63,10408,5875],{"class":2739},[63,10410,2829],{"class":2760},[63,10412,2989],{"class":2735},[63,10414,3551],{"class":2760},[63,10416,5884],{"class":2739},[63,10418,10419,10421,10424],{"class":2234,"line":2313},[63,10420,2868],{"class":2735},[63,10422,10423],{"class":2760}," sum",[63,10425,6170],{"class":2739},[63,10427,10428,10431,10433,10435,10437,10439,10441,10443],{"class":2234,"line":2319},[63,10429,10430],{"class":2739},"    polygon[index].x ",[63,10432,2886],{"class":2735},[63,10434,5929],{"class":2739},[63,10436,1225],{"class":2735},[63,10438,3354],{"class":2760},[63,10440,5936],{"class":2739},[63,10442,5939],{"class":2735},[63,10444,10445],{"class":2739}," vertex_count].y\n",[63,10447,10448,10450,10452,10454,10456,10458,10460,10463,10465],{"class":2234,"line":2325},[63,10449,2900],{"class":2735},[63,10451,5929],{"class":2739},[63,10453,1225],{"class":2735},[63,10455,3354],{"class":2760},[63,10457,5936],{"class":2739},[63,10459,5939],{"class":2735},[63,10461,10462],{"class":2739}," vertex_count].x ",[63,10464,2886],{"class":2735},[63,10466,10467],{"class":2739}," polygon[index].y\n",[63,10469,10470,10472,10474,10476,10478],{"class":2234,"line":2860},[63,10471,3339],{"class":2735},[63,10473,5902],{"class":2739},[63,10475,3323],{"class":2735},[63,10477,3326],{"class":2760},[63,10479,10480],{"class":2739},"(vertex_count)\n",[63,10482,10483],{"class":2234,"line":2865},[63,10484,2924],{"class":2739},[63,10486,10487],{"class":2234,"line":2874},[63,10488,2752],{"emptyLinePlaceholder":2751},[63,10490,10491,10493,10496],{"class":2234,"line":2897},[63,10492,2820],{"class":2735},[63,10494,10495],{"class":2760}," signed_area",[63,10497,10498],{"class":2739},"(polygon: Sequence[Point]) -> Fraction:\n",[63,10500,10501],{"class":2234,"line":2921},[63,10502,2770],{"class":2769},[63,10504,10505,10508],{"class":2234,"line":2927},[63,10506,10507],{"class":2769},"    The signed area of `polygon` as an exact half-integer.",[63,10509,2778],{"class":2735},[63,10511,10512,10515],{"class":2234,"line":2932},[63,10513,10514],{"class":2769},"    Sign carries the winding direction: positive counterclockwise, negative",[63,10516,2778],{"class":2735},[63,10518,10519,10522],{"class":2234,"line":2947},[63,10520,10521],{"class":2769},"    clockwise.",[63,10523,2778],{"class":2735},[63,10525,10526],{"class":2234,"line":2952},[63,10527,2770],{"class":2769},[63,10529,10530,10532,10535,10537],{"class":2234,"line":2960},[63,10531,2868],{"class":2735},[63,10533,10534],{"class":2739}," Fraction(twice_signed_area(polygon), ",[63,10536,158],{"class":2760},[63,10538,4231],{"class":2739},[63,10540,10541],{"class":2234,"line":2968},[63,10542,2752],{"emptyLinePlaceholder":2751},[63,10544,10545,10547,10550],{"class":2234,"line":2976},[63,10546,2820],{"class":2735},[63,10548,10549],{"class":2760}," polygon_area",[63,10551,10498],{"class":2739},[63,10553,10554],{"class":2234,"line":2981},[63,10555,2770],{"class":2769},[63,10557,10558,10561],{"class":2234,"line":3000},[63,10559,10560],{"class":2769},"    The (unsigned) area enclosed by `polygon`, an exact half-integer.",[63,10562,2778],{"class":2735},[63,10564,10565],{"class":2234,"line":3018},[63,10566,2770],{"class":2769},[63,10568,10569,10571,10574],{"class":2234,"line":3040},[63,10570,2868],{"class":2735},[63,10572,10573],{"class":2760}," abs",[63,10575,10576],{"class":2739},"(signed_area(polygon))\n",[63,10578,10579],{"class":2234,"line":3045},[63,10580,2752],{"emptyLinePlaceholder":2751},[63,10582,10583,10585,10588,10590,10592],{"class":2234,"line":3061},[63,10584,2820],{"class":2735},[63,10586,10587],{"class":2760}," is_counterclockwise",[63,10589,10366],{"class":2739},[63,10591,3056],{"class":2760},[63,10593,2832],{"class":2739},[63,10595,10596],{"class":2234,"line":3066},[63,10597,2770],{"class":2769},[63,10599,10600,10603],{"class":2234,"line":3074},[63,10601,10602],{"class":2769},"    Whether `polygon`'s vertices are listed counterclockwise.",[63,10604,2778],{"class":2735},[63,10606,10607,10610],{"class":2234,"line":3082},[63,10608,10609],{"class":2769},"    The cheapest orientation test for a whole polygon: the sign of the",[63,10611,2778],{"class":2735},[63,10613,10614,10617],{"class":2234,"line":3090},[63,10615,10616],{"class":2769},"    shoelace sum, with no per-triple turn checks.",[63,10618,2778],{"class":2735},[63,10620,10621],{"class":2234,"line":3095},[63,10622,2770],{"class":2769},[63,10624,10625,10627,10630,10632],{"class":2234,"line":3102},[63,10626,2868],{"class":2735},[63,10628,10629],{"class":2739}," twice_signed_area(polygon) ",[63,10631,5087],{"class":2735},[63,10633,6152],{"class":2760},[48,10635,10637],{"id":10636},"rotating-calipers-diameter-and-width","Rotating calipers: diameter and width",[11,10639,7053,10640,10643,10644,10647,10648,10651],{},[15,10641,10642],{"href":22},"convex hull lesson"," closed by\npromising that the hull turns many extremal queries into linear scans. The\ntechnique is ",[31,10645,10646],{},"rotating calipers",", and the cleanest instance is the\n",[31,10649,10650],{},"diameter"," — the greatest distance between any two points of a set.",[53,10653,10654],{"type":859},[11,10655,10656,10659,10660,10663,10664,10667],{},[31,10657,10658],{},"Lemma (Diameter on the hull)."," The two farthest points of a set are both\n",[31,10661,10662],{},"hull vertices",", and they form an ",[31,10665,10666],{},"antipodal"," pair: there exist parallel\nsupporting lines of the hull, one through each.",[53,10669,10670],{"type":951},[11,10671,10672,10674,10675,10690,10691,10706,10707,10722,10723,10738,10739,10754,10755,10814,10815,10830,10831,10846,10847,10862,10863],{},[31,10673,956],{}," If ",[63,10676,10678],{"className":10677},[66],[63,10679,10681],{"className":10680,"ariaHidden":71},[70],[63,10682,10684,10687],{"className":10683},[75],[63,10685],{"className":10686,"style":815},[79],[63,10688,11],{"className":10689},[84,85]," is not a hull vertex it lies in the hull's interior or on an\nedge, so for any ",[63,10692,10694],{"className":10693},[66],[63,10695,10697],{"className":10696,"ariaHidden":71},[70],[63,10698,10700,10703],{"className":10699},[75],[63,10701],{"className":10702,"style":815},[79],[63,10704,973],{"className":10705,"style":819},[84,85]," some hull vertex is at least as far from ",[63,10708,10710],{"className":10709},[66],[63,10711,10713],{"className":10712,"ariaHidden":71},[70],[63,10714,10716,10719],{"className":10715},[75],[63,10717],{"className":10718,"style":815},[79],[63,10720,973],{"className":10721,"style":819},[84,85]," as ",[63,10724,10726],{"className":10725},[66],[63,10727,10729],{"className":10728,"ariaHidden":71},[70],[63,10730,10732,10735],{"className":10731},[75],[63,10733],{"className":10734,"style":815},[79],[63,10736,11],{"className":10737},[84,85]," is;\nhence a farthest pair can be taken on the hull. The supporting line through ",[63,10740,10742],{"className":10741},[66],[63,10743,10745],{"className":10744,"ariaHidden":71},[70],[63,10746,10748,10751],{"className":10747},[75],[63,10749],{"className":10750,"style":815},[79],[63,10752,11],{"className":10753},[84,85],"\nperpendicular to ",[63,10756,10758],{"className":10757},[66],[63,10759,10761],{"className":10760,"ariaHidden":71},[70],[63,10762,10764,10768],{"className":10763},[75],[63,10765],{"className":10766,"style":10767},[79],"height:0.825em;vertical-align:-0.1944em;",[63,10769,10771],{"className":10770},[84,4568],[63,10772,10774,10805],{"className":10773},[126,127],[63,10775,10777,10802],{"className":10776},[131],[63,10778,10781,10793],{"className":10779,"style":10780},[135],"height:0.6306em;",[63,10782,10783,10786],{"style":1580},[63,10784],{"className":10785,"style":1512},[143],[63,10787,10789],{"className":10788},[84],[63,10790,10792],{"className":10791,"style":819},[84,85],"pq",[63,10794,10796,10799],{"style":10795},"top:-3.5506em;",[63,10797],{"className":10798,"style":1512},[143],[63,10800],{"className":10801,"style":1532},[4687],[63,10803,178],{"className":10804},[177],[63,10806,10808],{"className":10807},[131],[63,10809,10812],{"className":10810,"style":10811},[135],"height:0.1944em;",[63,10813],{}," leaves all points on ",[63,10816,10818],{"className":10817},[66],[63,10819,10821],{"className":10820,"ariaHidden":71},[70],[63,10822,10824,10827],{"className":10823},[75],[63,10825],{"className":10826,"style":815},[79],[63,10828,11],{"className":10829},[84,85],"'s side (else a point\nbeyond it would be farther from ",[63,10832,10834],{"className":10833},[66],[63,10835,10837],{"className":10836,"ariaHidden":71},[70],[63,10838,10840,10843],{"className":10839},[75],[63,10841],{"className":10842,"style":815},[79],[63,10844,973],{"className":10845,"style":819},[84,85],"), and symmetrically at ",[63,10848,10850],{"className":10849},[66],[63,10851,10853],{"className":10852,"ariaHidden":71},[70],[63,10854,10856,10859],{"className":10855},[75],[63,10857],{"className":10858,"style":815},[79],[63,10860,973],{"className":10861,"style":819},[84,85]," — two parallel\nsupporting lines, so the pair is antipodal. ",[63,10864,10866],{"className":10865},[66],[63,10867,10869],{"className":10868,"ariaHidden":71},[70],[63,10870,10872,10875],{"className":10871},[75],[63,10873],{"className":10874,"style":1735},[79],[63,10876,10878],{"className":10877},[1739,1740],[63,10879,1745],{"className":10880},[84,1744],[11,10882,10883,10884,10965,10966,11016,11017,11041,11042,11045,11046,11049,11050,11066,11067,11070],{},"Checking all ",[63,10885,10887],{"className":10886},[66],[63,10888,10890],{"className":10889,"ariaHidden":71},[70],[63,10891,10893,10897],{"className":10892},[75],[63,10894],{"className":10895,"style":10896},[79],"height:1.2801em;vertical-align:-0.35em;",[63,10898,10900,10906,10959],{"className":10899},[84],[63,10901,10903],{"className":10902,"style":112},[110,111],[63,10904,118],{"className":10905},[116,117],[63,10907,10909],{"className":10908},[122],[63,10910,10912,10951],{"className":10911},[126,127],[63,10913,10915,10948],{"className":10914},[131],[63,10916,10919,10933],{"className":10917,"style":10918},[135],"height:0.9301em;",[63,10920,10921,10924],{"style":139},[63,10922],{"className":10923,"style":144},[143],[63,10925,10927],{"className":10926},[148,149,150,151],[63,10928,10930],{"className":10929},[84,151],[63,10931,158],{"className":10932},[84,151],[63,10934,10935,10938],{"style":161},[63,10936],{"className":10937,"style":144},[143],[63,10939,10941],{"className":10940},[148,149,150,151],[63,10942,10944],{"className":10943},[84,151],[63,10945,10947],{"className":10946},[84,85,151],"h",[63,10949,178],{"className":10950},[177],[63,10952,10954],{"className":10953},[131],[63,10955,10957],{"className":10956,"style":185},[135],[63,10958],{},[63,10960,10962],{"className":10961,"style":112},[191,111],[63,10963,195],{"className":10964},[116,117]," hull-vertex pairs is ",[63,10967,10969],{"className":10968},[66],[63,10970,10972],{"className":10971,"ariaHidden":71},[70],[63,10973,10975,10978,10981,10984,11013],{"className":10974},[75],[63,10976],{"className":10977,"style":209},[79],[63,10979,213],{"className":10980},[84],[63,10982,118],{"className":10983},[110],[63,10985,10987,10990],{"className":10986},[84],[63,10988,10947],{"className":10989},[84,85],[63,10991,10993],{"className":10992},[226],[63,10994,10996],{"className":10995},[126],[63,10997,10999],{"className":10998},[131],[63,11000,11002],{"className":11001,"style":236},[135],[63,11003,11004,11007],{"style":239},[63,11005],{"className":11006,"style":144},[143],[63,11008,11010],{"className":11009},[148,149,150,151],[63,11011,158],{"className":11012},[84,151],[63,11014,195],{"className":11015},[191],". Rotating calipers\ndo it in ",[63,11018,11020],{"className":11019},[66],[63,11021,11023],{"className":11022,"ariaHidden":71},[70],[63,11024,11026,11029,11032,11035,11038],{"className":11025},[75],[63,11027],{"className":11028,"style":528},[79],[63,11030,1771],{"className":11031,"style":1770},[84,85],[63,11033,118],{"className":11034},[110],[63,11036,10947],{"className":11037},[84,85],[63,11039,195],{"className":11040},[191]," by exploiting ",[31,11043,11044],{},"monotonicity",": imagine two parallel lines\n(",[973,11047,11048],{},"calipers",") squeezing the hull, and rotate them together through ",[63,11051,11053],{"className":11052},[66],[63,11054,11056],{"className":11055,"ariaHidden":71},[70],[63,11057,11059,11062],{"className":11058},[75],[63,11060],{"className":11061,"style":509},[79],[63,11063,11065],{"className":11064},[84],"180°",". As the\ncalipers turn, each touches a hull vertex; the contact points advance ",[31,11068,11069],{},"around the\nhull in step",", never backtracking, because the support direction is monotone.\nEvery antipodal pair is realized as some caliper orientation, so walking the two\ncontact pointers once around the hull visits all candidate pairs.",[11,11072,11073,11074,11218,11219,11235,11236,11239,11240,11380,11381,11397,11398,11413,11414,11417,11418,11433,11434,11449],{},"Concretely, for hull vertices in counterclockwise order, the area of the triangle\n",[63,11075,11077],{"className":11076},[66],[63,11078,11080],{"className":11079,"ariaHidden":71},[70],[63,11081,11083,11087,11127,11176],{"className":11082},[75],[63,11084],{"className":11085,"style":11086},[79],"height:0.9694em;vertical-align:-0.2861em;",[63,11088,11090,11093],{"className":11089},[84],[63,11091,4342],{"className":11092,"style":1220},[84,85],[63,11094,11096],{"className":11095},[226],[63,11097,11099,11119],{"className":11098},[126,127],[63,11100,11102,11116],{"className":11101},[131],[63,11103,11105],{"className":11104,"style":4605},[135],[63,11106,11107,11110],{"style":4358},[63,11108],{"className":11109,"style":144},[143],[63,11111,11113],{"className":11112},[148,149,150,151],[63,11114,4617],{"className":11115},[84,85,151],[63,11117,178],{"className":11118},[177],[63,11120,11122],{"className":11121},[131],[63,11123,11125],{"className":11124,"style":440},[135],[63,11126],{},[63,11128,11130,11133],{"className":11129},[84],[63,11131,4342],{"className":11132,"style":1220},[84,85],[63,11134,11136],{"className":11135},[226],[63,11137,11139,11168],{"className":11138},[126,127],[63,11140,11142,11165],{"className":11141},[131],[63,11143,11145],{"className":11144,"style":4605},[135],[63,11146,11147,11150],{"style":4358},[63,11148],{"className":11149,"style":144},[143],[63,11151,11153],{"className":11152},[148,149,150,151],[63,11154,11156,11159,11162],{"className":11155},[84,151],[63,11157,4617],{"className":11158},[84,85,151],[63,11160,1225],{"className":11161},[1224,151],[63,11163,1778],{"className":11164},[84,151],[63,11166,178],{"className":11167},[177],[63,11169,11171],{"className":11170},[131],[63,11172,11174],{"className":11173,"style":4446},[135],[63,11175],{},[63,11177,11179,11182],{"className":11178},[84],[63,11180,4342],{"className":11181,"style":1220},[84,85],[63,11183,11185],{"className":11184},[226],[63,11186,11188,11210],{"className":11187},[126,127],[63,11189,11191,11207],{"className":11190},[131],[63,11192,11194],{"className":11193,"style":4605},[135],[63,11195,11196,11199],{"style":4358},[63,11197],{"className":11198,"style":144},[143],[63,11200,11202],{"className":11201},[148,149,150,151],[63,11203,11206],{"className":11204,"style":11205},[84,85,151],"margin-right:0.0572em;","j",[63,11208,178],{"className":11209},[177],[63,11211,11213],{"className":11212},[131],[63,11214,11216],{"className":11215,"style":1100},[135],[63,11217],{}," (a cross product) is maximized, over ",[63,11220,11222],{"className":11221},[66],[63,11223,11225],{"className":11224,"ariaHidden":71},[70],[63,11226,11228,11232],{"className":11227},[75],[63,11229],{"className":11230,"style":11231},[79],"height:0.854em;vertical-align:-0.1944em;",[63,11233,11206],{"className":11234,"style":11205},[84,85],", at the vertex\n",[31,11237,11238],{},"farthest"," from edge ",[63,11241,11243],{"className":11242},[66],[63,11244,11246],{"className":11245,"ariaHidden":71},[70],[63,11247,11249,11252],{"className":11248},[75],[63,11250],{"className":11251,"style":4564},[79],[63,11253,11255],{"className":11254},[84,4568],[63,11256,11258,11372],{"className":11257},[126,127],[63,11259,11261,11369],{"className":11260},[131],[63,11262,11264,11361],{"className":11263,"style":4578},[135],[63,11265,11266,11269],{"style":1580},[63,11267],{"className":11268,"style":1512},[143],[63,11270,11272,11312],{"className":11271},[84],[63,11273,11275,11278],{"className":11274},[84],[63,11276,4342],{"className":11277,"style":1220},[84,85],[63,11279,11281],{"className":11280},[226],[63,11282,11284,11304],{"className":11283},[126,127],[63,11285,11287,11301],{"className":11286},[131],[63,11288,11290],{"className":11289,"style":4605},[135],[63,11291,11292,11295],{"style":4358},[63,11293],{"className":11294,"style":144},[143],[63,11296,11298],{"className":11297},[148,149,150,151],[63,11299,4617],{"className":11300},[84,85,151],[63,11302,178],{"className":11303},[177],[63,11305,11307],{"className":11306},[131],[63,11308,11310],{"className":11309,"style":440},[135],[63,11311],{},[63,11313,11315,11318],{"className":11314},[84],[63,11316,4342],{"className":11317,"style":1220},[84,85],[63,11319,11321],{"className":11320},[226],[63,11322,11324,11353],{"className":11323},[126,127],[63,11325,11327,11350],{"className":11326},[131],[63,11328,11330],{"className":11329,"style":4605},[135],[63,11331,11332,11335],{"style":4358},[63,11333],{"className":11334,"style":144},[143],[63,11336,11338],{"className":11337},[148,149,150,151],[63,11339,11341,11344,11347],{"className":11340},[84,151],[63,11342,4617],{"className":11343},[84,85,151],[63,11345,1225],{"className":11346},[1224,151],[63,11348,1778],{"className":11349},[84,151],[63,11351,178],{"className":11352},[177],[63,11354,11356],{"className":11355},[131],[63,11357,11359],{"className":11358,"style":4446},[135],[63,11360],{},[63,11362,11363,11366],{"style":4680},[63,11364],{"className":11365,"style":1512},[143],[63,11367],{"className":11368,"style":1532},[4687],[63,11370,178],{"className":11371},[177],[63,11373,11375],{"className":11374},[131],[63,11376,11378],{"className":11377,"style":4446},[135],[63,11379],{},". As ",[63,11382,11384],{"className":11383},[66],[63,11385,11387],{"className":11386,"ariaHidden":71},[70],[63,11388,11390,11394],{"className":11389},[75],[63,11391],{"className":11392,"style":11393},[79],"height:0.6595em;",[63,11395,4617],{"className":11396},[84,85]," advances by one edge, the\nfarthest vertex ",[63,11399,11401],{"className":11400},[66],[63,11402,11404],{"className":11403,"ariaHidden":71},[70],[63,11405,11407,11410],{"className":11406},[75],[63,11408],{"className":11409,"style":11231},[79],[63,11411,11206],{"className":11412,"style":11205},[84,85]," only moves ",[31,11415,11416],{},"forward",", so a single linear walk of ",[63,11419,11421],{"className":11420},[66],[63,11422,11424],{"className":11423,"ariaHidden":71},[70],[63,11425,11427,11430],{"className":11426},[75],[63,11428],{"className":11429,"style":11231},[79],[63,11431,11206],{"className":11432,"style":11205},[84,85]," keeps\npace with ",[63,11435,11437],{"className":11436},[66],[63,11438,11440],{"className":11439,"ariaHidden":71},[70],[63,11441,11443,11446],{"className":11442},[75],[63,11444],{"className":11445,"style":11393},[79],[63,11447,4617],{"className":11448},[84,85],". Each antipodal pair encountered is a diameter candidate.",[708,11451],{"hash":11452},"7903948aa78f46dc16c6b7fec1f9e4a96e901421f73b6031103f69f8668fa701",[2224,11454,11456],{"className":2226,"code":11455,"language":2228,"meta":6,"style":6},"caption: $\\textsc{Diameter}(H)$ — farthest pair via rotating calipers, $H$ a CCW hull\nnumber: 2\n$h \\gets |H|$\nif $h \\le 2$ then\n  return the only pair\n$j \\gets 1;\\ best \\gets 0$           \u002F\u002F $j$ = current farthest vertex\nfor $i \\gets 0$ to $h - 1$ do\n  \u002F\u002F advance $j$ while the next vertex is farther from edge $\\overline{V_i V_{i+1}}$\n  while $\\area(H_i, H_{i+1}, H_{j+1}) > \\area(H_i, H_{i+1}, H_j)$ do\n    $j \\gets (j + 1) \\bmod h$\n  $best \\gets \\max(best,\\ \\dist(H_i, H_j),\\ \\dist(H_{i+1}, H_j))$\nreturn $best$\n",[2230,11457,11458,11463,11468,11473,11478,11483,11488,11493,11498,11503,11508,11513],{"__ignoreMap":6},[63,11459,11460],{"class":2234,"line":2235},[63,11461,11462],{},"caption: $\\textsc{Diameter}(H)$ — farthest pair via rotating calipers, $H$ a CCW hull\n",[63,11464,11465],{"class":2234,"line":2241},[63,11466,11467],{},"number: 2\n",[63,11469,11470],{"class":2234,"line":2247},[63,11471,11472],{},"$h \\gets |H|$\n",[63,11474,11475],{"class":2234,"line":2253},[63,11476,11477],{},"if $h \\le 2$ then\n",[63,11479,11480],{"class":2234,"line":2259},[63,11481,11482],{},"  return the only pair\n",[63,11484,11485],{"class":2234,"line":2265},[63,11486,11487],{},"$j \\gets 1;\\ best \\gets 0$           \u002F\u002F $j$ = current farthest vertex\n",[63,11489,11490],{"class":2234,"line":2271},[63,11491,11492],{},"for $i \\gets 0$ to $h - 1$ do\n",[63,11494,11495],{"class":2234,"line":2277},[63,11496,11497],{},"  \u002F\u002F advance $j$ while the next vertex is farther from edge $\\overline{V_i V_{i+1}}$\n",[63,11499,11500],{"class":2234,"line":2283},[63,11501,11502],{},"  while $\\area(H_i, H_{i+1}, H_{j+1}) > \\area(H_i, H_{i+1}, H_j)$ do\n",[63,11504,11505],{"class":2234,"line":2289},[63,11506,11507],{},"    $j \\gets (j + 1) \\bmod h$\n",[63,11509,11510],{"class":2234,"line":2295},[63,11511,11512],{},"  $best \\gets \\max(best,\\ \\dist(H_i, H_j),\\ \\dist(H_{i+1}, H_j))$\n",[63,11514,11515],{"class":2234,"line":2301},[63,11516,11517],{},"return $best$\n",[708,11519],{"hash":11520},"e61607e211f17e07c6b52fe433dd0c1993164ef86d738d4d5cd19e482faf1ef2",[11,11522,11523,11524,11539,11540,11543,11544,11568,11569,11584,11585,11609,11610,11649,11650,11700,11701,11709,11710,11712,11713,11716,11717,11719],{},"Because ",[63,11525,11527],{"className":11526},[66],[63,11528,11530],{"className":11529,"ariaHidden":71},[70],[63,11531,11533,11536],{"className":11532},[75],[63,11534],{"className":11535,"style":11231},[79],[63,11537,11206],{"className":11538,"style":11205},[84,85]," only ever advances and wraps once, the inner ",[2230,11541,11542],{},"while"," does ",[63,11545,11547],{"className":11546},[66],[63,11548,11550],{"className":11549,"ariaHidden":71},[70],[63,11551,11553,11556,11559,11562,11565],{"className":11552},[75],[63,11554],{"className":11555,"style":528},[79],[63,11557,1771],{"className":11558,"style":1770},[84,85],[63,11560,118],{"className":11561},[110],[63,11563,10947],{"className":11564},[84,85],[63,11566,195],{"className":11567},[191]," total\nwork across all ",[63,11570,11572],{"className":11571},[66],[63,11573,11575],{"className":11574,"ariaHidden":71},[70],[63,11576,11578,11581],{"className":11577},[75],[63,11579],{"className":11580,"style":11393},[79],[63,11582,4617],{"className":11583},[84,85]," — the pointer makes a single trip around the hull. The\ndiameter scan is therefore ",[63,11586,11588],{"className":11587},[66],[63,11589,11591],{"className":11590,"ariaHidden":71},[70],[63,11592,11594,11597,11600,11603,11606],{"className":11593},[75],[63,11595],{"className":11596,"style":528},[79],[63,11598,1771],{"className":11599,"style":1770},[84,85],[63,11601,118],{"className":11602},[110],[63,11604,10947],{"className":11605},[84,85],[63,11607,195],{"className":11608},[191],", and ",[63,11611,11613],{"className":11612},[66],[63,11614,11616],{"className":11615,"ariaHidden":71},[70],[63,11617,11619,11622,11625,11628,11631,11634,11640,11643,11646],{"className":11618},[75],[63,11620],{"className":11621,"style":528},[79],[63,11623,1771],{"className":11624,"style":1770},[84,85],[63,11626,118],{"className":11627},[110],[63,11629,86],{"className":11630},[84,85],[63,11632],{"className":11633,"style":589},[360],[63,11635,11637],{"className":11636},[532],[63,11638,2146],{"className":11639,"style":2145},[84,536],[63,11641],{"className":11642,"style":589},[360],[63,11644,86],{"className":11645},[84,85],[63,11647,195],{"className":11648},[191]," end-to-end once the hull is\nbuilt, against ",[63,11651,11653],{"className":11652},[66],[63,11654,11656],{"className":11655,"ariaHidden":71},[70],[63,11657,11659,11662,11665,11668,11697],{"className":11658},[75],[63,11660],{"className":11661,"style":209},[79],[63,11663,213],{"className":11664},[84],[63,11666,118],{"className":11667},[110],[63,11669,11671,11674],{"className":11670},[84],[63,11672,86],{"className":11673},[84,85],[63,11675,11677],{"className":11676},[226],[63,11678,11680],{"className":11679},[126],[63,11681,11683],{"className":11682},[131],[63,11684,11686],{"className":11685,"style":236},[135],[63,11687,11688,11691],{"style":239},[63,11689],{"className":11690,"style":144},[143],[63,11692,11694],{"className":11693},[148,149,150,151],[63,11695,158],{"className":11696},[84,151],[63,11698,195],{"className":11699},[191]," for all-pairs.",[2215,11702,11703],{},[15,11704,11708],{"href":11705,"ariaDescribedBy":11706,"dataFootnoteRef":6,"id":11707},"#user-content-fn-skiena-calipers",[2221],"user-content-fnref-skiena-calipers","3"," The ",[2230,11711,41],{}," calls are\ncross products, so distances enter only at the final ",[2230,11714,11715],{},"max"," (and even there,\ncomparing ",[31,11718,2387],{}," distances keeps it exact).",[11,11721,11722,11723,11726,11727,11730,11731,11755],{},"The same caliper sweep answers the dual question, the ",[31,11724,11725],{},"width"," — the smallest\ndistance between two parallel supporting lines, i.e. the narrowest slab containing\nthe polygon. The minimum-width slab always has one line ",[31,11728,11729],{},"flush with a hull edge",",\nso rotate one caliper along each edge in turn and track the antipodal vertex's\nperpendicular distance (a cross product divided by the edge length); the minimum\nover edges is the width. It drives smallest-enclosing-rectangle and\ncollision-clearance queries, again in ",[63,11732,11734],{"className":11733},[66],[63,11735,11737],{"className":11736,"ariaHidden":71},[70],[63,11738,11740,11743,11746,11749,11752],{"className":11739},[75],[63,11741],{"className":11742,"style":528},[79],[63,11744,1771],{"className":11745,"style":1770},[84,85],[63,11747,118],{"className":11748},[110],[63,11750,10947],{"className":11751},[84,85],[63,11753,195],{"className":11754},[191]," after the hull.",[2716,11757,11760],{"dataImplLabel":11758,"id":11759},"rotating calipers implementation","impl-rotating-calipers",[2224,11761,11764],{"className":2725,"code":11762,"filename":11763,"language":2728,"meta":6,"style":6},"import math\nfrom typing import Sequence\n\nfrom geometry import Point, cross, squared_distance\n\ndef convex_hull(points: Sequence[Point]) -> list[Point]:\n  \"\"\"\n    Convex hull of `points` in counterclockwise order (Andrew's monotone\\n\n    chain). Only true corners are kept; collinear interior points drop out.\\n\n    Fewer than three distinct points return the deduplicated, sorted points.\\n\n  \"\"\"\n  # too few distinct points to form a hull — return them sorted.\n  ordered: list[Point] = sorted(set(points))\n  if len(ordered) \u003C 3:\n    return ordered\n\n  # sweep a half-hull, popping any vertex that makes a non-left turn.\n  def build_chain(sweep: Sequence[Point]) -> list[Point]:\n    chain: list[Point] = []\n    for candidate in sweep:\n      while len(chain) >= 2 and cross(chain[-2], chain[-1], candidate) \u003C= 0:\n        chain.pop()\n      chain.append(candidate)\n    return chain\n\n  # stitch the lower and upper chains, dropping each one's shared endpoint.\n  lower: list[Point] = build_chain(ordered)\n  upper: list[Point] = build_chain(list(reversed(ordered)))\n  return lower[:-1] + upper[:-1]\n\ndef _twice_triangle_area(first: Point, second: Point, apex: Point) -> int:\n  \"\"\"\n    Twice the unsigned area of triangle first-second-apex.\\n\n    The distance of `apex` from line first-second, up to the fixed edge\\n\n    length — exactly what the caliper pointer maximizes.\\n\n  \"\"\"\n  return abs(cross(first, second, apex))\n\ndef diameter(points: Sequence[Point]) -> tuple[Point, Point]:\n  \"\"\"\n    The farthest pair of `points` (largest Euclidean distance).\\n\n    Builds the hull, then advances a single antipodal pointer around it,\\n\n    checking each candidate antipodal pair. Requires at least two distinct\\n\n    points; runs in O(n log n).\\n\n  \"\"\"\n  # degenerate hulls: error on a single point, take the segment's endpoints.\n  hull: list[Point] = convex_hull(points)\n  hull_size: int = len(hull)\n  if hull_size \u003C 2:\n    raise ValueError(\"diameter needs at least two distinct points\")\n  if hull_size == 2:\n    return (hull[0], hull[1])\n\n  best_squared: int = -1\n  best_pair: tuple[Point, Point] = (hull[0], hull[1])\n  antipodal: int = 1\n  for edge_index in range(hull_size):\n    edge_start: Point = hull[edge_index]\n    edge_end: Point = hull[(edge_index + 1) % hull_size]\n\n    # advance the antipodal pointer while the next vertex is farther from\n    # the current edge; it never backtracks across the whole sweep.\n    while (\n      _twice_triangle_area(edge_start, edge_end, hull[(antipodal + 1) % hull_size])\n      > _twice_triangle_area(edge_start, edge_end, hull[antipodal])\n    ):\n      antipodal = (antipodal + 1) % hull_size\n\n    # both endpoints of the edge against the antipodal vertex are candidates.\n    for endpoint in (edge_start, edge_end):\n      distance: int = squared_distance(endpoint, hull[antipodal])\n      if distance > best_squared:\n        best_squared = distance\n        best_pair = (endpoint, hull[antipodal])\n\n  return best_pair\n\ndef width(points: Sequence[Point]) -> float:\n  \"\"\"\n    The width of `points`: the narrowest slab (pair of parallel supporting\\n\n    lines) containing them all. One line is always flush with a hull edge,\\n\n    so rotate one caliper along each edge and track the antipodal vertex's\\n\n    perpendicular distance; the minimum over edges is the width. Returns 0.0\\n\n    when the hull is degenerate (a point or a segment). Runs in O(n log n).\\n\n  \"\"\"\n  # a point or segment has no width.\n  hull: list[Point] = convex_hull(points)\n  hull_size: int = len(hull)\n  if hull_size \u003C 3:\n    return 0.0\n\n  best_width: float = math.inf\n  antipodal: int = 1\n  for edge_index in range(hull_size):\n    edge_start: Point = hull[edge_index]\n    edge_end: Point = hull[(edge_index + 1) % hull_size]\n\n    # carry the antipodal pointer forward to the vertex farthest from the edge.\n    while (\n      _twice_triangle_area(edge_start, edge_end, hull[(antipodal + 1) % hull_size])\n      > _twice_triangle_area(edge_start, edge_end, hull[antipodal])\n    ):\n      antipodal = (antipodal + 1) % hull_size\n\n    # perpendicular distance = (twice triangle area) \u002F (edge length).\n    twice_area: int = _twice_triangle_area(edge_start, edge_end, hull[antipodal])\n    edge_length: float = math.sqrt(squared_distance(edge_start, edge_end))\n    best_width = min(best_width, twice_area \u002F edge_length)\n\n  return best_width\n","rotating_calipers.py",[2230,11765,11766,11773,11783,11787,11798,11802,11812,11816,11823,11830,11837,11841,11846,11863,11878,11885,11889,11894,11905,11915,11927,11967,11972,11977,11984,11988,11993,12003,12024,12048,12052,12066,12070,12077,12084,12091,12095,12104,12108,12117,12121,12128,12135,12142,12149,12153,12158,12168,12182,12195,12208,12220,12236,12240,12255,12272,12283,12297,12307,12328,12332,12337,12342,12348,12364,12372,12377,12398,12402,12407,12419,12430,12441,12451,12461,12465,12472,12476,12491,12495,12502,12509,12516,12523,12530,12534,12539,12547,12559,12571,12578,12582,12594,12604,12616,12624,12642,12646,12651,12657,12671,12677,12681,12699,12703,12708,12720,12733,12752,12757],{"__ignoreMap":6},[63,11767,11768,11770],{"class":2234,"line":2235},[63,11769,2743],{"class":2735},[63,11771,11772],{"class":2739}," math\n",[63,11774,11775,11777,11779,11781],{"class":2234,"line":2241},[63,11776,2736],{"class":2735},[63,11778,2740],{"class":2739},[63,11780,2743],{"class":2735},[63,11782,3201],{"class":2739},[63,11784,11785],{"class":2234,"line":2247},[63,11786,2752],{"emptyLinePlaceholder":2751},[63,11788,11789,11791,11793,11795],{"class":2234,"line":2253},[63,11790,2736],{"class":2735},[63,11792,3212],{"class":2739},[63,11794,2743],{"class":2735},[63,11796,11797],{"class":2739}," Point, cross, squared_distance\n",[63,11799,11800],{"class":2234,"line":2259},[63,11801,2752],{"emptyLinePlaceholder":2751},[63,11803,11804,11806,11809],{"class":2234,"line":2265},[63,11805,2820],{"class":2735},[63,11807,11808],{"class":2760}," convex_hull",[63,11810,11811],{"class":2739},"(points: Sequence[Point]) -> list[Point]:\n",[63,11813,11814],{"class":2234,"line":2271},[63,11815,2770],{"class":2769},[63,11817,11818,11821],{"class":2234,"line":2277},[63,11819,11820],{"class":2769},"    Convex hull of `points` in counterclockwise order (Andrew's monotone",[63,11822,2778],{"class":2735},[63,11824,11825,11828],{"class":2234,"line":2283},[63,11826,11827],{"class":2769},"    chain). Only true corners are kept; collinear interior points drop out.",[63,11829,2778],{"class":2735},[63,11831,11832,11835],{"class":2234,"line":2289},[63,11833,11834],{"class":2769},"    Fewer than three distinct points return the deduplicated, sorted points.",[63,11836,2778],{"class":2735},[63,11838,11839],{"class":2234,"line":2295},[63,11840,2770],{"class":2769},[63,11842,11843],{"class":2234,"line":2301},[63,11844,11845],{"class":3098},"  # too few distinct points to form a hull — return them sorted.\n",[63,11847,11848,11851,11853,11855,11857,11860],{"class":2234,"line":2307},[63,11849,11850],{"class":2739},"  ordered: list[Point] ",[63,11852,366],{"class":2735},[63,11854,4253],{"class":2760},[63,11856,118],{"class":2739},[63,11858,11859],{"class":2760},"set",[63,11861,11862],{"class":2739},"(points))\n",[63,11864,11865,11867,11869,11872,11874,11876],{"class":2234,"line":2313},[63,11866,3105],{"class":2735},[63,11868,3551],{"class":2760},[63,11870,11871],{"class":2739},"(ordered) ",[63,11873,693],{"class":2735},[63,11875,3791],{"class":2760},[63,11877,2832],{"class":2739},[63,11879,11880,11882],{"class":2234,"line":2319},[63,11881,3122],{"class":2735},[63,11883,11884],{"class":2739}," ordered\n",[63,11886,11887],{"class":2234,"line":2325},[63,11888,2752],{"emptyLinePlaceholder":2751},[63,11890,11891],{"class":2234,"line":2860},[63,11892,11893],{"class":3098},"  # sweep a half-hull, popping any vertex that makes a non-left turn.\n",[63,11895,11896,11899,11902],{"class":2234,"line":2865},[63,11897,11898],{"class":2735},"  def",[63,11900,11901],{"class":2760}," build_chain",[63,11903,11904],{"class":2739},"(sweep: Sequence[Point]) -> list[Point]:\n",[63,11906,11907,11910,11912],{"class":2234,"line":2874},[63,11908,11909],{"class":2739},"    chain: list[Point] ",[63,11911,366],{"class":2735},[63,11913,11914],{"class":2739}," []\n",[63,11916,11917,11919,11922,11924],{"class":2234,"line":2897},[63,11918,3339],{"class":2735},[63,11920,11921],{"class":2739}," candidate ",[63,11923,3323],{"class":2735},[63,11925,11926],{"class":2739}," sweep:\n",[63,11928,11929,11932,11934,11937,11939,11941,11944,11947,11949,11951,11954,11956,11958,11961,11963,11965],{"class":2234,"line":2921},[63,11930,11931],{"class":2735},"      while",[63,11933,3551],{"class":2760},[63,11935,11936],{"class":2739},"(chain) ",[63,11938,3630],{"class":2735},[63,11940,4212],{"class":2760},[63,11942,11943],{"class":2735}," and",[63,11945,11946],{"class":2739}," cross(chain[",[63,11948,2880],{"class":2735},[63,11950,158],{"class":2760},[63,11952,11953],{"class":2739},"], chain[",[63,11955,2880],{"class":2735},[63,11957,1778],{"class":2760},[63,11959,11960],{"class":2739},"], candidate) ",[63,11962,3144],{"class":2735},[63,11964,3114],{"class":2760},[63,11966,2832],{"class":2739},[63,11968,11969],{"class":2234,"line":2927},[63,11970,11971],{"class":2739},"        chain.pop()\n",[63,11973,11974],{"class":2234,"line":2932},[63,11975,11976],{"class":2739},"      chain.append(candidate)\n",[63,11978,11979,11981],{"class":2234,"line":2947},[63,11980,3122],{"class":2735},[63,11982,11983],{"class":2739}," chain\n",[63,11985,11986],{"class":2234,"line":2952},[63,11987,2752],{"emptyLinePlaceholder":2751},[63,11989,11990],{"class":2234,"line":2960},[63,11991,11992],{"class":3098},"  # stitch the lower and upper chains, dropping each one's shared endpoint.\n",[63,11994,11995,11998,12000],{"class":2234,"line":2968},[63,11996,11997],{"class":2739},"  lower: list[Point] ",[63,11999,366],{"class":2735},[63,12001,12002],{"class":2739}," build_chain(ordered)\n",[63,12004,12005,12008,12010,12013,12016,12018,12021],{"class":2234,"line":2976},[63,12006,12007],{"class":2739},"  upper: list[Point] ",[63,12009,366],{"class":2735},[63,12011,12012],{"class":2739}," build_chain(",[63,12014,12015],{"class":2760},"list",[63,12017,118],{"class":2739},[63,12019,12020],{"class":2760},"reversed",[63,12022,12023],{"class":2739},"(ordered)))\n",[63,12025,12026,12028,12031,12033,12035,12037,12039,12042,12044,12046],{"class":2234,"line":2981},[63,12027,2868],{"class":2735},[63,12029,12030],{"class":2739}," lower[:",[63,12032,2880],{"class":2735},[63,12034,1778],{"class":2760},[63,12036,3893],{"class":2739},[63,12038,1225],{"class":2735},[63,12040,12041],{"class":2739}," upper[:",[63,12043,2880],{"class":2735},[63,12045,1778],{"class":2760},[63,12047,4077],{"class":2739},[63,12049,12050],{"class":2234,"line":3000},[63,12051,2752],{"emptyLinePlaceholder":2751},[63,12053,12054,12056,12059,12062,12064],{"class":2234,"line":3018},[63,12055,2820],{"class":2735},[63,12057,12058],{"class":2760}," _twice_triangle_area",[63,12060,12061],{"class":2739},"(first: Point, second: Point, apex: Point) -> ",[63,12063,2829],{"class":2760},[63,12065,2832],{"class":2739},[63,12067,12068],{"class":2234,"line":3040},[63,12069,2770],{"class":2769},[63,12071,12072,12075],{"class":2234,"line":3045},[63,12073,12074],{"class":2769},"    Twice the unsigned area of triangle first-second-apex.",[63,12076,2778],{"class":2735},[63,12078,12079,12082],{"class":2234,"line":3061},[63,12080,12081],{"class":2769},"    The distance of `apex` from line first-second, up to the fixed edge",[63,12083,2778],{"class":2735},[63,12085,12086,12089],{"class":2234,"line":3066},[63,12087,12088],{"class":2769},"    length — exactly what the caliper pointer maximizes.",[63,12090,2778],{"class":2735},[63,12092,12093],{"class":2234,"line":3074},[63,12094,2770],{"class":2769},[63,12096,12097,12099,12101],{"class":2234,"line":3082},[63,12098,2868],{"class":2735},[63,12100,10573],{"class":2760},[63,12102,12103],{"class":2739},"(cross(first, second, apex))\n",[63,12105,12106],{"class":2234,"line":3090},[63,12107,2752],{"emptyLinePlaceholder":2751},[63,12109,12110,12112,12115],{"class":2234,"line":3095},[63,12111,2820],{"class":2735},[63,12113,12114],{"class":2760}," diameter",[63,12116,4163],{"class":2739},[63,12118,12119],{"class":2234,"line":3102},[63,12120,2770],{"class":2769},[63,12122,12123,12126],{"class":2234,"line":3119},[63,12124,12125],{"class":2769},"    The farthest pair of `points` (largest Euclidean distance).",[63,12127,2778],{"class":2735},[63,12129,12130,12133],{"class":2234,"line":3128},[63,12131,12132],{"class":2769},"    Builds the hull, then advances a single antipodal pointer around it,",[63,12134,2778],{"class":2735},[63,12136,12137,12140],{"class":2234,"line":3135},[63,12138,12139],{"class":2769},"    checking each candidate antipodal pair. Requires at least two distinct",[63,12141,2778],{"class":2735},[63,12143,12144,12147],{"class":2234,"line":3158},[63,12145,12146],{"class":2769},"    points; runs in O(n log n).",[63,12148,2778],{"class":2735},[63,12150,12151],{"class":2234,"line":3182},[63,12152,2770],{"class":2769},[63,12154,12155],{"class":2234,"line":3645},[63,12156,12157],{"class":3098},"  # degenerate hulls: error on a single point, take the segment's endpoints.\n",[63,12159,12160,12163,12165],{"class":2234,"line":3650},[63,12161,12162],{"class":2739},"  hull: list[Point] ",[63,12164,366],{"class":2735},[63,12166,12167],{"class":2739}," convex_hull(points)\n",[63,12169,12170,12173,12175,12177,12179],{"class":2234,"line":3656},[63,12171,12172],{"class":2739},"  hull_size: ",[63,12174,2829],{"class":2760},[63,12176,2989],{"class":2735},[63,12178,3551],{"class":2760},[63,12180,12181],{"class":2739},"(hull)\n",[63,12183,12184,12186,12189,12191,12193],{"class":2234,"line":3668},[63,12185,3105],{"class":2735},[63,12187,12188],{"class":2739}," hull_size ",[63,12190,693],{"class":2735},[63,12192,4212],{"class":2760},[63,12194,2832],{"class":2739},[63,12196,12197,12199,12201,12203,12206],{"class":2234,"line":3683},[63,12198,4220],{"class":2735},[63,12200,4223],{"class":2760},[63,12202,118],{"class":2739},[63,12204,12205],{"class":2769},"\"diameter needs at least two distinct points\"",[63,12207,4231],{"class":2739},[63,12209,12210,12212,12214,12216,12218],{"class":2234,"line":3694},[63,12211,3105],{"class":2735},[63,12213,12188],{"class":2739},[63,12215,6264],{"class":2735},[63,12217,4212],{"class":2760},[63,12219,2832],{"class":2739},[63,12221,12222,12224,12227,12229,12232,12234],{"class":2234,"line":3705},[63,12223,3122],{"class":2735},[63,12225,12226],{"class":2739}," (hull[",[63,12228,3295],{"class":2760},[63,12230,12231],{"class":2739},"], hull[",[63,12233,1778],{"class":2760},[63,12235,3312],{"class":2739},[63,12237,12238],{"class":2234,"line":3710},[63,12239,2752],{"emptyLinePlaceholder":2751},[63,12241,12242,12245,12247,12249,12252],{"class":2234,"line":3718},[63,12243,12244],{"class":2739},"  best_squared: ",[63,12246,2829],{"class":2760},[63,12248,2989],{"class":2735},[63,12250,12251],{"class":2735}," -",[63,12253,12254],{"class":2760},"1\n",[63,12256,12257,12260,12262,12264,12266,12268,12270],{"class":2234,"line":3723},[63,12258,12259],{"class":2739},"  best_pair: tuple[Point, Point] ",[63,12261,366],{"class":2735},[63,12263,12226],{"class":2739},[63,12265,3295],{"class":2760},[63,12267,12231],{"class":2739},[63,12269,1778],{"class":2760},[63,12271,3312],{"class":2739},[63,12273,12274,12277,12279,12281],{"class":2234,"line":3734},[63,12275,12276],{"class":2739},"  antipodal: ",[63,12278,2829],{"class":2760},[63,12280,2989],{"class":2735},[63,12282,3529],{"class":2760},[63,12284,12285,12287,12290,12292,12294],{"class":2234,"line":3739},[63,12286,3317],{"class":2735},[63,12288,12289],{"class":2739}," edge_index ",[63,12291,3323],{"class":2735},[63,12293,3326],{"class":2760},[63,12295,12296],{"class":2739},"(hull_size):\n",[63,12298,12299,12302,12304],{"class":2234,"line":3747},[63,12300,12301],{"class":2739},"    edge_start: Point ",[63,12303,366],{"class":2735},[63,12305,12306],{"class":2739}," hull[edge_index]\n",[63,12308,12309,12312,12314,12317,12319,12321,12323,12325],{"class":2234,"line":3755},[63,12310,12311],{"class":2739},"    edge_end: Point ",[63,12313,366],{"class":2735},[63,12315,12316],{"class":2739}," hull[(edge_index ",[63,12318,1225],{"class":2735},[63,12320,3354],{"class":2760},[63,12322,5936],{"class":2739},[63,12324,5939],{"class":2735},[63,12326,12327],{"class":2739}," hull_size]\n",[63,12329,12330],{"class":2234,"line":3760},[63,12331,2752],{"emptyLinePlaceholder":2751},[63,12333,12334],{"class":2234,"line":3766},[63,12335,12336],{"class":3098},"    # advance the antipodal pointer while the next vertex is farther from\n",[63,12338,12339],{"class":2234,"line":3781},[63,12340,12341],{"class":3098},"    # the current edge; it never backtracks across the whole sweep.\n",[63,12343,12344,12346],{"class":2234,"line":3796},[63,12345,3543],{"class":2735},[63,12347,2871],{"class":2739},[63,12349,12350,12353,12355,12357,12359,12361],{"class":2234,"line":3804},[63,12351,12352],{"class":2739},"      _twice_triangle_area(edge_start, edge_end, hull[(antipodal ",[63,12354,1225],{"class":2735},[63,12356,3354],{"class":2760},[63,12358,5936],{"class":2739},[63,12360,5939],{"class":2735},[63,12362,12363],{"class":2739}," hull_size])\n",[63,12365,12366,12369],{"class":2234,"line":3809},[63,12367,12368],{"class":2735},"      >",[63,12370,12371],{"class":2739}," _twice_triangle_area(edge_start, edge_end, hull[antipodal])\n",[63,12373,12374],{"class":2234,"line":3815},[63,12375,12376],{"class":2739},"    ):\n",[63,12378,12379,12382,12384,12387,12389,12391,12393,12395],{"class":2234,"line":3833},[63,12380,12381],{"class":2739},"      antipodal ",[63,12383,366],{"class":2735},[63,12385,12386],{"class":2739}," (antipodal ",[63,12388,1225],{"class":2735},[63,12390,3354],{"class":2760},[63,12392,5936],{"class":2739},[63,12394,5939],{"class":2735},[63,12396,12397],{"class":2739}," hull_size\n",[63,12399,12400],{"class":2234,"line":3846},[63,12401,2752],{"emptyLinePlaceholder":2751},[63,12403,12404],{"class":2234,"line":3857},[63,12405,12406],{"class":3098},"    # both endpoints of the edge against the antipodal vertex are candidates.\n",[63,12408,12409,12411,12414,12416],{"class":2234,"line":3868},[63,12410,3339],{"class":2735},[63,12412,12413],{"class":2739}," endpoint ",[63,12415,3323],{"class":2735},[63,12417,12418],{"class":2739}," (edge_start, edge_end):\n",[63,12420,12421,12423,12425,12427],{"class":2234,"line":3873},[63,12422,3390],{"class":2739},[63,12424,2829],{"class":2760},[63,12426,2989],{"class":2735},[63,12428,12429],{"class":2739}," squared_distance(endpoint, hull[antipodal])\n",[63,12431,12432,12434,12436,12438],{"class":2234,"line":3879},[63,12433,3402],{"class":2735},[63,12435,3405],{"class":2739},[63,12437,5087],{"class":2735},[63,12439,12440],{"class":2739}," best_squared:\n",[63,12442,12443,12446,12448],{"class":2234,"line":3885},[63,12444,12445],{"class":2739},"        best_squared ",[63,12447,366],{"class":2735},[63,12449,12450],{"class":2739}," distance\n",[63,12452,12453,12456,12458],{"class":2234,"line":3918},[63,12454,12455],{"class":2739},"        best_pair ",[63,12457,366],{"class":2735},[63,12459,12460],{"class":2739}," (endpoint, hull[antipodal])\n",[63,12462,12463],{"class":2234,"line":3953},[63,12464,2752],{"emptyLinePlaceholder":2751},[63,12466,12467,12469],{"class":2234,"line":3985},[63,12468,2868],{"class":2735},[63,12470,12471],{"class":2739}," best_pair\n",[63,12473,12474],{"class":2234,"line":3990},[63,12475,2752],{"emptyLinePlaceholder":2751},[63,12477,12478,12480,12483,12486,12489],{"class":2234,"line":3996},[63,12479,2820],{"class":2735},[63,12481,12482],{"class":2760}," width",[63,12484,12485],{"class":2739},"(points: Sequence[Point]) -> ",[63,12487,12488],{"class":2760},"float",[63,12490,2832],{"class":2739},[63,12492,12493],{"class":2234,"line":4007},[63,12494,2770],{"class":2769},[63,12496,12497,12500],{"class":2234,"line":4018},[63,12498,12499],{"class":2769},"    The width of `points`: the narrowest slab (pair of parallel supporting",[63,12501,2778],{"class":2735},[63,12503,12504,12507],{"class":2234,"line":4052},[63,12505,12506],{"class":2769},"    lines) containing them all. One line is always flush with a hull edge,",[63,12508,2778],{"class":2735},[63,12510,12511,12514],{"class":2234,"line":4057},[63,12512,12513],{"class":2769},"    so rotate one caliper along each edge and track the antipodal vertex's",[63,12515,2778],{"class":2735},[63,12517,12518,12521],{"class":2234,"line":4063},[63,12519,12520],{"class":2769},"    perpendicular distance; the minimum over edges is the width. Returns 0.0",[63,12522,2778],{"class":2735},[63,12524,12525,12528],{"class":2234,"line":4080},[63,12526,12527],{"class":2769},"    when the hull is degenerate (a point or a segment). Runs in O(n log n).",[63,12529,2778],{"class":2735},[63,12531,12532],{"class":2234,"line":4091},[63,12533,2770],{"class":2769},[63,12535,12536],{"class":2234,"line":4097},[63,12537,12538],{"class":3098},"  # a point or segment has no width.\n",[63,12540,12541,12543,12545],{"class":2234,"line":4109},[63,12542,12162],{"class":2739},[63,12544,366],{"class":2735},[63,12546,12167],{"class":2739},[63,12548,12549,12551,12553,12555,12557],{"class":2234,"line":4136},[63,12550,12172],{"class":2739},[63,12552,2829],{"class":2760},[63,12554,2989],{"class":2735},[63,12556,3551],{"class":2760},[63,12558,12181],{"class":2739},[63,12560,12561,12563,12565,12567,12569],{"class":2234,"line":4142},[63,12562,3105],{"class":2735},[63,12564,12188],{"class":2739},[63,12566,693],{"class":2735},[63,12568,3791],{"class":2760},[63,12570,2832],{"class":2739},[63,12572,12573,12575],{"class":2234,"line":4150},[63,12574,3122],{"class":2735},[63,12576,12577],{"class":2760}," 0.0\n",[63,12579,12580],{"class":2234,"line":4155},[63,12581,2752],{"emptyLinePlaceholder":2751},[63,12583,12584,12587,12589,12591],{"class":2234,"line":4166},[63,12585,12586],{"class":2739},"  best_width: ",[63,12588,12488],{"class":2760},[63,12590,2989],{"class":2735},[63,12592,12593],{"class":2739}," math.inf\n",[63,12595,12596,12598,12600,12602],{"class":2234,"line":4171},[63,12597,12276],{"class":2739},[63,12599,2829],{"class":2760},[63,12601,2989],{"class":2735},[63,12603,3529],{"class":2760},[63,12605,12606,12608,12610,12612,12614],{"class":2234,"line":4179},[63,12607,3317],{"class":2735},[63,12609,12289],{"class":2739},[63,12611,3323],{"class":2735},[63,12613,3326],{"class":2760},[63,12615,12296],{"class":2739},[63,12617,12618,12620,12622],{"class":2234,"line":4187},[63,12619,12301],{"class":2739},[63,12621,366],{"class":2735},[63,12623,12306],{"class":2739},[63,12625,12626,12628,12630,12632,12634,12636,12638,12640],{"class":2234,"line":4195},[63,12627,12311],{"class":2739},[63,12629,366],{"class":2735},[63,12631,12316],{"class":2739},[63,12633,1225],{"class":2735},[63,12635,3354],{"class":2760},[63,12637,5936],{"class":2739},[63,12639,5939],{"class":2735},[63,12641,12327],{"class":2739},[63,12643,12644],{"class":2234,"line":4200},[63,12645,2752],{"emptyLinePlaceholder":2751},[63,12647,12648],{"class":2234,"line":4217},[63,12649,12650],{"class":3098},"    # carry the antipodal pointer forward to the vertex farthest from the edge.\n",[63,12652,12653,12655],{"class":2234,"line":4234},[63,12654,3543],{"class":2735},[63,12656,2871],{"class":2739},[63,12658,12659,12661,12663,12665,12667,12669],{"class":2234,"line":4239},[63,12660,12352],{"class":2739},[63,12662,1225],{"class":2735},[63,12664,3354],{"class":2760},[63,12666,5936],{"class":2739},[63,12668,5939],{"class":2735},[63,12670,12363],{"class":2739},[63,12672,12673,12675],{"class":2234,"line":4245},[63,12674,12368],{"class":2735},[63,12676,12371],{"class":2739},[63,12678,12679],{"class":2234,"line":4259},[63,12680,12376],{"class":2739},[63,12682,12683,12685,12687,12689,12691,12693,12695,12697],{"class":2234,"line":4278},[63,12684,12381],{"class":2739},[63,12686,366],{"class":2735},[63,12688,12386],{"class":2739},[63,12690,1225],{"class":2735},[63,12692,3354],{"class":2760},[63,12694,5936],{"class":2739},[63,12696,5939],{"class":2735},[63,12698,12397],{"class":2739},[63,12700,12701],{"class":2234,"line":4283},[63,12702,2752],{"emptyLinePlaceholder":2751},[63,12704,12705],{"class":2234,"line":4294},[63,12706,12707],{"class":3098},"    # perpendicular distance = (twice triangle area) \u002F (edge length).\n",[63,12709,12711,12714,12716,12718],{"class":2234,"line":12710},106,[63,12712,12713],{"class":2739},"    twice_area: ",[63,12715,2829],{"class":2760},[63,12717,2989],{"class":2735},[63,12719,12371],{"class":2739},[63,12721,12723,12726,12728,12730],{"class":2234,"line":12722},107,[63,12724,12725],{"class":2739},"    edge_length: ",[63,12727,12488],{"class":2760},[63,12729,2989],{"class":2735},[63,12731,12732],{"class":2739}," math.sqrt(squared_distance(edge_start, edge_end))\n",[63,12734,12736,12739,12741,12743,12746,12749],{"class":2234,"line":12735},108,[63,12737,12738],{"class":2739},"    best_width ",[63,12740,366],{"class":2735},[63,12742,3164],{"class":2760},[63,12744,12745],{"class":2739},"(best_width, twice_area ",[63,12747,12748],{"class":2735},"\u002F",[63,12750,12751],{"class":2739}," edge_length)\n",[63,12753,12755],{"class":2234,"line":12754},109,[63,12756,2752],{"emptyLinePlaceholder":2751},[63,12758,12760,12762],{"class":2234,"line":12759},110,[63,12761,2868],{"class":2735},[63,12763,12764],{"class":2739}," best_width\n",[48,12766,12768],{"id":12767},"voronoi-delaunay-and-spatial-trees","Voronoi, Delaunay, and spatial trees",[11,12770,12771,12772,12775],{},"Closest-pair answers one proximity question for one query. Real systems ask it\nrepeatedly — nearest hospital, nearest cell tower, nearest neighbor for a\nclassifier — and want a ",[31,12773,12774],{},"structure",", built once, that answers each query fast.\nThe two canonical structures are duals of each other.",[11,12777,7053,12778,913,12781,12796,12797,12813,12814,12829,12830,12833,12834,12837,12838,12845,12846,12885,12886,12889],{},[31,12779,12780],{},"Voronoi diagram",[63,12782,12784],{"className":12783},[66],[63,12785,12787],{"className":12786,"ariaHidden":71},[70],[63,12788,12790,12793],{"className":12789},[75],[63,12791],{"className":12792,"style":80},[79],[63,12794,86],{"className":12795},[84,85]," sites partitions the plane into one cell per site,\nthe cell of site ",[63,12798,12800],{"className":12799},[66],[63,12801,12803],{"className":12802,"ariaHidden":71},[70],[63,12804,12806,12809],{"className":12805},[75],[63,12807],{"className":12808,"style":80},[79],[63,12810,12812],{"className":12811},[84,85],"s"," being every point closer to ",[63,12815,12817],{"className":12816},[66],[63,12818,12820],{"className":12819,"ariaHidden":71},[70],[63,12821,12823,12826],{"className":12822},[75],[63,12824],{"className":12825,"style":80},[79],[63,12827,12812],{"className":12828},[84,85]," than to any other site. Its\nedges are the perpendicular bisectors between neighboring sites, and a nearest-site\nquery becomes point location in this diagram. The ",[31,12831,12832],{},"Delaunay triangulation"," is\nits dual: connect two sites whenever their Voronoi cells share an edge. Delaunay\ntriangulations have a defining property — the circumcircle of every triangle is\n",[31,12835,12836],{},"empty"," of other sites — that makes them maximize the minimum angle, so they\navoid the sliver triangles that wreck interpolation and mesh quality.",[2215,12839,12840],{},[15,12841,1365],{"href":12842,"ariaDescribedBy":12843,"dataFootnoteRef":6,"id":12844},"#user-content-fn-delaunay",[2221],"user-content-fnref-delaunay","\nBoth are built in ",[63,12847,12849],{"className":12848},[66],[63,12850,12852],{"className":12851,"ariaHidden":71},[70],[63,12853,12855,12858,12861,12864,12867,12870,12876,12879,12882],{"className":12854},[75],[63,12856],{"className":12857,"style":528},[79],[63,12859,1771],{"className":12860,"style":1770},[84,85],[63,12862,118],{"className":12863},[110],[63,12865,86],{"className":12866},[84,85],[63,12868],{"className":12869,"style":589},[360],[63,12871,12873],{"className":12872},[532],[63,12874,2146],{"className":12875,"style":2145},[84,536],[63,12877],{"className":12878,"style":589},[360],[63,12880,86],{"className":12881},[84,85],[63,12883,195],{"className":12884},[191],", by Fortune's sweep from the\n",[15,12887,12888],{"href":27},"previous lesson"," or by randomized\nincremental insertion, and either one yields the closest pair as a by-product: the\ntwo nearest sites are always joined by a Delaunay edge.",[708,12891],{"hash":12892},"14bd0a3d7f692ddb6c0556f6b30224dab1ca3b71cdbbd922e710f867035f3597",[11,12894,12895,12896,12962,12963,12966,12967,12970,12971,13004,13005,13008,13009,13012,13013,13021,13022,443,13025,13028],{},"When the data is high-dimensional or the queries are approximate, Voronoi diagrams\nbecome impractical (their size grows as ",[63,12897,12899],{"className":12898},[66],[63,12900,12902],{"className":12901,"ariaHidden":71},[70],[63,12903,12905,12909,12912,12915,12959],{"className":12904},[75],[63,12906],{"className":12907,"style":12908},[79],"height:1.138em;vertical-align:-0.25em;",[63,12910,1771],{"className":12911,"style":1770},[84,85],[63,12913,118],{"className":12914},[110],[63,12916,12918,12921],{"className":12917},[84],[63,12919,86],{"className":12920},[84,85],[63,12922,12924],{"className":12923},[226],[63,12925,12927],{"className":12926},[126],[63,12928,12930],{"className":12929},[131],[63,12931,12934],{"className":12932,"style":12933},[135],"height:0.888em;",[63,12935,12936,12939],{"style":239},[63,12937],{"className":12938,"style":144},[143],[63,12940,12942],{"className":12941},[148,149,150,151],[63,12943,12945,12949,12952,12955],{"className":12944},[84,151],[63,12946,12948],{"className":12947},[110,151],"⌈",[63,12950,1992],{"className":12951},[84,85,151],[63,12953,1328],{"className":12954},[84,151],[63,12956,12958],{"className":12957},[191,151],"⌉",[63,12960,195],{"className":12961},[191],"), and the tool of\nchoice is a ",[31,12964,12965],{},"spatial tree",". A ",[31,12968,12969],{},"k-d tree"," recursively splits the points by\nalternating coordinate axes, giving ",[63,12972,12974],{"className":12973},[66],[63,12975,12977],{"className":12976,"ariaHidden":71},[70],[63,12978,12980,12983,12986,12989,12995,12998,13001],{"className":12979},[75],[63,12981],{"className":12982,"style":528},[79],[63,12984,1771],{"className":12985,"style":1770},[84,85],[63,12987,118],{"className":12988},[110],[63,12990,12992],{"className":12991},[532],[63,12993,2146],{"className":12994,"style":2145},[84,536],[63,12996],{"className":12997,"style":589},[360],[63,12999,86],{"className":13000},[84,85],[63,13002,195],{"className":13003},[191]," expected nearest-neighbor queries\nin low dimensions; ",[31,13006,13007],{},"R-trees"," group nearby objects into bounding rectangles for\ndisk-resident spatial databases; and for the high-dimensional nearest-neighbor\nsearch behind modern embeddings, exact methods lose to ",[31,13010,13011],{},"locality-sensitive\nhashing"," and graph-based approximate indexes such as HNSW.",[2215,13014,13015],{},[15,13016,13020],{"href":13017,"ariaDescribedBy":13018,"dataFootnoteRef":6,"id":13019},"#user-content-fn-ann",[2221],"user-content-fnref-ann","5"," All of these\nstructures rest on the same primitive this module started with: every one\ndecides ",[973,13023,13024],{},"which side",[973,13026,13027],{},"closer to which"," with orientation and\ndistance comparisons, and keeps them exact where correctness of the combinatorics\ndepends on it.",[48,13030,13032],{"id":13031},"takeaways","Takeaways",[13034,13035,13036,13230,13259,13378,13620],"ul",{},[13037,13038,13039,13042,13043,13058,13059,4932,13077,13079,13080,13083,13084,13099,13100,13226,13227,13229],"li",{},[31,13040,13041],{},"Closest pair"," is divide-and-conquer: split at the median ",[63,13044,13046],{"className":13045},[66],[63,13047,13049],{"className":13048,"ariaHidden":71},[70],[63,13050,13052,13055],{"className":13051},[75],[63,13053],{"className":13054,"style":80},[79],[63,13056,288],{"className":13057},[84,85],", recurse, then\nscan a width-",[63,13060,13062],{"className":13061},[66],[63,13063,13065],{"className":13064,"ariaHidden":71},[70],[63,13066,13068,13071,13074],{"className":13067},[75],[63,13069],{"className":13070,"style":509},[79],[63,13072,158],{"className":13073},[84],[63,13075,405],{"className":13076,"style":404},[84,85],[31,13078,748],{},". The ",[31,13081,13082],{},"strip-packing lemma"," caps the combine at\n",[63,13085,13087],{"className":13086},[66],[63,13088,13090],{"className":13089,"ariaHidden":71},[70],[63,13091,13093,13096],{"className":13092},[75],[63,13094],{"className":13095,"style":1361},[79],[63,13097,1689],{"className":13098},[84]," comparisons per point, giving ",[63,13101,13103],{"className":13102},[66],[63,13104,13106,13133,13166,13193],{"className":13105,"ariaHidden":71},[70],[63,13107,13109,13112,13115,13118,13121,13124,13127,13130],{"className":13108},[75],[63,13110],{"className":13111,"style":528},[79],[63,13113,1828],{"className":13114,"style":1827},[84,85],[63,13116,118],{"className":13117},[110],[63,13119,86],{"className":13120},[84,85],[63,13122,195],{"className":13123},[191],[63,13125],{"className":13126,"style":361},[360],[63,13128,366],{"className":13129},[365],[63,13131],{"className":13132,"style":361},[360],[63,13134,13136,13139,13142,13145,13148,13151,13154,13157,13160,13163],{"className":13135},[75],[63,13137],{"className":13138,"style":528},[79],[63,13140,158],{"className":13141},[84],[63,13143,1828],{"className":13144,"style":1827},[84,85],[63,13146,118],{"className":13147},[110],[63,13149,86],{"className":13150},[84,85],[63,13152,1328],{"className":13153},[84],[63,13155,195],{"className":13156},[191],[63,13158],{"className":13159,"style":1220},[360],[63,13161,1225],{"className":13162},[1224],[63,13164],{"className":13165,"style":1220},[360],[63,13167,13169,13172,13175,13178,13181,13184,13187,13190],{"className":13168},[75],[63,13170],{"className":13171,"style":528},[79],[63,13173,213],{"className":13174},[84],[63,13176,118],{"className":13177},[110],[63,13179,86],{"className":13180},[84,85],[63,13182,195],{"className":13183},[191],[63,13185],{"className":13186,"style":361},[360],[63,13188,366],{"className":13189},[365],[63,13191],{"className":13192,"style":361},[360],[63,13194,13196,13199,13202,13205,13208,13211,13217,13220,13223],{"className":13195},[75],[63,13197],{"className":13198,"style":528},[79],[63,13200,213],{"className":13201},[84],[63,13203,118],{"className":13204},[110],[63,13206,86],{"className":13207},[84,85],[63,13209],{"className":13210,"style":589},[360],[63,13212,13214],{"className":13213},[532],[63,13215,2146],{"className":13216,"style":2145},[84,536],[63,13218],{"className":13219,"style":589},[360],[63,13221,86],{"className":13222},[84,85],[63,13224,195],{"className":13225},[191],"\nby the ",[15,13228,1922],{"href":1921},". Compare squared\ndistances to stay exact.",[13037,13231,13232,13235,13236,13239,13240,13258],{},[31,13233,13234],{},"Point-in-polygon"," by ",[31,13237,13238],{},"ray casting",": an odd count of ",[63,13241,13243],{"className":13242},[66],[63,13244,13246],{"className":13245,"ariaHidden":71},[70],[63,13247,13249,13252,13255],{"className":13248},[75],[63,13250],{"className":13251,"style":4522},[79],[63,13253,1225],{"className":13254},[84],[63,13256,288],{"className":13257},[84,85],"-ray crossings means\ninside (Jordan curve), with half-open-edge tie-breaking for vertex\u002Fhorizontal\ngrazes and a separate on-segment test for the boundary.",[13037,13260,7053,13261,13263,13264,13282,13283,13301,13302,13377],{},[31,13262,6312],{}," sums signed crossings (",[63,13265,13267],{"className":13266},[66],[63,13268,13270],{"className":13269,"ariaHidden":71},[70],[63,13271,13273,13276,13279],{"className":13272},[75],[63,13274],{"className":13275,"style":1342},[79],[63,13277,1225],{"className":13278},[84],[63,13280,1778],{"className":13281},[84]," up, ",[63,13284,13286],{"className":13285},[66],[63,13287,13289],{"className":13288,"ariaHidden":71},[70],[63,13290,13292,13295,13298],{"className":13291},[75],[63,13293],{"className":13294,"style":1342},[79],[63,13296,2450],{"className":13297},[84],[63,13299,1778],{"className":13300},[84]," down); ",[63,13303,13305],{"className":13304},[66],[63,13306,13308,13368],{"className":13307,"ariaHidden":71},[70],[63,13309,13311,13314,13317,13320,13323,13326,13329,13365],{"className":13310},[75],[63,13312],{"className":13313,"style":528},[79],[63,13315,6329],{"className":13316,"style":6328},[84,85],[63,13318,118],{"className":13319},[110],[63,13321,973],{"className":13322,"style":819},[84,85],[63,13324,195],{"className":13325},[191],[63,13327],{"className":13328,"style":361},[360],[63,13330,13332,13359,13362],{"className":13331},[365],[63,13333,13335],{"className":13334},[365],[63,13336,13338],{"className":13337},[84,5150],[63,13339,13341],{"className":13340},[5154],[63,13342,13344,13347,13356],{"className":13343},[5158],[63,13345],{"className":13346,"style":2023},[79],[63,13348,13350],{"className":13349},[5165],[63,13351,13353],{"className":13352},[84],[63,13354,5172],{"className":13355},[365],[63,13357],{"className":13358},[5176],[63,13360],{"className":13361},[360,5180],[63,13363,366],{"className":13364},[365],[63,13366],{"className":13367,"style":361},[360],[63,13369,13371,13374],{"className":13370},[75],[63,13372],{"className":13373,"style":1361},[79],[63,13375,3295],{"className":13376},[84],"\nmeans inside and stays correct for self-intersecting polygons, where parity fails.",[13037,13379,7053,13380,4932,13382,13616,13617,13619],{},[31,13381,7059],{},[63,13383,13385],{"className":13384},[66],[63,13386,13388],{"className":13387,"ariaHidden":71},[70],[63,13389,13391,13394,13462,13465],{"className":13390},[75],[63,13392],{"className":13393,"style":8749},[79],[63,13395,13397,13400,13459],{"className":13396},[84],[63,13398],{"className":13399},[110,1492],[63,13401,13403],{"className":13402},[122],[63,13404,13406,13451],{"className":13405},[126,127],[63,13407,13409,13448],{"className":13408},[131],[63,13410,13412,13426,13434],{"className":13411,"style":8768},[135],[63,13413,13414,13417],{"style":1508},[63,13415],{"className":13416,"style":1512},[143],[63,13418,13420],{"className":13419},[148,149,150,151],[63,13421,13423],{"className":13422},[84,151],[63,13424,158],{"className":13425},[84,151],[63,13427,13428,13431],{"style":1524},[63,13429],{"className":13430,"style":1512},[143],[63,13432],{"className":13433,"style":1532},[1531],[63,13435,13436,13439],{"style":1535},[63,13437],{"className":13438,"style":1512},[143],[63,13440,13442],{"className":13441},[148,149,150,151],[63,13443,13445],{"className":13444},[84,151],[63,13446,1778],{"className":13447},[84,151],[63,13449,178],{"className":13450},[177],[63,13452,13454],{"className":13453},[131],[63,13455,13457],{"className":13456,"style":185},[135],[63,13458],{},[63,13460],{"className":13461},[191,1492],[63,13463],{"className":13464,"style":589},[360],[63,13466,13468,13472,13512,13515,13555,13558,13561,13564,13613],{"className":13467},[4388],[63,13469,13471],{"className":13470,"style":112},[110,111],"∣",[63,13473,13475,13478],{"className":13474},[532],[63,13476,7418],{"className":13477,"style":8089},[532,7416,8088],[63,13479,13481],{"className":13480},[226],[63,13482,13484,13504],{"className":13483},[126,127],[63,13485,13487,13501],{"className":13486},[131],[63,13488,13490],{"className":13489,"style":8102},[135],[63,13491,13492,13495],{"style":8105},[63,13493],{"className":13494,"style":144},[143],[63,13496,13498],{"className":13497},[148,149,150,151],[63,13499,4617],{"className":13500},[84,85,151],[63,13502,178],{"className":13503},[177],[63,13505,13507],{"className":13506},[131],[63,13508,13510],{"className":13509,"style":8127},[135],[63,13511],{},[63,13513],{"className":13514,"style":589},[360],[63,13516,13518,13521],{"className":13517},[84],[63,13519,4342],{"className":13520,"style":1220},[84,85],[63,13522,13524],{"className":13523},[226],[63,13525,13527,13547],{"className":13526},[126,127],[63,13528,13530,13544],{"className":13529},[131],[63,13531,13533],{"className":13532,"style":4605},[135],[63,13534,13535,13538],{"style":4358},[63,13536],{"className":13537,"style":144},[143],[63,13539,13541],{"className":13540},[148,149,150,151],[63,13542,4617],{"className":13543},[84,85,151],[63,13545,178],{"className":13546},[177],[63,13548,13550],{"className":13549},[131],[63,13551,13553],{"className":13552,"style":440},[135],[63,13554],{},[63,13556],{"className":13557,"style":1220},[360],[63,13559,1280],{"className":13560},[1224],[63,13562],{"className":13563,"style":1220},[360],[63,13565,13567,13570],{"className":13566},[84],[63,13568,4342],{"className":13569,"style":1220},[84,85],[63,13571,13573],{"className":13572},[226],[63,13574,13576,13605],{"className":13575},[126,127],[63,13577,13579,13602],{"className":13578},[131],[63,13580,13582],{"className":13581,"style":4605},[135],[63,13583,13584,13587],{"style":4358},[63,13585],{"className":13586,"style":144},[143],[63,13588,13590],{"className":13589},[148,149,150,151],[63,13591,13593,13596,13599],{"className":13592},[84,151],[63,13594,4617],{"className":13595},[84,85,151],[63,13597,1225],{"className":13598},[1224,151],[63,13600,1778],{"className":13601},[84,151],[63,13603,178],{"className":13604},[177],[63,13606,13608],{"className":13607},[131],[63,13609,13611],{"className":13610,"style":4446},[135],[63,13612],{},[63,13614,13471],{"className":13615,"style":112},[191,111]," is proved\nby the ",[31,13618,8042],{},": top edges add, bottom edges subtract, telescoping to\nthe enclosed area; its sign gives the winding direction.",[13037,13621,13622,13625,13626,13628,13629,13631,13632,13656,13657,13696,13697,13747],{},[31,13623,13624],{},"Rotating calipers"," read the ",[31,13627,10650],{}," (farthest pair, an antipodal hull\npair) and the ",[31,13630,11725],{}," (narrowest slab, flush with a hull edge) in ",[63,13633,13635],{"className":13634},[66],[63,13636,13638],{"className":13637,"ariaHidden":71},[70],[63,13639,13641,13644,13647,13650,13653],{"className":13640},[75],[63,13642],{"className":13643,"style":528},[79],[63,13645,1771],{"className":13646,"style":1770},[84,85],[63,13648,118],{"className":13649},[110],[63,13651,10947],{"className":13652},[84,85],[63,13654,195],{"className":13655},[191]," by\nadvancing one monotone pointer around the hull — ",[63,13658,13660],{"className":13659},[66],[63,13661,13663],{"className":13662,"ariaHidden":71},[70],[63,13664,13666,13669,13672,13675,13678,13681,13687,13690,13693],{"className":13665},[75],[63,13667],{"className":13668,"style":528},[79],[63,13670,1771],{"className":13671,"style":1770},[84,85],[63,13673,118],{"className":13674},[110],[63,13676,86],{"className":13677},[84,85],[63,13679],{"className":13680,"style":589},[360],[63,13682,13684],{"className":13683},[532],[63,13685,2146],{"className":13686,"style":2145},[84,536],[63,13688],{"className":13689,"style":589},[360],[63,13691,86],{"className":13692},[84,85],[63,13694,195],{"className":13695},[191]," after the hull\nversus ",[63,13698,13700],{"className":13699},[66],[63,13701,13703],{"className":13702,"ariaHidden":71},[70],[63,13704,13706,13709,13712,13715,13744],{"className":13705},[75],[63,13707],{"className":13708,"style":209},[79],[63,13710,213],{"className":13711},[84],[63,13713,118],{"className":13714},[110],[63,13716,13718,13721],{"className":13717},[84],[63,13719,86],{"className":13720},[84,85],[63,13722,13724],{"className":13723},[226],[63,13725,13727],{"className":13726},[126],[63,13728,13730],{"className":13729},[131],[63,13731,13733],{"className":13732,"style":236},[135],[63,13734,13735,13738],{"style":239},[63,13736],{"className":13737,"style":144},[143],[63,13739,13741],{"className":13740},[148,149,150,151],[63,13742,158],{"className":13743},[84,151],[63,13745,195],{"className":13746},[191]," brute force.",[13749,13750,13753,13758],"section",{"className":13751,"dataFootnotes":6},[13752],"footnotes",[48,13754,13757],{"className":13755,"id":2221},[13756],"sr-only","Footnotes",[13759,13760,13761,13791,13803,13814,13867],"ol",{},[13037,13762,13764,13767,13768,13783,13784],{"id":13763},"user-content-fn-clrs-closest",[31,13765,13766],{},"CLRS",", Ch. 33 — Computational Geometry (§33.4): divide-and-conquer closest pair, the ",[63,13769,13771],{"className":13770},[66],[63,13772,13774],{"className":13773,"ariaHidden":71},[70],[63,13775,13777,13780],{"className":13776},[75],[63,13778],{"className":13779,"style":509},[79],[63,13781,405],{"className":13782,"style":404},[84,85],"-strip, and the constant-neighbour packing bound that makes the combine linear. ",[15,13785,13790],{"href":13786,"ariaLabel":13787,"className":13788,"dataFootnoteBackref":6},"#user-content-fnref-clrs-closest","Back to reference 1",[13789],"data-footnote-backref","↩",[13037,13792,13794,13797,13798],{"id":13793},"user-content-fn-skiena-area",[31,13795,13796],{},"Skiena",", § — Computational Geometry: the shoelace (surveyor's) formula as a signed sum of cross products, whose sign encodes vertex orientation. ",[15,13799,13790],{"href":13800,"ariaLabel":13801,"className":13802,"dataFootnoteBackref":6},"#user-content-fnref-skiena-area","Back to reference 2",[13789],[13037,13804,13806,13808,13809],{"id":13805},"user-content-fn-skiena-calipers",[31,13807,13796],{},", § — Computational Geometry: rotating calipers on the convex hull for the diameter (farthest pair) and width, in linear time after the hull. ",[15,13810,13790],{"href":13811,"ariaLabel":13812,"className":13813,"dataFootnoteBackref":6},"#user-content-fnref-skiena-calipers","Back to reference 3",[13789],[13037,13815,13817,13818,13821,13822,13861,13862],{"id":13816},"user-content-fn-delaunay","The Voronoi\u002FDelaunay duality and the empty-circumcircle (max-min-angle) property are treated in Mark de Berg et al., ",[254,13819,13820],{},"Computational Geometry: Algorithms and Applications"," (3rd ed.), Chs. 7 and 9; both structures build in ",[63,13823,13825],{"className":13824},[66],[63,13826,13828],{"className":13827,"ariaHidden":71},[70],[63,13829,13831,13834,13837,13840,13843,13846,13852,13855,13858],{"className":13830},[75],[63,13832],{"className":13833,"style":528},[79],[63,13835,1771],{"className":13836,"style":1770},[84,85],[63,13838,118],{"className":13839},[110],[63,13841,86],{"className":13842},[84,85],[63,13844],{"className":13845,"style":589},[360],[63,13847,13849],{"className":13848},[532],[63,13850,2146],{"className":13851,"style":2145},[84,536],[63,13853],{"className":13854,"style":589},[360],[63,13856,86],{"className":13857},[84,85],[63,13859,195],{"className":13860},[191]," via Fortune's sweep or randomized incremental insertion. ",[15,13863,13790],{"href":13864,"ariaLabel":13865,"className":13866,"dataFootnoteBackref":6},"#user-content-fnref-delaunay","Back to reference 4",[13789],[13037,13868,13870,13871,4932,13874,13877,13878,4932,13881,13884,13885],{"id":13869},"user-content-fn-ann","Piotr Indyk and Rajeev Motwani, ",[973,13872,13873],{},"Approximate Nearest Neighbors: Towards Removing the Curse of Dimensionality,",[254,13875,13876],{},"STOC"," 1998 (locality-sensitive hashing); Yu. A. Malkov and D. A. Yashunin, ",[973,13879,13880],{},"Efficient and Robust Approximate Nearest Neighbor Search Using Hierarchical Navigable Small World Graphs,",[254,13882,13883],{},"IEEE TPAMI"," 42(4), 2020 (HNSW). ",[15,13886,13790],{"href":13887,"ariaLabel":13888,"className":13889,"dataFootnoteBackref":6},"#user-content-fnref-ann","Back to reference 5",[13789],[13891,13892,13893],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}html.dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}html pre.shiki code .sdxpw, html code.shiki .sdxpw{--shiki-default:#505050;--shiki-dark-mode:#A0A0A0}html pre.shiki code .s3i95, html code.shiki .s3i95{--shiki-default:#000000;--shiki-dark-mode:#FFF}html pre.shiki code .sat3U, html code.shiki .sat3U{--shiki-default:#FF8C00;--shiki-dark-mode:#FFC799}html pre.shiki code .sDYuN, html code.shiki .sDYuN{--shiki-default:#008080;--shiki-dark-mode:#99FFE4}html pre.shiki code .sEX4i, html code.shiki .sEX4i{--shiki-default:#8B8B8B;--shiki-dark-mode:#8B8B8B94}",{"title":6,"searchDepth":2241,"depth":2241,"links":13895},[13896,13897,13901,13902,13903,13904,13905],{"id":50,"depth":2241,"text":51},{"id":37,"depth":2241,"text":4302,"children":13898},[13899,13900],{"id":4489,"depth":2247,"text":4490},{"id":6285,"depth":2247,"text":6286},{"id":7049,"depth":2241,"text":7050},{"id":10636,"depth":2241,"text":10637},{"id":12767,"depth":2241,"text":12768},{"id":13031,"depth":2241,"text":13032},{"id":2221,"depth":2241,"text":13757},[],"computer-science","The first three lessons built the planar toolkit: the\norientation primitive,\nthe convex hull, and the\nplane sweep. This lesson applies\nthose tools to four problems every geometry library ships, each fast and exact\nby a counting or sign argument: the\nclosest pair of a point set, the point-in-polygon test, the area of a\npolygon, and the diameter and width of a convex polygon. Three of them need\nnothing beyond the cross product; the fourth turns the hull into a linear\nscan by walking two pointers in lock-step.",false,"md",{"moduleNumber":2295,"lessonNumber":2253,"order":13912},1104,"Computational Geometry","\u002Falgorithms\u002Fcomputational-geometry\u002Fpolygons-and-proximity",[13916,13920,13923],{"title":13917,"slug":13918,"difficulty":13919},"Convex Polygon","convex-polygon","Medium",{"title":13921,"slug":13922,"difficulty":13919},"K Closest Points to Origin","k-closest-points-to-origin",{"title":13924,"slug":13925,"difficulty":13926},"Erect the Fence","erect-the-fence","Hard","---\ntitle: Polygons & Proximity\nmodule: Computational Geometry\nmoduleNumber: 11\nlessonNumber: 4\norder: 1104\nsummary: |\n  Four classics that live on top of the orientation primitive and the convex\n  hull. **Closest pair** falls to divide-and-conquer in $\\Theta(n\\log n)$, where a\n  packing argument caps the cross-boundary combine at seven neighbours per point.\n  **Point-in-polygon** is the ray-casting parity test or the winding-number count\n  that also handles self-intersecting boundaries, both with their edge caveats. The **shoelace formula**\n  gives signed area as a sum of cross products, and **rotating calipers** walk the\n  hull to read off diameter and width in $O(n)$.\ntopics: [Geometry]\nsources:\n  - book: CLRS\n    ref: \"Ch. 33 — Computational Geometry (§33.4 Closest pair)\"\n  - book: Skiena\n    ref: \"§ — Computational Geometry\"\n  - book: Erickson\n    ref: \"Ch. — (geometry)\"\npractice:\n  - title: 'Convex Polygon'\n    slug: convex-polygon\n    difficulty: Medium\n  - title: 'K Closest Points to Origin'\n    slug: k-closest-points-to-origin\n    difficulty: Medium\n  - title: 'Erect the Fence'\n    slug: erect-the-fence\n    difficulty: Hard\n---\n\nThe first three lessons built the planar toolkit: the\n[orientation primitive](\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives),\nthe [convex hull](\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull), and the\n[plane sweep](\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line). This lesson applies\nthose tools to four problems every geometry library ships, each fast and exact\nby a counting or sign argument: the\n**closest pair** of a point set, the **point-in-polygon** test, the **area** of a\npolygon, and the **diameter and width** of a convex polygon. Three of them need\nnothing beyond the cross product; the fourth turns the hull into a linear\nscan by walking two pointers in lock-step.\n\n## Closest pair of points\n\n> **Problem.** Given $n$ points in the plane, find the two whose Euclidean\n> distance is smallest.\n\nThe brute force compares all $\\binom{n}{2}$ pairs in $\\Theta(n^2)$. The classic\nimprovement is divide-and-conquer, and it is the geometry that makes it work: a\npacking bound caps the cross-boundary work at a _constant_ per point. This is the\nfull treatment — the [Selection lesson](\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection)\nintroduces it as a divide-and-conquer classic alongside sorting, and the\n[sweep-line lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line) gives a\none-pass alternative on a dynamic strip.\n\n**Divide.** Sort by $x$ and split at the median $x$ into a left half $L$ and a\nright half $R$ by a vertical line $x = m$. **Conquer.** Recurse on each half;\nlet $\\delta_L$ and $\\delta_R$ be the best distances found, and\n$\\delta = \\min(\\delta_L, \\delta_R)$. **Combine.** The closest pair overall is\neither one of these two _or_ a pair that **straddles** the line — one point in\n$L$, one in $R$ — at distance $\u003C \\delta$. The whole difficulty is bounding that\nstraddling case.\n\n$$\n% caption: Divide at the median $x = m$ into left half $L$ and right half $R$; recurse\n%          on each, then check pairs straddling the line\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.5pt},\n  >=stealth, x=10mm, y=10mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  % left half region tint\n  \\fill[acc!10] (-2.6,-0.3) rectangle (0,3.3);\n  % right half region tint (a distinguishable lighter blue)\n  \\fill[acc!20] (0,-0.3) rectangle (2.6,3.3);\n  % dividing line\n  \\draw[dashed, thick] (0,-0.5) -- (0,3.6);\n  \\node[font=\\footnotesize] at (0,3.85) {dividing line: x = m};\n  % left points\n  \\fill[acc] (-2.1,0.6) circle (1.6pt);\n  \\fill[acc] (-1.4,2.4) circle (1.6pt);\n  \\fill[acc] (-0.7,1.3) circle (1.6pt);\n  \\fill[acc] (-1.9,1.9) circle (1.6pt);\n  \\node[font=\\footnotesize, acc] at (-1.7,-0.6) {left half $L$};\n  % right points\n  \\fill[acc!60!black] (0.6,1.9) circle (1.6pt);\n  \\fill[acc!60!black] (1.4,0.8) circle (1.6pt);\n  \\fill[acc!60!black] (2.1,2.5) circle (1.6pt);\n  \\fill[acc!60!black] (1.0,2.9) circle (1.6pt);\n  \\node[font=\\footnotesize, acc!60!black] at (1.4,-0.6) {\\texttt{right} half $R$};\n\\end{tikzpicture}\n$$\n\nA straddling pair closer than $\\delta$ must have both endpoints within horizontal\ndistance $\\delta$ of the line, so both lie in a vertical **strip** of width\n$2\\delta$ centred on $x = m$. Discard everything outside the strip; sort the\nsurvivors by $y$ (in practice, filter the already-$y$-sorted list); then walk up\nthe strip. The decisive fact is that each point need only be compared against a\n_constant_ number of its successors in $y$-order.\n\n> **Lemma (Strip packing).** Sort the strip points by $y$. For any strip point\n> $p$, every later point that could lie within $\\delta$ of $p$ sits among the next\n> **seven** points in the $y$-order.\n\n> **Proof.** A point $q$ above $p$ with $\\dist(p, q) \u003C \\delta$ has\n> $p_y \\le q_y \u003C p_y + \\delta$, so $q$ lies in the $2\\delta \\times \\delta$\n> rectangle spanning the strip just above $p$. Tile that rectangle with a grid of\n> cells of side $\\delta\u002F2$; it holds exactly $2 \\times 4 = 8$ cells. No cell can\n> contain two strip points: two points in one cell lie on the **same side** of the\n> dividing line (each cell sits entirely left or entirely right of $x = m$), so by\n> the recursive guarantee they are $\\ge \\delta$ apart — yet two points in a\n> $\\delta\u002F2$ square are at most $\\frac{\\delta}{2}\\sqrt2 \u003C \\delta$ apart, a\n> contradiction. Hence the rectangle holds at most $8$ points, one of them $p$\n> itself, leaving at most $7$ candidates, all later than $p$ in $y$-order. $\\qed$\n\n$$\n% caption: Strip of width $2\\delta$; the box above $p$ tiles into 8 cells of side\n%          $\\delta\u002F2$, so at most 7 later points can beat $\\delta$\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.5pt},\n  >=stealth, x=10mm, y=10mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  % dividing line and strip\n  \\fill[acc!12] (-1,-0.5) rectangle (1,4.6);\n  \\draw[dashed] (0,-0.5) -- (0,4.6);\n  \\node[font=\\footnotesize] at (0,4.95) {dividing line};\n  \\draw[gray] (-1,-0.5) -- (-1,4.6);\n  \\draw[gray] (1,-0.5) -- (1,4.6);\n  \\draw[\u003C->] (-1,-0.85) -- (1,-0.85);\n  \\node[font=\\footnotesize] at (0,-1.2) {strip width};\n  % the point p\n  \\fill[acc] (-0.4,0.8) circle (1.8pt);\n  \\node[font=\\footnotesize, anchor=east] at (-1.5,0.4) {$p$};\n  \\draw[->, thin] (-1.45,0.45) -- (-0.45,0.75);\n  % box above p: 2 wide x 1 tall (2 delta x delta), 8 cells of side delta\u002F2\n  \\draw[acc, very thick] (-1,0.8) rectangle (1,1.8);\n  \\foreach \\gx in {-0.5,0,0.5} { \\draw[acc!45] (\\gx,0.8) -- (\\gx,1.8); }\n  \\draw[acc!45] (-1,1.3) -- (1,1.3);\n  \\node[font=\\footnotesize, acc, anchor=west] at (1.7,1.3) {8 cells};\n  \\draw[->, acc] (1.6,1.3) -- (1.05,1.3);\n  % a far point, too high to matter\n  \\fill[red!75!black] (0.45,3.6) circle (1.8pt);\n  \\node[font=\\footnotesize, red!75!black, anchor=west] at (1.7,3.6) {beyond reach};\n  \\draw[->, thin, red!75!black] (1.6,3.6) -- (0.6,3.6);\n\\end{tikzpicture}\n$$\n\n$$\n% caption: Strip points in $y$-order; from $p$ only the next 7 successors can lie within\n%          $\\delta$, so each point makes a constant number of checks\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  >=stealth, x=11mm, y=8mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  % a vertical y-ordered column of strip points\n  \\foreach \\i\u002F\\yy in {0\u002F0,1\u002F0.85,2\u002F1.55,3\u002F2.3,4\u002F2.95,5\u002F3.7,6\u002F4.4,7\u002F5.1,8\u002F5.85,9\u002F6.6} {\n    \\fill[acc!25] (0,\\yy) circle (1.7pt);\n  }\n  % p is the current point near the bottom\n  \\fill[acc] (0,0) circle (2.2pt);\n  \\node[font=\\footnotesize, acc, anchor=east] at (-0.35,0) {$p$};\n  % window covering the next 7 successors\n  \\draw[acc, very thick] (-0.55,0.5) rectangle (0.55,5.45);\n  \\node[font=\\footnotesize, acc, anchor=west] at (0.75,3.0) {next 7 in $y$-order};\n  \\draw[->, acc] (0.7,3.0) -- (0.6,3.0);\n  % a successor beyond the window: out of reach\n  \\fill[red!75!black] (0,6.6) circle (2.0pt);\n  \\node[font=\\footnotesize, red!75!black, anchor=west] at (0.35,6.6) {beyond reach};\n  % the upward scan direction\n  \\draw[->, acc!60] (-0.95,0) -- (-0.95,5.3);\n  \\node[font=\\footnotesize, acc!60!black, anchor=east, rotate=90] at (-1.05,2.6) {scan upward};\n\\end{tikzpicture}\n$$\n\nThe combine step therefore makes $O(1)$ distance checks per strip point, for\n$O(n)$ work. The recurrence is the familiar one,\n\n$$\nT(n) \\;=\\; 2\\,T(n\u002F2) \\;+\\; \\Theta(n),\n$$\n\nwhich the [Master Theorem](\u002Falgorithms\u002Ffoundations\u002Frecurrences) solves in its\nbalanced case ($a = b^{\\,d}$ with $a = 2,\\, b = 2,\\, d = 1$), giving\n$T(n) = \\Theta(n\\log n)$. The one implementation subtlety is the inner sort: a\nnaive $y$-sort of the strip each level would add a $\\log n$ factor. Sorting once\nby $y$ up front and filtering that order at each level keeps the combine linear,\nso the bound holds.[^clrs-closest]\n\n```algorithm\ncaption: $\\textsc{Closest-Pair}(P_x, P_y)$ — $P_x$ sorted by $x$, $P_y$ by $y$\nnumber: 1\n$n \\gets |P_x|$\nif $n \\le 3$ then\n  return brute-force closest pair      \u002F\u002F base case, $O(1)$\n$m \\gets (P_x[\\lfloor n\u002F2\\rfloor])_x$  \u002F\u002F median $x$ as the dividing line\nsplit $P_x$ into left $L_x$, right $R_x$ at index $\\lfloor n\u002F2\\rfloor$\npartition $P_y$ into $L_y, R_y$ by side of $m$  \u002F\u002F keeps each half $y$-sorted\n$(a, b) \\gets \\textsc{Closest-Pair}(L_x, L_y)$\n$(c, d) \\gets \\textsc{Closest-Pair}(R_x, R_y)$\n$\\delta \\gets \\min(\\dist(a,b),\\ \\dist(c,d))$\n$S \\gets [\\,q \\in P_y : |q_x - m| \u003C \\delta\\,]$  \u002F\u002F strip, still $y$-sorted\nfor each $q$ in $S$, in $y$-order do\n  for each of the next $7$ points $r$ after $q$ in $S$ do\n    if $\\dist(q, r) \u003C \\delta$ then update best pair and $\\delta$\nreturn the closest of the left, right, and strip pairs\n```\n\nThe distance comparisons can stay exact: comparing $\\dist(p,q)$\nagainst $\\delta$ is comparing **squared** distances $(p_x-q_x)^2 + (p_y-q_y)^2$\nagainst $\\delta^2$, which are integers for integer inputs — no square root, no\nrounding, the same discipline as the orientation primitive.\n\n::impl{algo=\"geometry,closest_pair_planar\"}\n\n## Point in polygon\n\nGiven a simple polygon $P$ (vertices $V_0, \\dots, V_{n-1}$ in order) and a query\npoint $q$, is $q$ inside, outside, or on the boundary? Two tests dominate; both\nwere named in the [primitives lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives),\nand we make them precise here, boundary caveats included.\n\n### Ray casting (the parity test)\n\nShoot a ray from $q$ in a fixed direction — conventionally along $+x$ — and count\nhow many polygon edges it crosses. The **Jordan curve theorem** guarantees that a\nray from an interior point crosses the boundary an **odd** number of times, and a\nray from an exterior point an **even** number. So an odd crossing count means\n_inside_.\n\n$$\n% caption: A $+x$ ray from $q$ crosses an odd count (inside); from $r$ an even count\n%          (outside)\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.4pt},\n  >=stealth, scale=0.9]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\draw[thick] (0,0) -- (5,0) -- (5,4) -- (2.6,2.1) -- (0,4) -- cycle;\n  % interior query point low in the solid part: +x ray crosses only the right wall = 1\n  \\node[dot, fill=acc, label={[fill=white, inner sep=1pt]above left:$q$}] (q) at (0.7,1.3) {};\n  \\draw[acc, very thick, ->] (q) -- (6.1,1.3);\n  \\fill[acc] (5,1.3) circle (1.5pt);\n  \\node[acc, font=\\footnotesize, anchor=west] at (6.2,1.3) {odd (1) means inside};\n  % exterior query point sitting IN the notch (above the dip, outside the polygon):\n  % its +x ray crosses the right notch wall then the right outer wall = 2 = even\n  \\node[dot] (q2) at (2.55,3.0) {};\n  \\node[font=\\small] at (2.2,3.35) {$r$};\n  \\draw[dashed, ->] (q2) -- (6.1,3.0);\n  \\fill (3.74,3.0) circle (1.5pt);\n  \\fill (5,3.0) circle (1.5pt);\n  \\node[font=\\footnotesize, anchor=west] at (6.2,3.0) {even (2) means outside};\n\\end{tikzpicture}\n$$\n\nThe arithmetic per edge $\\overline{V_i V_{i+1}}$ is a two-line test: the edge can\ncross the horizontal ray at $y = q_y$ only if one endpoint is strictly above\n$q_y$ and the other not above it, and then the crossing $x$ must lie to the right\nof $q_x$. Both conditions reduce to sign comparisons; the second avoids dividing\nby cross-multiplying.\n\nThe pitfalls are all **degenerate** rays — those grazing a vertex or running along\nan edge — and they are what make naive implementations report nonsense.\n\n> **Note (Tie-breaking).** Treat each edge as **half-open** in $y$: count the edge\n> only when exactly one endpoint is **strictly above** $q_y$ (so\n> $(V_i)_y > q_y \\ne (V_{i+1})_y \\le q_y$ or vice versa). This counts a vertex\n> shared by two edges exactly once when the ray passes through it, and ignores\n> horizontal edges (both endpoints at the same height fail the strict test) — the\n> two cases that otherwise double-count or miscount.\n\n> **Remark (Boundary).** Parity classifies _interior_ versus _exterior_ but says\n> nothing reliable about $q$ **on** an edge — there a crossing is ambiguous. If the\n> boundary must count as \"inside\" (or be reported separately), test it first:\n> $q$ is on edge $\\overline{V_i V_{i+1}}$ iff $\\ccw(V_i, V_{i+1}, q)\n> = 0$ and $q$ lies within the edge's bounding box. Run that on-segment check over\n> all edges before the parity count.\n\n::impl{algo=\"point_in_polygon#point_in_polygon\"}\n\n### Winding number\n\nThe parity test is blind to how the boundary _wraps_ around $q$, which is why it\nbreaks on self-intersecting polygons. The **winding number** $w(q)$ counts the net\nnumber of full turns the boundary makes around $q$ as it is traversed once. For a\nsimple polygon $w(q) = \\pm 1$ inside (sign by orientation) and $0$ outside; for a\nself-intersecting polygon the magnitude can exceed $1$, and the **nonzero rule**\n($q$ inside iff $w(q) \\ne 0$) is the one graphics systems use.\n\nComputed naively this would sum signed _angles_ — irrational, floating point. The\nexact version sums **signed edge crossings** of the $+x$ ray instead, weighting by\ndirection: an edge crossing the ray **upward** contributes $+1$, **downward**\n$-1$. The sum is $w(q)$, computed entirely from orientation signs.\n\n> **Claim.** For a simple polygon, the winding number agrees with parity: $q$ is\n> inside iff $w(q) \\ne 0$ iff the unsigned crossing count is odd. Winding strictly\n> generalizes parity, staying correct when the boundary self-overlaps, at the same\n> $O(n)$ cost.\n\n$$\n% caption: Winding by signed ray crossings: the $+x$ ray from $q$ meets one upward edge\n%          $(+1)$ and one downward edge $(-1)$; for this simple polygon $w(q)=1-0$, inside.\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\footnotesize},\n  dot\u002F.style={circle, fill, inner sep=1.4pt},\n  >=stealth, scale=0.9]\n  \\definecolor{acc}{HTML}{2348F2}\n  % a simple pentagon, q inside; the +x ray leaves through two edges\n  \\draw[thick] (0,0) -- (5,0.6) -- (4.4,3.4) -- (2.2,2.2) -- (0.6,3.6) -- cycle;\n  \\node[dot, fill=acc, label={[label distance=1pt]below:$q$}] (q) at (1.6,1.4) {};\n  \\draw[acc, very thick, ->] (q) -- (6.0,1.4);\n  % the two crossings: right wall (going up as traversed CCW -> +1), notch wall\n  \\fill[acc] (4.83,1.4) circle (1.5pt);\n  \\node[acc, anchor=west] at (4.5,1.9) {up: +1};\n  % the polygon here crosses the ray only once to the right -> w=1\n  \\node[anchor=west] at (6.1,1.4) {net $w = 1$: inside};\n\\end{tikzpicture}\n$$\n\nBoth tests are $O(n)$ per query. When the polygon is **convex** and many queries\nare expected, the [primitives lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives)'s\n$O(\\log n)$ fan binary search wins after an $O(n)$ preprocess.\n\n::impl{algo=\"point_in_polygon#point_in_polygon_winding\"}\n\n## Polygon area: the shoelace formula\n\nThe [primitives lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives)\nintroduced the **shoelace formula** for the area of a simple polygon with vertices\n$V_0, \\dots, V_{n-1}$ in order (indices mod $n$):\n\n$$\n\\Area(P) \\;=\\; \\frac12\\abs{\\sum_{i=0}^{n-1} \\parens{x_i\\, y_{i+1} - x_{i+1}\\, y_i}}\n\\;=\\; \\frac12\\abs{\\sum_{i=0}^{n-1} V_i \\times V_{i+1}}.\n$$\n\nHere we prove it. The cleanest argument is the **trapezoid sum**: each edge, with\nthe $x$-axis, bounds a trapezoid whose signed area is added as the boundary is\nwalked, and the trapezoids below exterior edges cancel against those below\ninterior edges, leaving exactly the enclosed region.\n\n> **Theorem (Shoelace).** For a simple polygon with vertices listed\n> counterclockwise, $\\sum_{i} (x_i y_{i+1} - x_{i+1} y_i) = 2\\Area(P)$;\n> clockwise listing negates it.\n\n> **Proof.** The directed edge from $V_i = (x_i, y_i)$ to $V_{i+1} =\n> (x_{i+1}, y_{i+1})$, together with the verticals dropped to the $x$-axis, bounds\n> a trapezoid of signed area\n> $$\\tfrac12 (x_i - x_{i+1})(y_i + y_{i+1}),$$\n> the average height $\\tfrac12(y_i + y_{i+1})$ times the signed width\n> $(x_i - x_{i+1})$. The sign is positive when the edge runs **right to left**\n> (top of the polygon) and negative left to right (bottom), so summing over the\n> boundary adds the area under the top chain and subtracts the area under the\n> bottom chain — exactly the enclosed area. Expanding and summing,\n> $$\\sum_i \\tfrac12 (x_i - x_{i+1})(y_i + y_{i+1}) = \\tfrac12 \\sum_i (x_i y_{i+1} - x_{i+1} y_i),$$\n> after the $x_i y_i$ and $x_{i+1} y_{i+1}$ terms cancel telescopically around the\n> closed loop. This is the shoelace sum, equal to $2\\Area(P)$. $\\qed$\n\n$$\n% caption: Each edge with the $x$-axis bounds a signed trapezoid; top edges add area,\n%          bottom edges subtract, leaving the polygon\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.5pt},\n  >=stealth, scale=0.95]\n  \\definecolor{acc}{HTML}{2348F2}\n  % polygon vertices (triangle for clarity)\n  \\coordinate (A) at (1,1.2);\n  \\coordinate (B) at (5,0.6);\n  \\coordinate (C) at (3.4,3.2);\n  % axis\n  \\draw[->] (-0.2,0) -- (6.2,0) node[right] {$x$};\n  % trapezoid under the top edge C->A (right to left): positive, blue\n  \\fill[acc!20] (3.4,0) -- (3.4,3.2) -- (1,1.2) -- (1,0) -- cycle;\n  % trapezoid under the top edge B->C: positive, green\n  \\fill[green!28] (5,0) -- (5,0.6) -- (3.4,3.2) -- (3.4,0) -- cycle;\n  % trapezoid under the bottom edge A->B (left to right): negative, red\n  \\fill[red!22] (1,0) -- (1,1.2) -- (5,0.6) -- (5,0) -- cycle;\n  % polygon outline on top\n  \\draw[acc, very thick] (A) -- (B) -- (C) -- cycle;\n  \\draw[dashed] (A) -- (1,0);\n  \\draw[dashed] (B) -- (5,0);\n  \\draw[dashed] (C) -- (3.4,0);\n  \\node[dot] at (A) {}; \\node[anchor=east] at (A) {$V_0$};\n  \\node[dot] at (B) {}; \\node[anchor=west] at (B) {$V_1$};\n  \\node[dot] at (C) {}; \\node[anchor=south] at (C) {$V_2$};\n  \\node[acc, font=\\footnotesize] at (1.9,1.7) {add};\n  \\node[green!55!black, font=\\footnotesize] at (4.25,1.4) {add};\n  \\node[red!75!black, font=\\footnotesize] at (2.6,0.3) {subtract};\n\\end{tikzpicture}\n$$\n\nThe sum is an integer for integer vertices, so the area is an exact\nhalf-integer.[^skiena-area] Dropping the absolute value keeps the sign, which\ngives the **winding direction** for free: positive means the vertices are\ncounterclockwise, negative clockwise — the cheapest orientation test for a whole\npolygon.\n\n::impl{algo=\"shoelace\"}\n\n## Rotating calipers: diameter and width\n\nThe [convex hull lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull) closed by\npromising that the hull turns many extremal queries into linear scans. The\ntechnique is **rotating calipers**, and the cleanest instance is the\n**diameter** — the greatest distance between any two points of a set.\n\n> **Lemma (Diameter on the hull).** The two farthest points of a set are both\n> **hull vertices**, and they form an **antipodal** pair: there exist parallel\n> supporting lines of the hull, one through each.\n\n> **Proof.** If $p$ is not a hull vertex it lies in the hull's interior or on an\n> edge, so for any $q$ some hull vertex is at least as far from $q$ as $p$ is;\n> hence a farthest pair can be taken on the hull. The supporting line through $p$\n> perpendicular to $\\overline{pq}$ leaves all points on $p$'s side (else a point\n> beyond it would be farther from $q$), and symmetrically at $q$ — two parallel\n> supporting lines, so the pair is antipodal. $\\qed$\n\nChecking all $\\binom{h}{2}$ hull-vertex pairs is $\\Theta(h^2)$. Rotating calipers\ndo it in $O(h)$ by exploiting **monotonicity**: imagine two parallel lines\n(\"calipers\") squeezing the hull, and rotate them together through $180°$. As the\ncalipers turn, each touches a hull vertex; the contact points advance **around the\nhull in step**, never backtracking, because the support direction is monotone.\nEvery antipodal pair is realized as some caliper orientation, so walking the two\ncontact pointers once around the hull visits all candidate pairs.\n\nConcretely, for hull vertices in counterclockwise order, the area of the triangle\n$V_i V_{i+1} V_j$ (a cross product) is maximized, over $j$, at the vertex\n**farthest** from edge $\\overline{V_i V_{i+1}}$. As $i$ advances by one edge, the\nfarthest vertex $j$ only moves **forward**, so a single linear walk of $j$ keeps\npace with $i$. Each antipodal pair encountered is a diameter candidate.\n\n$$\n% caption: Two parallel calipers rotate around the hull; antipodal contact pairs include\n%          the diameter (widest) and width (narrowest gap)\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.5pt},\n  >=stealth, scale=0.95]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[dot] (h0) at (0.3,0.7) {};\n  \\node[dot] (h1) at (2.5,0.0) {};\n  \\node[dot] (h2) at (4.5,1.1) {};\n  \\node[dot] (h3) at (4.6,2.9) {};\n  \\node[dot] (h4) at (2.6,3.8) {};\n  \\node[dot] (h5) at (0.6,2.6) {};\n  \\draw[acc, thick] (h0.center) -- (h1.center) -- (h2.center) -- (h3.center)\n    -- (h4.center) -- (h5.center) -- cycle;\n  % diameter pair h1 and h4 (widest)\n  \\node[dot, fill=acc] at (h1) {};\n  \\node[dot, fill=acc] at (h4) {};\n  \\draw[acc, very thick] (h1.center) -- (h4.center);\n  \\node[acc, font=\\footnotesize, fill=white, inner sep=1.5pt] at (1.45,1.9) {diameter};\n  % two parallel calipers touching the antipodal pair\n  \\draw[acc!55!black, thick, dashed] ($(h1)+(-1.1,-0.45)$) -- ($(h1)+(1.5,0.6)$);\n  \\draw[acc!55!black, thick, dashed] ($(h4)+(-1.5,-0.6)$) -- ($(h4)+(1.1,0.45)$);\n  \\node[acc!55!black, font=\\footnotesize] at (4.1,-0.35) {\\texttt{caliper}};\n  \\node[acc!55!black, font=\\footnotesize] at (1.2,4.35) {parallel \\texttt{caliper}};\n\\end{tikzpicture}\n$$\n\n```algorithm\ncaption: $\\textsc{Diameter}(H)$ — farthest pair via rotating calipers, $H$ a CCW hull\nnumber: 2\n$h \\gets |H|$\nif $h \\le 2$ then\n  return the only pair\n$j \\gets 1;\\ best \\gets 0$           \u002F\u002F $j$ = current farthest vertex\nfor $i \\gets 0$ to $h - 1$ do\n  \u002F\u002F advance $j$ while the next vertex is farther from edge $\\overline{V_i V_{i+1}}$\n  while $\\area(H_i, H_{i+1}, H_{j+1}) > \\area(H_i, H_{i+1}, H_j)$ do\n    $j \\gets (j + 1) \\bmod h$\n  $best \\gets \\max(best,\\ \\dist(H_i, H_j),\\ \\dist(H_{i+1}, H_j))$\nreturn $best$\n```\n\n$$\n% caption: As edge index $i$ advances by one, the antipodal pointer $j$ only steps\n%          forward; the two contact pointers make a single monotone trip around the hull\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  dot\u002F.style={circle, fill, inner sep=1.4pt},\n  >=stealth, scale=0.85]\n  \\definecolor{acc}{HTML}{2348F2}\n  % a small hull, shown twice for two consecutive steps\n  \\foreach \\k\u002F\\dx in {0\u002F0, 1\u002F6.4} {\n    \\begin{scope}[shift={(\\dx,0)}]\n      \\coordinate (p0) at (0.4,0.6);\n      \\coordinate (p1) at (2.4,0.1);\n      \\coordinate (p2) at (3.7,1.7);\n      \\coordinate (p3) at (2.6,3.3);\n      \\coordinate (p4) at (0.6,2.7);\n      \\draw[acc, thick] (p0)--(p1)--(p2)--(p3)--(p4)--cycle;\n      \\foreach \\p in {p0,p1,p2,p3,p4} \\fill[acc!30] (\\p) circle (1.6pt);\n    \\end{scope}\n  }\n  % step 1: edge p0-p1 (bottom), farthest vertex p3\n  \\draw[acc, very thick] (0.4,0.6) -- (2.4,0.1);\n  \\fill[acc] (0.4,0.6) circle (2pt);\n  \\fill[acc] (2.4,0.1) circle (2pt);\n  \\fill[green!55!black] (2.6,3.3) circle (2.2pt);\n  \\draw[acc!55, dashed] (1.4,0.35) -- (2.6,3.3);\n  \\node[font=\\footnotesize, acc] at (1.4,-0.5) {edge $i$};\n  \\node[font=\\footnotesize, green!45!black] at (2.6,3.7) {farthest $j$};\n  % step 2: edge advances to p1-p2, j stays at p3 (forward only)\n  \\begin{scope}[shift={(6.4,0)}]\n    \\draw[acc, very thick] (2.4,0.1) -- (3.7,1.7);\n    \\fill[acc] (2.4,0.1) circle (2pt);\n    \\fill[acc] (3.7,1.7) circle (2pt);\n    \\fill[green!55!black] (2.6,3.3) circle (2.2pt);\n    \\draw[acc!55, dashed] (3.05,0.9) -- (2.6,3.3);\n    \\node[font=\\footnotesize, acc] at (3.4,-0.5) {edge $i$ add 1};\n    \\node[font=\\footnotesize, green!45!black] at (2.6,3.7) {$j$ steps \\texttt{forward}};\n  \\end{scope}\n\\end{tikzpicture}\n$$\n\nBecause $j$ only ever advances and wraps once, the inner `while` does $O(h)$ total\nwork across all $i$ — the pointer makes a single trip around the hull. The\ndiameter scan is therefore $O(h)$, and $O(n\\log n)$ end-to-end once the hull is\nbuilt, against $\\Theta(n^2)$ for all-pairs.[^skiena-calipers] The `area` calls are\ncross products, so distances enter only at the final `max` (and even there,\ncomparing **squared** distances keeps it exact).\n\nThe same caliper sweep answers the dual question, the **width** — the smallest\ndistance between two parallel supporting lines, i.e. the narrowest slab containing\nthe polygon. The minimum-width slab always has one line **flush with a hull edge**,\nso rotate one caliper along each edge in turn and track the antipodal vertex's\nperpendicular distance (a cross product divided by the edge length); the minimum\nover edges is the width. It drives smallest-enclosing-rectangle and\ncollision-clearance queries, again in $O(h)$ after the hull.\n\n::impl{algo=\"rotating_calipers\"}\n\n## Voronoi, Delaunay, and spatial trees\n\nClosest-pair answers one proximity question for one query. Real systems ask it\nrepeatedly — nearest hospital, nearest cell tower, nearest neighbor for a\nclassifier — and want a **structure**, built once, that answers each query fast.\nThe two canonical structures are duals of each other.\n\nThe **Voronoi diagram** of $n$ sites partitions the plane into one cell per site,\nthe cell of site $s$ being every point closer to $s$ than to any other site. Its\nedges are the perpendicular bisectors between neighboring sites, and a nearest-site\nquery becomes point location in this diagram. The **Delaunay triangulation** is\nits dual: connect two sites whenever their Voronoi cells share an edge. Delaunay\ntriangulations have a defining property — the circumcircle of every triangle is\n**empty** of other sites — that makes them maximize the minimum angle, so they\navoid the sliver triangles that wreck interpolation and mesh quality.[^delaunay]\nBoth are built in $O(n\\log n)$, by Fortune's sweep from the\n[previous lesson](\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line) or by randomized\nincremental insertion, and either one yields the closest pair as a by-product: the\ntwo nearest sites are always joined by a Delaunay edge.\n\n$$\n% caption: Voronoi cells (one per site, nearest-point regions) and the dual Delaunay\n%          triangulation joining sites with adjacent cells.\n\\begin{tikzpicture}[>=Stealth, font=\\footnotesize,\n    s\u002F.style={circle, fill, inner sep=1.5pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % sites\n  \\node[s] (a) at (0.4,0.6) {};\n  \\node[s] (b) at (3.0,0.2) {};\n  \\node[s] (c) at (4.0,2.4) {};\n  \\node[s] (d) at (1.4,3.0) {};\n  \\node[s] (e) at (2.2,1.6) {};\n  % Delaunay edges (accent)\n  \\draw[acc, thick] (a)--(b) (b)--(c) (c)--(d) (d)--(a) (a)--(e) (b)--(e) (c)--(e) (d)--(e);\n  \\node[acc, anchor=west] at (4.3,2.4) {Delaunay};\n  % a few Voronoi bisector segments (muted grey), schematic\n  \\draw[black, dashed] (1.7,0.4) -- (1.5,1.5) -- (0.9,2.9);\n  \\draw[black, dashed] (1.5,1.5) -- (3.1,1.5);\n  \\draw[black, dashed] (3.1,1.5) -- (3.5,0.2);\n  \\draw[black, dashed] (3.1,1.5) -- (3.9,2.0);\n  \\node[black, anchor=west] at (4.3,1.0) {Voronoi};\n\\end{tikzpicture}\n$$\n\nWhen the data is high-dimensional or the queries are approximate, Voronoi diagrams\nbecome impractical (their size grows as $O(n^{\\lceil d\u002F2\\rceil})$), and the tool of\nchoice is a **spatial tree**. A **k-d tree** recursively splits the points by\nalternating coordinate axes, giving $O(\\log n)$ expected nearest-neighbor queries\nin low dimensions; **R-trees** group nearby objects into bounding rectangles for\ndisk-resident spatial databases; and for the high-dimensional nearest-neighbor\nsearch behind modern embeddings, exact methods lose to **locality-sensitive\nhashing** and graph-based approximate indexes such as HNSW.[^ann] All of these\nstructures rest on the same primitive this module started with: every one\ndecides \"which side\" and \"closer to which\" with orientation and\ndistance comparisons, and keeps them exact where correctness of the combinatorics\ndepends on it.\n\n## Takeaways\n\n- **Closest pair** is divide-and-conquer: split at the median $x$, recurse, then\n  scan a width-$2\\delta$ **strip**. The **strip-packing lemma** caps the combine at\n  $7$ comparisons per point, giving $T(n) = 2T(n\u002F2) + \\Theta(n) = \\Theta(n\\log n)$\n  by the [Master Theorem](\u002Falgorithms\u002Ffoundations\u002Frecurrences). Compare squared\n  distances to stay exact.\n- **Point-in-polygon** by **ray casting**: an odd count of $+x$-ray crossings means\n  inside (Jordan curve), with half-open-edge tie-breaking for vertex\u002Fhorizontal\n  grazes and a separate on-segment test for the boundary.\n- The **winding number** sums signed crossings ($+1$ up, $-1$ down); $w(q) \\ne 0$\n  means inside and stays correct for self-intersecting polygons, where parity fails.\n- The **shoelace formula** $\\frac12\\abs{\\sum_i V_i \\times V_{i+1}}$ is proved\n  by the **trapezoid sum**: top edges add, bottom edges subtract, telescoping to\n  the enclosed area; its sign gives the winding direction.\n- **Rotating calipers** read the **diameter** (farthest pair, an antipodal hull\n  pair) and the **width** (narrowest slab, flush with a hull edge) in $O(h)$ by\n  advancing one monotone pointer around the hull — $O(n\\log n)$ after the hull\n  versus $\\Theta(n^2)$ brute force.\n\n[^clrs-closest]: **CLRS**, Ch. 33 — Computational Geometry (§33.4): divide-and-conquer closest pair, the $\\delta$-strip, and the constant-neighbour packing bound that makes the combine linear.\n[^skiena-area]: **Skiena**, § — Computational Geometry: the shoelace (surveyor's) formula as a signed sum of cross products, whose sign encodes vertex orientation.\n[^skiena-calipers]: **Skiena**, § — Computational Geometry: rotating calipers on the convex hull for the diameter (farthest pair) and width, in linear time after the hull.\n[^delaunay]: The Voronoi\u002FDelaunay duality and the empty-circumcircle (max-min-angle) property are treated in Mark de Berg et al., _Computational Geometry: Algorithms and Applications_ (3rd ed.), Chs. 7 and 9; both structures build in $O(n\\log n)$ via Fortune's sweep or randomized incremental insertion.\n[^ann]: Piotr Indyk and Rajeev Motwani, \"Approximate Nearest Neighbors: Towards Removing the Curse of Dimensionality,\" _STOC_ 1998 (locality-sensitive hashing); Yu. A. Malkov and D. A. Yashunin, \"Efficient and Robust Approximate Nearest Neighbor Search Using Hierarchical Navigable Small World Graphs,\" _IEEE TPAMI_ 42(4), 2020 (HNSW).\n",{"text":13929,"minutes":13930,"time":13931,"words":13932},"22 min read",21.67,1300200,4334,{"title":5,"description":13908},[13935,13937,13939],{"book":13766,"ref":13936},"Ch. 33 — Computational Geometry (§33.4 Closest pair)",{"book":13796,"ref":13938},"§ — Computational Geometry",{"book":13940,"ref":13941},"Erickson","Ch. — (geometry)","available","01.algorithms\u002F11.computational-geometry\u002F04.polygons-and-proximity","Four classics that live on top of the orientation primitive and the convex\nhull. **Closest pair** falls to divide-and-conquer in $\\Theta(n\\log n)$, where a\npacking argument caps the cross-boundary combine at seven neighbours per point.\n**Point-in-polygon** is the ray-casting parity test or the winding-number count\nthat also handles self-intersecting boundaries, both with their edge caveats. The **shoelace formula**\ngives signed area as a sum of cross products, and **rotating calipers** walk the\nhull to read off diameter and width in $O(n)$.\n",[13946],"Geometry","ECqBIxKaOWS-pxdZjWKB3JgqJ9FpxwbJoiNH129o00o",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":13949,"\u002Falgorithms\u002Ffoundations\u002Fproof-techniques":13950,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":13951,"\u002Falgorithms\u002Ffoundations\u002Fgrowth-rates-and-loop-analysis":13952,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":13953,"\u002Falgorithms\u002Ffoundations\u002Famortized-analysis":13954,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":13955,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":13956,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":13957,"\u002Falgorithms\u002Fdivide-and-conquer\u002Ffast-multiplication":13958,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":13959,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":13960,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":13961,"\u002Falgorithms\u002Fsorting\u002Fexternal-sorting":13962,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":13963,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":13964,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":13965,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":13966,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":13967,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":13968,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":13969,"\u002Falgorithms\u002Fdata-structures\u002Fspatial-data-structures":13970,"\u002Falgorithms\u002Fdata-structures\u002Fskip-lists-and-probabilistic-structures":13971,"\u002Falgorithms\u002Fdata-structures\u002Fb-trees":13972,"\u002Falgorithms\u002Fdata-structures\u002Fdata-stream-algorithms":13973,"\u002Falgorithms\u002Fdata-structures\u002Fstreaming-sketches":13974,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":13975,"\u002Falgorithms\u002Fsequences\u002Fprefix-sums":13976,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":13977,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":13978,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":13979,"\u002Falgorithms\u002Fsequences\u002Fkmp-and-z-function":13980,"\u002Falgorithms\u002Fsequences\u002Ftries":13981,"\u002Falgorithms\u002Fsequences\u002Fsuffix-arrays-and-aho-corasick":13982,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":13983,"\u002Falgorithms\u002Fgraphs\u002Fdepth-first-search":13984,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":13985,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":13986,"\u002Falgorithms\u002Fgraphs\u002Fkruskal-and-prim":13987,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":13988,"\u002Falgorithms\u002Fgraphs\u002Fall-pairs-and-negative-weights":13989,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":13990,"\u002Falgorithms\u002Fgraphs\u002Fmax-flow-min-cut":13991,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":13992,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":13993,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":13994,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":13995,"\u002Falgorithms\u002Fgraphs\u002Fbipartite-matching":13996,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":13997,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":13998,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":13999,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":14000,"\u002Falgorithms\u002Fgreedy\u002Fstable-matching":14001,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":14002,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":14003,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":14004,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":14005,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":14006,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":14007,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":14008,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":14009,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":14010,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":14011,"\u002Falgorithms\u002Fdynamic-programming\u002Fdigit-and-probability-dp":14012,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":14013,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":14014,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":14015,"\u002Falgorithms\u002Fbacktracking\u002Fgraph-backtracking":14016,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":14017,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":14018,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":14019,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":14020,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmatrix-exponentiation":14021,"\u002Falgorithms\u002Fmathematical-algorithms\u002Ffast-fourier-transform":14022,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fgradient-descent":14023,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":14024,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":14025,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":14026,"\u002Falgorithms\u002Fcomputational-geometry\u002Fpolygons-and-proximity":13932,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":14027,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":14028,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":14029,"\u002Falgorithms\u002Fintractability\u002Fapproximation-algorithms":14030,"\u002Falgorithms":14031,"\u002Fcalculus\u002Flimits-and-continuity\u002Ffunctions-and-models":14032,"\u002Fcalculus\u002Flimits-and-continuity\u002Fthe-limit-of-a-function":14033,"\u002Fcalculus\u002Flimits-and-continuity\u002Flimit-laws-and-the-precise-definition":14034,"\u002Fcalculus\u002Flimits-and-continuity\u002Fcontinuity":14035,"\u002Fcalculus\u002Fderivatives\u002Fthe-derivative-and-rates-of-change":14036,"\u002Fcalculus\u002Fderivatives\u002Fdifferentiation-rules-and-the-chain-rule":14037,"\u002Fcalculus\u002Fderivatives\u002Fimplicit-differentiation-and-related-rates":14038,"\u002Fcalculus\u002Fderivatives\u002Flinear-approximations-and-differentials":14039,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fextrema-and-the-mean-value-theorem":14040,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fhow-derivatives-shape-a-graph":14041,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fcurve-sketching-and-optimization":14042,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fnewtons-method-and-antiderivatives":14043,"\u002Fcalculus\u002Fintegrals\u002Farea-and-the-definite-integral":14044,"\u002Fcalculus\u002Fintegrals\u002Fthe-fundamental-theorem-of-calculus":14045,"\u002Fcalculus\u002Fintegrals\u002Fthe-substitution-rule":14046,"\u002Fcalculus\u002Fapplications-of-integration\u002Fareas-and-volumes":14047,"\u002Fcalculus\u002Fapplications-of-integration\u002Fwork-average-value-and-arc-length":14048,"\u002Fcalculus\u002Fapplications-of-integration\u002Fphysics-economics-and-probability":14049,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Finverse-functions-logarithms-and-exponentials":14050,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Fgrowth-decay-inverse-trig-and-hyperbolic-functions":14051,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Flhospitals-rule":14052,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fintegration-by-parts":14053,"\u002Fcalculus\u002Ftechniques-of-integration\u002Ftrigonometric-integrals-and-substitution":14054,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fpartial-fractions-and-integration-strategy":14055,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fapproximate-and-improper-integrals":14056,"\u002Fcalculus\u002Fparametric-and-polar\u002Fparametric-curves-and-their-calculus":14057,"\u002Fcalculus\u002Fparametric-and-polar\u002Fpolar-coordinates":14058,"\u002Fcalculus\u002Fparametric-and-polar\u002Fconic-sections":14059,"\u002Fcalculus\u002Fsequences-and-series\u002Fsequences":14060,"\u002Fcalculus\u002Fsequences-and-series\u002Fseries-and-the-integral-test":14061,"\u002Fcalculus\u002Fsequences-and-series\u002Fthe-convergence-tests":14062,"\u002Fcalculus\u002Fsequences-and-series\u002Fpower-series":14063,"\u002Fcalculus\u002Fsequences-and-series\u002Ftaylor-and-maclaurin-series":14064,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvectors-and-the-dot-product":14065,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fthe-cross-product-lines-and-planes":14046,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fcylinders-and-quadric-surfaces":14066,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvector-functions-and-space-curves":14067,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Farc-length-curvature-and-motion":14068,"\u002Fcalculus\u002Fpartial-derivatives\u002Ffunctions-of-several-variables":14036,"\u002Fcalculus\u002Fpartial-derivatives\u002Fpartial-derivatives":14069,"\u002Fcalculus\u002Fpartial-derivatives\u002Ftangent-planes-and-the-chain-rule":14070,"\u002Fcalculus\u002Fpartial-derivatives\u002Fdirectional-derivatives-and-the-gradient":14071,"\u002Fcalculus\u002Fpartial-derivatives\u002Foptimization-and-lagrange-multipliers":14072,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fdouble-integrals":14073,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Ftriple-integrals-and-coordinate-systems":14074,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fvector-fields-and-line-integrals":14075,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fgreens-theorem-curl-and-divergence":14076,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fsurface-integrals":14077,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fstokes-and-the-divergence-theorem":14078,"\u002Fcalculus":14079,"\u002Fmechanics\u002Ffoundations\u002Fmeasurement-and-dimensions":14080,"\u002Fmechanics\u002Ffoundations\u002Fvector-algebra":14081,"\u002Fmechanics\u002Fkinematics\u002Fone-dimensional-motion":14082,"\u002Fmechanics\u002Fkinematics\u002Fmotion-graphs":14083,"\u002Fmechanics\u002Fkinematics\u002Fprojectile-motion":14084,"\u002Fmechanics\u002Fkinematics\u002Frelative-motion":14085,"\u002Fmechanics\u002Fkinematics\u002Fcircular-motion":14086,"\u002Fmechanics\u002Fdynamics\u002Fnewtons-laws":14087,"\u002Fmechanics\u002Fdynamics\u002Ffree-body-diagrams":14088,"\u002Fmechanics\u002Fdynamics\u002Ffriction-and-curved-motion":14089,"\u002Fmechanics\u002Fdynamics\u002Fnumerical-dynamics":14090,"\u002Fmechanics\u002Fdynamics\u002Fcenter-of-mass-systems":14091,"\u002Fmechanics\u002Fenergy\u002Fwork-and-kinetic-energy":14092,"\u002Fmechanics\u002Fenergy\u002Fpotential-energy":14093,"\u002Fmechanics\u002Fenergy\u002Fmultiparticle-work":14094,"\u002Fmechanics\u002Fenergy\u002Fmass-energy-and-binding":14095,"\u002Fmechanics\u002Fenergy\u002Fphotons-and-quantization":14096,"\u002Fmechanics\u002Fmomentum\u002Fmomentum-and-collisions":14097,"\u002Fmechanics\u002Fmomentum\u002Fcenter-of-mass-collisions":14098,"\u002Fmechanics\u002Fmomentum\u002Frocket-propulsion":14099,"\u002Fmechanics\u002Frotation\u002Frotational-inertia":14100,"\u002Fmechanics\u002Frotation\u002Frotational-dynamics":14101,"\u002Fmechanics\u002Frotation\u002Frolling-motion":14102,"\u002Fmechanics\u002Frotation\u002Fangular-momentum":14103,"\u002Fmechanics\u002Frotation\u002Frolling-resistance":14104,"\u002Fmechanics\u002Frotation\u002Fgyroscopic-precession":14105,"\u002Fmechanics\u002Fgravity-and-matter\u002Fkeplerian-orbits":14106,"\u002Fmechanics\u002Fgravity-and-matter\u002Fgravitational-fields":14107,"\u002Fmechanics\u002Fgravity-and-matter\u002Fstatic-equilibrium":14108,"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-statics":14109,"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-flow":14110,"\u002Fmechanics\u002Fgravity-and-matter\u002Forbital-motion":14111,"\u002Fmechanics\u002Fgravity-and-matter\u002Fstress-and-elasticity":14112,"\u002Fmechanics\u002Foscillations-waves\u002Fdamped-oscillators":14113,"\u002Fmechanics\u002Foscillations-waves\u002Ftravelling-waves":14114,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-superposition":14115,"\u002Fmechanics\u002Foscillations-waves\u002Fstanding-waves":14116,"\u002Fmechanics\u002Foscillations-waves\u002Fsound-waves":14117,"\u002Fmechanics\u002Foscillations-waves\u002Fdoppler-effect":14118,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-packets":14119,"\u002Fmechanics\u002Foscillations-waves\u002Fbeats-and-coupling":14120,"\u002Fmechanics\u002Foscillations-waves\u002Fsimple-harmonic-motion":14121,"\u002Fmechanics\u002Foscillations-waves\u002Fpendulum-motion":14122,"\u002Fmechanics\u002Foscillations-waves\u002Fdriven-oscillators":14123,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-boundaries":14124,"\u002Fmechanics\u002Fthermodynamics\u002Fkinetic-theory-of-ideal-gases":14125,"\u002Fmechanics\u002Fthermodynamics\u002Ffirst-law-of-thermodynamics":14126,"\u002Fmechanics\u002Fthermodynamics\u002Fentropy-and-the-second-law":14127,"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-processes":14128,"\u002Fmechanics\u002Fthermodynamics\u002Fphase-changes":14129,"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-machines":14130,"\u002Fmechanics":14131,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcharge-and-conductors":14132,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcoulombs-law":14133,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-and-force":14134,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-maps":14135,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-dipoles":14136,"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fcontinuous-charge-fields":14137,"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fgauss-law-and-conductors":14138,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpoint-charge-potential":14139,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpotential-gradients-and-equipotentials":14140,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Felectrostatic-energy-and-pressure":14141,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Flaplace-boundary-problems":14142,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fcontinuous-charge-potentials":14143,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitance-fundamentals":14120,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-networks":14144,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-energy-and-force":14145,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fdielectric-polarization-and-breakdown":14146,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fcurrent-and-resistance":14116,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fkirchhoff-network-analysis":13982,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Frc-transients":14147,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-trajectories":14107,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fhall-effect":14148,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-force-on-conductors":14149,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-dipoles":14150,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmass-spectrometry":14151,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmoving-charge-fields":14152,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fbiot-savart-law":14153,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fcircular-current-loops":14154,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Famperes-law":14155,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fgauss-law-for-magnetism":14156,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmagnetic-materials":14081,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-flux":14157,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Ffaradays-law":14158,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Flenzs-law":14159,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmotional-emf":14160,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Feddy-currents":14161,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fself-inductance":14162,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-energy":14163,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Frl-circuits":14164,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-fundamentals":14099,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Freactance":14098,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Frlc-resonance":14165,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-power":14166,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Ftransformers":14167,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdisplacement-current":14168,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-waves":14169,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-momentum":14170,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdipole-radiation":14171,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fpolarization":14172,"\u002Felectricity-and-magnetism\u002Foptics\u002Freflection-and-refraction":14173,"\u002Felectricity-and-magnetism\u002Foptics\u002Fthin-lenses":14125,"\u002Felectricity-and-magnetism\u002Foptics\u002Fspherical-mirrors":14123,"\u002Felectricity-and-magnetism":14174,"\u002Flinear-algebra\u002Flinear-systems\u002Fsystems-and-echelon-forms":14175,"\u002Flinear-algebra\u002Flinear-systems\u002Fvector-and-matrix-equations":14176,"\u002Flinear-algebra\u002Flinear-systems\u002Fsolution-sets-and-applications":14177,"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-independence":14178,"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-transformations":14179,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-operations":14180,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-inverse-and-invertibility":14181,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fpartitioned-matrices-and-lu":14182,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fsubspaces-dimension-rank":14183,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fapplications-leontief-and-graphics":14033,"\u002Flinear-algebra\u002Fdeterminants\u002Fdeterminants-and-cofactors":14184,"\u002Flinear-algebra\u002Fdeterminants\u002Fproperties-of-determinants":14185,"\u002Flinear-algebra\u002Fdeterminants\u002Fcramer-volume-and-area":14037,"\u002Flinear-algebra\u002Fvector-spaces\u002Fvector-spaces-and-subspaces":14186,"\u002Flinear-algebra\u002Fvector-spaces\u002Fnull-and-column-spaces":14187,"\u002Flinear-algebra\u002Fvector-spaces\u002Fbases-and-independent-sets":14188,"\u002Flinear-algebra\u002Fvector-spaces\u002Fcoordinate-systems":14189,"\u002Flinear-algebra\u002Fvector-spaces\u002Fdimension-and-rank":14190,"\u002Flinear-algebra\u002Fvector-spaces\u002Fchange-of-basis":14191,"\u002Flinear-algebra\u002Fvector-spaces\u002Fdifference-equations-and-markov":14192,"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-eigenvalues":14193,"\u002Flinear-algebra\u002Feigenvalues\u002Fthe-characteristic-equation":14194,"\u002Flinear-algebra\u002Feigenvalues\u002Fdiagonalization":14195,"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-linear-transformations":14196,"\u002Flinear-algebra\u002Feigenvalues\u002Fcomplex-eigenvalues":14197,"\u002Flinear-algebra\u002Feigenvalues\u002Fdynamical-systems":14198,"\u002Flinear-algebra\u002Feigenvalues\u002Fpower-method":14199,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-length-orthogonality":14200,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Forthogonal-sets-and-projections":14201,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fgram-schmidt-and-qr":14202,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-problems":14203,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-applications":14204,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-spaces":14205,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fdiagonalizing-symmetric-matrices":14072,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fquadratic-forms":14206,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fconstrained-optimization":14207,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsingular-value-decomposition":14208,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsvd-applications-pca-imaging":14209,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-thinking-and-matrix-computation":14210,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Flu-and-cholesky":14211,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fconditioning-and-floating-point":14212,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fstability-and-error-analysis":14213,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fqr-and-numerical-least-squares":14214,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-eigenvalues-and-svd":14215,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-combinations":14216,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-independence-and-barycentric-coordinates":14217,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fconvex-combinations-and-convex-sets":14218,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fhyperplanes-and-polytopes":14219,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fcurves-and-surfaces":14220,"\u002Flinear-algebra":14221,"\u002Ftheory-of-computation":14222,"\u002Fcomputer-architecture\u002Ffoundations\u002Fbits-bytes-and-words":14223,"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-representation":14224,"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-arithmetic":14225,"\u002Fcomputer-architecture\u002Ffoundations\u002Ffloating-point":14226,"\u002Fcomputer-architecture\u002Ffoundations\u002Fboolean-algebra-and-bit-manipulation":14227,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fthe-machines-view":14228,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fdata-movement":14229,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farithmetic-and-logic":14230,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fcontrol-flow":14231,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fprocedures":14232,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farrays-structs-and-alignment":14233,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fmemory-layout-and-buffer-overflows":14234,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fwhat-an-isa-is":14235,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Finstruction-formats-and-operands":14236,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Faddressing-modes":14237,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fthe-y86-64-instruction-set":14238,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fy86-64-programming":14239,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Ftransistors-gates-and-boolean-functions":14240,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fcombinational-logic-and-hcl":14241,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmultiplexers-decoders-and-the-alu":14242,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmemory-elements-latches-flip-flops-and-clocking":14243,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fregister-files-and-random-access-memory":14244,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-fetch-decode-execute-cycle":14245,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-seq-stages":14246,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fcontrol-logic-and-sequencing":14247,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fassembling-seq":14248,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Ftracing-a-program":14249,"\u002Fcomputer-architecture\u002Fpipelining\u002Fpipelining-principles":14250,"\u002Fcomputer-architecture\u002Fpipelining\u002Ffrom-seq-to-pipe":14251,"\u002Fcomputer-architecture\u002Fpipelining\u002Fdata-hazards-stalling-and-forwarding":14252,"\u002Fcomputer-architecture\u002Fpipelining\u002Fcontrol-hazards-and-branch-prediction":14253,"\u002Fcomputer-architecture\u002Fpipelining\u002Fthe-complete-pipe-processor":14254,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fstorage-technologies-and-the-latency-gap":14255,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Flocality":14256,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-memories-direct-mapped":14257,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fset-associative-and-write-policies":14258,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-performance-and-cache-friendly-code":14259,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Faddress-spaces-and-translation":14260,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fpage-tables-and-page-faults":14261,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fthe-tlb-and-multi-level-page-tables":14262,"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Fexceptional-control-flow":14263,"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Finterrupts-and-the-kernel":14264,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fprocesses-threads-and-parallelism":14265,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fhardware-multithreading":14266,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fcache-coherence":14267,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmemory-consistency-and-synchronization":14268,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmulticore-organization":14269,"\u002Fcomputer-architecture\u002Fcapstone\u002Fthe-whole-machine":14270,"\u002Fcomputer-architecture\u002Fcapstone\u002Fassembling-a-complete-cpu":14271,"\u002Fcomputer-architecture":14222,"\u002Fdifferential-equations\u002Ffoundations\u002Fmodels-and-direction-fields":14272,"\u002Fdifferential-equations\u002Ffoundations\u002Fclassification-and-terminology":14273,"\u002Fdifferential-equations\u002Ffirst-order\u002Flinear-first-order-integrating-factors":14274,"\u002Fdifferential-equations\u002Ffirst-order\u002Fseparable-and-exact":14037,"\u002Fdifferential-equations\u002Ffirst-order\u002Fmodeling-first-order":14275,"\u002Fdifferential-equations\u002Ffirst-order\u002Fautonomous-and-population-dynamics":14036,"\u002Fdifferential-equations\u002Ffirst-order\u002Fexistence-uniqueness-euler":14043,"\u002Fdifferential-equations\u002Ffirst-order\u002Ffirst-order-difference-equations":14276,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhomogeneous-constant-coefficients":14277,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fcomplex-and-repeated-roots":14077,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fnonhomogeneous-undetermined-coefficients":14278,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fvariation-of-parameters":14279,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fmechanical-electrical-vibrations":14280,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhigher-order-linear":14281,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fpower-series-ordinary-points":14282,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fregular-singular-frobenius":14283,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fbessel-and-special-functions":14284,"\u002Fdifferential-equations\u002Flaplace\u002Flaplace-definition-ivps":14285,"\u002Fdifferential-equations\u002Flaplace\u002Fstep-impulse-convolution":14286,"\u002Fdifferential-equations\u002Fsystems\u002Fmatrices-eigenvalues-review":14287,"\u002Fdifferential-equations\u002Fsystems\u002Fconstant-coefficient-systems-phase-portraits":14288,"\u002Fdifferential-equations\u002Fsystems\u002Frepeated-eigenvalues-fundamental-matrices":14289,"\u002Fdifferential-equations\u002Fnumerical\u002Feuler-and-runge-kutta":14284,"\u002Fdifferential-equations\u002Fnumerical\u002Fmultistep-systems-stability":14290,"\u002Fdifferential-equations\u002Fnonlinear\u002Fphase-plane-autonomous-stability":14291,"\u002Fdifferential-equations\u002Fnonlinear\u002Flocally-linear-and-liapunov":14292,"\u002Fdifferential-equations\u002Fnonlinear\u002Fcompeting-species-predator-prey-limit-cycles":14293,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Ffourier-series":14294,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fheat-wave-laplace-equations":14295,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fsturm-liouville":14296,"\u002Fdifferential-equations\u002Fhistory-variations\u002Fcalculus-of-variations":14297,"\u002Fdifferential-equations\u002Fhistory-variations\u002Fhistorical-notes":14298,"\u002Fdifferential-equations":14299,"\u002Frelativity\u002Ffoundations\u002Fspecial-relativity-postulates":14300,"\u002Frelativity\u002Ffoundations\u002Florentz-transformation-spacetime":14301,"\u002Frelativity\u002Ffoundations\u002Ftime-dilation-length-contraction":14302,"\u002Frelativity\u002Ffoundations\u002Frelativistic-momentum-energy":14303,"\u002Frelativity\u002Ffoundations\u002Fgeneral-relativity":14182,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fminkowski-spacetime-and-the-interval":14304,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Ffour-vectors-and-index-notation":14305,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fthe-lorentz-group-and-rapidity":14306,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fdoppler-aberration-and-appearance":14307,"\u002Frelativity\u002Frelativistic-dynamics\u002Ffour-momentum-force-and-accelerated-motion":14308,"\u002Frelativity\u002Frelativistic-dynamics\u002Fparticle-decays-and-two-body-kinematics":14309,"\u002Frelativity\u002Frelativistic-dynamics\u002Fcollisions-thresholds-and-the-cm-frame":14052,"\u002Frelativity\u002Frelativistic-dynamics\u002Fmandelstam-variables-and-invariants":14310,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ffour-current-and-the-four-potential":14311,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fthe-electromagnetic-field-tensor":14312,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ftransformation-of-electric-and-magnetic-fields":14313,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fcovariant-maxwell-and-the-stress-energy-tensor":14314,"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-equivalence-principle-formalized":14315,"\u002Frelativity\u002Fcurved-spacetime\u002Fmanifolds-vectors-and-the-metric":14316,"\u002Frelativity\u002Fcurved-spacetime\u002Fcovariant-derivative-and-christoffel-symbols":14317,"\u002Frelativity\u002Fcurved-spacetime\u002Fgeodesics-and-the-geodesic-equation":14318,"\u002Frelativity\u002Fcurved-spacetime\u002Fcurvature-riemann-and-geodesic-deviation":14319,"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-einstein-field-equations":14274,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fthe-schwarzschild-metric":14320,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fgeodesics-and-orbits-in-schwarzschild":14321,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Flight-bending-and-null-geodesics":14322,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fperihelion-precession-of-mercury":14323,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fdeflection-of-light-and-gravitational-lensing":14324,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fgravitational-redshift-and-shapiro-delay":14203,"\u002Frelativity\u002Ftests-of-general-relativity\u002Frelativity-in-technology-gps":14325,"\u002Frelativity\u002Fblack-holes\u002Fhorizons-and-coordinate-singularities":14326,"\u002Frelativity\u002Fblack-holes\u002Frotating-and-charged-black-holes":14213,"\u002Frelativity\u002Fblack-holes\u002Fblack-hole-thermodynamics":14327,"\u002Frelativity\u002Fgravitational-waves\u002Flinearized-gravity-and-wave-solutions":14328,"\u002Frelativity\u002Fgravitational-waves\u002Fgeneration-and-the-quadrupole-formula":14329,"\u002Frelativity\u002Fgravitational-waves\u002Fdetection-ligo-and-the-first-events":14330,"\u002Frelativity\u002Fcosmological-bridge\u002Fthe-cosmological-principle-and-flrw-metric":14331,"\u002Frelativity\u002Fcosmological-bridge\u002Ffriedmann-equations-and-cosmic-dynamics":14332,"\u002Frelativity":14333,"\u002Fphysical-computing":14222,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fblackbody-radiation-and-the-planck-quantum":14334,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-photoelectric-effect-and-the-photon":14313,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fx-rays-and-the-compton-effect":14335,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-old-quantum-theory-bohr-and-sommerfeld":14336,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fde-broglie-waves-and-electron-diffraction":14337,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fwave-packets-and-the-probability-interpretation":14338,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fthe-uncertainty-principle":14339,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-schrodinger-equation-in-one-dimension":14340,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-free-particle-and-wave-packet-dynamics":14341,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fparticle-in-infinite-and-finite-square-wells":14289,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Foperators-expectation-values-and-the-harmonic-oscillator":14213,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-dirac-delta-potential":14342,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fbarrier-penetration-and-quantum-tunneling":14343,"\u002Fquantum-mechanics\u002Fformalism\u002Fhilbert-space-and-dirac-notation":14344,"\u002Fquantum-mechanics\u002Fformalism\u002Fobservables-hermitian-operators-and-eigenvalues":14345,"\u002Fquantum-mechanics\u002Fformalism\u002Fthe-postulates-and-quantum-measurement":14341,"\u002Fquantum-mechanics\u002Fformalism\u002Fposition-momentum-and-continuous-spectra":14346,"\u002Fquantum-mechanics\u002Fformalism\u002Fcommutators-and-the-generalized-uncertainty-principle":14321,"\u002Fquantum-mechanics\u002Fformalism\u002Ftime-evolution-schrodinger-and-heisenberg-pictures":14074,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fladder-operators-and-the-number-states":14347,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fcoherent-and-squeezed-states":14348,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fsymmetries-generators-and-conservation-laws":14054,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fparity-time-reversal-and-discrete-symmetries":14349,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Forbital-angular-momentum-and-spherical-harmonics":14350,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Fthe-angular-momentum-algebra":14351,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Faddition-of-angular-momenta-and-clebsch-gordan":14352,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-schrodinger-equation-in-three-dimensions":14353,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-hydrogen-atom":14354,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-isotropic-oscillator-and-hidden-symmetry":14355,"\u002Fquantum-mechanics\u002Fspin\u002Fspin-half-pauli-matrices-and-stern-gerlach":14356,"\u002Fquantum-mechanics\u002Fspin\u002Fspin-in-a-magnetic-field-precession-and-resonance":14357,"\u002Fquantum-mechanics\u002Fspin\u002Ftwo-level-systems-and-the-bloch-sphere":14313,"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fidentical-particles-and-exchange-symmetry":14358,"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fthe-pauli-principle-atoms-and-the-periodic-table":14359,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ftime-independent-perturbation-theory":14360,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ffine-structure-and-the-real-hydrogen-atom":14347,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-zeeman-and-stark-effects":14035,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-variational-method":14361,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-wkb-approximation":14362,"\u002Fquantum-mechanics":14363,"\u002Freal-analysis\u002Ffoundations\u002Fsets-logic-functions":14297,"\u002Freal-analysis\u002Ffoundations\u002Fordered-fields-completeness":14364,"\u002Freal-analysis\u002Ffoundations\u002Fabsolute-value-bounds":14365,"\u002Freal-analysis\u002Ffoundations\u002Fintervals-uncountability":14186,"\u002Freal-analysis\u002Fsequences-series\u002Fsequences-limits":14366,"\u002Freal-analysis\u002Fsequences-series\u002Flimit-laws-monotone":14072,"\u002Freal-analysis\u002Fsequences-series\u002Flimsup-bolzano-weierstrass":14367,"\u002Freal-analysis\u002Fsequences-series\u002Fcauchy-completeness":14368,"\u002Freal-analysis\u002Fsequences-series\u002Fseries-convergence":14209,"\u002Freal-analysis\u002Fsequences-series\u002Fabsolute-conditional-rearrangement":14319,"\u002Freal-analysis\u002Fmetric-spaces\u002Fmetric-spaces-norms":14369,"\u002Freal-analysis\u002Fmetric-spaces\u002Fopen-closed-sets":14370,"\u002Freal-analysis\u002Fmetric-spaces\u002Fconvergence-completeness":14371,"\u002Freal-analysis\u002Fmetric-spaces\u002Fcompactness":14372,"\u002Freal-analysis\u002Fmetric-spaces\u002Fconnectedness":14373,"\u002Freal-analysis\u002Fcontinuity\u002Flimits-of-functions":14346,"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuous-functions":14374,"\u002Freal-analysis\u002Fcontinuity\u002Fevt-ivt":14179,"\u002Freal-analysis\u002Fcontinuity\u002Funiform-continuity":14375,"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuity-metric-spaces":14376,"\u002Freal-analysis\u002Fcontinuity\u002Flimits-infinity-monotone":14033,"\u002Freal-analysis\u002Fdifferentiation\u002Fthe-derivative":14377,"\u002Freal-analysis\u002Fdifferentiation\u002Fmean-value-theorem":14378,"\u002Freal-analysis\u002Fdifferentiation\u002Ftaylors-theorem":14335,"\u002Freal-analysis\u002Fdifferentiation\u002Finverse-function-1d":14062,"\u002Freal-analysis\u002Friemann-integration\u002Fdarboux-integral":14213,"\u002Freal-analysis\u002Friemann-integration\u002Fintegrability-classes":14379,"\u002Freal-analysis\u002Friemann-integration\u002Fproperties-of-the-integral":14380,"\u002Freal-analysis\u002Friemann-integration\u002Ffundamental-theorem":14198,"\u002Freal-analysis\u002Friemann-integration\u002Flog-exp-improper":14323,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpointwise-uniform-convergence":14381,"\u002Freal-analysis\u002Ffunction-sequences\u002Finterchange-of-limits":14382,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpower-series-weierstrass":14383,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpicard-ode":14218,"\u002Freal-analysis\u002Fseveral-variables\u002Fdifferentiability-rn":14384,"\u002Freal-analysis\u002Fseveral-variables\u002Fgradient-chain-rule":14385,"\u002Freal-analysis\u002Fseveral-variables\u002Fhigher-derivatives-taylor-extrema":14386,"\u002Freal-analysis\u002Fseveral-variables\u002Finverse-implicit-theorems":14386,"\u002Freal-analysis\u002Fseveral-variables\u002Fmultiple-integrals":14387,"\u002Freal-analysis":14388,"\u002Fabstract-algebra\u002Ffoundations\u002Fsets-functions-relations":14389,"\u002Fabstract-algebra\u002Ffoundations\u002Fintegers-and-modular-arithmetic":14390,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fgroup-axioms-and-first-examples":14391,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fdihedral-and-symmetric-groups":14392,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fmatrix-and-quaternion-groups":14393,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fhomomorphisms-and-group-actions":14394,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fsubgroups-and-substructures":14395,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcyclic-groups":14396,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fgeneration-and-subgroup-lattices":14397,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcosets-lagrange-and-normal-subgroups":14398,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fisomorphism-theorems":14362,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcomposition-series-and-the-alternating-group":14399,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Factions-and-cayleys-theorem":14391,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fconjugation-and-the-class-equation":14308,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fsylow-theorems":14400,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fautomorphisms-and-simple-groups":14401,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fdirect-products-and-finite-abelian-groups":14402,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fsemidirect-products":14403,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fnilpotent-and-solvable-groups":14404,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fclassifying-small-groups":14405,"\u002Fabstract-algebra\u002Fring-theory\u002Frings-definitions-and-examples":14406,"\u002Fabstract-algebra\u002Fring-theory\u002Fideals-quotients-and-homomorphisms":14407,"\u002Fabstract-algebra\u002Fring-theory\u002Ffractions-and-the-chinese-remainder-theorem":14401,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Feuclidean-domains-pids-ufds":14408,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fpolynomial-rings-over-fields":14377,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fgauss-lemma-and-unique-factorization":14409,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Firreducibility-criteria-and-groebner":14410,"\u002Fabstract-algebra\u002Fmodule-theory\u002Fintroduction-to-modules":14411,"\u002Fabstract-algebra\u002Fmodule-theory\u002Ffree-modules-and-direct-sums":14412,"\u002Fabstract-algebra\u002Fmodule-theory\u002Ftensor-products-and-exact-sequences":14413,"\u002Fabstract-algebra\u002Fmodule-theory\u002Fvector-spaces-and-linear-maps":14414,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fstructure-theorem-over-pids":14415,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Frational-canonical-form":14416,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fjordan-canonical-form":14417,"\u002Fabstract-algebra\u002Ffield-theory\u002Ffield-extensions-and-algebraic-elements":14418,"\u002Fabstract-algebra\u002Ffield-theory\u002Fstraightedge-and-compass-constructions":14051,"\u002Fabstract-algebra\u002Ffield-theory\u002Fsplitting-fields-and-algebraic-closure":14419,"\u002Fabstract-algebra\u002Ffield-theory\u002Fseparable-and-cyclotomic-extensions":14420,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fthe-galois-correspondence":14293,"\u002Fabstract-algebra\u002Fgalois-theory\u002Ffinite-fields":14421,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fcyclotomic-and-abelian-extensions":14422,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fgalois-groups-of-polynomials":14350,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fsolvability-by-radicals-and-the-quintic":14422,"\u002Fabstract-algebra\u002Fcapstone\u002Fcommutative-algebra-and-algebraic-geometry":14423,"\u002Fabstract-algebra\u002Fcapstone\u002Frepresentation-and-character-theory":14424,"\u002Fabstract-algebra":14425,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fatomic-spectra-rutherford":14426,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-model-hydrogen":14427,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fx-ray-spectra-franck-hertz":14428,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-sommerfeld-old-quantum-theory":14429,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fold-quantum-theory-limits-wkb":14430,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fschrodinger-3d-hydrogen":14342,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fhydrogen-wave-functions":14431,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fradial-equation-in-full":14432,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fsymmetry-degeneracy-runge-lenz":14433,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fexpectation-values-virial":14434,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fquantum-defects-alkali-spectra":14435,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Frydberg-atoms":14436,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Frelativistic-kinetic-correction":14437,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fspin-orbit-thomas-precession":14176,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdarwin-term-fine-structure-formula":14305,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdirac-equation-hydrogen":14051,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Flamb-shift-qed":14438,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fhyperfine-structure-21cm":14035,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fnuclear-effects-isotope-shift":14439,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fperiodic-table-atomic-spectra":14440,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fcentral-field-self-consistent":14073,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fidentical-particles-hartree-fock":14367,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhelium-two-electron-atom":14441,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fls-jj-coupling-term-symbols":14442,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhund-rules-ground-terms":14443,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fzeeman-effect":14444,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fpaschen-back-intermediate":14445,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fstark-effect-polarizability":14446,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Ftime-dependent-perturbation-golden-rule":14447,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fdipole-approximation-einstein-coefficients":14448,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fselection-rules-forbidden-transitions":14449,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Flifetimes-and-line-shapes":14450,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Flaser-principles":14451,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fspectroscopy-techniques":14452,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fline-catalog-nist-asd":14453,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Flaser-cooling-doppler":14454,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fsub-doppler-trapping":14398,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fbose-einstein-condensation":14455,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Foptical-clocks-precision":14456,"\u002Fatomic-physics":14457,"\u002Fdatabases":14222,"\u002Fcategory-theory\u002Ffoundations\u002Fwhat-is-a-category":14458,"\u002Fcategory-theory\u002Ffoundations\u002Fexamples-of-categories":14459,"\u002Fcategory-theory\u002Ffoundations\u002Fspecial-morphisms":14460,"\u002Fcategory-theory\u002Ffoundations\u002Ffunctors":14389,"\u002Fcategory-theory\u002Ffoundations\u002Fnatural-transformations":14461,"\u002Fcategory-theory\u002Ffoundations\u002Fsize-and-set-theory":14462,"\u002Fcategory-theory\u002Funiversal-properties\u002Funiversal-properties":14463,"\u002Fcategory-theory\u002Funiversal-properties\u002Fproducts-and-coproducts":14464,"\u002Fcategory-theory\u002Funiversal-properties\u002Fconstructions-on-categories":14465,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Frepresentable-functors":14466,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-lemma":14467,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-consequences":14468,"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits":14469,"\u002Fcategory-theory\u002Flimits-colimits\u002Fproducts-equalizers-pullbacks":14470,"\u002Fcategory-theory\u002Flimits-colimits\u002Fcolimits":14471,"\u002Fcategory-theory\u002Flimits-colimits\u002Fcomputing-limits":14472,"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits-and-functors":14473,"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions":14474,"\u002Fcategory-theory\u002Fadjunctions\u002Funits-and-counits":14475,"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions-via-universal-arrows":14476,"\u002Fcategory-theory\u002Fadjunctions\u002Ffree-forgetful-adjunctions":14477,"\u002Fcategory-theory\u002Fadjoints-limits\u002Flimits-via-adjoints":14478,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fpresheaf-limits-colimits":14479,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoints-preserve-limits":14480,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoint-functor-theorem":14471,"\u002Fcategory-theory\u002Fmonads-algebras\u002Fmonads":14481,"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-eilenberg-moore":14482,"\u002Fcategory-theory\u002Fmonads-algebras\u002Fkleisli-and-programming":14483,"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-for-endofunctors":14484,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Fcartesian-closed-categories":14485,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Flambda-calculus-correspondence":14430,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Ffixed-points-and-recursion":14486,"\u002Fcategory-theory":14487,"\u002Fdeep-learning\u002Fmathematical-background\u002Flinear-algebra-for-deep-learning":14488,"\u002Fdeep-learning\u002Fmathematical-background\u002Fprobability-and-information-theory":14489,"\u002Fdeep-learning\u002Fmathematical-background\u002Fnumerical-computation":14490,"\u002Fdeep-learning\u002Fmathematical-background\u002Fcalculus":14491,"\u002Fdeep-learning\u002Ffoundations\u002Fwhat-is-deep-learning":14492,"\u002Fdeep-learning\u002Ffoundations\u002Fmachine-learning-refresher":14493,"\u002Fdeep-learning\u002Ffoundations\u002Flinear-models-and-the-perceptron":14452,"\u002Fdeep-learning\u002Fneural-networks\u002Fthe-multilayer-perceptron":14494,"\u002Fdeep-learning\u002Fneural-networks\u002Factivation-functions":14495,"\u002Fdeep-learning\u002Fneural-networks\u002Funiversal-approximation":14496,"\u002Fdeep-learning\u002Fneural-networks\u002Fbackpropagation":14497,"\u002Fdeep-learning\u002Fneural-networks\u002Floss-functions-and-output-units":14498,"\u002Fdeep-learning\u002Foptimization\u002Fgradient-descent-and-sgd":14499,"\u002Fdeep-learning\u002Foptimization\u002Fmomentum-and-adaptive-methods":14500,"\u002Fdeep-learning\u002Foptimization\u002Finitialization":14501,"\u002Fdeep-learning\u002Foptimization\u002Fthe-optimization-landscape":14502,"\u002Fdeep-learning\u002Foptimization\u002Fsecond-order-and-approximate-methods":14503,"\u002Fdeep-learning\u002Fregularization\u002Fregularization-overview":14504,"\u002Fdeep-learning\u002Fregularization\u002Fdropout-and-data-augmentation":14505,"\u002Fdeep-learning\u002Fregularization\u002Fearly-stopping-and-parameter-sharing":14506,"\u002Fdeep-learning\u002Fregularization\u002Fnormalization":14507,"\u002Fdeep-learning\u002Farchitectures\u002Fconvolutional-networks":14508,"\u002Fdeep-learning\u002Farchitectures\u002Fcnn-architectures":14509,"\u002Fdeep-learning\u002Farchitectures\u002Frecurrent-networks":14510,"\u002Fdeep-learning\u002Farchitectures\u002Flstm-and-gru":14511,"\u002Fdeep-learning\u002Farchitectures\u002Fattention-and-transformers":14512,"\u002Fdeep-learning\u002Farchitectures\u002Fthe-transformer-architecture":14513,"\u002Fdeep-learning\u002Farchitectures\u002Ftransformers-in-practice":14514,"\u002Fdeep-learning\u002Farchitectures\u002Fgraph-neural-networks":14515,"\u002Fdeep-learning\u002Farchitectures\u002Fstate-space-models":14516,"\u002Fdeep-learning\u002Ftheory\u002Fgeneralization-theory":14517,"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-robustness":14518,"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-defenses":14519,"\u002Fdeep-learning\u002Ftheory\u002Fbayesian-and-ensemble-methods":14520,"\u002Fdeep-learning\u002Ftheory\u002Fdeep-equilibrium-models":14464,"\u002Fdeep-learning\u002Fgenerative-models\u002Flinear-factor-models":14521,"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoencoders":14522,"\u002Fdeep-learning\u002Fgenerative-models\u002Fvariational-autoencoders":14523,"\u002Fdeep-learning\u002Fgenerative-models\u002Fgenerative-adversarial-networks":14524,"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoregressive-and-normalizing-flows":14525,"\u002Fdeep-learning\u002Fgenerative-models\u002Fenergy-based-and-boltzmann-machines":14526,"\u002Fdeep-learning\u002Fgenerative-models\u002Fdiffusion-and-score-based-models":14527,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fstructured-probabilistic-models":14017,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fmonte-carlo-and-mcmc":14528,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fapproximate-inference":14529,"\u002Fdeep-learning\u002Fpractical\u002Fpractical-methodology":14252,"\u002Fdeep-learning\u002Fpractical\u002Fhyperparameters-and-debugging":14530,"\u002Fdeep-learning\u002Fpractical\u002Frepresentation-learning":14531,"\u002Fdeep-learning\u002Fpractical\u002Ftransfer-learning":14532,"\u002Fdeep-learning\u002Fpractical\u002Fapplications":14533,"\u002Fdeep-learning\u002Fpractical\u002Fmodel-compression-and-distillation":14534,"\u002Fdeep-learning\u002Fpractical\u002Fmeta-learning-and-few-shot":14535,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Flarge-language-models":14536,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fscaling-inference-and-alignment":14537,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fseq2seq-pretraining-and-bart":14538,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ftext-to-text-transfer-and-conditional-generation":14539,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fspeech-and-audio-models":14540,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fself-supervised-speech-and-synthesis":14541,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fai-agents":14225,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fagent-memory-retrieval-and-orchestration":14542,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmixture-of-experts":14543,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmultimodal-models":14544,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ffusion-and-vision-language-models":14545,"\u002Fdeep-learning\u002Freinforcement-learning\u002Ffoundations-of-reinforcement-learning":14262,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fmodel-free-prediction-and-control":14546,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fdeep-q-networks":14547,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fpolicy-gradients-and-actor-critic":14548,"\u002Fdeep-learning\u002Freinforcement-learning\u002Frl-from-human-feedback":14549,"\u002Fdeep-learning":14222,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fequilibrium-state-variables-zeroth-law":14550,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Ffirst-law-heat-and-work":14347,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fsecond-law-entropy-and-the-carnot-bound":14551,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fthermodynamic-potentials-and-maxwell-relations":14552,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fstability-response-functions-and-the-third-law":14553,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fclassical-statistics-and-equipartition":14554,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fphase-space-and-liouvilles-theorem":14555,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fensembles-and-the-equal-probability-postulate":14556,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fstatistical-entropy-boltzmann-and-gibbs":14557,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fmicrocanonical-ensemble-and-entropy":14558,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fequilibrium-conditions-temperature-pressure-chemical-potential":14394,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fideal-gas-phase-space-and-the-sackur-tetrode-entropy":14559,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Ftwo-state-systems-paramagnets-and-negative-temperature":13912,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fcanonical-ensemble-and-the-boltzmann-distribution":14560,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fpartition-function-and-the-helmholtz-free-energy":14281,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fenergy-fluctuations-and-ensemble-equivalence":14074,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fthe-einstein-solid-and-harmonic-systems":14561,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fparamagnetism-and-the-schottky-anomaly":14562,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fideal-gas-partition-function-and-the-gibbs-paradox":14563,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fequipartition-and-the-virial-theorem":14208,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fmolecular-gases-rotation-and-vibration":14564,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fgrand-canonical-ensemble-and-the-grand-partition-function":14565,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fchemical-potential-fugacity-and-number-fluctuations":14286,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fensemble-summary-and-the-thermodynamic-web":14213,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fquantum-statistics-bose-einstein-and-fermi-dirac":14566,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fderiving-the-quantum-distributions":14182,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fthe-classical-limit-and-quantum-concentration":14052,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fideal-quantum-gases-general-framework":14068,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-and-the-fermion-gas":14567,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthe-photon-gas-and-plancks-radiation-law":14568,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fblackbody-thermodynamics-and-radiation-pressure":14569,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fphonons-and-the-debye-model":14200,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-derived":14570,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthermodynamics-of-the-bose-gas-and-superfluidity":14062,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fthe-ideal-fermi-gas-at-zero-temperature":14571,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fsommerfeld-expansion-and-electrons-in-metals":14572,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fwhite-dwarfs-and-the-chandrasekhar-limit":14573,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fneutron-stars-and-nuclear-matter":14574,"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-cluster-expansion-and-virial-coefficients":14396,"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-van-der-waals-gas-and-liquid-gas-coexistence":14575,"\u002Fstatistical-mechanics\u002Finteractions\u002Fquantum-gases-with-interactions-and-exchange":14576,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fphases-coexistence-and-classification":14577,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-ising-model-and-exact-solutions":14578,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fmean-field-theory-and-the-weiss-model":14342,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fcritical-exponents-and-landau-theory":14579,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-renormalization-group-idea":14320,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fthermodynamic-fluctuations-and-response":14580,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fbrownian-motion-and-the-langevin-equation":14181,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Flinear-response-and-the-fluctuation-dissipation-theorem":14581,"\u002Fstatistical-mechanics":14582,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fbonding-mechanisms":14583,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fmolecular-orbitals-and-h2-plus":14047,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fhydrogen-molecule-and-exchange":14307,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fvan-der-waals-forces":14584,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Frotational-vibrational-spectra":14585,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Fanharmonicity-and-rovibrational-structure":14586,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Framan-and-electronic-bands":14587,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Flasers-and-masers":14588,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fstructure-of-solids":14589,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fbravais-lattices-and-crystal-systems":14180,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Freciprocal-lattice-and-brillouin-zones":14590,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fdiffraction-and-structure-factors":14591,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonon-dispersion":14592,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonons-quantization-and-dos":14593,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fdebye-einstein-heat-capacity":14323,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fanharmonicity-and-thermal-transport":14594,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ffree-electron-gas-and-conduction":14595,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fsommerfeld-model-and-heat-capacity":14596,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ftransport-and-the-hall-effect":14597,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fscreening-and-plasmons":14598,"\u002Fcondensed-matter\u002Fband-theory\u002Fblochs-theorem-and-energy-bands":14378,"\u002Fcondensed-matter\u002Fband-theory\u002Fnearly-free-electron-model":14322,"\u002Fcondensed-matter\u002Fband-theory\u002Ftight-binding-method":14599,"\u002Fcondensed-matter\u002Fband-theory\u002Ffermi-surfaces-and-semiclassical-dynamics":14600,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fsemiconductor-bands-and-junctions":14601,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fintrinsic-and-extrinsic-semiconductors":14602,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fcarrier-transport-and-recombination":14313,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fthe-pn-junction":14603,"\u002Fcondensed-matter\u002Fsemiconductors\u002Ftransistors-and-optoelectronics":14604,"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fdielectrics-and-polarization":14550,"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fferroelectrics-and-piezoelectrics":14450,"\u002Fcondensed-matter\u002Fmagnetism\u002Fdiamagnetism-and-paramagnetism":14177,"\u002Fcondensed-matter\u002Fmagnetism\u002Fexchange-and-ferromagnetism":14605,"\u002Fcondensed-matter\u002Fmagnetism\u002Fantiferromagnetism-and-domains":14043,"\u002Fcondensed-matter\u002Fmagnetism\u002Fspin-waves-and-magnons":14606,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fsuperconductivity-phenomenology":14607,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Flondon-theory-and-the-meissner-effect":14188,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fginzburg-landau-theory":14608,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fbcs-theory":14443,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fjosephson-and-high-tc":14609,"\u002Fcondensed-matter\u002Fnanostructures\u002Fquantum-wells-wires-and-dots":14035,"\u002Fcondensed-matter\u002Fnanostructures\u002Finteger-quantum-hall-effect":14610,"\u002Fcondensed-matter\u002Fnanostructures\u002Ffractional-quantum-hall-and-topology":14046,"\u002Fcondensed-matter\u002Fnanostructures\u002Fgraphene-and-dirac-materials":14611,"\u002Fcondensed-matter":14363,"\u002Flogic\u002Ffoundations\u002Flogic-as-a-mathematical-model":14612,"\u002Flogic\u002Fsentential-logic\u002Fformal-languages-and-well-formed-formulas":14613,"\u002Flogic\u002Fsentential-logic\u002Ftruth-assignments-and-tautologies":14614,"\u002Flogic\u002Fsentential-logic\u002Funique-readability-and-parsing":14615,"\u002Flogic\u002Fsentential-logic\u002Finduction-and-recursion":14060,"\u002Flogic\u002Fsentential-logic\u002Fexpressive-completeness-and-normal-forms":14616,"\u002Flogic\u002Fsentential-logic\u002Fboolean-circuits":14617,"\u002Flogic\u002Fsentential-logic\u002Fcompactness-and-effectiveness":14060,"\u002Flogic\u002Ffirst-order-languages\u002Ffirst-order-languages":14618,"\u002Flogic\u002Ffirst-order-languages\u002Fstructures-truth-and-satisfaction":14473,"\u002Flogic\u002Ffirst-order-languages\u002Fdefinability-and-elementary-equivalence":14619,"\u002Flogic\u002Ffirst-order-languages\u002Fterms-substitution-and-parsing":14620,"\u002Flogic\u002Fdeductive-calculus\u002Fa-deductive-calculus":14621,"\u002Flogic\u002Fdeductive-calculus\u002Fdeduction-theorem-and-derived-rules":14619,"\u002Flogic\u002Fdeductive-calculus\u002Fsoundness":14622,"\u002Flogic\u002Fdeductive-calculus\u002Fcompleteness-and-consistency":14623,"\u002Flogic\u002Fmodels-and-theories\u002Fcompactness-and-lowenheim-skolem":14624,"\u002Flogic\u002Fmodels-and-theories\u002Ftheories-elementary-classes-and-categoricity":14625,"\u002Flogic\u002Fmodels-and-theories\u002Finterpretations-between-theories":14626,"\u002Flogic\u002Fmodels-and-theories\u002Fnonstandard-analysis":14627,"\u002Flogic\u002Farithmetic-and-definability\u002Fdefinability-in-arithmetic":14628,"\u002Flogic\u002Farithmetic-and-definability\u002Fnatural-numbers-with-successor":14629,"\u002Flogic\u002Farithmetic-and-definability\u002Fpresburger-and-reducts":14551,"\u002Flogic\u002Farithmetic-and-definability\u002Fa-subtheory-and-representability":14630,"\u002Flogic\u002Fincompleteness\u002Farithmetization-of-syntax":14623,"\u002Flogic\u002Fincompleteness\u002Fincompleteness-and-undecidability":14631,"\u002Flogic\u002Fincompleteness\u002Fsecond-incompleteness-theorem":14632,"\u002Flogic\u002Fcomputability-and-representability\u002Frecursive-functions":14266,"\u002Flogic\u002Fcomputability-and-representability\u002Frepresenting-exponentiation":14633,"\u002Flogic\u002Fsecond-order-logic\u002Fsecond-order-languages":14451,"\u002Flogic\u002Fsecond-order-logic\u002Fskolem-functions-and-many-sorted-logic":14634,"\u002Flogic\u002Fsecond-order-logic\u002Fgeneral-structures":14635,"\u002Flogic":14636,"\u002Freinforcement-learning\u002Ffoundations\u002Fwhat-is-reinforcement-learning":14637,"\u002Freinforcement-learning\u002Ffoundations\u002Fa-brief-history-of-rl":14638,"\u002Freinforcement-learning\u002Ffoundations\u002Fmulti-armed-bandits":14252,"\u002Freinforcement-learning\u002Ffoundations\u002Fbandit-exploration-algorithms":14639,"\u002Freinforcement-learning\u002Ffoundations\u002Fmarkov-decision-processes":14640,"\u002Freinforcement-learning\u002Ffoundations\u002Fvalue-functions-and-optimality":14641,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdynamic-programming":14642,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdp-async-and-gpi":14632,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-methods":14643,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-off-policy":14644,"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftemporal-difference-learning":14645,"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftd-control-sarsa-and-q-learning":14544,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-bootstrapping":14646,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-off-policy-methods":14647,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-and-learning":14648,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-focusing-and-decision-time":14649,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdecision-time-planning":14650,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-tree-search":14269,"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-prediction":14651,"\u002Freinforcement-learning\u002Fapproximation\u002Ffeature-construction-and-nonlinear":14652,"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-control":14653,"\u002Freinforcement-learning\u002Fapproximation\u002Faverage-reward-control":14654,"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-and-the-deadly-triad":14460,"\u002Freinforcement-learning\u002Fapproximation\u002Fbellman-error-and-gradient-td":14655,"\u002Freinforcement-learning\u002Fapproximation\u002Feligibility-traces":14631,"\u002Freinforcement-learning\u002Fapproximation\u002Ftrue-online-and-sarsa-lambda":14656,"\u002Freinforcement-learning\u002Fapproximation\u002Fpolicy-gradient-methods":14657,"\u002Freinforcement-learning\u002Fapproximation\u002Factor-critic-and-continuous-actions":14658,"\u002Freinforcement-learning\u002Fapproximation\u002Fleast-squares-and-memory-based-methods":14280,"\u002Freinforcement-learning\u002Fapproximation\u002Fmemory-and-kernel-methods":14659,"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-eligibility-traces":14410,"\u002Freinforcement-learning\u002Fapproximation\u002Fstable-off-policy-traces":14660,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdeep-q-networks":14661,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdqn-improvements":14242,"\u002Freinforcement-learning\u002Fdeep-rl\u002Factor-critic-and-ppo":14662,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fppo-and-continuous-control":14663,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fcase-studies":14664,"\u002Freinforcement-learning\u002Fdeep-rl\u002Frl-beyond-games":14665,"\u002Freinforcement-learning\u002Fdeep-rl\u002Ffrontiers":14666,"\u002Freinforcement-learning\u002Fdeep-rl\u002Freward-design-and-open-problems":14520,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow":14667,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow-part-2":14668,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control":14669,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control-part-2":14555,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl":14670,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl-part-2":14671,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration":14672,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration-part-2":14269,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl":14336,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl-part-2":14673,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl":14674,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl-part-2":14675,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl":14676,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl-part-2":14677,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl":14678,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl-part-2":14679,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Frlhf-and-language-models":14680,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps":14681,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps-part-2":14682,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl":14683,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl-part-2":14684,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmeta-rl-and-generalization":14685,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fpsychology-of-reinforcement":14686,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Finstrumental-conditioning-and-control":14687,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-and-td-error":14688,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-in-the-brain":14689,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fanimal-learning-and-cognition":14690,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fcognitive-maps-and-planning":14691,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fneuroscience-of-reinforcement":14692,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fseveral-learning-systems":14693,"\u002Freinforcement-learning":14222,"\u002Fartificial-intelligence\u002Ffoundations\u002Fwhat-is-ai":14694,"\u002Fartificial-intelligence\u002Ffoundations\u002Ffoundations-of-ai":14695,"\u002Fartificial-intelligence\u002Ffoundations\u002Fintelligent-agents":14696,"\u002Fartificial-intelligence\u002Ffoundations\u002Fagent-architectures":14697,"\u002Fartificial-intelligence\u002Fsearch\u002Funinformed-search":14698,"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-strategies-compared":14699,"\u002Fartificial-intelligence\u002Fsearch\u002Finformed-search":14700,"\u002Fartificial-intelligence\u002Fsearch\u002Fheuristic-functions":14701,"\u002Fartificial-intelligence\u002Fsearch\u002Flocal-search":14702,"\u002Fartificial-intelligence\u002Fsearch\u002Fpopulation-and-continuous-search":14703,"\u002Fartificial-intelligence\u002Fsearch\u002Fadversarial-search":14704,"\u002Fartificial-intelligence\u002Fsearch\u002Fgames-of-chance-and-imperfect-information":14705,"\u002Fartificial-intelligence\u002Fsearch\u002Fconstraint-satisfaction":14706,"\u002Fartificial-intelligence\u002Fsearch\u002Fcsp-search-and-structure":14549,"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-under-uncertainty":14404,"\u002Fartificial-intelligence\u002Fsearch\u002Fbelief-state-and-online-search":14707,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-logic":14708,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-inference":14709,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic":14710,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic-in-use":14711,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Finference-and-resolution":14712,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-resolution":14531,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fclassical-planning":14713,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-graphs-and-graphplan":14714,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-in-the-real-world":14715,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-under-uncertainty":14716,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fknowledge-representation":14717,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Freasoning-systems-and-defaults":14718,"\u002Fartificial-intelligence\u002Funcertainty\u002Fprobability-and-bayes":14719,"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayes-rule-and-naive-bayes":14720,"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayesian-networks":14721,"\u002Fartificial-intelligence\u002Funcertainty\u002Finference-in-bayesian-networks":14722,"\u002Fartificial-intelligence\u002Funcertainty\u002Freasoning-over-time":14723,"\u002Fartificial-intelligence\u002Funcertainty\u002Ftracking-and-data-association":14724,"\u002Fartificial-intelligence\u002Funcertainty\u002Fmaking-decisions":14463,"\u002Fartificial-intelligence\u002Funcertainty\u002Fmarkov-decision-processes":14714,"\u002Fartificial-intelligence\u002Funcertainty\u002Fdecision-networks-and-game-theory":14725,"\u002Fartificial-intelligence\u002Funcertainty\u002Fgame-theory-and-mechanism-design":14004,"\u002Fartificial-intelligence\u002Flearning\u002Flearning-from-examples":14726,"\u002Fartificial-intelligence\u002Flearning\u002Ftheory-and-model-families":14727,"\u002Fartificial-intelligence\u002Flearning\u002Fprobabilistic-learning":14728,"\u002Fartificial-intelligence\u002Flearning\u002Fexpectation-maximization":14729,"\u002Fartificial-intelligence\u002Flearning\u002Freinforcement-learning":14730,"\u002Fartificial-intelligence\u002Flearning\u002Fgeneralization-and-policy-search":14512,"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-in-learning":14731,"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-based-learning-methods":14732,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fvision-and-perception":14733,"\u002Fartificial-intelligence\u002Ffrontiers\u002Freconstructing-the-3d-world":14734,"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobotics":14735,"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobot-planning-and-control":14736,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnatural-language-in-ai":14737,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnlp-grammar-translation-and-speech":14738,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fphilosophy-and-future":14739,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fai-ethics-and-future":14740,"\u002Fartificial-intelligence":14222,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-constituents-nuclide-chart":14479,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-size-charge-distributions":14741,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-masses-binding-energy":14039,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fsemi-empirical-mass-formula":14037,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-moments-multipoles":14572,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnuclear-force-shell-overview":14742,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fthe-deuteron":14065,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnucleon-nucleon-scattering":14375,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fmeson-theory-isospin":14743,"\u002Fnuclear-physics\u002Fnuclear-models\u002Ffermi-gas-model":14744,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fliquid-drop-collective-coordinates":14745,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fshell-model-single-particle":14435,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fcollective-model-rotations-vibrations":14746,"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-law-modes":14747,"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-kinetics-equilibrium":14748,"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-decay-gamow-theory":14633,"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-fine-structure-hindrance":14749,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fbeta-decay-energetics-neutrino":14750,"\u002Fnuclear-physics\u002Fbeta-decay\u002Ffermi-theory-beta-decay":14049,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fweak-interaction-parity-violation":14278,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fdouble-beta-decay-neutrino-mass":14751,"\u002Fnuclear-physics\u002Fgamma-decay\u002Fgamma-multipole-radiation":14379,"\u002Fnuclear-physics\u002Fgamma-decay\u002Finternal-conversion-isomers":14752,"\u002Fnuclear-physics\u002Fgamma-decay\u002Fangular-correlations-mossbauer":14753,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Freaction-kinematics-cross-sections":14274,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fcompound-nucleus-resonances":14362,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fdirect-reactions-optical-model":14754,"\u002Fnuclear-physics\u002Ffission\u002Ffission-barrier-dynamics":14755,"\u002Fnuclear-physics\u002Ffission\u002Fchain-reactions-reactor-physics":14756,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Ffusion-reactions-confinement":14044,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fstellar-nucleosynthesis":14419,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fbig-bang-nucleosynthesis":14281,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fcharged-particle-stopping-power":14757,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fphoton-neutron-interactions":14329,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fradiation-detectors":14393,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fdosimetry-radiation-biology":14758,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fnuclear-applications-dating-medicine":14759,"\u002Fnuclear-physics":14760,"\u002Fnatural-language-processing\u002Ffoundations\u002Fwhat-is-nlp":14761,"\u002Fnatural-language-processing\u002Ffoundations\u002Fregex-and-text-normalization":14762,"\u002Fnatural-language-processing\u002Ffoundations\u002Fminimum-edit-distance":14400,"\u002Fnatural-language-processing\u002Ffoundations\u002Fn-gram-language-models":14763,"\u002Fnatural-language-processing\u002Ffoundations\u002Fsmoothing-and-backoff":14764,"\u002Fnatural-language-processing\u002Fclassification\u002Fnaive-bayes-and-sentiment":14765,"\u002Fnatural-language-processing\u002Fclassification\u002Fevaluating-classifiers":14248,"\u002Fnatural-language-processing\u002Fclassification\u002Flogistic-regression":14766,"\u002Fnatural-language-processing\u002Fclassification\u002Fsentiment-and-affect-lexicons":14767,"\u002Fnatural-language-processing\u002Fsemantics\u002Fvector-semantics-and-embeddings":14545,"\u002Fnatural-language-processing\u002Fsemantics\u002Fstatic-word-embeddings":14768,"\u002Fnatural-language-processing\u002Fsemantics\u002Fneural-language-models":14713,"\u002Fnatural-language-processing\u002Fsequences\u002Fsequence-labeling":14769,"\u002Fnatural-language-processing\u002Fsequences\u002Fcrfs-and-neural-taggers":14770,"\u002Fnatural-language-processing\u002Fsequences\u002Frnns-and-lstms":14771,"\u002Fnatural-language-processing\u002Ftransformers\u002Ftransformers-and-attention":14772,"\u002Fnatural-language-processing\u002Ftransformers\u002Fthe-transformer-architecture":14773,"\u002Fnatural-language-processing\u002Ftransformers\u002Flarge-language-models":14774,"\u002Fnatural-language-processing\u002Ftransformers\u002Fllm-pretraining-and-scaling":14775,"\u002Fnatural-language-processing\u002Ftransformers\u002Ffine-tuning-and-prompting":14226,"\u002Fnatural-language-processing\u002Ftransformers\u002Fprompting-and-alignment":14776,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-parsing":14777,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcky-scoring-and-evaluation":14719,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdependency-parsing":14778,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fgraph-based-and-neural-dependency-parsing":14779,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fword-senses-and-wsd":14780,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fwsd-in-practice-and-induction":14781,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-roles-and-information-extraction":14782,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Frelations-events-and-templates":14783,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoreference-and-discourse":14784,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoherence-and-discourse-structure":14785,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Flogical-semantics":14643,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcompositional-semantics-and-description-logics":14786,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-parsing":14787,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fneural-semantic-parsing":14788,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Finformation-extraction":14789,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftimes-events-and-templates":14790,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdiscourse-coherence":14791,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fentity-based-and-global-coherence":14792,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-grammars":14793,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftreebanks-and-lexicalized-grammars":14794,"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation":14795,"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation-decoding-and-evaluation":14796,"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering":14797,"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering-knowledge-and-llms":14498,"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-and-chatbots":14664,"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-systems-and-assistants":14254,"\u002Fnatural-language-processing\u002Fapplications\u002Ftext-summarization":14798,"\u002Fnatural-language-processing\u002Fapplications\u002Fabstractive-summarization-and-evaluation":14799,"\u002Fnatural-language-processing\u002Fspeech\u002Fphonetics":14800,"\u002Fnatural-language-processing\u002Fspeech\u002Facoustic-phonetics":14801,"\u002Fnatural-language-processing\u002Fspeech\u002Fautomatic-speech-recognition":14512,"\u002Fnatural-language-processing\u002Fspeech\u002Fasr-evaluation-and-applications":14802,"\u002Fnatural-language-processing":14222,"\u002Fparticle-physics\u002Ffoundations\u002Fhistorical-overview-particle-zoo":14803,"\u002Fparticle-physics\u002Ffoundations\u002Fparticle-physics-basic-concepts":14420,"\u002Fparticle-physics\u002Ffoundations\u002Ffundamental-interactions-force-carriers":14804,"\u002Fparticle-physics\u002Funits-kinematics\u002Fnatural-units-and-scales":14564,"\u002Fparticle-physics\u002Funits-kinematics\u002Ffour-vectors-invariant-mass":14805,"\u002Fparticle-physics\u002Funits-kinematics\u002Fdecay-scattering-kinematics-mandelstam":14806,"\u002Fparticle-physics\u002Funits-kinematics\u002Fcross-sections-golden-rule":14754,"\u002Fparticle-physics\u002Fsymmetries\u002Fconservation-laws-symmetries":14807,"\u002Fparticle-physics\u002Fsymmetries\u002Fdiscrete-symmetries-cpt":14808,"\u002Fparticle-physics\u002Fsymmetries\u002Fparity-violation-weak":14370,"\u002Fparticle-physics\u002Fsymmetries\u002Fsu2-su3-flavor-symmetry":14072,"\u002Fparticle-physics\u002Fquark-model\u002Feightfold-way-su3":14809,"\u002Fparticle-physics\u002Fquark-model\u002Fmeson-spectroscopy":14324,"\u002Fparticle-physics\u002Fquark-model\u002Fbaryon-spectroscopy":14810,"\u002Fparticle-physics\u002Fquark-model\u002Fcolor-confinement-exotics":14357,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fklein-gordon-equation":14811,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fdirac-equation-spinors":14610,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fantiparticles-hole-theory":14812,"\u002Fparticle-physics\u002Fqed\u002Ffeynman-rules-qed":14813,"\u002Fparticle-physics\u002Fqed\u002Fqed-tree-processes":14579,"\u002Fparticle-physics\u002Fqed\u002Frenormalization-running-coupling":14814,"\u002Fparticle-physics\u002Fqed\u002Felectron-g-2":14043,"\u002Fparticle-physics\u002Fweak-interaction\u002Fva-structure-weak":14815,"\u002Fparticle-physics\u002Fweak-interaction\u002Fw-z-bosons-decays":14816,"\u002Fparticle-physics\u002Fweak-interaction\u002Fckm-matrix":14817,"\u002Fparticle-physics\u002Fweak-interaction\u002Fcp-violation-kaons-b-mesons":14361,"\u002Fparticle-physics\u002Fqcd\u002Fcolor-su3-gluons":14576,"\u002Fparticle-physics\u002Fqcd\u002Fasymptotic-freedom-confinement":14818,"\u002Fparticle-physics\u002Fqcd\u002Fdeep-inelastic-scattering-partons":14819,"\u002Fparticle-physics\u002Fqcd\u002Fjets-hadronization":14436,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Felectroweak-su2-u1":14820,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fspontaneous-symmetry-breaking":14481,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-mechanism":14821,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-boson-discovery":14822,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fstandard-model":14370,"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-oscillations":14403,"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-mass-pmns":14823,"\u002Fparticle-physics\u002Fneutrinos\u002Fdirac-majorana-experiments":14824,"\u002Fparticle-physics\u002Fexperiment\u002Faccelerators-luminosity":14825,"\u002Fparticle-physics\u002Fexperiment\u002Fdetectors-subsystems":14459,"\u002Fparticle-physics\u002Fexperiment\u002Fhow-discoveries-are-made":14826,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fbeyond-standard-model":14200,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fgrand-unified-theories":14827,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fsupersymmetry":14303,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fhierarchy-problem-naturalness":14828,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fdark-matter-candidates":14829,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fmatter-antimatter-open-questions":14626,"\u002Fparticle-physics":14830,"\u002Fastrophysics-cosmology\u002Forientation\u002Fthe-sun-and-stars":14421,"\u002Fastrophysics-cosmology\u002Forientation\u002Fstellar-death-final-states":14574,"\u002Fastrophysics-cosmology\u002Forientation\u002Fgalaxies-and-cosmology":14831,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fmagnitudes-fluxes-and-the-distance-modulus":14360,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fstellar-spectra-and-spectral-classification":14832,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Ftelescopes-and-detectors-across-the-spectrum":14420,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fthe-cosmic-distance-ladder":14332,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fblackbody-radiation-and-specific-intensity":14833,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fradiative-transfer-and-the-transfer-equation":14834,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fspectral-line-formation-and-broadening":14835,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fopacity-and-the-rosseland-mean":14836,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fhydrostatic-equilibrium-and-the-virial-theorem":14837,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equations-of-stellar-structure":14625,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equation-of-state-and-polytropes":14557,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-standard-solar-model":14838,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fthermonuclear-reaction-rates-and-the-gamow-peak":14839,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhydrogen-burning-pp-chains-and-cno":14840,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhelium-burning-and-the-triple-alpha-process":14841,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fadvanced-burning-and-neutron-capture-nucleosynthesis":14753,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fphases-of-the-interstellar-medium":14842,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fmolecular-clouds-and-gravitational-collapse":14316,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fprotostars-and-the-pre-main-sequence":14379,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-main-sequence-and-its-structure":14361,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fpost-main-sequence-low-mass-evolution":14843,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-evolution-of-massive-stars":14445,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fstellar-pulsation-and-the-instability-strip":14061,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fwhite-dwarfs-and-the-chandrasekhar-limit":14844,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fcore-collapse-supernovae":14845,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fthermonuclear-supernovae-type-ia":14575,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fneutron-stars-and-pulsars":14846,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fblack-holes-schwarzschild-and-kerr":14847,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fbinary-systems-and-mass-transfer":14848,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Faccreting-compact-objects":14849,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fgravitational-waves-from-inspiraling-binaries":14042,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fmultimessenger-astronomy-and-gamma-ray-bursts":14850,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fthe-milky-way":14851,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-morphology-and-classification":14303,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-rotation-curves-and-dark-matter":14852,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Factive-galactic-nuclei-and-supermassive-black-holes":14853,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-clusters-and-large-scale-structure":14568,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-expanding-universe-and-hubbles-law":14224,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-frw-metric-and-cosmological-redshift":14854,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-friedmann-equations-and-cosmic-dynamics":14855,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fcosmological-models-and-distances":14481,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fdark-energy-and-the-accelerating-universe":14467,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fthe-thermal-history-of-the-universe":14479,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fbig-bang-nucleosynthesis":14575,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Frecombination-and-the-cosmic-microwave-background":14856,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcmb-anisotropies-and-cosmological-parameters":14041,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcosmic-inflation":14233,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fstructure-formation-and-the-growth-of-perturbations":14857,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fdark-matter-dark-energy-and-open-questions":14320,"\u002Fastrophysics-cosmology":14425,"\u002Fcolophon":4018,"\u002F":14222},4250,4808,3626,2682,4109,4786,3878,3875,3751,3415,4067,3153,3000,4042,5461,5808,3961,3749,4327,5067,4246,4655,4154,5436,2640,4003,3601,2158,4331,4189,2273,3252,4633,4964,4172,3131,5524,3160,4031,2309,4207,3226,2648,4842,5340,3307,5701,4977,4039,2615,3472,4460,3848,4075,4400,3382,3010,3602,3737,3740,3707,3922,5191,4043,3804,4542,4214,5062,2850,4361,3443,3627,4044,3766,4140,3860,4006,5199,5234,3651,5509,5680,153,1375,1073,1093,1125,1146,1014,1132,876,1541,1189,1173,984,1402,1301,950,1268,1063,1107,1408,1161,925,1012,866,964,1090,1142,1085,1020,1207,973,980,728,764,1225,1329,796,929,801,878,774,1044,1488,1175,1130,890,814,870,154,4073,5140,4961,5127,4870,5382,5195,4955,5369,4501,5576,3824,4132,4289,4307,4570,3403,5084,5105,5201,5116,5341,5175,5368,5188,5211,5499,5155,4981,5125,5415,5255,5304,5130,5167,5552,5164,5094,5239,5036,5190,5004,5099,5035,5159,5088,5026,4937,5023,5264,5244,133,5114,5078,5043,5312,5170,5342,5139,5151,5049,5212,5013,5068,5079,5102,5121,5081,5029,5379,5854,5110,2139,3798,5055,5364,4984,4935,4895,4972,5289,5112,5156,4987,5031,5025,5149,5302,5042,5002,4979,4922,4960,5279,126,1877,1180,1129,907,958,1112,1300,1053,1250,1181,1241,1234,966,1050,734,1190,484,1082,926,733,761,571,607,798,804,952,977,731,784,645,771,1017,742,1004,1000,1562,1254,1288,1101,1011,1486,1061,856,992,1169,988,137,0,2037,1782,2384,2254,2123,2332,1643,1714,2089,1751,1367,1660,2511,1998,1892,1854,1791,2438,2487,1917,2375,2525,2266,1845,2275,1810,1631,2310,2166,2233,2113,2505,2347,2672,2112,2473,2592,2380,3013,2513,3256,3218,2194,2173,2205,2326,2081,3342,3152,1799,1670,1027,960,1095,1291,986,897,1209,1055,1817,1801,1593,1465,1196,1464,1201,1230,1435,1684,1461,1926,1500,1409,1284,1774,1869,162,1487,1122,1188,1001,1351,982,1005,979,1325,1046,943,1279,824,1008,989,1798,1277,1025,987,1043,1211,1074,981,939,1002,739,1139,1108,1013,1070,978,1458,1317,157,1357,1077,2355,1116,1037,1178,1637,1314,1109,1056,1702,1474,1071,1158,832,993,1404,1024,1068,1339,1106,1264,1248,913,1848,1328,1633,1224,1143,135,1378,959,1028,998,911,1527,1203,1266,1483,1165,990,938,965,1257,1418,1099,942,1352,956,1035,1398,1003,1094,1292,138,1721,1827,1449,1354,1148,1184,1285,1281,1213,1290,1271,1252,1274,1778,1591,1503,1437,1571,1584,1957,1117,1781,1648,1342,1667,1510,1965,1607,1365,1849,1259,1303,1356,1238,2208,1564,173,1671,1286,1227,1638,1529,668,1078,918,709,865,880,940,1534,1015,874,922,841,794,1194,822,1105,1658,1359,1296,1438,1921,1844,1570,1429,1324,1400,140,1787,1558,1654,1492,1747,2224,2002,2009,1323,1349,1785,1573,1722,1829,1353,1548,1552,1583,1624,1585,1245,1364,1514,1343,1397,1355,2211,1481,1770,160,2388,2293,2256,2552,2569,2478,2039,2496,2578,2814,2519,2461,2587,2492,2714,3278,2654,3050,2447,2849,2238,2369,2061,2214,2602,2563,2186,2985,2749,3364,2038,2282,2409,2126,2573,2206,2176,2268,2182,2402,2705,2633,2414,2213,2801,3313,3410,3195,1952,2017,1509,2537,2645,2027,2415,2838,2356,1906,3184,2950,2807,2954,1683,1316,1034,1138,1763,1822,1705,1246,1701,1097,1187,1032,1083,1228,916,1489,1033,1652,997,692,837,1023,888,864,1089,1231,1214,1675,1156,1075,1520,1309,139,1205,1051,735,1123,1072,915,567,768,825,1253,983,1007,762,1058,861,862,971,1208,1149,1145,1029,1084,927,810,838,857,807,936,949,2321,1622,1069,1113,1057,854,1958,1528,1618,2049,1432,1679,1796,1685,1346,1275,1476,1505,1610,2018,1599,1215,1838,1909,132,3902,2215,2240,3266,3208,3073,2454,2969,2451,1875,2728,1884,2371,2516,2842,1690,1904,2346,3146,1386,2607,1966,2668,1665,2885,1606,2577,3074,2869,2403,2433,2082,1939,1587,2460,2747,2032,2642,1619,3123,1993,2090,2339,3829,1737,2622,2340,2322,3828,4409,2305,3411,2510,4527,3030,3569,3043,2457,1946,2277,2044,2909,1693,1945,2093,2399,2115,2898,2742,2242,3895,3378,3376,2769,2223,3062,3262,2651,2949,2768,3128,2423,1977,2087,2866,3388,2830,2210,2489,2884,3945,2099,2713,3402,1692,2931,4195,3989,3206,4391,3004,3704,3494,2902,999,881,901,919,748,869,1018,1045,1049,1333,954,1092,1019,976,1771,1480,1396,953,1026,161,3533,2495,1818,3007,2595,3427,3537,2216,1895,2304,3396,1739,2073,1962,2203,1767,2666,2264,2276,2852,1807,3735,1560,4144,1669,1676,1972,2418,3291,1525,2040,2766,2337,2220,2800,3001,2078,1759,2836,1896,2026,1758,1543,1047,896,946,1060,1384,1482,815,1414,1322,1440,1240,1468,1098,1133,847,1009,1381,1052,1191,1258,1370,1712,1441,1199,957,1079,150,1262,1417,1368,1219,1136,1064,1463,1636,1059,931,1115,1736,1174,1376,1363,1411,1247,1746,1313,1299,1617,1102,1076,1495,1265,1193,1263,{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":14859,"\u002Falgorithms\u002Ffoundations\u002Fproof-techniques":14864,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":14868,"\u002Falgorithms\u002Ffoundations\u002Fgrowth-rates-and-loop-analysis":14872,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":14876,"\u002Falgorithms\u002Ffoundations\u002Famortized-analysis":14879,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":14883,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":14888,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":14892,"\u002Falgorithms\u002Fdivide-and-conquer\u002Ffast-multiplication":14895,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":14899,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":14904,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":14908,"\u002Falgorithms\u002Fsorting\u002Fexternal-sorting":14912,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":14916,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":14921,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":14925,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":14929,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":14933,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":14937,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":14941,"\u002Falgorithms\u002Fdata-structures\u002Fspatial-data-structures":14945,"\u002Falgorithms\u002Fdata-structures\u002Fskip-lists-and-probabilistic-structures":14949,"\u002Falgorithms\u002Fdata-structures\u002Fb-trees":14953,"\u002Falgorithms\u002Fdata-structures\u002Fdata-stream-algorithms":14957,"\u002Falgorithms\u002Fdata-structures\u002Fstreaming-sketches":14961,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":14965,"\u002Falgorithms\u002Fsequences\u002Fprefix-sums":14970,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":14974,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":14978,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":14982,"\u002Falgorithms\u002Fsequences\u002Fkmp-and-z-function":14986,"\u002Falgorithms\u002Fsequences\u002Ftries":14990,"\u002Falgorithms\u002Fsequences\u002Fsuffix-arrays-and-aho-corasick":14994,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":14998,"\u002Falgorithms\u002Fgraphs\u002Fdepth-first-search":15003,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":15007,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":15011,"\u002Falgorithms\u002Fgraphs\u002Fkruskal-and-prim":15015,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":15019,"\u002Falgorithms\u002Fgraphs\u002Fall-pairs-and-negative-weights":15023,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":15027,"\u002Falgorithms\u002Fgraphs\u002Fmax-flow-min-cut":15031,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":15035,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":15039,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":15043,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":15047,"\u002Falgorithms\u002Fgraphs\u002Fbipartite-matching":15051,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":15055,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":15060,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":15064,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":15068,"\u002Falgorithms\u002Fgreedy\u002Fstable-matching":15072,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":15076,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":15081,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":15085,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":15089,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":15093,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":15097,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":15101,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":15105,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":15109,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":15113,"\u002Falgorithms\u002Fdynamic-programming\u002Fdigit-and-probability-dp":15117,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":15121,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":15126,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":15130,"\u002Falgorithms\u002Fbacktracking\u002Fgraph-backtracking":15134,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":15138,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":15143,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":15147,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":15151,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmatrix-exponentiation":15155,"\u002Falgorithms\u002Fmathematical-algorithms\u002Ffast-fourier-transform":15159,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fgradient-descent":15163,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":15167,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":15170,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":15173,"\u002Falgorithms\u002Fcomputational-geometry\u002Fpolygons-and-proximity":15176,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":15177,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":15182,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":15186,"\u002Falgorithms\u002Fintractability\u002Fapproximation-algorithms":15190,"\u002Falgorithms":15194,"\u002Fcalculus\u002Flimits-and-continuity\u002Ffunctions-and-models":15197,"\u002Fcalculus\u002Flimits-and-continuity\u002Fthe-limit-of-a-function":15202,"\u002Fcalculus\u002Flimits-and-continuity\u002Flimit-laws-and-the-precise-definition":15206,"\u002Fcalculus\u002Flimits-and-continuity\u002Fcontinuity":15210,"\u002Fcalculus\u002Fderivatives\u002Fthe-derivative-and-rates-of-change":15214,"\u002Fcalculus\u002Fderivatives\u002Fdifferentiation-rules-and-the-chain-rule":15219,"\u002Fcalculus\u002Fderivatives\u002Fimplicit-differentiation-and-related-rates":15223,"\u002Fcalculus\u002Fderivatives\u002Flinear-approximations-and-differentials":15227,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fextrema-and-the-mean-value-theorem":15231,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fhow-derivatives-shape-a-graph":15236,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fcurve-sketching-and-optimization":15240,"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fnewtons-method-and-antiderivatives":15244,"\u002Fcalculus\u002Fintegrals\u002Farea-and-the-definite-integral":15248,"\u002Fcalculus\u002Fintegrals\u002Fthe-fundamental-theorem-of-calculus":15253,"\u002Fcalculus\u002Fintegrals\u002Fthe-substitution-rule":15257,"\u002Fcalculus\u002Fapplications-of-integration\u002Fareas-and-volumes":15261,"\u002Fcalculus\u002Fapplications-of-integration\u002Fwork-average-value-and-arc-length":15266,"\u002Fcalculus\u002Fapplications-of-integration\u002Fphysics-economics-and-probability":15270,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Finverse-functions-logarithms-and-exponentials":15274,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Fgrowth-decay-inverse-trig-and-hyperbolic-functions":15279,"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Flhospitals-rule":15283,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fintegration-by-parts":15287,"\u002Fcalculus\u002Ftechniques-of-integration\u002Ftrigonometric-integrals-and-substitution":15292,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fpartial-fractions-and-integration-strategy":15296,"\u002Fcalculus\u002Ftechniques-of-integration\u002Fapproximate-and-improper-integrals":15300,"\u002Fcalculus\u002Fparametric-and-polar\u002Fparametric-curves-and-their-calculus":15304,"\u002Fcalculus\u002Fparametric-and-polar\u002Fpolar-coordinates":15309,"\u002Fcalculus\u002Fparametric-and-polar\u002Fconic-sections":15313,"\u002Fcalculus\u002Fsequences-and-series\u002Fsequences":15317,"\u002Fcalculus\u002Fsequences-and-series\u002Fseries-and-the-integral-test":15322,"\u002Fcalculus\u002Fsequences-and-series\u002Fthe-convergence-tests":15326,"\u002Fcalculus\u002Fsequences-and-series\u002Fpower-series":15330,"\u002Fcalculus\u002Fsequences-and-series\u002Ftaylor-and-maclaurin-series":15334,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvectors-and-the-dot-product":15338,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fthe-cross-product-lines-and-planes":15343,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fcylinders-and-quadric-surfaces":15347,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvector-functions-and-space-curves":15351,"\u002Fcalculus\u002Fvectors-and-space-curves\u002Farc-length-curvature-and-motion":15355,"\u002Fcalculus\u002Fpartial-derivatives\u002Ffunctions-of-several-variables":15359,"\u002Fcalculus\u002Fpartial-derivatives\u002Fpartial-derivatives":15364,"\u002Fcalculus\u002Fpartial-derivatives\u002Ftangent-planes-and-the-chain-rule":15367,"\u002Fcalculus\u002Fpartial-derivatives\u002Fdirectional-derivatives-and-the-gradient":15371,"\u002Fcalculus\u002Fpartial-derivatives\u002Foptimization-and-lagrange-multipliers":15375,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fdouble-integrals":15379,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Ftriple-integrals-and-coordinate-systems":15384,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fvector-fields-and-line-integrals":15388,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fgreens-theorem-curl-and-divergence":15392,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fsurface-integrals":15396,"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fstokes-and-the-divergence-theorem":15400,"\u002Fcalculus":15404,"\u002Fmechanics\u002Ffoundations\u002Fmeasurement-and-dimensions":15407,"\u002Fmechanics\u002Ffoundations\u002Fvector-algebra":15411,"\u002Fmechanics\u002Fkinematics\u002Fone-dimensional-motion":15415,"\u002Fmechanics\u002Fkinematics\u002Fmotion-graphs":15420,"\u002Fmechanics\u002Fkinematics\u002Fprojectile-motion":15424,"\u002Fmechanics\u002Fkinematics\u002Frelative-motion":15428,"\u002Fmechanics\u002Fkinematics\u002Fcircular-motion":15432,"\u002Fmechanics\u002Fdynamics\u002Fnewtons-laws":15436,"\u002Fmechanics\u002Fdynamics\u002Ffree-body-diagrams":15441,"\u002Fmechanics\u002Fdynamics\u002Ffriction-and-curved-motion":15445,"\u002Fmechanics\u002Fdynamics\u002Fnumerical-dynamics":15449,"\u002Fmechanics\u002Fdynamics\u002Fcenter-of-mass-systems":15453,"\u002Fmechanics\u002Fenergy\u002Fwork-and-kinetic-energy":15457,"\u002Fmechanics\u002Fenergy\u002Fpotential-energy":15462,"\u002Fmechanics\u002Fenergy\u002Fmultiparticle-work":15466,"\u002Fmechanics\u002Fenergy\u002Fmass-energy-and-binding":15470,"\u002Fmechanics\u002Fenergy\u002Fphotons-and-quantization":15474,"\u002Fmechanics\u002Fmomentum\u002Fmomentum-and-collisions":15478,"\u002Fmechanics\u002Fmomentum\u002Fcenter-of-mass-collisions":15483,"\u002Fmechanics\u002Fmomentum\u002Frocket-propulsion":15487,"\u002Fmechanics\u002Frotation\u002Frotational-inertia":15491,"\u002Fmechanics\u002Frotation\u002Frotational-dynamics":15496,"\u002Fmechanics\u002Frotation\u002Frolling-motion":15500,"\u002Fmechanics\u002Frotation\u002Fangular-momentum":15504,"\u002Fmechanics\u002Frotation\u002Frolling-resistance":15508,"\u002Fmechanics\u002Frotation\u002Fgyroscopic-precession":15512,"\u002Fmechanics\u002Fgravity-and-matter\u002Fkeplerian-orbits":15516,"\u002Fmechanics\u002Fgravity-and-matter\u002Fgravitational-fields":15521,"\u002Fmechanics\u002Fgravity-and-matter\u002Fstatic-equilibrium":15525,"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-statics":15529,"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-flow":15533,"\u002Fmechanics\u002Fgravity-and-matter\u002Forbital-motion":15537,"\u002Fmechanics\u002Fgravity-and-matter\u002Fstress-and-elasticity":15541,"\u002Fmechanics\u002Foscillations-waves\u002Fdamped-oscillators":15545,"\u002Fmechanics\u002Foscillations-waves\u002Ftravelling-waves":15550,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-superposition":15554,"\u002Fmechanics\u002Foscillations-waves\u002Fstanding-waves":15558,"\u002Fmechanics\u002Foscillations-waves\u002Fsound-waves":15562,"\u002Fmechanics\u002Foscillations-waves\u002Fdoppler-effect":15566,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-packets":15570,"\u002Fmechanics\u002Foscillations-waves\u002Fbeats-and-coupling":15574,"\u002Fmechanics\u002Foscillations-waves\u002Fsimple-harmonic-motion":15578,"\u002Fmechanics\u002Foscillations-waves\u002Fpendulum-motion":15582,"\u002Fmechanics\u002Foscillations-waves\u002Fdriven-oscillators":15586,"\u002Fmechanics\u002Foscillations-waves\u002Fwave-boundaries":15590,"\u002Fmechanics\u002Fthermodynamics\u002Fkinetic-theory-of-ideal-gases":15594,"\u002Fmechanics\u002Fthermodynamics\u002Ffirst-law-of-thermodynamics":15599,"\u002Fmechanics\u002Fthermodynamics\u002Fentropy-and-the-second-law":15603,"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-processes":15607,"\u002Fmechanics\u002Fthermodynamics\u002Fphase-changes":15611,"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-machines":15615,"\u002Fmechanics":15619,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcharge-and-conductors":15622,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcoulombs-law":15627,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-and-force":15631,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-maps":15635,"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-dipoles":15639,"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fcontinuous-charge-fields":15643,"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fgauss-law-and-conductors":15648,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpoint-charge-potential":15652,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpotential-gradients-and-equipotentials":15657,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Felectrostatic-energy-and-pressure":15661,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Flaplace-boundary-problems":15665,"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fcontinuous-charge-potentials":15669,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitance-fundamentals":15673,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-networks":15678,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-energy-and-force":15682,"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fdielectric-polarization-and-breakdown":15686,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fcurrent-and-resistance":15690,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fkirchhoff-network-analysis":15695,"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Frc-transients":15699,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-trajectories":15703,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fhall-effect":15708,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-force-on-conductors":15712,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-dipoles":15716,"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmass-spectrometry":15720,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmoving-charge-fields":15724,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fbiot-savart-law":15729,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fcircular-current-loops":15733,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Famperes-law":15737,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fgauss-law-for-magnetism":15741,"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmagnetic-materials":15745,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-flux":15749,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Ffaradays-law":15754,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Flenzs-law":15758,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmotional-emf":15762,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Feddy-currents":15766,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fself-inductance":15770,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-energy":15774,"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Frl-circuits":15778,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-fundamentals":15782,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Freactance":15787,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Frlc-resonance":15791,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-power":15795,"\u002Felectricity-and-magnetism\u002Falternating-current\u002Ftransformers":15799,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdisplacement-current":15803,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-waves":15808,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-momentum":15812,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdipole-radiation":15816,"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fpolarization":15820,"\u002Felectricity-and-magnetism\u002Foptics\u002Freflection-and-refraction":15824,"\u002Felectricity-and-magnetism\u002Foptics\u002Fthin-lenses":15829,"\u002Felectricity-and-magnetism\u002Foptics\u002Fspherical-mirrors":15833,"\u002Felectricity-and-magnetism":15837,"\u002Flinear-algebra\u002Flinear-systems\u002Fsystems-and-echelon-forms":15840,"\u002Flinear-algebra\u002Flinear-systems\u002Fvector-and-matrix-equations":15845,"\u002Flinear-algebra\u002Flinear-systems\u002Fsolution-sets-and-applications":15849,"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-independence":15853,"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-transformations":15857,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-operations":15861,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-inverse-and-invertibility":15866,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fpartitioned-matrices-and-lu":15870,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fsubspaces-dimension-rank":15874,"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fapplications-leontief-and-graphics":15878,"\u002Flinear-algebra\u002Fdeterminants\u002Fdeterminants-and-cofactors":15882,"\u002Flinear-algebra\u002Fdeterminants\u002Fproperties-of-determinants":15887,"\u002Flinear-algebra\u002Fdeterminants\u002Fcramer-volume-and-area":15891,"\u002Flinear-algebra\u002Fvector-spaces\u002Fvector-spaces-and-subspaces":15895,"\u002Flinear-algebra\u002Fvector-spaces\u002Fnull-and-column-spaces":15900,"\u002Flinear-algebra\u002Fvector-spaces\u002Fbases-and-independent-sets":15904,"\u002Flinear-algebra\u002Fvector-spaces\u002Fcoordinate-systems":15908,"\u002Flinear-algebra\u002Fvector-spaces\u002Fdimension-and-rank":15912,"\u002Flinear-algebra\u002Fvector-spaces\u002Fchange-of-basis":15916,"\u002Flinear-algebra\u002Fvector-spaces\u002Fdifference-equations-and-markov":15920,"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-eigenvalues":15924,"\u002Flinear-algebra\u002Feigenvalues\u002Fthe-characteristic-equation":15929,"\u002Flinear-algebra\u002Feigenvalues\u002Fdiagonalization":15933,"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-linear-transformations":15937,"\u002Flinear-algebra\u002Feigenvalues\u002Fcomplex-eigenvalues":15941,"\u002Flinear-algebra\u002Feigenvalues\u002Fdynamical-systems":15945,"\u002Flinear-algebra\u002Feigenvalues\u002Fpower-method":15949,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-length-orthogonality":15953,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Forthogonal-sets-and-projections":15958,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fgram-schmidt-and-qr":15962,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-problems":15966,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-applications":15970,"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-spaces":15974,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fdiagonalizing-symmetric-matrices":15978,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fquadratic-forms":15983,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fconstrained-optimization":15987,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsingular-value-decomposition":15991,"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsvd-applications-pca-imaging":15995,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-thinking-and-matrix-computation":15999,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Flu-and-cholesky":16004,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fconditioning-and-floating-point":16008,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fstability-and-error-analysis":16012,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fqr-and-numerical-least-squares":16016,"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-eigenvalues-and-svd":16020,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-combinations":16024,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-independence-and-barycentric-coordinates":16029,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fconvex-combinations-and-convex-sets":16033,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fhyperplanes-and-polytopes":16037,"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fcurves-and-surfaces":16041,"\u002Flinear-algebra":16045,"\u002Ftheory-of-computation":16048,"\u002Fcomputer-architecture\u002Ffoundations\u002Fbits-bytes-and-words":16051,"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-representation":16055,"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-arithmetic":16059,"\u002Fcomputer-architecture\u002Ffoundations\u002Ffloating-point":16063,"\u002Fcomputer-architecture\u002Ffoundations\u002Fboolean-algebra-and-bit-manipulation":16067,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fthe-machines-view":16071,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fdata-movement":16076,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farithmetic-and-logic":16080,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fcontrol-flow":16084,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fprocedures":16088,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farrays-structs-and-alignment":16092,"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fmemory-layout-and-buffer-overflows":16096,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fwhat-an-isa-is":16100,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Finstruction-formats-and-operands":16105,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Faddressing-modes":16109,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fthe-y86-64-instruction-set":16113,"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fy86-64-programming":16117,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Ftransistors-gates-and-boolean-functions":16121,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fcombinational-logic-and-hcl":16126,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmultiplexers-decoders-and-the-alu":16130,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmemory-elements-latches-flip-flops-and-clocking":16134,"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fregister-files-and-random-access-memory":16138,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-fetch-decode-execute-cycle":16142,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-seq-stages":16147,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fcontrol-logic-and-sequencing":16151,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fassembling-seq":16155,"\u002Fcomputer-architecture\u002Fprocessor-design\u002Ftracing-a-program":16159,"\u002Fcomputer-architecture\u002Fpipelining\u002Fpipelining-principles":16163,"\u002Fcomputer-architecture\u002Fpipelining\u002Ffrom-seq-to-pipe":16168,"\u002Fcomputer-architecture\u002Fpipelining\u002Fdata-hazards-stalling-and-forwarding":16172,"\u002Fcomputer-architecture\u002Fpipelining\u002Fcontrol-hazards-and-branch-prediction":16176,"\u002Fcomputer-architecture\u002Fpipelining\u002Fthe-complete-pipe-processor":16180,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fstorage-technologies-and-the-latency-gap":16184,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Flocality":16189,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-memories-direct-mapped":16193,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fset-associative-and-write-policies":16197,"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-performance-and-cache-friendly-code":16201,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Faddress-spaces-and-translation":16205,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fpage-tables-and-page-faults":16210,"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fthe-tlb-and-multi-level-page-tables":16214,"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Fexceptional-control-flow":16218,"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Finterrupts-and-the-kernel":16223,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fprocesses-threads-and-parallelism":16227,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fhardware-multithreading":16232,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fcache-coherence":16236,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmemory-consistency-and-synchronization":16240,"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmulticore-organization":16244,"\u002Fcomputer-architecture\u002Fcapstone\u002Fthe-whole-machine":16248,"\u002Fcomputer-architecture\u002Fcapstone\u002Fassembling-a-complete-cpu":16253,"\u002Fcomputer-architecture":16257,"\u002Fdifferential-equations\u002Ffoundations\u002Fmodels-and-direction-fields":16260,"\u002Fdifferential-equations\u002Ffoundations\u002Fclassification-and-terminology":16264,"\u002Fdifferential-equations\u002Ffirst-order\u002Flinear-first-order-integrating-factors":16268,"\u002Fdifferential-equations\u002Ffirst-order\u002Fseparable-and-exact":16273,"\u002Fdifferential-equations\u002Ffirst-order\u002Fmodeling-first-order":16277,"\u002Fdifferential-equations\u002Ffirst-order\u002Fautonomous-and-population-dynamics":16281,"\u002Fdifferential-equations\u002Ffirst-order\u002Fexistence-uniqueness-euler":16285,"\u002Fdifferential-equations\u002Ffirst-order\u002Ffirst-order-difference-equations":16289,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhomogeneous-constant-coefficients":16293,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fcomplex-and-repeated-roots":16298,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fnonhomogeneous-undetermined-coefficients":16302,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fvariation-of-parameters":16306,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fmechanical-electrical-vibrations":16310,"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhigher-order-linear":16314,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fpower-series-ordinary-points":16318,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fregular-singular-frobenius":16323,"\u002Fdifferential-equations\u002Fseries-solutions\u002Fbessel-and-special-functions":16327,"\u002Fdifferential-equations\u002Flaplace\u002Flaplace-definition-ivps":16331,"\u002Fdifferential-equations\u002Flaplace\u002Fstep-impulse-convolution":16336,"\u002Fdifferential-equations\u002Fsystems\u002Fmatrices-eigenvalues-review":16340,"\u002Fdifferential-equations\u002Fsystems\u002Fconstant-coefficient-systems-phase-portraits":16345,"\u002Fdifferential-equations\u002Fsystems\u002Frepeated-eigenvalues-fundamental-matrices":16349,"\u002Fdifferential-equations\u002Fnumerical\u002Feuler-and-runge-kutta":16353,"\u002Fdifferential-equations\u002Fnumerical\u002Fmultistep-systems-stability":16358,"\u002Fdifferential-equations\u002Fnonlinear\u002Fphase-plane-autonomous-stability":16362,"\u002Fdifferential-equations\u002Fnonlinear\u002Flocally-linear-and-liapunov":16367,"\u002Fdifferential-equations\u002Fnonlinear\u002Fcompeting-species-predator-prey-limit-cycles":16371,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Ffourier-series":16375,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fheat-wave-laplace-equations":16380,"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fsturm-liouville":16384,"\u002Fdifferential-equations\u002Fhistory-variations\u002Fcalculus-of-variations":16388,"\u002Fdifferential-equations\u002Fhistory-variations\u002Fhistorical-notes":16393,"\u002Fdifferential-equations":16397,"\u002Frelativity\u002Ffoundations\u002Fspecial-relativity-postulates":16400,"\u002Frelativity\u002Ffoundations\u002Florentz-transformation-spacetime":16405,"\u002Frelativity\u002Ffoundations\u002Ftime-dilation-length-contraction":16409,"\u002Frelativity\u002Ffoundations\u002Frelativistic-momentum-energy":16413,"\u002Frelativity\u002Ffoundations\u002Fgeneral-relativity":16417,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fminkowski-spacetime-and-the-interval":16421,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Ffour-vectors-and-index-notation":16426,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fthe-lorentz-group-and-rapidity":16430,"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fdoppler-aberration-and-appearance":16434,"\u002Frelativity\u002Frelativistic-dynamics\u002Ffour-momentum-force-and-accelerated-motion":16438,"\u002Frelativity\u002Frelativistic-dynamics\u002Fparticle-decays-and-two-body-kinematics":16443,"\u002Frelativity\u002Frelativistic-dynamics\u002Fcollisions-thresholds-and-the-cm-frame":16447,"\u002Frelativity\u002Frelativistic-dynamics\u002Fmandelstam-variables-and-invariants":16451,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ffour-current-and-the-four-potential":16455,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fthe-electromagnetic-field-tensor":16460,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ftransformation-of-electric-and-magnetic-fields":16464,"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fcovariant-maxwell-and-the-stress-energy-tensor":16468,"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-equivalence-principle-formalized":16472,"\u002Frelativity\u002Fcurved-spacetime\u002Fmanifolds-vectors-and-the-metric":16477,"\u002Frelativity\u002Fcurved-spacetime\u002Fcovariant-derivative-and-christoffel-symbols":16481,"\u002Frelativity\u002Fcurved-spacetime\u002Fgeodesics-and-the-geodesic-equation":16485,"\u002Frelativity\u002Fcurved-spacetime\u002Fcurvature-riemann-and-geodesic-deviation":16489,"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-einstein-field-equations":16493,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fthe-schwarzschild-metric":16497,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fgeodesics-and-orbits-in-schwarzschild":16502,"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Flight-bending-and-null-geodesics":16506,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fperihelion-precession-of-mercury":16510,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fdeflection-of-light-and-gravitational-lensing":16515,"\u002Frelativity\u002Ftests-of-general-relativity\u002Fgravitational-redshift-and-shapiro-delay":16519,"\u002Frelativity\u002Ftests-of-general-relativity\u002Frelativity-in-technology-gps":16523,"\u002Frelativity\u002Fblack-holes\u002Fhorizons-and-coordinate-singularities":16527,"\u002Frelativity\u002Fblack-holes\u002Frotating-and-charged-black-holes":16532,"\u002Frelativity\u002Fblack-holes\u002Fblack-hole-thermodynamics":16536,"\u002Frelativity\u002Fgravitational-waves\u002Flinearized-gravity-and-wave-solutions":16540,"\u002Frelativity\u002Fgravitational-waves\u002Fgeneration-and-the-quadrupole-formula":16545,"\u002Frelativity\u002Fgravitational-waves\u002Fdetection-ligo-and-the-first-events":16549,"\u002Frelativity\u002Fcosmological-bridge\u002Fthe-cosmological-principle-and-flrw-metric":16553,"\u002Frelativity\u002Fcosmological-bridge\u002Ffriedmann-equations-and-cosmic-dynamics":16558,"\u002Frelativity":16562,"\u002Fphysical-computing":16565,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fblackbody-radiation-and-the-planck-quantum":16568,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-photoelectric-effect-and-the-photon":16573,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fx-rays-and-the-compton-effect":16577,"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-old-quantum-theory-bohr-and-sommerfeld":16581,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fde-broglie-waves-and-electron-diffraction":16585,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fwave-packets-and-the-probability-interpretation":16590,"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fthe-uncertainty-principle":16594,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-schrodinger-equation-in-one-dimension":16598,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-free-particle-and-wave-packet-dynamics":16603,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fparticle-in-infinite-and-finite-square-wells":16607,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Foperators-expectation-values-and-the-harmonic-oscillator":16611,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-dirac-delta-potential":16615,"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fbarrier-penetration-and-quantum-tunneling":16619,"\u002Fquantum-mechanics\u002Fformalism\u002Fhilbert-space-and-dirac-notation":16623,"\u002Fquantum-mechanics\u002Fformalism\u002Fobservables-hermitian-operators-and-eigenvalues":16628,"\u002Fquantum-mechanics\u002Fformalism\u002Fthe-postulates-and-quantum-measurement":16632,"\u002Fquantum-mechanics\u002Fformalism\u002Fposition-momentum-and-continuous-spectra":16636,"\u002Fquantum-mechanics\u002Fformalism\u002Fcommutators-and-the-generalized-uncertainty-principle":16640,"\u002Fquantum-mechanics\u002Fformalism\u002Ftime-evolution-schrodinger-and-heisenberg-pictures":16644,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fladder-operators-and-the-number-states":16648,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fcoherent-and-squeezed-states":16653,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fsymmetries-generators-and-conservation-laws":16657,"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fparity-time-reversal-and-discrete-symmetries":16661,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Forbital-angular-momentum-and-spherical-harmonics":16665,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Fthe-angular-momentum-algebra":16669,"\u002Fquantum-mechanics\u002Fangular-momentum\u002Faddition-of-angular-momenta-and-clebsch-gordan":16673,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-schrodinger-equation-in-three-dimensions":16677,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-hydrogen-atom":16682,"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-isotropic-oscillator-and-hidden-symmetry":16686,"\u002Fquantum-mechanics\u002Fspin\u002Fspin-half-pauli-matrices-and-stern-gerlach":16690,"\u002Fquantum-mechanics\u002Fspin\u002Fspin-in-a-magnetic-field-precession-and-resonance":16695,"\u002Fquantum-mechanics\u002Fspin\u002Ftwo-level-systems-and-the-bloch-sphere":16699,"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fidentical-particles-and-exchange-symmetry":16703,"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fthe-pauli-principle-atoms-and-the-periodic-table":16708,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ftime-independent-perturbation-theory":16712,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ffine-structure-and-the-real-hydrogen-atom":16717,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-zeeman-and-stark-effects":16721,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-variational-method":16725,"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-wkb-approximation":16729,"\u002Fquantum-mechanics":16733,"\u002Freal-analysis\u002Ffoundations\u002Fsets-logic-functions":16736,"\u002Freal-analysis\u002Ffoundations\u002Fordered-fields-completeness":16741,"\u002Freal-analysis\u002Ffoundations\u002Fabsolute-value-bounds":16745,"\u002Freal-analysis\u002Ffoundations\u002Fintervals-uncountability":16749,"\u002Freal-analysis\u002Fsequences-series\u002Fsequences-limits":16753,"\u002Freal-analysis\u002Fsequences-series\u002Flimit-laws-monotone":16758,"\u002Freal-analysis\u002Fsequences-series\u002Flimsup-bolzano-weierstrass":16762,"\u002Freal-analysis\u002Fsequences-series\u002Fcauchy-completeness":16766,"\u002Freal-analysis\u002Fsequences-series\u002Fseries-convergence":16770,"\u002Freal-analysis\u002Fsequences-series\u002Fabsolute-conditional-rearrangement":16774,"\u002Freal-analysis\u002Fmetric-spaces\u002Fmetric-spaces-norms":16778,"\u002Freal-analysis\u002Fmetric-spaces\u002Fopen-closed-sets":16783,"\u002Freal-analysis\u002Fmetric-spaces\u002Fconvergence-completeness":16787,"\u002Freal-analysis\u002Fmetric-spaces\u002Fcompactness":16791,"\u002Freal-analysis\u002Fmetric-spaces\u002Fconnectedness":16795,"\u002Freal-analysis\u002Fcontinuity\u002Flimits-of-functions":16799,"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuous-functions":16803,"\u002Freal-analysis\u002Fcontinuity\u002Fevt-ivt":16807,"\u002Freal-analysis\u002Fcontinuity\u002Funiform-continuity":16811,"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuity-metric-spaces":16815,"\u002Freal-analysis\u002Fcontinuity\u002Flimits-infinity-monotone":16819,"\u002Freal-analysis\u002Fdifferentiation\u002Fthe-derivative":16823,"\u002Freal-analysis\u002Fdifferentiation\u002Fmean-value-theorem":16828,"\u002Freal-analysis\u002Fdifferentiation\u002Ftaylors-theorem":16832,"\u002Freal-analysis\u002Fdifferentiation\u002Finverse-function-1d":16836,"\u002Freal-analysis\u002Friemann-integration\u002Fdarboux-integral":16840,"\u002Freal-analysis\u002Friemann-integration\u002Fintegrability-classes":16845,"\u002Freal-analysis\u002Friemann-integration\u002Fproperties-of-the-integral":16849,"\u002Freal-analysis\u002Friemann-integration\u002Ffundamental-theorem":16853,"\u002Freal-analysis\u002Friemann-integration\u002Flog-exp-improper":16856,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpointwise-uniform-convergence":16860,"\u002Freal-analysis\u002Ffunction-sequences\u002Finterchange-of-limits":16865,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpower-series-weierstrass":16869,"\u002Freal-analysis\u002Ffunction-sequences\u002Fpicard-ode":16873,"\u002Freal-analysis\u002Fseveral-variables\u002Fdifferentiability-rn":16877,"\u002Freal-analysis\u002Fseveral-variables\u002Fgradient-chain-rule":16882,"\u002Freal-analysis\u002Fseveral-variables\u002Fhigher-derivatives-taylor-extrema":16886,"\u002Freal-analysis\u002Fseveral-variables\u002Finverse-implicit-theorems":16890,"\u002Freal-analysis\u002Fseveral-variables\u002Fmultiple-integrals":16894,"\u002Freal-analysis":16898,"\u002Fabstract-algebra\u002Ffoundations\u002Fsets-functions-relations":16901,"\u002Fabstract-algebra\u002Ffoundations\u002Fintegers-and-modular-arithmetic":16905,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fgroup-axioms-and-first-examples":16909,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fdihedral-and-symmetric-groups":16914,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fmatrix-and-quaternion-groups":16918,"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fhomomorphisms-and-group-actions":16922,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fsubgroups-and-substructures":16926,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcyclic-groups":16931,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fgeneration-and-subgroup-lattices":16935,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcosets-lagrange-and-normal-subgroups":16939,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fisomorphism-theorems":16943,"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcomposition-series-and-the-alternating-group":16947,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Factions-and-cayleys-theorem":16951,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fconjugation-and-the-class-equation":16956,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fsylow-theorems":16960,"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fautomorphisms-and-simple-groups":16964,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fdirect-products-and-finite-abelian-groups":16968,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fsemidirect-products":16973,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fnilpotent-and-solvable-groups":16977,"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fclassifying-small-groups":16981,"\u002Fabstract-algebra\u002Fring-theory\u002Frings-definitions-and-examples":16985,"\u002Fabstract-algebra\u002Fring-theory\u002Fideals-quotients-and-homomorphisms":16990,"\u002Fabstract-algebra\u002Fring-theory\u002Ffractions-and-the-chinese-remainder-theorem":16994,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Feuclidean-domains-pids-ufds":16998,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fpolynomial-rings-over-fields":17003,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fgauss-lemma-and-unique-factorization":17007,"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Firreducibility-criteria-and-groebner":17011,"\u002Fabstract-algebra\u002Fmodule-theory\u002Fintroduction-to-modules":17015,"\u002Fabstract-algebra\u002Fmodule-theory\u002Ffree-modules-and-direct-sums":17020,"\u002Fabstract-algebra\u002Fmodule-theory\u002Ftensor-products-and-exact-sequences":17024,"\u002Fabstract-algebra\u002Fmodule-theory\u002Fvector-spaces-and-linear-maps":17028,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fstructure-theorem-over-pids":17032,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Frational-canonical-form":17037,"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fjordan-canonical-form":17041,"\u002Fabstract-algebra\u002Ffield-theory\u002Ffield-extensions-and-algebraic-elements":17045,"\u002Fabstract-algebra\u002Ffield-theory\u002Fstraightedge-and-compass-constructions":17050,"\u002Fabstract-algebra\u002Ffield-theory\u002Fsplitting-fields-and-algebraic-closure":17054,"\u002Fabstract-algebra\u002Ffield-theory\u002Fseparable-and-cyclotomic-extensions":17058,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fthe-galois-correspondence":17062,"\u002Fabstract-algebra\u002Fgalois-theory\u002Ffinite-fields":17067,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fcyclotomic-and-abelian-extensions":17071,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fgalois-groups-of-polynomials":17075,"\u002Fabstract-algebra\u002Fgalois-theory\u002Fsolvability-by-radicals-and-the-quintic":17079,"\u002Fabstract-algebra\u002Fcapstone\u002Fcommutative-algebra-and-algebraic-geometry":17083,"\u002Fabstract-algebra\u002Fcapstone\u002Frepresentation-and-character-theory":17088,"\u002Fabstract-algebra":17092,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fatomic-spectra-rutherford":17095,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-model-hydrogen":17100,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fx-ray-spectra-franck-hertz":17104,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-sommerfeld-old-quantum-theory":17108,"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fold-quantum-theory-limits-wkb":17112,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fschrodinger-3d-hydrogen":17116,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fhydrogen-wave-functions":17121,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fradial-equation-in-full":17125,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fsymmetry-degeneracy-runge-lenz":17129,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fexpectation-values-virial":17133,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fquantum-defects-alkali-spectra":17137,"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Frydberg-atoms":17141,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Frelativistic-kinetic-correction":17145,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fspin-orbit-thomas-precession":17150,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdarwin-term-fine-structure-formula":17154,"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdirac-equation-hydrogen":17158,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Flamb-shift-qed":17162,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fhyperfine-structure-21cm":17167,"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fnuclear-effects-isotope-shift":17171,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fperiodic-table-atomic-spectra":17175,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fcentral-field-self-consistent":17180,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fidentical-particles-hartree-fock":17184,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhelium-two-electron-atom":17188,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fls-jj-coupling-term-symbols":17192,"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhund-rules-ground-terms":17196,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fzeeman-effect":17200,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fpaschen-back-intermediate":17205,"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fstark-effect-polarizability":17209,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Ftime-dependent-perturbation-golden-rule":17213,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fdipole-approximation-einstein-coefficients":17218,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fselection-rules-forbidden-transitions":17222,"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Flifetimes-and-line-shapes":17226,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Flaser-principles":17230,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fspectroscopy-techniques":17235,"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fline-catalog-nist-asd":17239,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Flaser-cooling-doppler":17243,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fsub-doppler-trapping":17248,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fbose-einstein-condensation":17252,"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Foptical-clocks-precision":17256,"\u002Fatomic-physics":17260,"\u002Fdatabases":17263,"\u002Fcategory-theory\u002Ffoundations\u002Fwhat-is-a-category":17266,"\u002Fcategory-theory\u002Ffoundations\u002Fexamples-of-categories":17270,"\u002Fcategory-theory\u002Ffoundations\u002Fspecial-morphisms":17274,"\u002Fcategory-theory\u002Ffoundations\u002Ffunctors":17278,"\u002Fcategory-theory\u002Ffoundations\u002Fnatural-transformations":17282,"\u002Fcategory-theory\u002Ffoundations\u002Fsize-and-set-theory":17286,"\u002Fcategory-theory\u002Funiversal-properties\u002Funiversal-properties":17290,"\u002Fcategory-theory\u002Funiversal-properties\u002Fproducts-and-coproducts":17295,"\u002Fcategory-theory\u002Funiversal-properties\u002Fconstructions-on-categories":17299,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Frepresentable-functors":17303,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-lemma":17308,"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-consequences":17312,"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits":17316,"\u002Fcategory-theory\u002Flimits-colimits\u002Fproducts-equalizers-pullbacks":17321,"\u002Fcategory-theory\u002Flimits-colimits\u002Fcolimits":17325,"\u002Fcategory-theory\u002Flimits-colimits\u002Fcomputing-limits":17329,"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits-and-functors":17333,"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions":17337,"\u002Fcategory-theory\u002Fadjunctions\u002Funits-and-counits":17342,"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions-via-universal-arrows":17346,"\u002Fcategory-theory\u002Fadjunctions\u002Ffree-forgetful-adjunctions":17350,"\u002Fcategory-theory\u002Fadjoints-limits\u002Flimits-via-adjoints":17354,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fpresheaf-limits-colimits":17359,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoints-preserve-limits":17363,"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoint-functor-theorem":17367,"\u002Fcategory-theory\u002Fmonads-algebras\u002Fmonads":17371,"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-eilenberg-moore":17376,"\u002Fcategory-theory\u002Fmonads-algebras\u002Fkleisli-and-programming":17380,"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-for-endofunctors":17384,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Fcartesian-closed-categories":17388,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Flambda-calculus-correspondence":17393,"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Ffixed-points-and-recursion":17397,"\u002Fcategory-theory":17401,"\u002Fdeep-learning\u002Fmathematical-background\u002Flinear-algebra-for-deep-learning":17404,"\u002Fdeep-learning\u002Fmathematical-background\u002Fprobability-and-information-theory":17408,"\u002Fdeep-learning\u002Fmathematical-background\u002Fnumerical-computation":17412,"\u002Fdeep-learning\u002Fmathematical-background\u002Fcalculus":17416,"\u002Fdeep-learning\u002Ffoundations\u002Fwhat-is-deep-learning":17419,"\u002Fdeep-learning\u002Ffoundations\u002Fmachine-learning-refresher":17423,"\u002Fdeep-learning\u002Ffoundations\u002Flinear-models-and-the-perceptron":17427,"\u002Fdeep-learning\u002Fneural-networks\u002Fthe-multilayer-perceptron":17431,"\u002Fdeep-learning\u002Fneural-networks\u002Factivation-functions":17436,"\u002Fdeep-learning\u002Fneural-networks\u002Funiversal-approximation":17440,"\u002Fdeep-learning\u002Fneural-networks\u002Fbackpropagation":17444,"\u002Fdeep-learning\u002Fneural-networks\u002Floss-functions-and-output-units":17448,"\u002Fdeep-learning\u002Foptimization\u002Fgradient-descent-and-sgd":17452,"\u002Fdeep-learning\u002Foptimization\u002Fmomentum-and-adaptive-methods":17457,"\u002Fdeep-learning\u002Foptimization\u002Finitialization":17461,"\u002Fdeep-learning\u002Foptimization\u002Fthe-optimization-landscape":17465,"\u002Fdeep-learning\u002Foptimization\u002Fsecond-order-and-approximate-methods":17469,"\u002Fdeep-learning\u002Fregularization\u002Fregularization-overview":17473,"\u002Fdeep-learning\u002Fregularization\u002Fdropout-and-data-augmentation":17478,"\u002Fdeep-learning\u002Fregularization\u002Fearly-stopping-and-parameter-sharing":17482,"\u002Fdeep-learning\u002Fregularization\u002Fnormalization":17486,"\u002Fdeep-learning\u002Farchitectures\u002Fconvolutional-networks":17490,"\u002Fdeep-learning\u002Farchitectures\u002Fcnn-architectures":17495,"\u002Fdeep-learning\u002Farchitectures\u002Frecurrent-networks":17499,"\u002Fdeep-learning\u002Farchitectures\u002Flstm-and-gru":17503,"\u002Fdeep-learning\u002Farchitectures\u002Fattention-and-transformers":17507,"\u002Fdeep-learning\u002Farchitectures\u002Fthe-transformer-architecture":17511,"\u002Fdeep-learning\u002Farchitectures\u002Ftransformers-in-practice":17515,"\u002Fdeep-learning\u002Farchitectures\u002Fgraph-neural-networks":17519,"\u002Fdeep-learning\u002Farchitectures\u002Fstate-space-models":17523,"\u002Fdeep-learning\u002Ftheory\u002Fgeneralization-theory":17527,"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-robustness":17532,"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-defenses":17536,"\u002Fdeep-learning\u002Ftheory\u002Fbayesian-and-ensemble-methods":17540,"\u002Fdeep-learning\u002Ftheory\u002Fdeep-equilibrium-models":17544,"\u002Fdeep-learning\u002Fgenerative-models\u002Flinear-factor-models":17548,"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoencoders":17553,"\u002Fdeep-learning\u002Fgenerative-models\u002Fvariational-autoencoders":17557,"\u002Fdeep-learning\u002Fgenerative-models\u002Fgenerative-adversarial-networks":17561,"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoregressive-and-normalizing-flows":17565,"\u002Fdeep-learning\u002Fgenerative-models\u002Fenergy-based-and-boltzmann-machines":17569,"\u002Fdeep-learning\u002Fgenerative-models\u002Fdiffusion-and-score-based-models":17573,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fstructured-probabilistic-models":17577,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fmonte-carlo-and-mcmc":17582,"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fapproximate-inference":17586,"\u002Fdeep-learning\u002Fpractical\u002Fpractical-methodology":17590,"\u002Fdeep-learning\u002Fpractical\u002Fhyperparameters-and-debugging":17595,"\u002Fdeep-learning\u002Fpractical\u002Frepresentation-learning":17599,"\u002Fdeep-learning\u002Fpractical\u002Ftransfer-learning":17603,"\u002Fdeep-learning\u002Fpractical\u002Fapplications":17607,"\u002Fdeep-learning\u002Fpractical\u002Fmodel-compression-and-distillation":17611,"\u002Fdeep-learning\u002Fpractical\u002Fmeta-learning-and-few-shot":17615,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Flarge-language-models":17619,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fscaling-inference-and-alignment":17624,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fseq2seq-pretraining-and-bart":17628,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ftext-to-text-transfer-and-conditional-generation":17632,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fspeech-and-audio-models":17636,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fself-supervised-speech-and-synthesis":17640,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fai-agents":17644,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fagent-memory-retrieval-and-orchestration":17648,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmixture-of-experts":17652,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmultimodal-models":17656,"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ffusion-and-vision-language-models":17660,"\u002Fdeep-learning\u002Freinforcement-learning\u002Ffoundations-of-reinforcement-learning":17664,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fmodel-free-prediction-and-control":17669,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fdeep-q-networks":17673,"\u002Fdeep-learning\u002Freinforcement-learning\u002Fpolicy-gradients-and-actor-critic":17677,"\u002Fdeep-learning\u002Freinforcement-learning\u002Frl-from-human-feedback":17681,"\u002Fdeep-learning":17685,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fequilibrium-state-variables-zeroth-law":17688,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Ffirst-law-heat-and-work":17692,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fsecond-law-entropy-and-the-carnot-bound":17696,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fthermodynamic-potentials-and-maxwell-relations":17700,"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fstability-response-functions-and-the-third-law":17704,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fclassical-statistics-and-equipartition":17708,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fphase-space-and-liouvilles-theorem":17713,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fensembles-and-the-equal-probability-postulate":17717,"\u002Fstatistical-mechanics\u002Ffoundations\u002Fstatistical-entropy-boltzmann-and-gibbs":17721,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fmicrocanonical-ensemble-and-entropy":17725,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fequilibrium-conditions-temperature-pressure-chemical-potential":17730,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fideal-gas-phase-space-and-the-sackur-tetrode-entropy":17734,"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Ftwo-state-systems-paramagnets-and-negative-temperature":17738,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fcanonical-ensemble-and-the-boltzmann-distribution":17742,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fpartition-function-and-the-helmholtz-free-energy":17747,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fenergy-fluctuations-and-ensemble-equivalence":17751,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fthe-einstein-solid-and-harmonic-systems":17755,"\u002Fstatistical-mechanics\u002Fcanonical\u002Fparamagnetism-and-the-schottky-anomaly":17759,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fideal-gas-partition-function-and-the-gibbs-paradox":17763,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fequipartition-and-the-virial-theorem":17768,"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fmolecular-gases-rotation-and-vibration":17772,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fgrand-canonical-ensemble-and-the-grand-partition-function":17776,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fchemical-potential-fugacity-and-number-fluctuations":17781,"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fensemble-summary-and-the-thermodynamic-web":17785,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fquantum-statistics-bose-einstein-and-fermi-dirac":17789,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fderiving-the-quantum-distributions":17794,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fthe-classical-limit-and-quantum-concentration":17798,"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fideal-quantum-gases-general-framework":17802,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-and-the-fermion-gas":17806,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthe-photon-gas-and-plancks-radiation-law":17811,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fblackbody-thermodynamics-and-radiation-pressure":17815,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fphonons-and-the-debye-model":17819,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-derived":17823,"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthermodynamics-of-the-bose-gas-and-superfluidity":17827,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fthe-ideal-fermi-gas-at-zero-temperature":17831,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fsommerfeld-expansion-and-electrons-in-metals":17836,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fwhite-dwarfs-and-the-chandrasekhar-limit":17840,"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fneutron-stars-and-nuclear-matter":17844,"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-cluster-expansion-and-virial-coefficients":17848,"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-van-der-waals-gas-and-liquid-gas-coexistence":17853,"\u002Fstatistical-mechanics\u002Finteractions\u002Fquantum-gases-with-interactions-and-exchange":17857,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fphases-coexistence-and-classification":17861,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-ising-model-and-exact-solutions":17866,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fmean-field-theory-and-the-weiss-model":17870,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fcritical-exponents-and-landau-theory":17874,"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-renormalization-group-idea":17878,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fthermodynamic-fluctuations-and-response":17882,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fbrownian-motion-and-the-langevin-equation":17887,"\u002Fstatistical-mechanics\u002Ffluctuations\u002Flinear-response-and-the-fluctuation-dissipation-theorem":17891,"\u002Fstatistical-mechanics":17895,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fbonding-mechanisms":17898,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fmolecular-orbitals-and-h2-plus":17903,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fhydrogen-molecule-and-exchange":17907,"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fvan-der-waals-forces":17911,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Frotational-vibrational-spectra":17915,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Fanharmonicity-and-rovibrational-structure":17920,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Framan-and-electronic-bands":17924,"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Flasers-and-masers":17928,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fstructure-of-solids":17932,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fbravais-lattices-and-crystal-systems":17937,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Freciprocal-lattice-and-brillouin-zones":17941,"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fdiffraction-and-structure-factors":17945,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonon-dispersion":17949,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonons-quantization-and-dos":17954,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fdebye-einstein-heat-capacity":17958,"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fanharmonicity-and-thermal-transport":17962,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ffree-electron-gas-and-conduction":17966,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fsommerfeld-model-and-heat-capacity":17971,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ftransport-and-the-hall-effect":17975,"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fscreening-and-plasmons":17979,"\u002Fcondensed-matter\u002Fband-theory\u002Fblochs-theorem-and-energy-bands":17983,"\u002Fcondensed-matter\u002Fband-theory\u002Fnearly-free-electron-model":17988,"\u002Fcondensed-matter\u002Fband-theory\u002Ftight-binding-method":17992,"\u002Fcondensed-matter\u002Fband-theory\u002Ffermi-surfaces-and-semiclassical-dynamics":17996,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fsemiconductor-bands-and-junctions":18000,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fintrinsic-and-extrinsic-semiconductors":18005,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fcarrier-transport-and-recombination":18009,"\u002Fcondensed-matter\u002Fsemiconductors\u002Fthe-pn-junction":18013,"\u002Fcondensed-matter\u002Fsemiconductors\u002Ftransistors-and-optoelectronics":18017,"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fdielectrics-and-polarization":18021,"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fferroelectrics-and-piezoelectrics":18026,"\u002Fcondensed-matter\u002Fmagnetism\u002Fdiamagnetism-and-paramagnetism":18030,"\u002Fcondensed-matter\u002Fmagnetism\u002Fexchange-and-ferromagnetism":18035,"\u002Fcondensed-matter\u002Fmagnetism\u002Fantiferromagnetism-and-domains":18039,"\u002Fcondensed-matter\u002Fmagnetism\u002Fspin-waves-and-magnons":18043,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fsuperconductivity-phenomenology":18047,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Flondon-theory-and-the-meissner-effect":18052,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fginzburg-landau-theory":18056,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fbcs-theory":18060,"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fjosephson-and-high-tc":18064,"\u002Fcondensed-matter\u002Fnanostructures\u002Fquantum-wells-wires-and-dots":18068,"\u002Fcondensed-matter\u002Fnanostructures\u002Finteger-quantum-hall-effect":18073,"\u002Fcondensed-matter\u002Fnanostructures\u002Ffractional-quantum-hall-and-topology":18077,"\u002Fcondensed-matter\u002Fnanostructures\u002Fgraphene-and-dirac-materials":18081,"\u002Fcondensed-matter":18085,"\u002Flogic\u002Ffoundations\u002Flogic-as-a-mathematical-model":18088,"\u002Flogic\u002Fsentential-logic\u002Fformal-languages-and-well-formed-formulas":18092,"\u002Flogic\u002Fsentential-logic\u002Ftruth-assignments-and-tautologies":18097,"\u002Flogic\u002Fsentential-logic\u002Funique-readability-and-parsing":18101,"\u002Flogic\u002Fsentential-logic\u002Finduction-and-recursion":18105,"\u002Flogic\u002Fsentential-logic\u002Fexpressive-completeness-and-normal-forms":18109,"\u002Flogic\u002Fsentential-logic\u002Fboolean-circuits":18113,"\u002Flogic\u002Fsentential-logic\u002Fcompactness-and-effectiveness":18117,"\u002Flogic\u002Ffirst-order-languages\u002Ffirst-order-languages":18121,"\u002Flogic\u002Ffirst-order-languages\u002Fstructures-truth-and-satisfaction":18126,"\u002Flogic\u002Ffirst-order-languages\u002Fdefinability-and-elementary-equivalence":18130,"\u002Flogic\u002Ffirst-order-languages\u002Fterms-substitution-and-parsing":18134,"\u002Flogic\u002Fdeductive-calculus\u002Fa-deductive-calculus":18138,"\u002Flogic\u002Fdeductive-calculus\u002Fdeduction-theorem-and-derived-rules":18143,"\u002Flogic\u002Fdeductive-calculus\u002Fsoundness":18147,"\u002Flogic\u002Fdeductive-calculus\u002Fcompleteness-and-consistency":18151,"\u002Flogic\u002Fmodels-and-theories\u002Fcompactness-and-lowenheim-skolem":18155,"\u002Flogic\u002Fmodels-and-theories\u002Ftheories-elementary-classes-and-categoricity":18160,"\u002Flogic\u002Fmodels-and-theories\u002Finterpretations-between-theories":18164,"\u002Flogic\u002Fmodels-and-theories\u002Fnonstandard-analysis":18168,"\u002Flogic\u002Farithmetic-and-definability\u002Fdefinability-in-arithmetic":18172,"\u002Flogic\u002Farithmetic-and-definability\u002Fnatural-numbers-with-successor":18177,"\u002Flogic\u002Farithmetic-and-definability\u002Fpresburger-and-reducts":18181,"\u002Flogic\u002Farithmetic-and-definability\u002Fa-subtheory-and-representability":18185,"\u002Flogic\u002Fincompleteness\u002Farithmetization-of-syntax":18189,"\u002Flogic\u002Fincompleteness\u002Fincompleteness-and-undecidability":18194,"\u002Flogic\u002Fincompleteness\u002Fsecond-incompleteness-theorem":18198,"\u002Flogic\u002Fcomputability-and-representability\u002Frecursive-functions":18202,"\u002Flogic\u002Fcomputability-and-representability\u002Frepresenting-exponentiation":18207,"\u002Flogic\u002Fsecond-order-logic\u002Fsecond-order-languages":18211,"\u002Flogic\u002Fsecond-order-logic\u002Fskolem-functions-and-many-sorted-logic":18216,"\u002Flogic\u002Fsecond-order-logic\u002Fgeneral-structures":18220,"\u002Flogic":18224,"\u002Freinforcement-learning\u002Ffoundations\u002Fwhat-is-reinforcement-learning":18227,"\u002Freinforcement-learning\u002Ffoundations\u002Fa-brief-history-of-rl":18231,"\u002Freinforcement-learning\u002Ffoundations\u002Fmulti-armed-bandits":18235,"\u002Freinforcement-learning\u002Ffoundations\u002Fbandit-exploration-algorithms":18239,"\u002Freinforcement-learning\u002Ffoundations\u002Fmarkov-decision-processes":18243,"\u002Freinforcement-learning\u002Ffoundations\u002Fvalue-functions-and-optimality":18247,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdynamic-programming":18251,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdp-async-and-gpi":18255,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-methods":18259,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-off-policy":18263,"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftemporal-difference-learning":18267,"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftd-control-sarsa-and-q-learning":18271,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-bootstrapping":18275,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-off-policy-methods":18279,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-and-learning":18283,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-focusing-and-decision-time":18287,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdecision-time-planning":18291,"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-tree-search":18295,"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-prediction":18299,"\u002Freinforcement-learning\u002Fapproximation\u002Ffeature-construction-and-nonlinear":18304,"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-control":18308,"\u002Freinforcement-learning\u002Fapproximation\u002Faverage-reward-control":18312,"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-and-the-deadly-triad":18316,"\u002Freinforcement-learning\u002Fapproximation\u002Fbellman-error-and-gradient-td":18320,"\u002Freinforcement-learning\u002Fapproximation\u002Feligibility-traces":18324,"\u002Freinforcement-learning\u002Fapproximation\u002Ftrue-online-and-sarsa-lambda":18328,"\u002Freinforcement-learning\u002Fapproximation\u002Fpolicy-gradient-methods":18332,"\u002Freinforcement-learning\u002Fapproximation\u002Factor-critic-and-continuous-actions":18336,"\u002Freinforcement-learning\u002Fapproximation\u002Fleast-squares-and-memory-based-methods":18340,"\u002Freinforcement-learning\u002Fapproximation\u002Fmemory-and-kernel-methods":18344,"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-eligibility-traces":18348,"\u002Freinforcement-learning\u002Fapproximation\u002Fstable-off-policy-traces":18352,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdeep-q-networks":18356,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdqn-improvements":18360,"\u002Freinforcement-learning\u002Fdeep-rl\u002Factor-critic-and-ppo":18364,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fppo-and-continuous-control":18368,"\u002Freinforcement-learning\u002Fdeep-rl\u002Fcase-studies":18372,"\u002Freinforcement-learning\u002Fdeep-rl\u002Frl-beyond-games":18376,"\u002Freinforcement-learning\u002Fdeep-rl\u002Ffrontiers":18380,"\u002Freinforcement-learning\u002Fdeep-rl\u002Freward-design-and-open-problems":18384,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow":18388,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow-part-2":18393,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control":18397,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control-part-2":18401,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl":18405,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl-part-2":18409,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration":18413,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration-part-2":18417,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl":18421,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl-part-2":18425,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl":18429,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl-part-2":18433,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl":18437,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl-part-2":18441,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl":18445,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl-part-2":18449,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Frlhf-and-language-models":18453,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps":18457,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps-part-2":18461,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl":18465,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl-part-2":18469,"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmeta-rl-and-generalization":18473,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fpsychology-of-reinforcement":18477,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Finstrumental-conditioning-and-control":18482,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-and-td-error":18486,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-in-the-brain":18490,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fanimal-learning-and-cognition":18494,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fcognitive-maps-and-planning":18498,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fneuroscience-of-reinforcement":18502,"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fseveral-learning-systems":18506,"\u002Freinforcement-learning":18510,"\u002Fartificial-intelligence\u002Ffoundations\u002Fwhat-is-ai":18512,"\u002Fartificial-intelligence\u002Ffoundations\u002Ffoundations-of-ai":18516,"\u002Fartificial-intelligence\u002Ffoundations\u002Fintelligent-agents":18520,"\u002Fartificial-intelligence\u002Ffoundations\u002Fagent-architectures":18524,"\u002Fartificial-intelligence\u002Fsearch\u002Funinformed-search":18528,"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-strategies-compared":18533,"\u002Fartificial-intelligence\u002Fsearch\u002Finformed-search":18537,"\u002Fartificial-intelligence\u002Fsearch\u002Fheuristic-functions":18541,"\u002Fartificial-intelligence\u002Fsearch\u002Flocal-search":18545,"\u002Fartificial-intelligence\u002Fsearch\u002Fpopulation-and-continuous-search":18549,"\u002Fartificial-intelligence\u002Fsearch\u002Fadversarial-search":18553,"\u002Fartificial-intelligence\u002Fsearch\u002Fgames-of-chance-and-imperfect-information":18557,"\u002Fartificial-intelligence\u002Fsearch\u002Fconstraint-satisfaction":18561,"\u002Fartificial-intelligence\u002Fsearch\u002Fcsp-search-and-structure":18565,"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-under-uncertainty":18569,"\u002Fartificial-intelligence\u002Fsearch\u002Fbelief-state-and-online-search":18573,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-logic":18577,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-inference":18582,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic":18586,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic-in-use":18590,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Finference-and-resolution":18594,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-resolution":18598,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fclassical-planning":18602,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-graphs-and-graphplan":18606,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-in-the-real-world":18610,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-under-uncertainty":18614,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fknowledge-representation":18618,"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Freasoning-systems-and-defaults":18622,"\u002Fartificial-intelligence\u002Funcertainty\u002Fprobability-and-bayes":18626,"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayes-rule-and-naive-bayes":18631,"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayesian-networks":18635,"\u002Fartificial-intelligence\u002Funcertainty\u002Finference-in-bayesian-networks":18639,"\u002Fartificial-intelligence\u002Funcertainty\u002Freasoning-over-time":18643,"\u002Fartificial-intelligence\u002Funcertainty\u002Ftracking-and-data-association":18647,"\u002Fartificial-intelligence\u002Funcertainty\u002Fmaking-decisions":18651,"\u002Fartificial-intelligence\u002Funcertainty\u002Fmarkov-decision-processes":18655,"\u002Fartificial-intelligence\u002Funcertainty\u002Fdecision-networks-and-game-theory":18658,"\u002Fartificial-intelligence\u002Funcertainty\u002Fgame-theory-and-mechanism-design":18662,"\u002Fartificial-intelligence\u002Flearning\u002Flearning-from-examples":18666,"\u002Fartificial-intelligence\u002Flearning\u002Ftheory-and-model-families":18671,"\u002Fartificial-intelligence\u002Flearning\u002Fprobabilistic-learning":18675,"\u002Fartificial-intelligence\u002Flearning\u002Fexpectation-maximization":18679,"\u002Fartificial-intelligence\u002Flearning\u002Freinforcement-learning":18683,"\u002Fartificial-intelligence\u002Flearning\u002Fgeneralization-and-policy-search":18686,"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-in-learning":18690,"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-based-learning-methods":18694,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fvision-and-perception":18698,"\u002Fartificial-intelligence\u002Ffrontiers\u002Freconstructing-the-3d-world":18703,"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobotics":18707,"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobot-planning-and-control":18711,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnatural-language-in-ai":18715,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnlp-grammar-translation-and-speech":18719,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fphilosophy-and-future":18723,"\u002Fartificial-intelligence\u002Ffrontiers\u002Fai-ethics-and-future":18727,"\u002Fartificial-intelligence":18731,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-constituents-nuclide-chart":18734,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-size-charge-distributions":18739,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-masses-binding-energy":18743,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fsemi-empirical-mass-formula":18747,"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-moments-multipoles":18751,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnuclear-force-shell-overview":18755,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fthe-deuteron":18760,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnucleon-nucleon-scattering":18764,"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fmeson-theory-isospin":18768,"\u002Fnuclear-physics\u002Fnuclear-models\u002Ffermi-gas-model":18772,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fliquid-drop-collective-coordinates":18777,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fshell-model-single-particle":18781,"\u002Fnuclear-physics\u002Fnuclear-models\u002Fcollective-model-rotations-vibrations":18785,"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-law-modes":18789,"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-kinetics-equilibrium":18794,"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-decay-gamow-theory":18798,"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-fine-structure-hindrance":18803,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fbeta-decay-energetics-neutrino":18807,"\u002Fnuclear-physics\u002Fbeta-decay\u002Ffermi-theory-beta-decay":18812,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fweak-interaction-parity-violation":18816,"\u002Fnuclear-physics\u002Fbeta-decay\u002Fdouble-beta-decay-neutrino-mass":18820,"\u002Fnuclear-physics\u002Fgamma-decay\u002Fgamma-multipole-radiation":18824,"\u002Fnuclear-physics\u002Fgamma-decay\u002Finternal-conversion-isomers":18829,"\u002Fnuclear-physics\u002Fgamma-decay\u002Fangular-correlations-mossbauer":18833,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Freaction-kinematics-cross-sections":18837,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fcompound-nucleus-resonances":18842,"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fdirect-reactions-optical-model":18846,"\u002Fnuclear-physics\u002Ffission\u002Ffission-barrier-dynamics":18850,"\u002Fnuclear-physics\u002Ffission\u002Fchain-reactions-reactor-physics":18855,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Ffusion-reactions-confinement":18859,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fstellar-nucleosynthesis":18864,"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fbig-bang-nucleosynthesis":18868,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fcharged-particle-stopping-power":18872,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fphoton-neutron-interactions":18877,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fradiation-detectors":18881,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fdosimetry-radiation-biology":18885,"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fnuclear-applications-dating-medicine":18889,"\u002Fnuclear-physics":18893,"\u002Fnatural-language-processing\u002Ffoundations\u002Fwhat-is-nlp":18896,"\u002Fnatural-language-processing\u002Ffoundations\u002Fregex-and-text-normalization":18900,"\u002Fnatural-language-processing\u002Ffoundations\u002Fminimum-edit-distance":18904,"\u002Fnatural-language-processing\u002Ffoundations\u002Fn-gram-language-models":18908,"\u002Fnatural-language-processing\u002Ffoundations\u002Fsmoothing-and-backoff":18912,"\u002Fnatural-language-processing\u002Fclassification\u002Fnaive-bayes-and-sentiment":18916,"\u002Fnatural-language-processing\u002Fclassification\u002Fevaluating-classifiers":18921,"\u002Fnatural-language-processing\u002Fclassification\u002Flogistic-regression":18925,"\u002Fnatural-language-processing\u002Fclassification\u002Fsentiment-and-affect-lexicons":18929,"\u002Fnatural-language-processing\u002Fsemantics\u002Fvector-semantics-and-embeddings":18933,"\u002Fnatural-language-processing\u002Fsemantics\u002Fstatic-word-embeddings":18938,"\u002Fnatural-language-processing\u002Fsemantics\u002Fneural-language-models":18942,"\u002Fnatural-language-processing\u002Fsequences\u002Fsequence-labeling":18946,"\u002Fnatural-language-processing\u002Fsequences\u002Fcrfs-and-neural-taggers":18950,"\u002Fnatural-language-processing\u002Fsequences\u002Frnns-and-lstms":18954,"\u002Fnatural-language-processing\u002Ftransformers\u002Ftransformers-and-attention":18958,"\u002Fnatural-language-processing\u002Ftransformers\u002Fthe-transformer-architecture":18962,"\u002Fnatural-language-processing\u002Ftransformers\u002Flarge-language-models":18965,"\u002Fnatural-language-processing\u002Ftransformers\u002Fllm-pretraining-and-scaling":18968,"\u002Fnatural-language-processing\u002Ftransformers\u002Ffine-tuning-and-prompting":18972,"\u002Fnatural-language-processing\u002Ftransformers\u002Fprompting-and-alignment":18976,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-parsing":18980,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcky-scoring-and-evaluation":18985,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdependency-parsing":18989,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fgraph-based-and-neural-dependency-parsing":18993,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fword-senses-and-wsd":18997,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fwsd-in-practice-and-induction":19001,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-roles-and-information-extraction":19005,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Frelations-events-and-templates":19009,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoreference-and-discourse":19013,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoherence-and-discourse-structure":19017,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Flogical-semantics":19021,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcompositional-semantics-and-description-logics":19025,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-parsing":19029,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fneural-semantic-parsing":19033,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Finformation-extraction":19037,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftimes-events-and-templates":19041,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdiscourse-coherence":19045,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fentity-based-and-global-coherence":19049,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-grammars":19053,"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftreebanks-and-lexicalized-grammars":19057,"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation":19061,"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation-decoding-and-evaluation":19065,"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering":19069,"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering-knowledge-and-llms":19073,"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-and-chatbots":19077,"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-systems-and-assistants":19081,"\u002Fnatural-language-processing\u002Fapplications\u002Ftext-summarization":19085,"\u002Fnatural-language-processing\u002Fapplications\u002Fabstractive-summarization-and-evaluation":19089,"\u002Fnatural-language-processing\u002Fspeech\u002Fphonetics":19093,"\u002Fnatural-language-processing\u002Fspeech\u002Facoustic-phonetics":19098,"\u002Fnatural-language-processing\u002Fspeech\u002Fautomatic-speech-recognition":19102,"\u002Fnatural-language-processing\u002Fspeech\u002Fasr-evaluation-and-applications":19106,"\u002Fnatural-language-processing":19110,"\u002Fparticle-physics\u002Ffoundations\u002Fhistorical-overview-particle-zoo":19113,"\u002Fparticle-physics\u002Ffoundations\u002Fparticle-physics-basic-concepts":19117,"\u002Fparticle-physics\u002Ffoundations\u002Ffundamental-interactions-force-carriers":19121,"\u002Fparticle-physics\u002Funits-kinematics\u002Fnatural-units-and-scales":19125,"\u002Fparticle-physics\u002Funits-kinematics\u002Ffour-vectors-invariant-mass":19130,"\u002Fparticle-physics\u002Funits-kinematics\u002Fdecay-scattering-kinematics-mandelstam":19134,"\u002Fparticle-physics\u002Funits-kinematics\u002Fcross-sections-golden-rule":19138,"\u002Fparticle-physics\u002Fsymmetries\u002Fconservation-laws-symmetries":19142,"\u002Fparticle-physics\u002Fsymmetries\u002Fdiscrete-symmetries-cpt":19147,"\u002Fparticle-physics\u002Fsymmetries\u002Fparity-violation-weak":19151,"\u002Fparticle-physics\u002Fsymmetries\u002Fsu2-su3-flavor-symmetry":19155,"\u002Fparticle-physics\u002Fquark-model\u002Feightfold-way-su3":19159,"\u002Fparticle-physics\u002Fquark-model\u002Fmeson-spectroscopy":19164,"\u002Fparticle-physics\u002Fquark-model\u002Fbaryon-spectroscopy":19168,"\u002Fparticle-physics\u002Fquark-model\u002Fcolor-confinement-exotics":19172,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fklein-gordon-equation":19176,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fdirac-equation-spinors":19181,"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fantiparticles-hole-theory":19185,"\u002Fparticle-physics\u002Fqed\u002Ffeynman-rules-qed":19189,"\u002Fparticle-physics\u002Fqed\u002Fqed-tree-processes":19194,"\u002Fparticle-physics\u002Fqed\u002Frenormalization-running-coupling":19198,"\u002Fparticle-physics\u002Fqed\u002Felectron-g-2":19202,"\u002Fparticle-physics\u002Fweak-interaction\u002Fva-structure-weak":19206,"\u002Fparticle-physics\u002Fweak-interaction\u002Fw-z-bosons-decays":19211,"\u002Fparticle-physics\u002Fweak-interaction\u002Fckm-matrix":19215,"\u002Fparticle-physics\u002Fweak-interaction\u002Fcp-violation-kaons-b-mesons":19219,"\u002Fparticle-physics\u002Fqcd\u002Fcolor-su3-gluons":19223,"\u002Fparticle-physics\u002Fqcd\u002Fasymptotic-freedom-confinement":19228,"\u002Fparticle-physics\u002Fqcd\u002Fdeep-inelastic-scattering-partons":19232,"\u002Fparticle-physics\u002Fqcd\u002Fjets-hadronization":19236,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Felectroweak-su2-u1":19240,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fspontaneous-symmetry-breaking":19245,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-mechanism":19249,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-boson-discovery":19253,"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fstandard-model":19257,"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-oscillations":19261,"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-mass-pmns":19266,"\u002Fparticle-physics\u002Fneutrinos\u002Fdirac-majorana-experiments":19270,"\u002Fparticle-physics\u002Fexperiment\u002Faccelerators-luminosity":19274,"\u002Fparticle-physics\u002Fexperiment\u002Fdetectors-subsystems":19279,"\u002Fparticle-physics\u002Fexperiment\u002Fhow-discoveries-are-made":19283,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fbeyond-standard-model":19287,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fgrand-unified-theories":19291,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fsupersymmetry":19295,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fhierarchy-problem-naturalness":19299,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fdark-matter-candidates":19303,"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fmatter-antimatter-open-questions":19307,"\u002Fparticle-physics":19311,"\u002Fastrophysics-cosmology\u002Forientation\u002Fthe-sun-and-stars":19314,"\u002Fastrophysics-cosmology\u002Forientation\u002Fstellar-death-final-states":19319,"\u002Fastrophysics-cosmology\u002Forientation\u002Fgalaxies-and-cosmology":19323,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fmagnitudes-fluxes-and-the-distance-modulus":19327,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fstellar-spectra-and-spectral-classification":19332,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Ftelescopes-and-detectors-across-the-spectrum":19336,"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fthe-cosmic-distance-ladder":19340,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fblackbody-radiation-and-specific-intensity":19344,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fradiative-transfer-and-the-transfer-equation":19349,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fspectral-line-formation-and-broadening":19353,"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fopacity-and-the-rosseland-mean":19357,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fhydrostatic-equilibrium-and-the-virial-theorem":19361,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equations-of-stellar-structure":19366,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equation-of-state-and-polytropes":19370,"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-standard-solar-model":19374,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fthermonuclear-reaction-rates-and-the-gamow-peak":19378,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhydrogen-burning-pp-chains-and-cno":19383,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhelium-burning-and-the-triple-alpha-process":19387,"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fadvanced-burning-and-neutron-capture-nucleosynthesis":19391,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fphases-of-the-interstellar-medium":19395,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fmolecular-clouds-and-gravitational-collapse":19400,"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fprotostars-and-the-pre-main-sequence":19404,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-main-sequence-and-its-structure":19408,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fpost-main-sequence-low-mass-evolution":19413,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-evolution-of-massive-stars":19417,"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fstellar-pulsation-and-the-instability-strip":19421,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fwhite-dwarfs-and-the-chandrasekhar-limit":19425,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fcore-collapse-supernovae":19429,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fthermonuclear-supernovae-type-ia":19433,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fneutron-stars-and-pulsars":19437,"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fblack-holes-schwarzschild-and-kerr":19441,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fbinary-systems-and-mass-transfer":19445,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Faccreting-compact-objects":19450,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fgravitational-waves-from-inspiraling-binaries":19454,"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fmultimessenger-astronomy-and-gamma-ray-bursts":19458,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fthe-milky-way":19462,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-morphology-and-classification":19467,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-rotation-curves-and-dark-matter":19471,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Factive-galactic-nuclei-and-supermassive-black-holes":19475,"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-clusters-and-large-scale-structure":19479,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-expanding-universe-and-hubbles-law":19483,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-frw-metric-and-cosmological-redshift":19488,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-friedmann-equations-and-cosmic-dynamics":19492,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fcosmological-models-and-distances":19495,"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fdark-energy-and-the-accelerating-universe":19499,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fthe-thermal-history-of-the-universe":19503,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fbig-bang-nucleosynthesis":19508,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Frecombination-and-the-cosmic-microwave-background":19512,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcmb-anisotropies-and-cosmological-parameters":19516,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcosmic-inflation":19520,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fstructure-formation-and-the-growth-of-perturbations":19524,"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fdark-matter-dark-energy-and-open-questions":19528,"\u002Fastrophysics-cosmology":19532,"\u002Fcolophon":19535,"\u002F":19538},{"path":14860,"title":14861,"module":14862,"summary":14863},"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm","What Is an Algorithm?","Foundations","An algorithm is a finite, mechanical recipe that transforms inputs into outputs. We define what counts as an algorithm, how we write one down, and the three things we always ask of it: is it correct, is it fast, and can we prove it.\n",{"path":14865,"title":14866,"module":14862,"summary":14867},"\u002Falgorithms\u002Ffoundations\u002Fproof-techniques","Proof Techniques","An algorithm without a proof is a conjecture. This lesson collects the handful\nof arguments that certify the algorithms in this course — direct proof,\ncontrapositive, contradiction, ordinary and strong induction, construction, and\ndisproof by counterexample — each with a small worked\nexample and a picture. Loop invariants are a form of induction,\nrecursive correctness falls to strong induction, and the classic broken proofs\n(all horses are the same color) show where inductions go wrong.\n",{"path":14869,"title":14870,"module":14862,"summary":14871},"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis","Asymptotic Analysis","We measure an algorithm's running time as a function of its input size, then strip away machine-specific constants and lower-order terms to compare algorithms cleanly. This lesson defines the RAM model and the $O$, $\\Omega$, $\\Theta$, $o$, and $\\omega$ notations, proves the polynomial theorem, and shows how to rank growth rates with the limit test, L'Hôpital, base substitution, and the logarithm identities the arguments lean on.\n",{"path":14873,"title":14874,"module":14862,"summary":14875},"\u002Falgorithms\u002Ffoundations\u002Fgrowth-rates-and-loop-analysis","Growth Rates and Loop Analysis","With the asymptotic notations in hand, we rank the functions that actually arise in running times — from constant to factorial — proving the orderings between rungs, then read the running time of a loop nest straight off the page. Sequential blocks add, nested loops multiply, index scaling gives logarithms; a worked trace and a tour of cache-aware and galactic algorithms close the lesson.\n",{"path":1921,"title":14877,"module":14862,"summary":14878},"Recurrences and the Master Theorem","Recursive and divide-and-conquer algorithms describe their own running time with a recurrence: $T(n)$ in terms of $T$ on smaller inputs. We solve recurrences three ways — drawing the recursion tree, guessing-and-verifying by induction, and applying the Master Theorem — using merge sort as the running example, then handle unequal splits with Akra–Bazzi.\n",{"path":14880,"title":14881,"module":14862,"summary":14882},"\u002Falgorithms\u002Ffoundations\u002Famortized-analysis","Amortized Analysis","Some operations are occasionally expensive but cheap on average across any\nsequence. Amortized analysis bounds the average cost per operation over a\nworst-case sequence — not an expectation — so a rare costly step is paid for by\nthe many cheap ones around it. This lesson develops the aggregate, accounting,\nand potential methods on dynamic-array doubling, the binary counter, and a\nstack with multipop.\n",{"path":14884,"title":14885,"module":14886,"summary":14887},"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort","Divide and Conquer & Mergesort","Divide & Conquer","Divide and conquer breaks a problem into smaller copies of itself, solves\nthem recursively, and stitches the answers together. We meet the paradigm\nthrough mergesort — its merge step, its loop-invariant proof, and the\nrecursion tree that pins its cost at $\\Theta(n\\log n)$ — then count inversions\nwith the same machinery and distill the whole pattern into the master theorem.\n",{"path":14889,"title":14890,"module":14886,"summary":14891},"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort","Quicksort","Quicksort sorts in place by partitioning around a pivot and recursing on\neach side. We give Lomuto and Hoare partitioning with a correctness\ninvariant, see why a bad pivot costs $\\Theta(n^2)$ while a balanced one gives\n$\\Theta(n\\log n)$, and prove that randomizing the pivot makes the expected\ncost $\\Theta(n\\log n)$ on every input.\n",{"path":260,"title":14893,"module":14886,"summary":14894},"Linear-Time Selection","Finding the $k$-th smallest element looks like it should require sorting, but\nit does not. Quickselect adapts quicksort's partition to recurse on just one\nside, achieving expected $O(n)$. The median-of-medians algorithm guarantees a\ngood pivot with the groups-of-five trick, pushing the worst case down to a\nprovable $O(n)$.\n",{"path":14896,"title":14897,"module":14886,"summary":14898},"\u002Falgorithms\u002Fdivide-and-conquer\u002Ffast-multiplication","Fast Multiplication","Grade-school multiplication is $\\Theta(n^2)$, yet divide and conquer beats it.\nKaratsuba multiplies $n$-bit integers with three half-size products instead of\nfour, giving $\\Theta(n^{\\log_2 3})$, and Strassen multiplies matrices with\nseven block products instead of eight, giving $\\Theta(n^{\\log_2 7})$. Both\nspend cheap additions to save an expensive multiplication, and the master\ntheorem quantifies the savings.\n",{"path":14900,"title":14901,"module":14902,"summary":14903},"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort","Heaps and Heapsort","Sorting & Order Statistics","A binary heap is a tree we store flat in an array, with index arithmetic\nstanding in for pointers. We build the max-heap property bottom-up in $O(n)$\ntime, sort in place in $\\Theta(n\\log n)$ by repeatedly extracting the maximum,\nand reuse the same structure to implement a priority queue.\n",{"path":14905,"title":14906,"module":14902,"summary":14907},"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds","Lower Bounds for Comparison Sorting","Every sort we have seen runs in $\\Omega(n\\log n)$, and that is no accident.\nModeling a sort as a decision tree of comparisons, we show any such tree must\nhave $n!$ leaves, forcing height $\\ge \\log_2(n!) = \\Omega(n\\log n)$ — a bound\nno comparison sort beats in the worst case, on average, or with randomness.\n",{"path":14909,"title":14910,"module":14902,"summary":14911},"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting","Sorting in Linear Time","The $\\Omega(n\\log n)$ barrier only binds algorithms that compare. By instead\nusing keys as array indices we slip past it: counting sort runs in\n$\\Theta(n+k)$ and is stable, radix sort layers it digit by digit, and bucket\nsort averages $\\Theta(n)$ on uniform data. We see exactly when each applies.\n",{"path":14913,"title":14914,"module":14902,"summary":14915},"\u002Falgorithms\u002Fsorting\u002Fexternal-sorting","External Sorting","When the data dwarfs main memory, the cost that matters is no longer\ncomparisons but block transfers to and from disk. External merge sort sorts\nmemory-sized runs, then folds them together with a heap-driven $k$-way merge in\n$\\Theta(\\log_k(N\u002FM))$ passes. Larger fan-out cuts passes; replacement selection\nbuilds longer runs to cut them further.\n",{"path":14917,"title":14918,"module":14919,"summary":14920},"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures","Elementary Data Structures","Data Structures","Every container is built one of two ways: **contiguous** in an array, or\n**linked** through pointers. We trade cache-friendly random access against\n$O(1)$ splicing, derive the **amortized $O(1)$** append of a doubling dynamic\narray, and assemble the two ordered access disciplines — the LIFO **stack** and\nthe FIFO **queue** (with its generalization, the **deque**) — on top of both.\n",{"path":14922,"title":14923,"module":14919,"summary":14924},"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables","Hash Tables","A hash table implements the dictionary — insert, search, delete — in expected\n$O(1)$ time by scattering keys across an array with a hash function. We build\nup from direct addressing, handle collisions by chaining and by open\naddressing, analyze the load factor $\\alpha$, and see how universal hashing\nachieves its expected-time guarantee against every input.\n",{"path":14926,"title":14927,"module":14919,"summary":14928},"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees","Binary Search Trees","A binary search tree keeps keys ordered so that every operation follows a\nsingle root-to-leaf path. We state the BST property, trace search, insert,\nsuccessor, and all three delete cases on concrete trees, prove the inorder\nwalk sorts, and note the drawback — every operation costs $O(h)$, and a\ncarelessly built tree degrades to height $h = \\Theta(n)$, motivating balance.\n",{"path":14930,"title":14931,"module":14919,"summary":14932},"\u002Falgorithms\u002Fdata-structures\u002Favl-trees","AVL Trees","An AVL tree is the first balanced BST: at every node the two subtrees' heights\ndiffer by at most $1$. A Fibonacci-style minimal-node argument forces height\n$h \\le 1.44\\log_2 n = O(\\log n)$, so search, insert, and delete are all\n$O(\\log n)$. Insertion rebalances with at most one of four rotation cases\n(LL, RR, LR, RL); deletion may rotate all the way to the root.\n",{"path":14934,"title":14935,"module":14919,"summary":14936},"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees","Balanced Search Trees","An ordinary BST can degrade to height $\\Theta(n)$; balanced search trees\nguarantee $h = O(\\log n)$ by maintaining invariants and repairing them after\nevery update. We meet rotations, the local restructuring primitive, then\nred-black trees, whose color invariants force logarithmic height, and finally\nB-trees, which trade tall-and-thin for short-and-wide to win on disk.\n",{"path":14938,"title":14939,"module":14919,"summary":14940},"\u002Falgorithms\u002Fdata-structures\u002Funion-find","Disjoint Sets (Union-Find)","The disjoint-set data structure tracks a partition of elements into groups,\nanswering \"are these two in the same group?\" and merging groups on demand. A\nforest of parent pointers, sped up by union by rank and path compression,\ndrives every operation to near-constant $O(\\alpha(n))$ amortized time — the\nstructure behind connectivity queries and Kruskal's minimum spanning tree.\n",{"path":14942,"title":14943,"module":14919,"summary":14944},"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees","Fenwick & Segment Trees","A prefix-sum array answers a range sum in $O(1)$ but pays $O(n)$ per update;\na plain array updates in $O(1)$ but pays $O(n)$ per range sum. Fenwick and\nsegment trees give us _both_ in $O(\\log n)$. The Fenwick (binary indexed) tree\nis a tiny array keyed by the low bit; the segment tree is a general balanced\ntree over canonical ranges that handles any associative aggregate and, with\nlazy propagation, range updates too.\n",{"path":14946,"title":14947,"module":14919,"summary":14948},"\u002Falgorithms\u002Fdata-structures\u002Fspatial-data-structures","Spatial Data Structures","A balanced BST orders keys on a line, but points in the plane have no single\nnatural order. Quadtrees subdivide space recursively into quadrants; k-d trees\nsplit on alternating coordinates at the median. Both make range and\nnearest-neighbour queries fast by carving the plane into boxes a query can\nprune away. Range trees nest a y-tree in an x-tree for fast orthogonal range\nreporting; interval trees index intervals to answer stabbing queries.\n",{"path":14950,"title":14951,"module":14919,"summary":14952},"\u002Falgorithms\u002Fdata-structures\u002Fskip-lists-and-probabilistic-structures","Skip Lists & Probabilistic Structures","Balanced trees achieve $O(\\log n)$ with rotations and invariants; randomization\ngives the same bound far more simply. A skip list is a layered linked list whose\nexpress lanes are chosen by coin flips, giving expected $O(\\log n)$ search and\ninsert with no rebalancing. A Bloom filter trades exactness for space: a bit\narray and a few hashes answer set membership with no false negatives and a\ntunable false-positive rate, but cannot delete.\n",{"path":14954,"title":14955,"module":14919,"summary":14956},"\u002Falgorithms\u002Fdata-structures\u002Fb-trees","B-Trees","When data lives on disk, the cost that dominates is block transfers, not\ncomparisons — and a binary tree of a billion keys is thirty reads deep. A\nB-tree of minimum degree $t$ is short and wide: $t-1$ to $2t-1$ keys per node,\nall leaves at one depth, height $O(\\log_t n)$. Insertion splits a full node on\nthe way down and pushes its median up; deletion borrows or merges to keep nodes\nfull enough. High fan-out is what minimizes disk I\u002FO.\n",{"path":14958,"title":14959,"module":14919,"summary":14960},"\u002Falgorithms\u002Fdata-structures\u002Fdata-stream-algorithms","Data-Stream Algorithms","Most of this course assumes data sits in fast memory, addressable at will.\nExternal sorting relaxed that to a re-readable disk. The streaming model goes\nfurther: items arrive one at a time, are seen once, and must be discarded, with\nonly sublinear, often polylogarithmic, memory. In exchange, the answers are\napproximate and probabilistic. We set up the model, then meet reservoir\nsampling for a uniform sample of an unknown-length stream and Morris counting\nfor an approximate tally in doubly-logarithmic space.\n",{"path":14962,"title":14963,"module":14919,"summary":14964},"\u002Falgorithms\u002Fdata-structures\u002Fstreaming-sketches","Streaming Sketches","Sampling and counting kept a random subset or a single approximate tally.\nSketches go further: fixed, tiny summaries that answer questions about a\nstream's frequencies. We meet the Count–Min sketch for point frequency\nestimation, Misra–Gries for heavy hitters, and HyperLogLog for distinct\ncounts, each trading a controlled error for space that never grows with the\nstream.\n",{"path":14966,"title":14967,"module":14968,"summary":14969},"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows","Two Pointers & Sliding Windows","Sequences & Strings","A family of array idioms that collapse an obvious $O(n^2)$ scan into a single\n$O(n)$ pass by maintaining an invariant as indices move. We meet two pointers\n(converging on a sorted array, and a fast\u002Fslow pair for in-place rewriting)\nand the sliding window (fixed and variable size, amortized $O(n)$). The\ncompanion lesson on prefix sums picks up where the window's positivity\nassumption fails.\n",{"path":14971,"title":14972,"module":14968,"summary":14973},"\u002Falgorithms\u002Fsequences\u002Fprefix-sums","Prefix Sums & Difference Arrays","Prefix sums precompute the running total once so that any range-sum query is a\nsingle subtraction, $P[r{+}1]-P[l]$, in $O(1)$. A hash map of prefix\nfrequencies then counts subarrays summing to $k$ in $O(n)$ — even with negative\nentries, where the sliding window fails. The difference-array dual turns $m$\nrange-adds into $O(m+n)$, and the whole idea lifts to 2-D rectangle sums by\ninclusion–exclusion.\n",{"path":14975,"title":14976,"module":14968,"summary":14977},"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks","Monotonic Stacks & Queues","A **monotonic stack** keeps its contents sorted by popping every element that\nwould break the order before each push — turning a family of \"previous\u002Fnext\ngreater (or smaller) element\" questions into a single $O(n)$ scan. We trace\nthe next-greater-element routine push by push and prove its amortized bound,\nfuse two such scans to measure the **largest rectangle in a histogram** in\nlinear time, extend the idea to a **monotonic deque** that streams the\n**sliding-window maximum** in $O(n)$, and use asymmetric tie-breaking to\ncount **subarray minimums** without double-counting duplicates.\n",{"path":14979,"title":14980,"module":14968,"summary":14981},"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer","Binary Search on the Answer","Binary search locates the boundary of a **monotone predicate** $p(x)$ in\n$O(\\log(\\text{range}))$ probes; sorted arrays are only one instance. We first\nestablish the half-open `while (lo \u003C hi)` template for $\\textsc{lower\\_bound}$\nand $\\textsc{upper\\_bound}$, then generalize to \"binary search on the answer\":\nwhenever feasibility is monotone in a numeric parameter, we binary search the\nparameter itself, calling a feasibility check at each step.\n",{"path":14983,"title":14984,"module":14968,"summary":14985},"\u002Falgorithms\u002Fsequences\u002Fstring-matching","String Matching: Naive & Rabin–Karp","Given a text $T$ of length $n$ and a pattern $P$ of length $m$, find every\noccurrence of $P$ in $T$. The naive scan costs $O(nm)$ and re-reads text it has\nalready seen. Rabin–Karp fixes the first inefficiency with a **rolling hash**:\neach length-$m$ window is summarized by one number, updated in $O(1)$ per slide,\nverified on a hash match to kill collisions, for expected $O(n+m)$. A companion\nlesson removes the re-reading entirely with KMP and the Z-function.\n",{"path":14987,"title":14988,"module":14968,"summary":14989},"\u002Falgorithms\u002Fsequences\u002Fkmp-and-z-function","String Matching: KMP & the Z-Function","Two linear-time matchers that beat Rabin–Karp's expected bound with a\nworst-case guarantee and no randomness. KMP precomputes a **failure function**\n$\\pi$ so a mismatch slides the pattern by $q-\\pi[q-1]$ and the text pointer\nnever backs up, for $O(n+m)$. The **Z-function** computes the longest\nprefix-match at every position via the Z-box, giving the same bound from a\ndifferent angle; the two encodings of a string's self-overlap convert freely.\n",{"path":14991,"title":14992,"module":14968,"summary":14993},"\u002Falgorithms\u002Fsequences\u002Ftries","Tries & Prefix Trees","A **trie** stores a set of strings in a tree keyed by _characters_, so that\ninsert, search, delete, and prefix-test all run in $O(L)$ time — the length\nof the key, _independent of how many keys are stored_. Shared prefixes are\nstored once, which makes tries the natural structure for autocomplete,\nwildcard dictionaries, board word-search, and — over the alphabet $\\{0,1\\}$\n— the maximum-XOR-pair problem. Radix (Patricia) trees compress the chains.\n",{"path":14995,"title":14996,"module":14968,"summary":14997},"\u002Falgorithms\u002Fsequences\u002Fsuffix-arrays-and-aho-corasick","Suffix Arrays, LCP & Aho–Corasick","A **suffix array** sorts all $n$ suffixes of a string, indexing every substring\nat once; built in $O(n\\log n)$, it locates a pattern by binary search in\n$O(m\\log n)$. Its companion **LCP array** (Kasai's $O(n)$ algorithm) counts\ndistinct substrings and finds the longest repeated substring. **Aho–Corasick**\ngeneralises KMP to a whole dictionary: a trie of patterns plus failure links\nscans the text once in $O(\\text{text} + \\text{matches})$ to report every\noccurrence of every pattern. Manacher's algorithm finds all palindromic\nsubstrings in $O(n)$.\n",{"path":14999,"title":15000,"module":15001,"summary":15002},"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal","Graph Representations and Traversal","Graphs","A graph captures _relationships_ — who connects to whom. We fix the\nvocabulary, weigh the two standard representations (adjacency list versus\nmatrix), then meet the single search skeleton behind everything that follows:\nWhatever-First-Search, and its breadth-first reading, which finds shortest\npaths by number of edges in $O(V + E)$.\n",{"path":15004,"title":15005,"module":15001,"summary":15006},"\u002Falgorithms\u002Fgraphs\u002Fdepth-first-search","Depth-First Search","Swap BFS's queue for a stack and the search plunges instead of fanning out.\nDepth-first search stamps every vertex with discovery and finish times that\nnest like parentheses, classifies each edge as tree, back, forward, or cross,\nand — through the back edge — decides in one pass whether a graph has a cycle.\nThese timestamps underpin topological sort, strong\nconnectivity, and the rest of this module.\n",{"path":15008,"title":15009,"module":15001,"summary":15010},"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc","Topological Sort and Strong Connectivity","Directed acyclic graphs model dependencies: tasks that must precede other\ntasks. A _topological order_ lays such a graph out in a line so every edge\npoints forward, and depth-first finish times yield one almost for free.\nWe then ask the harder question for graphs _with_ cycles: which vertices can\nreach each other? The answer is the strongly connected components, found by a\ntwo-pass DFS.\n",{"path":15012,"title":15013,"module":15001,"summary":15014},"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees","Minimum Spanning Trees","Given a weighted network, how do we connect everything as cheaply as possible?\nThe answer is a minimum spanning tree, and one lemma — the cut property —\njustifies _every_ correct MST algorithm. We prove the cut and cycle\nproperties by exchange arguments, use them to settle uniqueness, and meet the\noldest MST algorithm, Borůvka's, whose parallel component-merging rounds fall\nstraight out of the cut rule.\n",{"path":15016,"title":15017,"module":15001,"summary":15018},"\u002Falgorithms\u002Fgraphs\u002Fkruskal-and-prim","Kruskal and Prim","The two minimum-spanning-tree algorithms you will actually implement.\nKruskal grows a forest edge by edge, cheapest first, using a union-find\nstructure to reject cycle-closing edges; Prim grows one tree outward from a\nroot with a priority queue, exactly Dijkstra rekeyed by attachment cost. Both\ntraced in full on a nine-town graph, with the edge cases, the bottleneck\nproperty, and where each one wins.\n",{"path":15020,"title":15021,"module":15001,"summary":15022},"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths","Shortest Paths","Finding the cheapest route through a weighted network is one of the most-used\nalgorithms in computing, and a single operation — _relaxation_ — underlies\nevery method. We build the primitive, prove the triangle inequality and\noptimal substructure that make it work, then meet Dijkstra's algorithm: the\ngreedy solution for non-negative weights, traced vertex by vertex, with the\ncut argument that proves each extraction is final.\n",{"path":15024,"title":15025,"module":15001,"summary":15026},"\u002Falgorithms\u002Fgraphs\u002Fall-pairs-and-negative-weights","All-Pairs and Negative Weights","Dijkstra's greedy schedule breaks the moment an edge goes negative. We give it\nup for dynamic programming: Bellman-Ford derived as a DP over edge budgets,\nwith its negative-cycle detector, and Floyd-Warshall computing the distance\nbetween _every_ pair of vertices via a DP over which vertices a path may pass\nthrough. We close with Johnson's algorithm and the arbitrage problems that\nnegative cycles encode.\n",{"path":15028,"title":15029,"module":15001,"summary":15030},"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow","Network Flow","How much can flow through a network from source to sink? We build flow\nnetworks with capacity and conservation constraints, increase a flow by\npushing along augmenting paths in the residual graph, and see how reverse\nedges let the algorithm undo earlier routing. Ford-Fulkerson and its BFS refinement\nEdmonds-Karp find a maximum flow, traced end to end on a worked network.\n",{"path":15032,"title":15033,"module":15001,"summary":15034},"\u002Falgorithms\u002Fgraphs\u002Fmax-flow-min-cut","Max-Flow Min-Cut and Applications","Why is the flow found when no augmenting path remains actually optimal? The\nanswer is a duality theorem: the maximum flow equals the minimum cut. We prove\nit, read the minimum cut off the final residual graph, then derive bipartite\nmatching and a catalog of modeling reductions from the flow\nabstraction — before touching the modern algorithms that supersede\nEdmonds-Karp.\n",{"path":15036,"title":15037,"module":15001,"summary":15038},"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points","Bridges & Articulation Points","A **bridge** is an edge whose removal disconnects the graph; an **articulation\npoint** is a vertex whose removal does. Both are single points of failure in a\nnetwork. A single depth-first search computes discovery times and **low-links**,\nand two local criteria — $low[v] > disc[u]$ for bridges, $low[v] \\ge disc[u]$\nfor cut vertices — find them all in $O(V+E)$.\n",{"path":15040,"title":15041,"module":15001,"summary":15042},"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor","Lowest Common Ancestor & Binary Lifting","Given a rooted tree, the lowest common ancestor of $u$ and $v$ is the deepest\nnode that is an ancestor of both. A naive walk answers one query in $O(h)$;\n**binary lifting** precomputes the $2^k$-th ancestor of every node in\n$O(n\\log n)$, then answers $k$-th-ancestor and LCA queries in $O(\\log n)$ each.\nWe derive both jumps, apply them to tree distance, and compare against the\nEuler-tour + RMQ and Tarjan offline alternatives.\n",{"path":15044,"title":15045,"module":15001,"summary":15046},"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat","2-SAT via Implication Graphs","A boolean formula whose every clause has exactly two literals can be solved in\n_linear_ time — even though its three-literal cousin is NP-complete. The idea\nis to read each clause as a pair of implications, build a directed graph on the\n$2n$ literals, and ask a question we already know how to answer: which literals\nshare a strongly connected component? The formula is satisfiable iff no variable\nlands in the same SCC as its own negation, and the SCCs' topological order\nyields a satisfying assignment for free.\n",{"path":15048,"title":15049,"module":15001,"summary":15050},"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours","Eulerian Tours","An **Eulerian tour** uses every _edge_ of a graph exactly once. We give the\nexact parity and balance conditions under which one exists (even degree\nfor undirected graphs, in-degree equal to out-degree for directed) and Hierholzer's\n$O(E)$ algorithm that constructs one by splicing closed sub-tours. We contrast\nthis sharply with the **Hamiltonian** problem (visit every _vertex_ once),\nwhich is NP-complete: visiting edges is easy, visiting vertices is hard.\n",{"path":15052,"title":15053,"module":15001,"summary":15054},"\u002Falgorithms\u002Fgraphs\u002Fbipartite-matching","Bipartite Matching","Pairing applicants to jobs, students to slots, files to disks: all are\n**maximum bipartite matching**. We solve it combinatorially with **augmenting\npaths** (Kuhn's algorithm, $O(VE)$), speed it up to $O(E\\sqrt V)$ with\n**Hopcroft–Karp**, and uncover the structure behind it — **König's theorem**\n(max matching equals min vertex cover) and **Hall's marriage theorem** (a\nperfect matching exists iff every set has enough neighbors).\n",{"path":15056,"title":15057,"module":15058,"summary":15059},"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method","The Greedy Method","Greedy Algorithms","A greedy algorithm builds a solution one locally-best choice at a time and\nnever looks back. We isolate the two properties that make this work — the\ngreedy-choice property and optimal substructure — prove the canonical\nactivity-selection algorithm correct with an exchange argument, watch greedy\nfail on the 0\u002F1 knapsack, and glimpse matroids as the theory\nthat says exactly when the greedy method is optimal.\n",{"path":15061,"title":15062,"module":15058,"summary":15063},"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals","Scheduling & Interval Partitioning","Three classic scheduling problems all yield to greedy algorithms — and all\nthree turn on a single design decision: which key to sort by. Interval\nscheduling sorts by **finish** time to pack the most compatible jobs;\ninterval partitioning sorts by **start** time and proves the rooms needed\nequal the maximum overlap **depth**; minimizing maximum lateness sorts by\n**deadline** and is justified by an adjacent-swap exchange argument.\n",{"path":15065,"title":15066,"module":15058,"summary":15067},"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes","Huffman Codes","Huffman coding builds a\nprovably optimal prefix-free binary code by repeatedly merging the two least\nfrequent symbols. We develop prefix-free codes as binary trees, give the\nalgorithm with a priority queue, build a Huffman tree from example\nfrequencies, prove optimality with the same greedy-choice-plus-substructure\nargument, and pin the running time at $O(n\\log n)$.\n",{"path":15069,"title":15070,"module":15058,"summary":15071},"\u002Falgorithms\u002Fgreedy\u002Fmatroids","Matroids & Exchange Arguments","The capstone of the greedy module: _why_ and _when_ a greedy algorithm is\nprovably optimal. We recap the two correctness templates — **greedy-stays-ahead**\nand the **exchange argument** — then meet the **matroid** $M=(S,\\mathcal{I})$, an\nabstraction whose **exchange property** is the structure greedy needs.\nThe matroid–greedy theorem says sorting by weight and taking what stays\nindependent yields a maximum-weight basis _if and only if_ the structure is a\nmatroid. Kruskal's MST is the canonical instance; 0\u002F1 knapsack and TSP are the\ncanonical failures.\n",{"path":15073,"title":15074,"module":15058,"summary":15075},"\u002Falgorithms\u002Fgreedy\u002Fstable-matching","Stable Matching (Gale–Shapley)","Two sides each rank the other; we want a matching with no **blocking pair** — no\ntwo participants who both prefer each other to their assigned partners. The\n**Gale–Shapley deferred-acceptance** algorithm has proposers propose in\npreference order while receivers tentatively hold the best offer so far. We prove\nit terminates in $\\O(n^2)$ proposals, returns a **perfect** matching, and that\nthe matching is **stable**. A sharper asymmetry follows: deferred acceptance is\n**proposer-optimal** and **receiver-pessimal**, the structural fact behind the\nresidency match and school-choice systems.\n",{"path":15077,"title":15078,"module":15079,"summary":15080},"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples","Principles of Dynamic Programming","Dynamic Programming","Dynamic programming is recursion with memory: when a recursive solution\nre-solves the same subproblems again and again, we solve each one once and\nstore the answer. We identify the two structural conditions that make this\nwork — overlapping subproblems and optimal substructure — contrast top-down\nmemoization with bottom-up tabulation, and distil the whole method into a\nfive-step recipe.\n",{"path":15082,"title":15083,"module":15079,"summary":15084},"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp","Sequence Alignment & LCS","Two strings can be compared by how much of one appears inside the\nother. The longest common subsequence (LCS) and edit distance are the two\nclassic measures, and they are the _same_ dynamic program with different\ncosts. We derive the LCS recurrence by examining the last characters, fill a\nworked DP table, reconstruct the subsequence, and then show edit distance as\nthe identical $\\Theta(mn)$ pattern.\n",{"path":15086,"title":15087,"module":15079,"summary":15088},"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence","Longest Increasing Subsequence","Given a sequence of numbers, how long is its longest strictly increasing\nsubsequence? A first dynamic program indexes subproblems by the element each\nsubsequence _ends at_, giving an $O(n^2)$ solution with parent-pointer\nreconstruction. A sharper idea, the patience-sorting _tails_ array searched by\nbinary search, drops the time to $O(n\\log n)$. We then fold in the\nvariants: non-decreasing, counting, Russian-doll envelopes, and bitonic.\n",{"path":15090,"title":15091,"module":15079,"summary":15092},"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack","Knapsack & Subset Problems","We start from $\\textsc{Subset-sum}$ — does some sublist hit a target $t$? — and its\ninclude\u002Fexclude recurrence over a boolean table $A(i, u)$, then bolt on values\nto get 0\u002F1 knapsack as the same machine with $\\lor$ promoted to $\\max$. We fill\nboth tables, recover the chosen items, and confront the surprise that the\n$\\Theta(nt)$ running time is only _pseudo-polynomial_ — exponential in the bit\nlength $b$, and unimprovable unless $\\mathrm{P}=\\mathrm{NP}$ since subset-sum is\n$\\textsc{NP-complete}$. The fractional variant reveals the sharp line between greedy\nand dynamic programming.\n",{"path":15094,"title":15095,"module":15079,"summary":15096},"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded","Coin Change & Unbounded Knapsack","The previous lesson let each item be taken at most once. Drop that cap — items\nmay be reused _any number of times_ — and the 0\u002F1 knapsack collapses from a\ntwo-dimensional table to a one-dimensional one, because there is no longer a\nprefix of \"already-used\" items to track. We meet **unbounded knapsack**, then\nits most famous instance, **coin change**: the minimum-coins recurrence\n$C[a] = 1 + \\min_c C[a-c]$, and the counting variant where the _order of the\nloops_ decides whether you count unordered combinations or ordered sequences —\nthe classic bug. Greed fails in general but works for canonical coin systems.\n",{"path":15098,"title":15099,"module":15079,"summary":15100},"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp","Interval DP","Many problems ask for the best way to combine a contiguous range of items, and\nthe answer is a dynamic program over subintervals $[i,j]$ that chooses a split\npoint $k$. We derive the pattern from matrix-chain multiplication —\nparenthesising a product to minimize scalar multiplications in $O(n^3)$ — distil\nit into a reusable template filled by increasing interval length, and then meet\nits sharpest variant: the \"last operation\" trick behind Burst Balloons and\ncutting a stick, where fixing the _last_ move (not the first) makes the two\nsides independent.\n",{"path":15102,"title":15103,"module":15079,"summary":15104},"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp","Dynamic Programming on Trees","When the subproblems of a dynamic program are _rooted subtrees_, a single\npost-order DFS solves the whole thing in $O(n)$: each node combines the\nalready-computed answers of its children. We meet the archetype — maximum-weight\nindependent set on a tree — then the \"path through a node\" pattern behind tree\ndiameter and maximum path sum, and finally **rerooting**, which computes a\nper-node answer for _every_ node as root in $O(n)$ with two passes.\n",{"path":15106,"title":15107,"module":15079,"summary":15108},"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp","Bitmask DP","When a subproblem depends not on an index or a prefix but on _which subset_ of\na small ground set has been used, we can encode that subset as the bits of an\ninteger and index a DP table by it. With $n \\le \\sim 20$ the $2^n$ subsets fit\nin a table, turning $\\Theta(n!)$ brute force into $O(2^n \\cdot \\text{poly}(n))$.\nWe meet the bit tricks, the Held–Karp TSP archetype, assignment by mask,\nsubset-sum partitioning, and submask enumeration with its $3^n$ bound.\n",{"path":15110,"title":15111,"module":15079,"summary":15112},"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations","DP Optimizations","A correct DP recurrence is only half the battle; its naive evaluation is often\na factor of $n$ slower than necessary. This capstone surveys five techniques,\nmonotonic-queue, the convex hull trick, divide-and-conquer optimization,\nKnuth's optimization, and SOS DP, that each exploit _structure in the\ntransition_ (a sliding window, linear costs, monotone optimal splits, the\nquadrangle inequality, or subset lattices) to shave an $O(n)$, $O(\\log n)$, or\nworse factor off the running time.\n",{"path":15114,"title":15115,"module":15079,"summary":15116},"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs","Dynamic Programming on Graphs","Many graph algorithms are dynamic programs: the subproblem is the\n_best value reachable under a restricted resource_ — intermediate vertices\nallowed, edges allowed, or a topological prefix — and edge _relaxation_ is the\nDP transition. We frame Floyd–Warshall as the archetype ($O(V^3)$ all-pairs\nshortest paths), Bellman–Ford as a DP over path length (the at-most-$K$-stops\nvariant), DAG-DP in topological order ($O(V+E)$), and Warshall's transitive\nclosure as the boolean analog.\n",{"path":15118,"title":15119,"module":15079,"summary":15120},"\u002Falgorithms\u002Fdynamic-programming\u002Fdigit-and-probability-dp","Digit & Probability DP","Two DP patterns with unusual state. _Digit DP_ counts the\nintegers in a range $[L, R]$ that satisfy a digit constraint by walking the\ndecimal places of the bound, carrying a _tight_ flag that marks when the prefix\nstill equals the bound's. _Probability\u002FExpectation DP_ replaces \"best value\" with\n\"expected value,\" using linearity of expectation to make each state an\naverage over its weighted transitions — the natural tool for expected step\ncounts and absorbing Markov chains.\n",{"path":15122,"title":15123,"module":15124,"summary":15125},"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals","Backtracking: Subsets, Permutations & Combinations","Backtracking & Search","Backtracking builds a solution one choice at a time and abandons a partial\nsolution the moment it cannot be completed, exploring a state-space tree by\ndepth-first search. We meet the universal choose\u002Fexplore\u002Fun-choose template,\nderive the canonical enumerations — subsets ($2^n$), permutations ($n!$), and\ncombinations ($\\binom{n}{k}$) — handle duplicate elements by skipping equal\nsiblings, and see how pruning turns an exponential search into a tractable one.\n",{"path":15127,"title":15128,"module":15124,"summary":15129},"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search","Constraint Search: N-Queens & Sudoku","Many hard puzzles are **constraint satisfaction problems**: assign each\nvariable a value from its domain so that every constraint holds. Backtracking\nsolves them by assigning variables one at a time and rejecting a partial\nassignment the instant a constraint breaks. We make the rejection cheap — $O(1)$\nconflict checks for N-Queens via column and diagonal sets — and prune harder\nwith **forward checking**, **MRV** ordering, and **constraint propagation**,\nwhich is what lets an exponential search actually finish.\n",{"path":15131,"title":15132,"module":15124,"summary":15133},"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound","Branch & Bound and Meet in the Middle","Plain backtracking prunes a search tree by _feasibility_; for _optimization_\nproblems we can prune far more aggressively by _value_. **Branch and bound**\nkeeps the best complete solution found so far and discards any partial solution\nwhose optimistic bound cannot beat it. **Meet in the middle** splits the\ninstance in two, enumerates each half, and recombines by binary search — turning\n$2^n$ into $O(2^{n\u002F2}\\,n)$ and pushing exact search out to $n \\approx 40$.\n",{"path":15135,"title":15136,"module":15124,"summary":15137},"\u002Falgorithms\u002Fbacktracking\u002Fgraph-backtracking","Graph Backtracking: m-Coloring & Hamiltonian Paths","Two famous graph problems have no known efficient algorithm, yet yield cleanly\nto backtracking with the right pruning. **Graph $m$-coloring** assigns one of\n$m$ colors to each vertex so no edge is monochromatic; we color vertices in turn\nand reject a color the instant a neighbor already has it. **Hamiltonian\npath\u002Fcycle** asks for a walk visiting every vertex exactly once; we extend a path\ngreedily and backtrack on dead ends. Both are NP-complete, so the worst case is\nexponential — but feasibility pruning and good vertex ordering make real\ninstances tractable, and the contrast with the easy Eulerian condition shows why.\n",{"path":15139,"title":15140,"module":15141,"summary":15142},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics","Number Theory: GCD & Modular Arithmetic","Mathematical Algorithms","This lesson opens the mathematical-algorithms module with the bedrock of\ncomputational number theory. We prove Euclid's recurrence\n$\\gcd(a,b)=\\gcd(b,\\,a\\bmod b)$ and its $O(\\log\\min(a,b))$ running time, extend\nit to recover Bézout coefficients $x,y$ with $ax+by=\\gcd(a,b)$, and build\nmodular arithmetic on residue classes — including when a modular inverse\n$a^{-1}\\bmod m$ exists and how to compute it.\n",{"path":15144,"title":15145,"module":15141,"summary":15146},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality","Modular Exponentiation & Primality","Computing $a^n \\bmod m$ naively costs $n$ multiplications; **repeated squaring**\ndoes it in $O(\\log n)$ by reading the bits of the exponent. We use this routine\nto state **Fermat's little theorem** (and the modular inverse it gives), then to\ntest primality — trial division, the probabilistic **Fermat** and **Miller–Rabin**\ntests, and the deterministic witness set that settles primality for every 64-bit\nnumber.\n",{"path":15148,"title":15149,"module":15141,"summary":15150},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization","Sieves & Factorization","The previous lesson tested one number for primality; here we ask for _all_\nprimes up to $n$ at once. The **sieve of Eratosthenes** cross-cuts composites\nin $O(n\\log\\log n)$, and a **linear sieve** does it in $O(n)$ while recording\neach number's **smallest prime factor**, which then factors any $x \\le n$ in\n$O(\\log x)$. From a factorization $x = \\prod p_i^{e_i}$ the multiplicative\nfunctions $\\tau$, $\\sigma$, and Euler's totient $\\varphi$ fall out immediately.\n",{"path":15152,"title":15153,"module":15141,"summary":15154},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics","Combinatorics & Counting","Counting is the arithmetic of finite sets. We build up from permutations\n$n!$ and combinations $\\binom{n}{k}$, prove Pascal's rule by a bijection,\nand count multisets with stars and bars. The practical core is computing\n$\\binom{n}{k}\\bmod p$ in $O(1)$ from precomputed factorials and inverse\nfactorials. We close with inclusion–exclusion and the Chinese Remainder\nTheorem, both of which lean on the modular inverse from the previous lesson.\n",{"path":15156,"title":15157,"module":15141,"summary":15158},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmatrix-exponentiation","Matrix Exponentiation","A linear recurrence advances by a fixed linear rule, so one step is a\n**matrix–vector** product and $n$ steps are a **matrix power**. Packaging\nFibonacci, and any $k$-term recurrence, into a transition matrix lets us jump\nto the $n$-th term in $O(k^3 \\log n)$ by **exponentiation by squaring** — the\nsame doubling trick from modular exponentiation, now over matrices.\n",{"path":15160,"title":15161,"module":15141,"summary":15162},"\u002Falgorithms\u002Fmathematical-algorithms\u002Ffast-fourier-transform","Fast Fourier Transform","Multiplying two degree-$n$ polynomials by the schoolbook method costs\n$\\Theta(n^2)$. Evaluating them at the **$n$-th roots of unity** turns\nmultiplication into pointwise products, and the **Cooley–Tukey FFT** computes\nall those evaluations in $\\Theta(n\\log n)$ by splitting even and odd\ncoefficients. The inverse FFT interpolates back, giving $\\Theta(n\\log n)$\npolynomial and big-integer multiplication.\n",{"path":15164,"title":15165,"module":15141,"summary":15166},"\u002Falgorithms\u002Fmathematical-algorithms\u002Fgradient-descent","Numerical Optimization and Gradient Descent","Most of this course chases **discrete** optima over finite structures; here the\nsearch space is **continuous** and the objective $f$ is differentiable. The\n**gradient** points uphill, so stepping against it —\n$x_{t+1} = x_t - \\eta\\,\\nabla f(x_t)$ — walks downhill. **Convexity** makes every\nlocal minimum global; for convex $L$-smooth $f$ gradient descent converges at\n$O(1\u002Ft)$, and **geometrically** under strong convexity. **Newton's method** uses\nthe Hessian for local quadratic convergence, and **bisection** is the robust\nbracketing fallback for roots.\n",{"path":17,"title":15168,"module":13913,"summary":15169},"Geometric Primitives & Orientation","Computational geometry is built on a single reliable primitive — the\n**orientation test**, a sign of a cross product that tells whether three points\nturn left, right, or lie collinear. From points-as-vectors and the dot and\ncross products we derive orientation, segment intersection, the shoelace area\nformula, and point-in-polygon tests, keeping all arithmetic **exact and\ninteger** so that no floating-point rounding can corrupt a sign.\n",{"path":22,"title":15171,"module":13913,"summary":15172},"Convex Hull","The convex hull is the smallest convex polygon enclosing a point set — the\nrubber band snapped around the nails. We build it with Andrew's monotone chain,\nsorting by $(x,y)$ and sweeping a lower and upper hull while popping any\nnon-left turn via the orientation primitive, in $O(n\\log n)$. A reduction from\nsorting shows that bound is optimal, and the hull yields diameter, smallest\nenclosing rectangle, and more through rotating calipers.\n",{"path":27,"title":15174,"module":13913,"summary":15175},"Sweep-Line Algorithms","The plane-sweep paradigm turns a static $2$-D geometry problem into a dynamic\n$1$-D ordered-set problem: a vertical line sweeps left to right, stopping at an\n$x$-sorted **event queue** while a balanced-BST **status structure** tracks the\nobjects it currently crosses, ordered by $y$. We derive Bentley–Ottmann segment\nintersection in $O((n+k)\\log n)$, recover closest-pair in $O(n\\log n)$, and\nreduce skyline, rectangle-area, and overlap problems to $\\pm1$ event sweeps.\n",{"path":13914,"title":5,"module":13913,"summary":13944},{"path":15178,"title":15179,"module":15180,"summary":15181},"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions","P, NP, and Reductions","Intractability","Most problems we have met so far have fast algorithms. A vast and important\nfamily seemingly does not. This lesson builds the vocabulary for that\ndivide: decision problems, the class $\\mathsf{P}$ of problems we can solve\nquickly, the class $\\mathsf{NP}$ of problems whose solutions we can _check_\nquickly, and polynomial-time reductions, the tool that lets us compare the\ndifficulty of two problems without solving either.\n",{"path":15183,"title":15184,"module":15180,"summary":15185},"\u002Falgorithms\u002Fintractability\u002Fnp-completeness","NP-Completeness","Some problems in $\\mathsf{NP}$ are universally hardest: every other problem\nin $\\mathsf{NP}$ reduces to them. This lesson defines $\\mathsf{NP}$-hard and\n$\\mathsf{NP}$-complete, states the Cook–Levin theorem that anchors the\ntheory on **SAT**, walks the web of reductions that grows from it, and gives\nthe four-step recipe for proving a brand-new problem $\\mathsf{NP}$-complete.\n",{"path":15187,"title":15188,"module":15180,"summary":15189},"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness","Coping with NP-Hardness","An $\\mathsf{NP}$-hardness proof rules out an exact polynomial-time algorithm,\nnot the need for answers. This lesson surveys four practical responses to\nhardness: approximation algorithms with a provable ratio (worked through a\n2-approximation for vertex cover), heuristics and local search, exact\nexponential methods like branch and bound, and exploiting special structure\nin the instances you actually face.\n",{"path":15191,"title":15192,"module":15180,"summary":15193},"\u002Falgorithms\u002Fintractability\u002Fapproximation-algorithms","Approximation Algorithms","When a problem is $\\mathsf{NP}$-hard we can still ask for a solution\nprovably close to optimal. This lesson makes the approximation ratio\n$\\rho$ precise, separates absolute from relative guarantees, and proves the\nratios of four classic algorithms: greedy set cover ($H_n \\approx \\ln n$),\nthe MST-doubling $2$-approximation for metric TSP, load balancing, and the\nknapsack FPTAS. It closes with the hierarchy PTAS \u002F FPTAS and the limits of\ninapproximability.\n",{"path":15195,"title":15196,"module":6,"summary":6},"\u002Falgorithms","Algorithms",{"path":15198,"title":15199,"module":15200,"summary":15201},"\u002Fcalculus\u002Flimits-and-continuity\u002Ffunctions-and-models","Functions and Mathematical Models","Limits and Continuity","A function assigns exactly one output to each input and can be presented four ways: verbally, numerically, graphically, or by a formula. The elementary families — linear, polynomial, power, rational, trigonometric, exponential — model most elementary phenomena, and transformation, combination, and composition build every other function from them.\n",{"path":15203,"title":15204,"module":15200,"summary":15205},"\u002Fcalculus\u002Flimits-and-continuity\u002Fthe-limit-of-a-function","The Limit of a Function","The tangent and velocity problems both ask for a value a ratio approaches but never reaches — the limit. Its intuitive two-sided form splits into one-sided limits that must agree; a limit fails to exist when they disagree or when the function grows without bound, the latter producing a vertical asymptote.\n",{"path":15207,"title":15208,"module":15200,"summary":15209},"\u002Fcalculus\u002Flimits-and-continuity\u002Flimit-laws-and-the-precise-definition","Limit Laws and the ε–δ Definition","The Limit Laws reduce a limit to arithmetic on simpler limits, and direct substitution settles polynomials and rational functions outright. The 0\u002F0 forms that resist substitution yield to algebra or the Squeeze Theorem, and the ε–δ definition makes \"arbitrarily close\" precise as a pair of quantified inequalities.\n",{"path":15211,"title":15212,"module":15200,"summary":15213},"\u002Fcalculus\u002Flimits-and-continuity\u002Fcontinuity","Continuity","A function is continuous at a point when its limit there equals its value, so the graph has no break. Continuity fails in three geometric ways; it is closed under arithmetic and composition, so the elementary families and their combinations are continuous; and on a closed interval it forces the Intermediate Value Theorem, which locates roots.\n",{"path":15215,"title":15216,"module":15217,"summary":15218},"\u002Fcalculus\u002Fderivatives\u002Fthe-derivative-and-rates-of-change","The Derivative and Rates of Change","Derivatives","A single limit with three readings: the slope of the tangent line, the instantaneous velocity of a moving object, and the rate of change of one quantity with respect to another. Built from the difference quotient, extended from a value at one point to a function of x, and undefined exactly where a corner, jump, or vertical tangent appears.\n",{"path":15220,"title":15221,"module":15217,"summary":15222},"\u002Fcalculus\u002Fderivatives\u002Fdifferentiation-rules-and-the-chain-rule","Differentiation Rules and the Chain Rule","Computing every derivative from the limit definition is tedious. A short list of rules — power, constant multiple, sum, product, quotient — differentiates any polynomial or rational function by inspection. The trigonometric derivatives follow from one limit, and the chain rule extends everything to composite functions by multiplying rates along the composition.\n",{"path":15224,"title":15225,"module":15217,"summary":15226},"\u002Fcalculus\u002Fderivatives\u002Fimplicit-differentiation-and-related-rates","Implicit Differentiation and Related Rates","Not every curve is the graph of y = f(x). Implicit differentiation finds a slope from an equation in x and y directly, treating y as an unknown function and differentiating both sides. The same chain-rule idea drives related rates, where one measured rate of change forces another through a geometric constraint, and interprets the derivative as a rate across the sciences.\n",{"path":15228,"title":15229,"module":15217,"summary":15230},"\u002Fcalculus\u002Fderivatives\u002Flinear-approximations-and-differentials","Linear Approximations and Differentials","A differentiable curve looks like its tangent line under enough magnification, so the tangent is a usable stand-in for the function near the point of contact. The linear approximation and its linearization, written in the language of differentials dy and dx, estimate both function values and the measurement error propagated into a computed quantity.\n",{"path":15232,"title":15233,"module":15234,"summary":15235},"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fextrema-and-the-mean-value-theorem","Extrema and the Mean Value Theorem","Applications of Derivatives","Absolute and local extrema, the Extreme Value Theorem that guarantees them, and Fermat's Theorem pinning candidates to critical numbers. The Closed Interval Method turns the search for extrema into a finite checklist. Rolle's Theorem and the Mean Value Theorem then connect a function's values to its derivative, giving the tool that most of differential calculus rests on.\n",{"path":15237,"title":15238,"module":15234,"summary":15239},"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fhow-derivatives-shape-a-graph","How Derivatives Shape a Graph","The sign of the first derivative fixes where a function rises and falls, and a sign change identifies each local extremum through the First Derivative Test. The second derivative sets concavity and inflection points and gives a faster Second Derivative Test. Limits at infinity describe end behavior and the horizontal asymptotes a curve settles toward.\n",{"path":15241,"title":15242,"module":15234,"summary":15243},"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fcurve-sketching-and-optimization","Curve Sketching and Optimization","A checklist that synthesizes domain, symmetry, asymptotes, monotonicity, extrema, and concavity into a hand sketch of any function, plus the slant asymptote for rational functions whose degree exceeds the denominator's. The same extremum machinery, applied to a word problem, becomes the optimization template: model one quantity, reduce it to a function of a single variable, and find its absolute extremum.\n",{"path":15245,"title":15246,"module":15234,"summary":15247},"\u002Fcalculus\u002Fapplications-of-derivatives\u002Fnewtons-method-and-antiderivatives","Newton's Method and Antiderivatives","Newton's method solves $f(x) = 0$ by repeatedly replacing the curve with its tangent line and jumping to the tangent's root, converging fast when it works and diverging when the derivative is small. Antiderivatives reverse differentiation: every antiderivative of a function differs from another by a constant, so the general antiderivative is a family of parallel curves, pinned to one by an initial condition.\n",{"path":15249,"title":15250,"module":15251,"summary":15252},"\u002Fcalculus\u002Fintegrals\u002Farea-and-the-definite-integral","Area and the Definite Integral","Integrals","The area under a curve is defined as a limit of sums of rectangle areas. The same limit — a Riemann sum taken as the mesh shrinks to zero — defines the definite integral, a single number measuring signed area, total distance, and every accumulated quantity built the same way. Its properties, comparison bounds, and reading as net area follow directly from the limit.\n",{"path":15254,"title":15255,"module":15251,"summary":15256},"\u002Fcalculus\u002Fintegrals\u002Fthe-fundamental-theorem-of-calculus","The Fundamental Theorem of Calculus","Differentiation and integration are inverse operations. Part 1 says the derivative of an area-accumulation function is the integrand; Part 2 says a definite integral equals the change in any antiderivative across the interval. Together they replace limits of Riemann sums with antiderivative lookups, define the indefinite integral, and give the Net Change Theorem for rates.\n",{"path":15258,"title":15259,"module":15251,"summary":15260},"\u002Fcalculus\u002Fintegrals\u002Fthe-substitution-rule","The Substitution Rule","Substitution runs the Chain Rule backward: spotting an inner function whose derivative also appears in the integrand lets the variable change to $u$ and collapse a composite integral to a simple one. The rule applies to indefinite and definite integrals, with two ways to handle the limits, and it yields the symmetry shortcuts that double even integrands and vanish odd ones.\n",{"path":15262,"title":15263,"module":15264,"summary":15265},"\u002Fcalculus\u002Fapplications-of-integration\u002Fareas-and-volumes","Areas Between Curves and Volumes","Applications of Integration","A definite integral computes any quantity that a limit of Riemann sums approximates. Applied to geometry it gives the area between two curves and the volume of a solid: by cross-sections, by disks and washers when the region is revolved, and by cylindrical shells when inverting the boundary is awkward.\n",{"path":15267,"title":15268,"module":15264,"summary":15269},"\u002Fcalculus\u002Fapplications-of-integration\u002Fwork-average-value-and-arc-length","Work, Average Value, Arc Length, and Surface Area","The work done by a force that varies with position, the average value of a function and the Mean Value Theorem it satisfies, the length of a curve, and the area of a surface swept out by revolving that curve. Each is a limit of Riemann sums, hence a definite integral.\n",{"path":15271,"title":15272,"module":15264,"summary":15273},"\u002Fcalculus\u002Fapplications-of-integration\u002Fphysics-economics-and-probability","Applications to Physics, Economics, and Probability","Definite integrals in physics, economics, and statistics: the force a fluid exerts on a submerged plate, the balance point of a plane region, the money consumers save at a market price, and the probability that a continuous random variable lands in an interval, together with its mean.\n",{"path":15275,"title":15276,"module":15277,"summary":15278},"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Finverse-functions-logarithms-and-exponentials","Inverse Functions, Logarithms, and Exponentials","Exponential, Logarithmic, and Inverse Functions","A one-to-one function has an inverse that reverses it, with a graph mirrored across y = x and a derivative given by the reciprocal-slope rule. The exponential e^x is its own derivative and the natural logarithm has derivative 1\u002Fx; logarithmic differentiation turns products, quotients, and variable powers into sums.\n",{"path":15280,"title":15281,"module":15277,"summary":15282},"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Fgrowth-decay-inverse-trig-and-hyperbolic-functions","Growth, Decay, Inverse Trigonometric, and Hyperbolic Functions","Any quantity whose rate of change is proportional to its size grows or decays exponentially, the single equation y' = ky behind populations, radioactive decay, cooling, and continuously compounded interest. The inverse trigonometric functions have algebraic derivatives, and the hyperbolic functions, built from e^x and e^{-x}, describe the hanging cable.\n",{"path":15284,"title":15285,"module":15277,"summary":15286},"\u002Fcalculus\u002Fexponential-logarithmic-and-inverse-functions\u002Flhospitals-rule","Indeterminate Forms and l'Hospital's Rule","When a limit produces 0\u002F0 or infinity over infinity, the value is undetermined by the forms alone. l'Hospital's Rule resolves both by replacing the ratio of functions with the ratio of their derivatives. Products, differences, and powers reduce to a quotient the rule can handle, and repeated use ranks the growth of logarithms, powers, and exponentials.\n",{"path":15288,"title":15289,"module":15290,"summary":15291},"\u002Fcalculus\u002Ftechniques-of-integration\u002Fintegration-by-parts","Integration by Parts","Techniques of Integration","The product rule for derivatives reverses into integration by parts, trading the integral of $u\\,\\d v$ for the integral of $v\\,\\d u$ whenever the second is easier. The LIATE ordering fixes which factor to differentiate. Standard cases: a polynomial against a transcendental factor, repeated parts, cyclic integrals that solve for themselves, and reduction formulas that peel an exponent down by recursion.\n",{"path":15293,"title":15294,"module":15290,"summary":15295},"\u002Fcalculus\u002Ftechniques-of-integration\u002Ftrigonometric-integrals-and-substitution","Trigonometric Integrals and Substitution","Two related techniques. Trigonometric integrals evaluate powers and products of sine, cosine, tangent, and secant by splitting off one factor and converting the rest with a Pythagorean identity, or by dropping even powers with half-angle formulas. Trigonometric substitution runs the idea in reverse: replace x by a sine, tangent, or secant to clear a radical, integrate, then read the answer back off a reference triangle.\n",{"path":15297,"title":15298,"module":15290,"summary":15299},"\u002Fcalculus\u002Ftechniques-of-integration\u002Fpartial-fractions-and-integration-strategy","Partial Fractions and Integration Strategy","Any rational function integrates in closed form: factor the denominator, split the fraction into simple pieces by partial fractions, and integrate each piece as a logarithm or an arctangent. Four denominator cases exhaust the possibilities. A four-step strategy then sorts an arbitrary integrand by its shape to the technique that fits it, and a short catalog records elementary functions whose antiderivatives are not elementary.\n",{"path":15301,"title":15302,"module":15290,"summary":15303},"\u002Fcalculus\u002Ftechniques-of-integration\u002Fapproximate-and-improper-integrals","Approximate and Improper Integrals","Two definite integrals the Fundamental Theorem cannot reach. With no antiderivative available, the Midpoint, Trapezoidal, and Simpson rules approximate the integral from sample values, each carrying a provable error bound. With an infinite interval or an integrand that blows up, the improper integral is defined as a limit that either converges or diverges; the Comparison Test settles which without evaluating it.\n",{"path":15305,"title":15306,"module":15307,"summary":15308},"\u002Fcalculus\u002Fparametric-and-polar\u002Fparametric-curves-and-their-calculus","Parametric Curves and Their Calculus","Parametric Equations and Polar Coordinates","A parametric curve gives x and y separately as functions of a third variable, recording not only a path but the direction and timing with which it is traced. Eliminating the parameter recovers a Cartesian equation; the slope, area, arc-length, and surface-area formulas run directly on the parameter, with the cycloid and astroid as worked examples.\n",{"path":15310,"title":15311,"module":15307,"summary":15312},"\u002Fcalculus\u002Fparametric-and-polar\u002Fpolar-coordinates","Polar Coordinates","Polar coordinates locate a point by a distance from the pole and an angle from the polar axis, giving circles, spirals, and flower-shaped curves short equations. Conversion between the two systems is right-triangle trigonometry, and treating a polar curve as a parametric curve in the angle yields the tangent, area, and arc-length formulas.\n",{"path":15314,"title":15315,"module":15307,"summary":15316},"\u002Fcalculus\u002Fparametric-and-polar\u002Fconic-sections","Conic Sections","Parabolas, ellipses, and hyperbolas are the plane curves cut from a double cone. Each has a focus-based geometric definition and a standard Cartesian equation. A single number, the eccentricity, ties the three together, and placing a focus at the pole gives all of them one polar equation that describes planetary orbits.\n",{"path":15318,"title":15319,"module":15320,"summary":15321},"\u002Fcalculus\u002Fsequences-and-series\u002Fsequences","Sequences","Infinite Sequences and Series","A sequence is a function on the positive integers, and its limit is defined almost exactly like a limit at infinity. The Limit Laws and Squeeze Theorem carry over from functions, monotonic and bounded sequences give a convergence criterion, and the Monotonic Sequence Theorem guarantees a limit exists without naming it.\n",{"path":15323,"title":15324,"module":15320,"summary":15325},"\u002Fcalculus\u002Fsequences-and-series\u002Fseries-and-the-integral-test","Series and the Integral Test","Adding infinitely many terms is made precise as the limit of partial sums. The two series with closed-form partial sums are geometric and telescoping; the harmonic series diverges even as its terms shrink to zero. The Integral Test compares a positive series to an improper integral, settling the p-series and supplying a remainder bound for estimating sums.\n",{"path":15327,"title":15328,"module":15320,"summary":15329},"\u002Fcalculus\u002Fsequences-and-series\u002Fthe-convergence-tests","The Convergence Tests","The comparison, alternating-series, ratio, and root tests decide convergence without a closed-form partial sum. Absolute convergence is stronger than conditional convergence and is preserved under rearrangement; an alternating series errs by less than its first omitted term. A test is chosen from the shape of the general term.\n",{"path":15331,"title":15332,"module":15320,"summary":15333},"\u002Fcalculus\u002Fsequences-and-series\u002Fpower-series","Power Series","A power series is a polynomial of infinite degree whose convergence set is an interval centered at $a$, with a radius the Ratio Test finds and endpoints that must be tested by hand. Inside that interval the series represents a function that can be differentiated and integrated term by term, generating new representations from the geometric series.\n",{"path":15335,"title":15336,"module":15320,"summary":15337},"\u002Fcalculus\u002Fsequences-and-series\u002Ftaylor-and-maclaurin-series","Taylor and Maclaurin Series","If a function equals a power series, its coefficients are forced: the nth is the nth derivative at the center over n factorial. We derive that formula, use Taylor's Inequality to prove the standard series for the exponential, sine, and cosine, record the binomial series and a reference table, and bound the error when a Taylor polynomial replaces a function.\n",{"path":15339,"title":15340,"module":15341,"summary":15342},"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvectors-and-the-dot-product","Three-Dimensional Coordinates, Vectors, and the Dot Product","Vectors and the Geometry of Space","Space needs three coordinates, so we set up the rectangular system, the distance formula, and the equation of a sphere. Vectors then package magnitude and direction into a single algebraic object with its own arithmetic. The dot product turns two vectors into a number that measures the angle between them, gives a clean test for orthogonality, and produces the projection of one vector onto another.\n",{"path":15344,"title":15345,"module":15341,"summary":15346},"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fthe-cross-product-lines-and-planes","The Cross Product, Lines, and Planes","The cross product multiplies two vectors into a third perpendicular to both, with length equal to the area of the parallelogram they span. That one construction supplies the direction of a line, the normal of a plane, and, through the scalar triple product, the volume of a parallelepiped. Lines carry a point and a direction vector; planes carry a point and a normal, which fixes the angle between planes and the distance from a point to a plane.\n",{"path":15348,"title":15349,"module":15341,"summary":15350},"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fcylinders-and-quadric-surfaces","Cylinders and Quadric Surfaces","A surface whose equation omits one variable is a cylinder: the graph of a plane curve swept along the missing axis. A second-degree equation in three variables is a quadric, and translation and rotation reduce every one to a short standard list. Traces — the curves cut by planes parallel to the coordinate planes — sort the six quadrics into ellipsoid, the two paraboloids, the cone, and the two hyperboloids.\n",{"path":15352,"title":15353,"module":15341,"summary":15354},"\u002Fcalculus\u002Fvectors-and-space-curves\u002Fvector-functions-and-space-curves","Vector Functions and Space Curves","A vector function assigns a vector to each value of a parameter, and as the parameter runs its tip traces a space curve. Taking limits, derivatives, and integrals component by component carries all of single-variable calculus into three dimensions. The derivative of a vector function is the tangent vector to its curve, and normalizing it gives the unit tangent that points the way along the path.\n",{"path":15356,"title":15357,"module":15341,"summary":15358},"\u002Fcalculus\u002Fvectors-and-space-curves\u002Farc-length-curvature-and-motion","Arc Length, Curvature, and Motion in Space","Integrating the speed of a vector function gives the length of its curve and a natural parameter, arc length, that depends only on the curve's shape. Curvature measures how fast the unit tangent turns, and together with the normal and binormal it builds the moving TNB frame. Reading the same vector function as a trajectory, its first two derivatives are velocity and acceleration, and acceleration splits cleanly into tangential and normal parts.\n",{"path":15360,"title":15361,"module":15362,"summary":15363},"\u002Fcalculus\u002Fpartial-derivatives\u002Ffunctions-of-several-variables","Functions of Several Variables, Limits, and Continuity","Partial Derivatives","A function of several variables assigns one number to each point of a region in the plane or in space. Domain, graph, level curve, and level surface describe it; limits and continuity extend to two variables, where a limit must agree along every path of approach, not just from the left and the right.\n",{"path":15365,"title":15362,"module":15362,"summary":15366},"\u002Fcalculus\u002Fpartial-derivatives\u002Fpartial-derivatives","A partial derivative holds every variable but one fixed and differentiates in the ordinary sense. Geometrically it is the slope of a trace curve cut from the surface by a coordinate plane. The freeze-and-differentiate rule computes the two first partials; the four second partials follow, and the two mixed ones agree under Clairaut's Theorem when they are continuous.\n",{"path":15368,"title":15369,"module":15362,"summary":15370},"\u002Fcalculus\u002Fpartial-derivatives\u002Ftangent-planes-and-the-chain-rule","Tangent Planes, Linear Approximation, and the Chain Rule","Near a point, a smooth surface looks like its tangent plane, and the plane's equation is built from the two partial derivatives. That linearization defines the total differential and the meaning of differentiability in two variables. The chain rule then propagates derivatives through composed functions, tracked by a tree diagram, and yields clean formulas for implicit differentiation.\n",{"path":15372,"title":15373,"module":15362,"summary":15374},"\u002Fcalculus\u002Fpartial-derivatives\u002Fdirectional-derivatives-and-the-gradient","Directional Derivatives and the Gradient","The partial derivatives measure slope along the two axes; the directional derivative measures slope along any chosen direction, and equals the gradient dotted with a unit vector. The gradient points in the direction of steepest increase, its length is the greatest rate, and it stands perpendicular to level curves and surfaces, which fixes the tangent plane to a level surface.\n",{"path":15376,"title":15377,"module":15362,"summary":15378},"\u002Fcalculus\u002Fpartial-derivatives\u002Foptimization-and-lagrange-multipliers","Optimization and Lagrange Multipliers","Extrema of a two-variable function sit at critical points where the gradient vanishes; the Second Derivatives Test sorts them into peaks, valleys, and saddles by the sign of a discriminant. Absolute extrema on a closed region also need the boundary. When the domain is itself a constraint curve, Lagrange multipliers set the two gradients parallel and solve the constrained problem.\n",{"path":15380,"title":15381,"module":15382,"summary":15383},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fdouble-integrals","Double Integrals","Multiple Integrals and Vector Calculus","The double integral extends the definite integral to functions of two variables: a limit of Riemann sums that measures signed volume under a surface. Fubini's Theorem turns it into two ordinary integrations done one after the other, general regions of type I and type II fix the inner limits, polar coordinates absorb circular symmetry through the factor r, and the same machine computes mass, center of mass, and moments of a lamina.\n",{"path":15385,"title":15386,"module":15382,"summary":15387},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Ftriple-integrals-and-coordinate-systems","Triple Integrals and Coordinate Systems","The triple integral integrates a function of three variables over a solid, as a limit of Riemann sums evaluated by three nested single integrations. Cylindrical coordinates add the factor r to handle axial symmetry, spherical coordinates add rho-squared sine-phi for radial symmetry, and the general change of variables shows both volume elements are Jacobian determinants of the coordinate map. Surface area for a graph completes the measurement toolkit.\n",{"path":15389,"title":15390,"module":15382,"summary":15391},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fvector-fields-and-line-integrals","Vector Fields and Line Integrals","A vector field assigns a vector to every point of space; the line integral of a field along a curve accumulates its tangential component, measuring work. Conservative fields are gradients of a potential, and for them the Fundamental Theorem for Line Integrals makes the integral depend only on the endpoints. Path independence, closed-loop integrals of zero, and the component test for a potential are three faces of the same property.\n",{"path":15393,"title":15394,"module":15382,"summary":15395},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fgreens-theorem-curl-and-divergence","Green's Theorem, Curl, and Divergence","Green's Theorem equates the line integral of a field around a positively oriented closed curve with a double integral over the enclosed region, turning a boundary computation into an area computation and vice versa. Curl measures local circulation and divergence measures local outflow; the two vector forms of Green's Theorem express the boundary integral as the integrated curl or divergence, the planar case of Stokes' and the Divergence Theorem.\n",{"path":15397,"title":15398,"module":15382,"summary":15399},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fsurface-integrals","Parametric Surfaces and Surface Integrals","A parametric surface is the image of a two-variable vector function; its area element is the magnitude of the cross product of the two tangent vectors. The surface integral of a scalar function sums it over that area, and the flux integral of a vector field sums the field's normal component, measuring flow through the surface. Orientation by a choice of unit normal makes flux well-defined, the integral Stokes' and the Divergence Theorem operate on.\n",{"path":15401,"title":15402,"module":15382,"summary":15403},"\u002Fcalculus\u002Fmultiple-integrals-and-vector-calculus\u002Fstokes-and-the-divergence-theorem","Stokes' Theorem and the Divergence Theorem","Stokes' Theorem lifts Green's Theorem into space: the line integral of a field around the boundary of a surface equals the flux of its curl through the surface. The Divergence Theorem relates the outward flux across a closed surface to the triple integral of divergence over the solid it encloses. Together with the Fundamental Theorem of Calculus and its line-integral and Green counterparts, they are one theorem: the integral of a derivative over a region equals the integral of the field over its oriented boundary.\n",{"path":15405,"title":15406,"module":6,"summary":6},"\u002Fcalculus","Calculus",{"path":15408,"title":15409,"module":14862,"summary":15410},"\u002Fmechanics\u002Ffoundations\u002Fmeasurement-and-dimensions","Measurement and Dimensions","Every physical quantity is a number attached to a unit, and that pairing is what lets you check an equation before computing anything, since terms that add together must carry the same dimensions. We build the SI base units and the notion of dimension, then use dimensional analysis to test a proposed relation and form scaling groups — a method that fixes a formula's shape but never its numerical constants. The lesson also sets how precisely a result may be stated, through significant figures, propagated uncertainty, and order-of-magnitude checks that catch errors a raw calculator answer hides.\n",{"path":15412,"title":15413,"module":14862,"summary":15414},"\u002Fmechanics\u002Ffoundations\u002Fvector-algebra","Vector Algebra","Force, velocity, and displacement all carry a direction, so mechanics needs an arithmetic that respects it; adding magnitudes alone gives the wrong answer the moment two arrows point different ways. We set up vectors and their components in a chosen basis, then build the two products that carry most of the physics — the dot product, which extracts the part of one vector along another and yields work and power, and the cross product, which measures oriented area and yields torque and angular momentum. Rotating the axes changes the components while leaving the vector itself untouched, and the same component method resolves a force along whatever directions a constraint picks out.\n",{"path":15416,"title":15417,"module":15418,"summary":15419},"\u002Fmechanics\u002Fkinematics\u002Fone-dimensional-motion","One-Dimensional Motion","Kinematics","Motion along a line already forces the two questions the whole of kinematics repeats: how fast is the object moving now, and where will it be next? Velocity and acceleration answer the first as derivatives of position; integrating them back — the signed area under a graph — answers the second. We derive the constant-acceleration equations, mark exactly where the \"constant\" assumption is load-bearing, and see why sign, not magnitude, is what carries direction.\n",{"path":15421,"title":15422,"module":15418,"summary":15423},"\u002Fmechanics\u002Fkinematics\u002Fmotion-graphs","Motion Graphs","Draw a motion as a graph and its two most useful facts turn geometric: the slope of the position curve is the velocity, and the area under the velocity curve is the displacement. We read motion in both directions — differentiating a graph for the next rate, integrating it back to recover position — and handle the curved, piecewise, and noisy graphs that real measurements produce. Along the way we see why a velocity estimated from two positions belongs to the midpoint of their interval, not its end.\n",{"path":15425,"title":15426,"module":15418,"summary":15427},"\u002Fmechanics\u002Fkinematics\u002Fprojectile-motion","Projectile Motion","Throw an object and it seems to trace one curved path, but the motion is really two independent one-dimensional motions running at once: constant velocity across the ground and free fall in the vertical. Splitting it that way turns every projectile question — how long it stays up, how far it lands, how high it climbs, whether it clears an obstacle — into a pair of equations you already know. We derive the parabolic trajectory, work both the forward and the inverse problems, and show why the familiar $45^\\circ$ range-maximizing angle holds only when launch and landing heights match.\n",{"path":15429,"title":15430,"module":15418,"summary":15431},"\u002Fmechanics\u002Fkinematics\u002Frelative-motion","Relative Motion","A velocity is only ever measured relative to some observer, so a boat's speed through the water, over the ground, and as seen from another boat are three different vectors. Choosing the right frame — and subtracting one motion from another — collapses river crossings, crosswind headings, pursuit, and closest-approach problems into a single vector equation. We build the relative-velocity and relative-position relations for uniformly moving frames, show why acceleration is the one quantity all such observers agree on, and note where rotating frames break the simple subtraction.\n",{"path":15433,"title":15434,"module":15418,"summary":15435},"\u002Fmechanics\u002Fkinematics\u002Fcircular-motion","Circular Motion","An object going around a circle at a steady speed is still accelerating, because its velocity is forever changing direction — the fact that governs everything from a car on a curve to a satellite in orbit. We tie the angular description (angle, angular velocity, angular acceleration) to the linear one through $v=r\\omega$, split the acceleration into an inward part that turns the velocity and a tangential part that changes its speed, and extend the inward $v^2\u002Fr$ result to any curved path through its local radius of curvature. Constant angular acceleration then mirrors straight-line motion equation for equation.\n",{"path":15437,"title":15438,"module":15439,"summary":15440},"\u002Fmechanics\u002Fdynamics\u002Fnewtons-laws","Newton's Laws","Dynamics","What makes a body change its motion, and in which frames does the answer take its simplest form? Newton's three laws settle both: inertial frames are the ones where a force-free body coasts, force is whatever changes momentum, and every interaction pushes back on its source. We write the second law as $\\sum\\vec F=\\d\\vec p\u002F\\d t$, reduce it to $m\\vec a$ at constant mass, and separate what a scale actually reads — the support force — from the weight $m\\vec g$ it is so often mistaken for.\n",{"path":15442,"title":15443,"module":15439,"summary":15444},"\u002Fmechanics\u002Fdynamics\u002Ffree-body-diagrams","Free-Body Diagrams","Once several forces act on a body at once, the reliable way to predict its motion is to isolate that one body and draw every external push and pull on it — nothing more, nothing less. The free-body diagram is that discipline. We fix a system boundary, resolve $\\sum\\vec F=m\\vec a$ into components along axes chosen to fit the geometry, and solve for the unknowns a problem hands us — normal forces, tensions, friction, and the acceleration a constraint permits — seeing why internal forces drop out only when the boundary encloses both bodies that share them.\n",{"path":15446,"title":15447,"module":15439,"summary":15448},"\u002Fmechanics\u002Fdynamics\u002Ffriction-and-curved-motion","Friction and Curved Motion","Real surfaces grip before they slip, fluids push back harder the faster you move through them, and anything rounding a bend must be pulled toward the inside of the curve by something. This lesson supplies the force laws for those three cases. We bound static friction by $|f_s|\\leq\\mu_sN$ and switch to kinetic friction $\\mu_kN$ once sliding starts, model drag as a speed-dependent resistance that levels off at a terminal speed, and show that circular motion demands an inward net force $mv^2\u002Fr$ furnished by real interactions — friction, a banked normal force, tension — never by an invented outward one.\n",{"path":15450,"title":15451,"module":15439,"summary":15452},"\u002Fmechanics\u002Fdynamics\u002Fnumerical-dynamics","Numerical Dynamics","Most force laws — quadratic drag, coupled oscillators, anything nonlinear — admit no closed-form trajectory, so we advance the motion one small time step at a time and let arithmetic do what algebra cannot. This lesson turns $\\d\\vec y\u002F\\d t=f(t,\\vec y)$ into a marching rule. We derive the Euler, Euler--Cromer, midpoint, and Verlet updates, weigh their accuracy and stability, watch a drifting energy expose a bad scheme, and use step-halving and conserved quantities to separate the error of the method from the error of the model.\n",{"path":15454,"title":15455,"module":15439,"summary":15456},"\u002Fmechanics\u002Fdynamics\u002Fcenter-of-mass-systems","Center-of-Mass Systems","A firework bursts into a dozen fragments, yet one point keeps gliding along the original parabola as though nothing had happened. That point is the centre of mass, and following it collapses a many-body tangle into a single equation of motion. We define $\\vec R=\\frac1M\\sum_i m_i\\vec r_i$ and its continuous form, show that internal forces cancel so that only external ones move it, $M\\vec A_{\\rm cm}=\\sum\\vec F_{\\rm ext}$, and put the result to work on recoil, collisions viewed from the centre-of-mass frame, and rocket propulsion, where mass leaving the boundary carries momentum with it.\n",{"path":15458,"title":15459,"module":15460,"summary":15461},"\u002Fmechanics\u002Fenergy\u002Fwork-and-kinetic-energy","Work and Kinetic Energy","Energy","A constant push along a straight path is trivial to score, but real forces vary and bend along curved trajectories, and only the component along the motion transfers any energy. Work captures exactly that transfer as the line integral $W=\\int\\vec F\\cdot\\d\\vec r$, and the work-kinetic-energy theorem turns it into a statement about speed: the net work on a particle equals the change in its $\\tfrac12 mv^2$. We build work up from the dot product to the signed area under a force curve, derive the theorem from Newton's second law, and read power as its instantaneous rate $P=\\vec F\\cdot\\vec v$.\n",{"path":15463,"title":15464,"module":15460,"summary":15465},"\u002Fmechanics\u002Fenergy\u002Fpotential-energy","Potential Energy","When a force does the same work no matter which path a particle takes, that work can be stored as a function of position alone, and solving for the motion becomes bookkeeping instead of integration. We single out the forces that qualify — the conservative ones, for which $\\oint\\vec F\\cdot\\d\\vec r=0$ — define their potential energy through $\\vec F=-\\nabla U$, and use conservation of mechanical energy to read speeds, turning points, and equilibria straight off a potential curve. Friction breaks the shortcut, so we also track where mechanical energy leaks away as heat.\n",{"path":15467,"title":15468,"module":15460,"summary":15469},"\u002Fmechanics\u002Fenergy\u002Fmultiparticle-work","Multiparticle Work","A single particle has one velocity and one kinetic energy; a system of many can spin, deform, explode, and warm up while its centre of mass glides along as if nothing happened. Splitting the motion into a centre-of-mass part and an internal part separates the energy that momentum already fixes from the energy left free for relative motion, $K=\\tfrac12MV_{\\rm cm}^2+K'$. We derive the centre-of-mass work theorem, see why an explosion or a released spring can raise total kinetic energy with no external work at all, and use the reduced-mass and centre-of-mass frames to make collisions and internal transfers clean.\n",{"path":15471,"title":15472,"module":15460,"summary":15473},"\u002Fmechanics\u002Fenergy\u002Fmass-energy-and-binding","Mass-Energy and Binding","Relativity puts rest itself on the energy ledger: a mass $m$ carries energy $mc^2$ even when it sits still, so weighing a system's separated pieces and weighing the assembled whole give different answers, and the gap is binding energy. We convert freely between mass units and MeV, compute the energy that holds a nucleus together, and read the binding-energy-per-nucleon curve that explains why fusing light nuclei and splitting heavy ones both release energy. Reaction $Q$ values, thresholds, and recoil then follow from the same mass-difference accounting, once the frame and mass convention are fixed.\n",{"path":15475,"title":15476,"module":15460,"summary":15477},"\u002Fmechanics\u002Fenergy\u002Fphotons-and-quantization","Photons and Quantization","Light delivers its energy in indivisible lumps: a photon of frequency $f$ carries exactly $hf$, and this one fact explains why a dim blue lamp ejects electrons that an intense red one cannot. We fix a photon's energy and momentum from its wavelength, follow the quanta through emission, absorption, and the photoelectric threshold $K_{\\rm max}=hf-\\phi$, and watch energy and momentum conservation together produce the Compton wavelength shift when a photon scatters from an electron. The recurring discipline is unit and frame care, where a stray factor of $10^9$ or a forgotten rest energy quietly ruins an answer.\n",{"path":15479,"title":15480,"module":15481,"summary":15482},"\u002Fmechanics\u002Fmomentum\u002Fmomentum-and-collisions","Momentum and Collisions","Momentum","When two objects collide, the forces between them are too brief and too tangled to integrate directly, yet the result is fixed by one conserved quantity. Linear momentum $\\vec p=m\\vec v$ turns Newton's second law into the impulse-momentum theorem $\\vec J=\\Delta\\vec p$, and for an isolated system into a conservation law that holds through any internal collision, however dissipative. We use it to separate elastic from inelastic collisions, follow the centre of mass, and read impulse as the signed area under a force-time curve — always tracking which external impulses the chosen system and interval let us drop.\n",{"path":15484,"title":15485,"module":15481,"summary":15486},"\u002Fmechanics\u002Fmomentum\u002Fcenter-of-mass-collisions","Center-of-Mass Collisions","A two-body collision that looks asymmetric in the laboratory becomes almost trivial in the frame that rides along with the centre of mass, where the total momentum is zero and the two momenta stay equal and opposite. We build that frame, reduce the pair to a single relative coordinate carrying the reduced mass $\\mu$, and show that an elastic collision there only rotates one momentum vector while its length holds fixed. Transforming back to the laboratory then handles elastic and inelastic collisions, scattering angles, and reaction thresholds with the same construction — and shows why relative speed, not laboratory kinetic energy, measures what a collision can convert.\n",{"path":15488,"title":15489,"module":15481,"summary":15490},"\u002Fmechanics\u002Fmomentum\u002Frocket-propulsion","Rocket Propulsion","A rocket speeds up by throwing mass backward, so its own mass drops as it flies and $\\vec F=m\\vec a$ no longer applies to a fixed body. Tracking the momentum the exhaust carries across the vehicle boundary gives thrust $T=Ru_e$ and, for a force-free burn, the rocket equation $\\Delta v=u_e\\ln(m_i\u002Fm_f)$ — a logarithm that makes large velocity changes expensive in propellant and forces staging. We then add the forces a real ascent cannot ignore, gravity, drag, and steering, and show how thrust and mass-flow records are cross-checked to infer the exhaust speed.\n",{"path":15492,"title":15493,"module":15494,"summary":15495},"\u002Fmechanics\u002Frotation\u002Frotational-inertia","Rotational Inertia","Rotation","Push a wheel and a merry-go-round with the same force and they speed up at wildly different rates: the same mass resists rotation differently depending on where it sits relative to the axis. That single fact is the moment of inertia, $I=\\int r_\\perp^2\\,\\d m$, and this lesson builds it from the ground up. We tie angular motion to linear through $s=r\\theta$, $v=r\\omega$, and $a_t=r\\alpha$, derive $I$ for rods, disks, and spheres, and use the parallel- and perpendicular-axis theorems to move between axes — always naming the axis, because the same body has as many moments of inertia as it has lines to spin about.\n",{"path":15497,"title":15498,"module":15494,"summary":15499},"\u002Fmechanics\u002Frotation\u002Frotational-dynamics","Rotational Dynamics","A force applied to a wheel does nothing unless it acts off the axis: what turns a rigid body is torque, force times lever arm. This lesson makes that precise and turns it into the rotational Newton's second law, $\\sum\\tau=I\\alpha$ about a fixed axis, the exact analogue of $\\sum F=ma$. From there we get rotational work $W=\\int\\tau\\,\\d\\theta$ and power $P=\\tau\\omega$, size a motor to a load, and solve pulleys and Atwood machines where the pulley's own inertia can no longer be ignored — always insisting that every torque be measured about the same axis.\n",{"path":15501,"title":15502,"module":15494,"summary":15503},"\u002Fmechanics\u002Frotation\u002Frolling-motion","Rolling Motion","A rolling wheel is doing two things at once — translating and spinning — but the no-slip condition $v_{cm}=R\\omega$ locks them together, and that single constraint is what makes rolling tractable. We use it to split the kinetic energy into $\\tfrac12Mv_{cm}^2+\\tfrac12I\\omega^2$, find how fast a cylinder reaches the bottom of an incline, and show why the contact point is instantaneously at rest. The static friction that enforces rolling does no work; we track its direction from the tendency to slip, and mark exactly where the model breaks once the required friction exceeds $\\mu_sN$.\n",{"path":15505,"title":15506,"module":15494,"summary":15507},"\u002Fmechanics\u002Frotation\u002Fangular-momentum","Angular Momentum","A skater pulls in her arms and spins faster, with no torque acting: that is angular momentum conservation, and it lets us answer questions that would be hopeless force by force. We build $\\vec L=\\vec r\\times\\vec p$, show it obeys $\\vec\\tau_{ext}=\\d\\vec L\u002F\\d t$, and use its conservation under zero external torque to link before and after in collisions, reconfigurations, and coupled rotors without ever resolving the internal forces. The catch is bookkeeping: the origin, the system boundary, and the frame must be fixed first, and a change in total $\\vec L$ always points to an external impulse someone forgot.\n",{"path":15509,"title":15510,"module":15494,"summary":15511},"\u002Fmechanics\u002Frotation\u002Frolling-resistance","Rolling Resistance","Ideal rolling should coast forever, yet every real wheel slows down. The reason is that a deformable tire and road do not press through a single point: the contact patch spreads, the normal-force resultant shifts ahead of the axle, and that offset is a resisting moment even with no gross sliding. We package it as an equivalent force $F_{rr}=C_{rr}N$, tie the coefficient to load, surface, speed, and temperature, and use coast-down, towing, and traction tests to separate this contact loss from aerodynamic drag, bearing friction, and the adhesion limit where rolling gives way to skidding.\n",{"path":15513,"title":15514,"module":15494,"summary":15515},"\u002Fmechanics\u002Frotation\u002Fgyroscopic-precession","Gyroscopic Precession","A spinning top leans over but does not fall — it swings its axis in a slow horizontal circle instead. The paradox dissolves once torque is read as the rate of change of a vector: gravity's torque is perpendicular to the spin angular momentum, so it turns $\\vec L$ rather than toppling it. We derive the steady precession rate $\\Omega\\simeq Mgr\u002F(I_s\\omega_s)$ in the fast-top limit, state the assumptions it leans on — dominant spin, slow tilt, negligible bearing torque — and read nutation, support motion, and a decaying spin as the ways real gyroscopes depart from it.\n",{"path":15517,"title":15518,"module":15519,"summary":15520},"\u002Fmechanics\u002Fgravity-and-matter\u002Fkeplerian-orbits","Keplerian Orbits","Gravitation and Matter","Why do the planets trace ellipses rather than any other curve? Newton's inverse-square law collapses the two-body problem onto a single conic section, and the answer falls out of two conserved quantities: a central force can exert no torque, so angular momentum is fixed, and gravity is conservative, so energy is fixed. We read an orbit's size and shape straight off those invariants, recover all three of Kepler's laws, and derive escape speed, the vis-viva relation, and the timing of a pass. We also mark where the ideal ellipse breaks down — drag, oblateness, and a third body slowly move a real orbit.\n",{"path":15522,"title":15523,"module":15519,"summary":15524},"\u002Fmechanics\u002Fgravity-and-matter\u002Fgravitational-fields","Gravitational Fields","Instead of tracking the force between every pair of masses, we attach a field to the source and ask a test mass to read it off locally. That move pays off because gravity is conservative: the field is the gradient of a single scalar potential, and potentials from many sources simply add. We build the field-potential picture, use spherical symmetry and the shell theorem to get the point-mass exterior field and the zero interior field of a shell, and read tides straight out of the field's gradient. Along the way we mark exactly when the constant-$g$ and point-mass shortcuts hold and when a shape correction is needed.\n",{"path":15526,"title":15527,"module":15519,"summary":15528},"\u002Fmechanics\u002Fgravity-and-matter\u002Fstatic-equilibrium","Static Equilibrium","What does it take for a loaded structure to stay put? A body at rest needs its forces to cancel and its turning effects to cancel — $\\sum\\vec F=0$ and $\\sum\\vec\\tau=0$ about any point — and almost all of statics is the craft of turning a physical setup into those equations. We build free-body diagrams, replace supports, cables, friction, couples, and distributed loads with their idealized reactions, and locate the centre of gravity that decides whether a body tips. We also count equations against unknowns to separate a determinate problem from one that needs the material's deformation to resolve, and read every negative or inconsistent reaction as a sign that a contact or a boundary was chosen wrong.\n",{"path":15530,"title":15531,"module":15519,"summary":15532},"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-statics","Fluid Statics","A fluid at rest cannot support a shear, so the only stress it carries is a pressure that must grow with depth to hold up the fluid above it. That single balance, $\\d p\u002F\\d z=-\\rho g$, runs the whole subject: it sets manometer readings, the force on a dam, and — integrated over a submerged boundary — Archimedes' buoyant force $F_B=\\rho g V_{\\rm disp}$. We derive these, use them to decide when a body floats and whether it floats upright, and mark where acceleration, rotation, compressibility, or capillarity forces a richer pressure model.\n",{"path":15534,"title":15535,"module":15519,"summary":15536},"\u002Fmechanics\u002Fgravity-and-matter\u002Ffluid-flow","Fluid Flow","Two accounting rules carry most of steady flow: mass cannot pile up, so the same volume crosses every section each second, and mechanical energy is conserved along a streamline when the fluid is ideal. From those we get continuity, Bernoulli's relation between pressure, speed, and height, and the results that follow — Torricelli's efflux speed, the Venturi meter, the Pitot tube. We then let go of the ideal assumptions one at a time: viscosity adds wall shear and head loss, Reynolds number decides laminar versus turbulent, and Mach number marks where a gas stops behaving as incompressible.\n",{"path":15538,"title":15539,"module":15519,"summary":15540},"\u002Fmechanics\u002Fgravity-and-matter\u002Forbital-motion","Orbital Motion","A circular orbit is nothing but free fall with enough sideways speed to keep missing the ground, and setting gravity equal to the centripetal requirement fixes that speed and the period once and for all. From the same energy bookkeeping we read off escape speed, sort orbits into bound, parabolic, and hyperbolic by the sign of their specific energy, and see why a tangential burn is the efficient way to change an orbit. We build the Hohmann transfer and its launch window, work the numbers for a geostationary orbit and an escape burn, and mark where finite thrust, perturbations, and an uncertain initial state pull a real trajectory off the ideal.\n",{"path":15542,"title":15543,"module":15519,"summary":15544},"\u002Fmechanics\u002Fgravity-and-matter\u002Fstress-and-elasticity","Stress and Elasticity","Rigid bodies are a fiction; every real material stretches, shears, or squeezes under load, and the useful question is how much. We define stress as force per area and strain as fractional deformation, then find that for small deformations the two are simply proportional — Hooke's law — with Young's, shear, and bulk moduli as the constants for stretch, twist, and volume change. From these we compute extensions, torsional twist, and stored elastic energy, and read a tensile curve for the yield, ultimate, and fracture points where linear elasticity ends. We also mark the practical limits: stress concentrations, fatigue, and the multiaxial states a single uniaxial modulus cannot capture.\n",{"path":15546,"title":15547,"module":15548,"summary":15549},"\u002Fmechanics\u002Foscillations-waves\u002Fdamped-oscillators","Damped Oscillators","Oscillations and Waves","Every real oscillator eventually stops: friction, drag, and internal loss drain its energy, so free motion is a decay rather than a permanent swing. Adding a velocity-proportional resistance to the spring-mass equation produces one dimensionless number, $b\u002F(2\\sqrt{mk})$, that decides whether the mass rings down through many cycles, returns once without overshoot, or crawls back slowly. We solve the three regimes, tie the observed decay to the power balance $b\\dot x^2$, and turn a measured ring-down into the decay rate and quality factor of the apparatus — reading damping off the data instead of assuming it.\n",{"path":15551,"title":15552,"module":15548,"summary":15553},"\u002Fmechanics\u002Foscillations-waves\u002Ftravelling-waves","Travelling Waves","A wave carries a shape, not the material: each element of a rope or air column oscillates in place while the disturbance travels through it. Writing that shape as $f(x\\mp vt)$ turns \"the pattern moves\" into a statement about the cosine's argument, and a local force balance on one string segment fixes the speed at $v=\\sqrt{T\u002F\\mu}$ — restoring stiffness over inertia, with amplitude nowhere in it. We build the sinusoidal wave and its phase, derive the wave equation from Newton's second law, and follow the energy a travelling wave transports, then check speed and power against those predictions.\n",{"path":15555,"title":15556,"module":15548,"summary":15557},"\u002Fmechanics\u002Foscillations-waves\u002Fwave-superposition","Wave Superposition","When two waves cross the same point, what does a probe read? In a linear medium the answer is arithmetic: the displacements add, $y=y_1+y_2$, and the pulses pass through each other unchanged. That one rule produces interference — reinforcement where the signs agree, cancellation where they oppose — and it guards against a common mistake, since displacement can vanish at an instant while the energy sits in transverse motion instead. We work out the signed sum, the phase bookkeeping for equal-frequency components, and why a null in the record is not a null in the wave.\n",{"path":15559,"title":15560,"module":15548,"summary":15561},"\u002Fmechanics\u002Foscillations-waves\u002Fstanding-waves","Standing Waves","Clamp a string at both ends and only certain frequencies survive: the ends must be nodes, and that single geometric demand quantizes the wave into a discrete set of modes $f_n=nv\u002F(2L)$. The travelling wave becomes a fixed pattern of nodes and antinodes — standing, not moving — because equal waves running in opposite directions superpose. We build the standing wave from its counter-propagating pieces, read the harmonic sequence off the boundary conditions (half-wavelengths for a fixed-fixed string, odd quarter-wavelengths for a closed pipe), and test the ideal model against node scans and resonance peaks.\n",{"path":15563,"title":15564,"module":15548,"summary":15565},"\u002Fmechanics\u002Foscillations-waves\u002Fsound-waves","Sound Waves","Sound is a pressure wave so small that a loud tone displaces air molecules by less than the width of an atom, yet a microphone reads it easily — because pressure, not displacement, is what the ear and the instrument sense. The acoustic impedance $Z=\\rho c$ ties pressure, density, and particle velocity together, fixes the intensity a wave carries, and sets the reference for the decibel, a logarithm that tames a $10^{12}$ range in power. We derive the sound speed from the gas's stiffness, convert between pressure and intensity levels, and treat the measurement itself — calibration, geometry, background, averaging — as part of the physics.\n",{"path":15567,"title":15568,"module":15548,"summary":15569},"\u002Fmechanics\u002Foscillations-waves\u002Fdoppler-effect","Doppler Effect","A passing siren drops in pitch not because the source changes but because motion repacks the wavefronts: an approaching source crowds its crests, a receding one stretches them, and a moving listener samples them at a different rate. For mechanical waves every velocity is measured against the medium, and one signed ratio $f_r=f_s(v-u_r)\u002F(v-u_s)$ captures both effects at once. We separate source motion, which sets crest spacing, from receiver motion, which sets arrival rate, invert the shift to recover radial velocity, and mark where the model breaks — supersonic sources, moving air, and reflected paths that carry two shifts, not one.\n",{"path":15571,"title":15572,"module":15548,"summary":15573},"\u002Fmechanics\u002Foscillations-waves\u002Fwave-packets","Wave Packets","No real signal is a single frequency: a disturbance that starts and stops is built from a band of wave numbers, and the width of that band is what makes it local. We ask how such a packet moves — carrier crests at the phase velocity $v_\\mathrm p=\\omega\u002Fk$, the envelope at the group velocity $v_\\mathrm g=\\d\\omega\u002F\\d k$ — and why the two differ once a medium is dispersive. Curvature $\\d^2\\omega\u002F\\d k^2$ spreads and chirps the packet as it travels, and the Fourier reciprocity that ties bandwidth to duration explains why a finite record, aliasing, or a coarse probe can imitate that spreading unless the sampling limits are respected.\n",{"path":15575,"title":15576,"module":15548,"summary":15577},"\u002Fmechanics\u002Foscillations-waves\u002Fbeats-and-coupling","Beats and Coupling","Add two tones a few hertz apart and the sum swells and fades at their difference frequency — a beat — though neither source is changing. We work out that envelope, then ask the mechanical version of the same question: join two oscillators and a single resonance splits into normal modes, with energy sloshing between the coordinates at their frequency difference. The lesson identifies when a slow amplitude envelope signals genuine coupling rather than two independent sources, drift, or deliberate modulation, reading it from envelope timing, spectral sidebands, and the mode shapes.\n",{"path":15579,"title":15580,"module":15548,"summary":15581},"\u002Fmechanics\u002Foscillations-waves\u002Fsimple-harmonic-motion","Simple Harmonic Motion","Any system pushed back toward equilibrium by a force proportional to its displacement obeys one equation, $\\ddot x+\\omega_0^2x=0$, and so moves sinusoidally at $\\omega_0=\\sqrt{k\u002Fm}$ whatever the amplitude. We derive that motion, follow its energy $E=mv^2\u002F2+kx^2\u002F2$ trading between kinetic and potential form at constant total, and read the elliptical phase-space orbit Hooke's law implies. Period, amplitude, velocity, and acceleration then supply redundant checks: an amplitude-dependent period or a curved force residual is the signature that the linear model has failed, and mass-loading and offset tests separate a calibration error from a real frequency shift.\n",{"path":15583,"title":15584,"module":15548,"summary":15585},"\u002Fmechanics\u002Foscillations-waves\u002Fpendulum-motion","Pendulum Motion","A pendulum keeps time only because, for small swings, gravity supplies a restoring torque proportional to the angle — and $T=2\\pi\\sqrt{L\u002Fg}$ then follows without the mass appearing at all. We derive that result, mark exactly which assumptions carry it (small angle, negligible pivot loss, a rigid support), then relax them: finite amplitude lengthens the period through an elliptic integral, and an extended body replaces $L$ with the ratio of its moment of inertia to its center-of-mass distance. How the period drifts with amplitude or pivot position is what diagnoses the geometric, damping, and distributed-mass corrections.\n",{"path":15587,"title":15588,"module":15548,"summary":15589},"\u002Fmechanics\u002Foscillations-waves\u002Fdriven-oscillators","Driven Oscillators","Drive a damped oscillator at a frequency you control and it eventually forgets its own: $m\\ddot x+b\\dot x+kx=F_0\\cos\\omega t$ settles into a steady response whose amplitude and phase depend sharply on how close the drive sits to resonance. We solve for that response, show how damping alone fixes the resonance width, the peak power, and the settling time, and treat base excitation as the same problem with a different input. The steady-state formulas hold only for constant $m$, $b$, and $k$; level-dependent peaks or hysteresis between up- and down-sweeps are how nonlinearity or an extra mode announces itself.\n",{"path":15591,"title":15592,"module":15548,"summary":15593},"\u002Fmechanics\u002Foscillations-waves\u002Fwave-boundaries","Wave Boundaries","A pulse traveling along a string does something abrupt where the string's properties change: part reflects, part transmits, and which is which is set by the impedance mismatch alone. We impose continuity of displacement and transverse force at the join to get the reflection and transmission coefficients in terms of $Z=\\sqrt{T\\mu}$, fix their signs and the polarity flip, and balance the energy. The clean result assumes linear, nondispersive segments meeting at a localized join; pulse polarity, return timing, and energy ratios are the measurements that expose a real connector's mass, loss, or distributed transition.\n",{"path":15595,"title":15596,"module":15597,"summary":15598},"\u002Fmechanics\u002Fthermodynamics\u002Fkinetic-theory-of-ideal-gases","Kinetic Theory of Ideal Gases","Thermodynamics","A gas has no springs and no gears, yet it pushes on its container with a definite pressure and stores energy in a lawful way. Kinetic theory explains both from the motion of the molecules alone: pressure is the accumulated recoil of countless elastic impacts, and temperature is the average translational kinetic energy each molecule carries. We derive $pV=\\tfrac13Nm\\overline{v^2}$ from momentum transfer, read off $\\overline{K}_{\\rm tr}=\\tfrac32kT$, and use the Maxwell–Boltzmann distribution to separate the most probable, mean, and rms speeds — each the right average for a different question — while marking where the dilute, classical assumptions stop holding.\n",{"path":15600,"title":15601,"module":15597,"summary":15602},"\u002Fmechanics\u002Fthermodynamics\u002Ffirst-law-of-thermodynamics","First Law of Thermodynamics","Heat a gas and it may warm, expand, or both; compress it and the same energy can reappear as a temperature rise. The first law settles the bookkeeping: internal energy is a state property whose change equals the heat added plus the work done on the system, $\\Delta E_{\\rm int}=Q_{\\rm in}+W_{\\rm on}$. We fix a system boundary and one sign convention, compute boundary work as $\\int p\\,\\d V$ along a path, and use calorimetry to measure heat and heat capacities. The recurring point is that heat and work are path-dependent transfers while their sum is not, so an energy ledger closes only once every boundary crossing is named.\n",{"path":15604,"title":15605,"module":15597,"summary":15606},"\u002Fmechanics\u002Fthermodynamics\u002Fentropy-and-the-second-law","Entropy and the Second Law","The first law lets energy flow either way; it never says which way heat actually goes. The second law supplies the missing arrow. Entropy, defined through the reversible transfer $\\d S=\\delta Q_{\\rm rev}\u002FT$, can only increase in an isolated system, and that single inequality fixes the direction of heat flow and caps every engine, refrigerator, and heat pump at its Carnot value. We build entropy ledgers for reservoirs and working substances, separate the entropy carried by heat from the entropy generated by irreversibility, and read the sign of the total as a hard check on any proposed thermal machine.\n",{"path":15608,"title":15609,"module":15597,"summary":15610},"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-processes","Thermal Processes","Heat rarely sits still: it stretches solids, pushes real gases off their ideal isotherms, and leaks across walls by conduction, convection, and radiation. Each behavior becomes a number a designer can use. Thermal expansion sets the gaps in a bridge and the stress in a clamped rod; the van der Waals equation and a phase diagram fix when $pV=nRT$ or a latent-heat term applies; Fourier's law, Newton cooling, and Stefan–Boltzmann radiation give the rate of heat flow. We assemble these into thermal-resistance networks and transient time constants, then mark where contact resistance, phase change, or a hidden thermal bridge breaks the simple model.\n",{"path":15612,"title":15613,"module":15597,"summary":15614},"\u002Fmechanics\u002Fthermodynamics\u002Fphase-changes","Phase Changes","Add heat to ice and its temperature climbs — until it reaches $0\\ ^\\circ\\mathrm C$, where the thermometer stalls while the ice melts. That plateau is the whole subject: at a phase boundary the energy rearranges molecules, $Q=mL$, instead of raising temperature, which resumes only once one phase is gone. We stage a heating path into sensible-heat legs ($Q=mc\\Delta T$) and latent plateaus, use the Clausius–Clapeyron relation to track how a boiling point moves with pressure, and solve calorimetry by testing each coexistence endpoint — so a melt fraction that lands outside $[0,1]$ flags a wrong final-state guess rather than a real state.\n",{"path":15616,"title":15617,"module":15597,"summary":15618},"\u002Fmechanics\u002Fthermodynamics\u002Fthermal-machines","Thermal Machines","An engine, a refrigerator, and a heat pump are one machine read three ways: each shuttles heat between a hot and a cold reservoir while trading work at the boundary, and only the flow you call useful separates them. A heat engine turns part of $Q_h$ into work, $W=Q_h-Q_c$; a refrigerator spends work to pull $Q_c$ from the cold side; a heat pump counts the warm-side delivery instead. We measure each with its own ratio — efficiency or coefficient of performance — bound them all by the Carnot limit that reservoir temperatures alone set, and track how finite temperature differences, throttling, and friction generate entropy and pull real machines below that bound.\n",{"path":15620,"title":15621,"module":6,"summary":6},"\u002Fmechanics","Mechanics & Dynamics",{"path":15623,"title":15624,"module":15625,"summary":15626},"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcharge-and-conductors","Charge and Conductors","Electric Fields","Rub two objects together and one pulls electrons from the other; nothing is created, only moved. We define what electric charge is — conserved, additive, and quantized in units of $e$ — and why a conductor's mobile carriers rearrange until its interior field vanishes and its surface sits at one potential. We follow charge through contact, induction, and grounding, treat the field-free cavity that turns a conductor into a shield, and mark where finite conductivity and leakage set the limits of the electrostatic picture.\n",{"path":15628,"title":15629,"module":15625,"summary":15630},"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Fcoulombs-law","Coulomb's Law","Two charges at rest push or pull along the line joining them, and the whole of electrostatics is assembled by adding up such pairs. We measure that force — its inverse-square falloff, its linear dependence on each charge, the sign that says attract or repel — and write it as a vector so direction survives superposition. We work the magnitude and component forms on real numbers, check them against limiting cases and dimensions, and fix the point-charge approximation to source sizes small against every separation.\n",{"path":15632,"title":15633,"module":15625,"summary":15634},"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-and-force","Electric Field and Force","Rather than ask how one charge reaches across empty space to another, we credit the source with a field that fills the space and let a second charge respond to whatever field sits at its own location. Electric field is force per unit positive test charge, $\\vec E=kq\\hat r\u002Fr^2$ for a point source, and source fields add before any receiving charge is placed. We compute those fields and the force $\\vec F=q\\vec E$ they exert, then follow a charge along its parabolic path through a uniform field and into nonuniform fields where the dynamics turn position-dependent.\n",{"path":15636,"title":15637,"module":15625,"summary":15638},"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-field-maps","Electric Field Maps","A field is a vector at every point of space, and the quickest way to grasp one is to draw it. We build the two standard pictures — continuous field lines tangent to $\\vec E$, and scaled vector arrows — and read direction, magnitude, and the location of nulls straight off them. We fix what a line drawing can and cannot say: density encodes magnitude only under a stated seeding rule, and integral curves never cross at a regular point. From there we work the topology near sources, sinks, and conductor surfaces, and state the step-size and interpolation checks a numerical map must pass.\n",{"path":15640,"title":15641,"module":15625,"summary":15642},"\u002Felectricity-and-magnetism\u002Felectric-fields\u002Felectric-dipoles","Electric Dipoles","Most neutral matter carries no net charge yet still responds to an electric field, because its positive and negative charge sit slightly apart. That separation is a dipole, moment $\\vec p=q\\vec d$ pointing from the negative to the positive charge, and it is the leading term in how any neutral distribution looks from far away. We derive the torque $\\vec p\\times\\vec E$ and energy $-\\vec p\\cdot\\vec E$ a uniform field imposes, the net force a field gradient adds, and the axial and equatorial $1\u002Fr^3$ fields the pair produces, then measure how far out the point-dipole approximation still holds.\n",{"path":15644,"title":15645,"module":15646,"summary":15647},"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fcontinuous-charge-fields","Continuous Charge Fields","Continuous Charge Distributions","A charged rod, ring, or disk is not a point, yet its field is still nothing but Coulomb's law added up over the charge it carries. We replace the discrete sum by an integral, with $\\d q=\\lambda\\d\\ell$, $\\sigma\\d A$, or $\\rho\\d V$, so the real work becomes geometry: writing the vector from each source element to the field point, and letting symmetry cancel the components that must cancel before any integral is attempted. We carry the line, ring, and disk fields through in full, then check each result against its near field, its far field, and its dimensions.\n",{"path":15649,"title":15650,"module":15646,"summary":15651},"\u002Felectricity-and-magnetism\u002Fcontinuous-charge-distributions\u002Fgauss-law-and-conductors","Gauss's Law and Conductors","Adding up Coulomb's law over a whole distribution is laborious; Gauss's law trades that sum for a single statement, that the flux of $\\vec E$ out of any closed surface counts the charge inside, $\\oint\\vec E\\cdot\\d\\vec A=Q_{\\rm enc}\u002F\\varepsilon_0$. The law is always true, but it hands over the field only when the source is symmetric enough to pull $E$ outside the integral. We apply it to spheres, lines, and sheets, then turn it on conductors, where the zero interior field drives every excess charge to the surface and fixes the normal-field jump $\\sigma\u002F\\varepsilon_0$, the charge induced on a cavity wall, and electrostatic shielding.\n",{"path":15653,"title":15654,"module":15655,"summary":15656},"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpoint-charge-potential","Point-Charge Potential","Electric Potential","The electrostatic force is conservative, so the work it does between two points\ndepends only on the endpoints. That lets us trade the vector field for a single\nscalar attached to each point, the electric potential, the potential energy a unit\ncharge would have there. We build potential from the work integral, fix the usual\nreference at infinity, and add point sources as scalars, $V=k\\sum_i q_i\u002Fr_i$,\navoiding the vector bookkeeping the field demands. Signed charges, the reference\nchoice, equipotential motion, and far-field expansions each give an independent\ncheck on a result.\n",{"path":15658,"title":15659,"module":15655,"summary":15660},"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fpotential-gradients-and-equipotentials","Potential Gradients and Equipotentials","Given the potential everywhere, how do we recover the field? The field is the\nnegative gradient, $\\vec E=-\\nabla V$: it points down the steepest local drop in\npotential, and its magnitude is set by how fast $V$ changes, not by the shape of a\ncontour. We read off components with directional derivatives, reconstruct fields\nfrom measured potential grids using centered differences, and use closed-loop\nintegrals and grid refinement to test whether a reconstructed field is physically\nconsistent.\n",{"path":15662,"title":15663,"module":15655,"summary":15664},"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Felectrostatic-energy-and-pressure","Electrostatic Energy and Pressure","Assembling a charge configuration takes work, and that work is stored, but where\nis it kept and how much is there? We total it two ways: as a sum over the charges,\n$U=\\tfrac12\\sum_i q_iV_i$, and as an integral over the field itself,\n$u_E=\\tfrac12\\varepsilon_0E^2$, energy the field carries in every region it fills.\nDifferentiating the stored energy at fixed charge or at fixed voltage recovers the\nmechanical force on a conductor, and at a charged surface the same field scale\nappears as an outward electrostatic pressure. We work the parallel-plate case in\nfull and mark where curvature and fringing make the pressure nonuniform.\n",{"path":15666,"title":15667,"module":15655,"summary":15668},"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Flaplace-boundary-problems","Laplace Boundary Problems","Often the charges are not given, only the conductors and the voltages held on\nthem, and the potential in the empty space between has to be found. There $V$ obeys\nLaplace's equation $\\nabla^2V=0$, and the boundary data alone determine a unique solution.\nWe solve it two ways: separation of variables into boundary-matched modes, whose\nhigher spatial frequencies die away with depth into the domain, and finite-difference\nrelaxation for boundaries no analytic mode fits. Residual norms, boundary error, and\nflux balance tell us when the computed potential and its field can be trusted.\n",{"path":15670,"title":15671,"module":15655,"summary":15672},"\u002Felectricity-and-magnetism\u002Felectric-potential\u002Fcontinuous-charge-potentials","Continuous Charge Potentials","When charge is spread over a line, a surface, or a volume, the sum over point\nsources becomes an integral, $V(\\vec r)=k\\int \\d q\u002F|\\vec r-\\vec r'|$. Because\npotential is a scalar, this integral sidesteps the component algebra the field\nwould force, until the field is actually wanted through $\\vec E=-\\nabla V$. We set\nup the right density element for each geometry, choose a workable reference, handle\nthe integrable singularities that arise when the observation point sits on the\ncharge, and check every result against symmetry, dimensions, and the far-field\nmultipole limit.\n",{"path":15674,"title":15675,"module":15676,"summary":15677},"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitance-fundamentals","Capacitance Fundamentals","Capacitance","How much charge must you separate onto two conductors to hold a given voltage between\nthem? That ratio, $C=Q\u002F\\Delta V$, is fixed by the conductor geometry and the medium,\nnot by how much charge is presently stored. We compute it from the field for the\nparallel-plate, isolated-sphere, concentric-sphere, and coaxial geometries, trace how\nsurface charge and boundary conditions set each result, and see where fringing,\nguarding, and stray coupling separate the ideal formula from what a bridge measures.\n",{"path":15679,"title":15680,"module":15676,"summary":15681},"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-networks","Capacitor Networks","Wire several capacitors together and the source sees one equivalent capacitance — but\nwhich? The answer comes not from how the symbols are drawn but from which conductors\nshare a node: parallel branches hold a common voltage and add, $C_{\\rm eq}=\\sum_iC_i$,\nwhile series branches share a common charge and add reciprocally. We derive both rules\nfrom charge conservation on the floating internal node, then extend the node-charge\nmethod to unequal, precharged, and stray-coupled branches and carry a worked reduction\nthrough to the charge and voltage on every element.\n",{"path":15683,"title":15684,"module":15676,"summary":15685},"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fcapacitor-energy-and-force","Capacitor Energy and Force","Charging a capacitor takes work, because every increment of charge is pushed through\nthe voltage the earlier charge already established. We total that work three\nequivalent ways, $U=Q^2\u002F(2C)=Q\\Delta V\u002F2=C(\\Delta V)^2\u002F2$, locate it in the field as\na density $u=\\tfrac12\\epsilon_0E^2$, then let the plates move. Differentiating the\nstored energy at fixed charge, or the coenergy at fixed voltage, gives the mechanical\nforce; the two boundaries differ only by the work the source supplies. We work the\nparallel-plate attraction and its electrostatic pressure in full, and follow the same\ngradient into pull-in, tilt, comb drives, and traceable force calibration.\n",{"path":15687,"title":15688,"module":15676,"summary":15689},"\u002Felectricity-and-magnetism\u002Fcapacitance\u002Fdielectric-polarization-and-breakdown","Dielectric Polarization and Breakdown","Slide a dielectric between the plates and the capacitance rises — but why, and how\nhard can you drive it before the insulator fails? Bound charge answers the first:\npolarization $\\vec P$ sets up surface and volume charge that partly cancels the\napplied field, so $\\vec D=\\varepsilon_0\\vec E+\\vec P$ separates what the circuit\ncontrols from what the material contributes. We follow the field across layered\ndielectrics and interfaces, tie permittivity and loss to their frequency dependence,\nand treat dielectric strength as a measured, geometry-dependent limit rather than one\nmaterial number.\n",{"path":15691,"title":15692,"module":15693,"summary":15694},"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fcurrent-and-resistance","Current and Resistance","Direct-Current Circuits","What does it mean, physically, for charge to flow, and what sets how hard a wire resists that flow? Current counts charge crossing a surface, $I=\\int\\vec J\\cdot\\d\\vec A$, and traces back to a slow drift of many carriers, $\\vec J=nq\\vec v_d$. We establish when the linear law $V=IR$ actually holds, how resistivity and geometry combine into bulk resistance, why real sources sag under load through their internal resistance, and how the three power forms $P=IV=I^2R=V^2\u002FR$ tie electrical work to heating and component ratings.\n",{"path":15696,"title":15697,"module":15693,"summary":15698},"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Fkirchhoff-network-analysis","Kirchhoff Network Analysis","Once a circuit has more than one loop, no amount of series-parallel folding will reduce it — you need the two conservation laws written as equations. Kirchhoff's junction law is charge conservation at a node; his loop law is energy conservation around a closed path. We turn a labelled network into a linear system in node voltages or mesh currents, fix the sign conventions so a negative answer just means a reversed arrow, and use power balance as an independent check that the algebra describes the circuit that was actually built.\n",{"path":15700,"title":15701,"module":15693,"summary":15702},"\u002Felectricity-and-magnetism\u002Fdirect-current-circuits\u002Frc-transients","RC Transients","How does a circuit get from one steady state to the next when a capacitor refuses to change its voltage all at once? Because a jump would demand infinite current, an RC circuit slides between states exponentially, with a single time constant $\\tau=RC$ that sets the whole schedule: charging fills as $1-e^{-t\u002F\\tau}$, discharge empties as $e^{-t\u002F\\tau}$. We solve the first-order loop equation, read the response off three numbers — the switch-instant voltage, the final dc voltage, and the Thevenin resistance the capacitor sees — and mark where source and probe resistance shift $\\tau$ or where a second storage element hides a mode a one-$\\tau$ fit misses.\n",{"path":15704,"title":15705,"module":15706,"summary":15707},"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-trajectories","Magnetic Trajectories","Magnetic Field","A charged particle in a magnetic field never speeds up or slows down, yet its path curves relentlessly. We work out why: the magnetic force is always perpendicular to velocity, so it does no work and bends the transverse motion into a circle of radius $r=mv_\\perp\u002F(|q|B)$ while leaving the parallel motion untouched, producing a helix. We derive the cyclotron frequency, show why it is independent of speed until relativity intervenes, and turn the geometry around: a measured curvature reads back a particle's momentum, which is how tracking detectors weigh what they cannot see.\n",{"path":15709,"title":15710,"module":15706,"summary":15711},"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fhall-effect","Hall Effect","Current tells you charge is moving, but not whether the movers are positive or negative, nor how many there are. A magnetic field settles both questions. Push current through a strip in a transverse field and the carriers pile up on one edge until a transverse electric field just balances the magnetic deflection; the sign of the resulting Hall voltage names the carrier's charge and its size counts the carriers per volume. We derive the balance $q\\vec E+q\\vec v_d\\times\\vec B=0$, read off $V_H=IB\u002F(nqt)$, and see why field-and-current reversal is what separates the real Hall signal from the offsets that mimic it.\n",{"path":15713,"title":15714,"module":15706,"summary":15715},"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-force-on-conductors","Magnetic Force on Conductors","A magnet pushes on a current-carrying wire even though the wire is electrically neutral. The reason is that each moving carrier feels the Lorentz force, and those microscopic pushes add up to a force the wire's supports must hold. We sum them into $\\d\\vec F=I\\,\\d\\vec\\ell\\times\\vec B$, collapse it to $\\vec F=I\\vec L\\times\\vec B$ for a straight segment in a uniform field, and see exactly when that shortcut fails and the full path integral is needed. The same law runs backward as a measurement: a force-versus-current slope weighs a magnetic field against a known length.\n",{"path":15717,"title":15718,"module":15706,"summary":15719},"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmagnetic-dipoles","Magnetic Dipoles","A compass needle turns to point north; a current loop in a field does the same thing, and for the same reason. Both are magnetic dipoles, and a uniform field cannot push a dipole anywhere, only twist it. We package a loop's response into one vector, the magnetic moment $\\vec\\mu=IA\\hat n$, from which torque $\\vec\\tau=\\vec\\mu\\times\\vec B$ and orientation energy $U=-\\vec\\mu\\cdot\\vec B$ both follow. Stable alignment sits at the energy minimum, a field gradient is what it takes to produce a net force $\\vec F=\\nabla(\\vec\\mu\\cdot\\vec B)$, and the same moment reappears whenever anything from an electron to a planet acts magnetic.\n",{"path":15721,"title":15722,"module":15706,"summary":15723},"\u002Felectricity-and-magnetism\u002Fmagnetic-field\u002Fmass-spectrometry","Mass Spectrometry","To weigh a single atom you cannot use a scale, so you use a magnetic field instead. A charged ion of unknown mass bends in a field by an amount that depends on its momentum and charge, so if every ion enters with the same velocity, its landing position reads off its mass-to-charge ratio directly. We build the instrument in two stages: crossed electric and magnetic fields that pass only ions with $v=E\u002FB$, and a magnetic sector that bends the survivors along $r=mv\u002F(|q|B)$. Then we ask what blurs a spectral line and how reference ions turn a position into a calibrated mass.\n",{"path":15725,"title":15726,"module":15727,"summary":15728},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmoving-charge-fields","Moving-Charge Fields","Magnetic Sources","Every magnetic field comes from charge in motion, and the simplest source is a single point charge drifting past. We work out the field it produces — normal to both the velocity and the line of sight, falling off as the inverse square — and read off why it vanishes straight ahead of the charge and peaks broadside. Summing many such charges is the bridge to steady currents, valid while speeds stay far below $c$ and the motion changes little during the time its field takes to propagate outward.\n",{"path":15730,"title":15731,"module":15727,"summary":15732},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fbiot-savart-law","Biot–Savart Law","A steady current is a continuous stream of current elements, and the Biot–Savart law hands each one a magnetic contribution — a right-hand cross product that falls off as the inverse square of distance. Summing the contributions along a conductor is a vector line integral, which we carry out for the straight wire to get the endpoint-angle formula. The infinite-wire field $B=\\mu_0 I\u002F2\\pi s$ falls out as the limit where both ends recede, and we mark how fast a finite wire departs from it and when a thin-filament model is safe.\n",{"path":15734,"title":15735,"module":15727,"summary":15736},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fcircular-current-loops","Circular Current Loops","A ring of current is the simplest source with a well-defined magnetic axis, and it is the building block of every coil and electromagnet. Symmetry kills the transverse Biot–Savart contributions along that axis and leaves a single clean integral; we evaluate it to get $B_z=\\mu_0 I R^2\u002F[2(R^2+z^2)^{3\u002F2}]$, read off the centre field $\\mu_0 I\u002F2R$, and watch it fall into the $1\u002Fz^3$ tail of a magnetic dipole far away. Stacking turns just adds their axial contributions, which is what makes a solenoid out of a pile of loops.\n",{"path":15738,"title":15739,"module":15727,"summary":15740},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Famperes-law","Ampère’s Law","When a current arrangement is symmetric enough, the Biot–Savart integral is overkill: Ampère's law, $\\oint_C\\vec B\\cdot\\d\\vec\\ell=\\mu_0 I_{\\rm enc}$, gets the field from a single line of reasoning about how much current a loop encloses. We see why the law holds for any steady current, then use cylindrical, planar, and toroidal symmetry to turn the circulation into simple algebra — the field inside and outside a wire, an infinite sheet, a solenoid, and a toroid. We also mark the catch: without symmetry the law still holds but no longer hands you the field pointwise.\n",{"path":15742,"title":15743,"module":15727,"summary":15744},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fgauss-law-for-magnetism","Gauss’s Law for Magnetism","Electric field lines start and end on charges; magnetic field lines do neither, because no one has ever found an isolated magnetic pole. That single experimental fact is Gauss's law for magnetism: the flux of $\\vec B$ through any closed surface is zero, $\\oint\\vec B\\cdot\\d\\vec A=0$, or in differential form $\\nabla\\cdot\\vec B=0$. We work through what it says — every field line that enters a closed surface must leave it, so field lines close on themselves — and, just as important, what it does not say, since flux through an open surface is generally nonzero.\n",{"path":15746,"title":15747,"module":15727,"summary":15748},"\u002Felectricity-and-magnetism\u002Fmagnetic-sources\u002Fmagnetic-materials","Magnetic Materials","Put matter in a magnetic field and its atoms respond, each acting as a tiny current loop; the aligned moments per unit volume are the magnetization $\\vec M$, whose bound currents add to the field. Separating what we control (the free current) from what the material supplies leads to $\\vec H$ and the relation $\\vec B=\\mu_0(\\vec H+\\vec M)$. We sort materials into diamagnets, paramagnets, and ferromagnets by how $\\vec M$ answers, follow a ferromagnet around its hysteresis loop, and see why the loop's area is the energy dissipated per cycle and why a sample's shape changes the field it actually feels.\n",{"path":15750,"title":15751,"module":15752,"summary":15753},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-flux","Magnetic Flux","Electromagnetic Induction","A magnetic field threading a loop collapses to one signed number, the flux, and every induced voltage in this module turns out to be a rate of change of that number — so defining the flux and its sign comes first. We define it as the surface integral of $\\vec B$ over an oriented surface, reduce it to $BA\\cos\\theta$ for a uniform field on a flat loop, and carry the flux linkage $N\\Phi_B$ of a coil. The chosen normal fixes the sign; reversing it flips the sign without touching the field. Nonuniform fields and curved surfaces force the integral, so we also build the numerical estimate and the checks that separate a reliable value from a nominal field-times-area product.\n",{"path":15755,"title":15756,"module":15752,"summary":15757},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Ffaradays-law","Faraday's Law","Move a magnet toward a coil, or ramp the current in a nearby circuit, and a voltage appears with no battery in sight. Faraday's law names the cause: the emf around a loop equals minus the rate of change of the magnetic flux through it, so any change of field, area, orientation, or position that alters the flux drives an emf. We separate the emf, which lives around the boundary whether or not current can flow, from the current that follows only when the path is closed; fix the single sign convention that ties flux to loop orientation; and read the emf off rotating coils and off flux sampled at discrete times.\n",{"path":15759,"title":15760,"module":15752,"summary":15761},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Flenzs-law","Lenz's Law","The minus sign in Faraday's law is not decoration: it decides which way the induced current flows, and it always chooses the direction that fights the change that produced it. Lenz's law reads that sign off energy conservation — a current that aided the change would be free energy — and turns it into a repeatable procedure. We fix a surface normal and a positive loop direction so the sign is calculable, then work through approaching magnets, expanding loops, coupled coils, and rotating generators, using mechanical work and Joule heating as an independent check on every direction we draw.\n",{"path":15763,"title":15764,"module":15752,"summary":15765},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmotional-emf","Motional EMF","Push a wire through a magnetic field and its free charges feel a sideways magnetic force that piles them up at the ends — a battery made of motion. Motional emf is that effect: the work per unit charge a moving conductor supplies is the line integral of $\\vec v\\times\\vec B$ along it, which for a rod moving perpendicular to both its length and the field collapses to $B\\ell v$. We chase where the energy comes from — the hand or motor fighting the magnetic drag, never the magnetic force itself — solve the sliding-rail circuit from both flux and carrier forces, and carry the idea into rotating rods, homopolar disks, generators, and the back emf of a motor.\n",{"path":15767,"title":15768,"module":15752,"summary":15769},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Feddy-currents","Eddy Currents","A wire carries current along one path; a solid block of metal offers a continuum of them, and any changing flux threading that block sets charge circulating in closed loops it chooses for itself. We ask what those eddy currents do — where they heat, where they drag, and how Lenz's law fixes their direction — and why the same circulation is a feature in an induction furnace and a loss to be suppressed in a transformer core. From a representative-loop estimate we get the scaling (heating grows with the square of frequency and flux rate) and the two design levers, lamination and resistivity, that break the paths a solid conductor would otherwise hand the current.\n",{"path":15771,"title":15772,"module":15752,"summary":15773},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fself-inductance","Self-Inductance","A coil resists changes to its own current. Drive current through it and the flux it produces threads its own turns; change that current and Faraday's law turns the coil against the source with a back emf $\\mathcal E_L=-L\\,\\d I\u002F\\d t$. We define self-inductance as the flux linkage per ampere fixed by winding and core geometry, derive the long-solenoid value $L=\\mu_0 N^2A\u002F\\ell$, and follow the consequence that dominates circuits: because a finite voltage can only sustain a finite $\\d I\u002F\\d t$, an inductor's current cannot jump — which is why opening a switch on a live coil throws a spark.\n",{"path":15775,"title":15776,"module":15752,"summary":15777},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Fmagnetic-energy","Magnetic Energy","Building current in a coil means working against its back emf, and that work does not vanish — it sits in the magnetic field as recoverable energy $U_B=\\tfrac12LI^2$, spread through space at density $u_B=B^2\u002F(2\\mu_0)$. We derive both forms, show they agree for a solenoid, and read a force out of the same energy: an armature is pulled toward higher inductance, and $B^2\u002F(2\\mu_0)$ doubles as a magnetic pressure. The lesson closes on the accounting a real switching event demands, where recoverable energy, copper heating, core loss, and clamp dissipation must balance a single ledger.\n",{"path":15779,"title":15780,"module":15752,"summary":15781},"\u002Felectricity-and-magnetism\u002Felectromagnetic-induction\u002Frl-circuits","RL Circuits","Put a resistor and an inductor in series and the current cannot switch on or off at will: it climbs to $V_0\u002FR$ and falls away exponentially on a single time scale $\\tau=L\u002FR$ set by how much flux the coil hoards against how fast the resistor bleeds it. We solve the turn-on and turn-off, then confront the practical sting — because the coil's current refuses to stop instantly, breaking its path throws up a large voltage, which is why real inductive circuits carry freewheel diodes and clamps that trade voltage stress against how quickly the current dies.\n",{"path":15783,"title":15784,"module":15785,"summary":15786},"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-fundamentals","AC Fundamentals","Alternating Current","A wall socket delivers a voltage that averages to zero over each cycle, yet it still heats a filament and runs a motor. The resolution is that dissipation follows the mean of the square, not the mean, so we define the root-mean-square value that makes an alternating source the equal of a DC one for resistive heating. We show a sinusoid's RMS is its peak divided by $\\sqrt2$, work out the average power an ideal resistor draws when its current stays in phase with the applied voltage, and separate the peak, average, and RMS descriptions that a single number cannot combine.\n",{"path":15788,"title":15789,"module":15785,"summary":15790},"\u002Felectricity-and-magnetism\u002Falternating-current\u002Freactance","Reactance","A resistor obeys Ohm's law instant by instant, but a capacitor responds to how fast its voltage changes and an inductor to how fast its current changes. Under a steady sinusoid that rate-dependence collapses to a fixed quarter-cycle phase shift and a frequency-dependent amplitude ratio, the reactance. We derive $X_C=1\u002F(\\omega C)$ and $X_L=\\omega L$, adopt phasors to turn the defining derivatives into multiplication by $j\\omega$ so a single complex impedance carries amplitude and phase together, and track the energy an ideal reactance stores and returns without dissipating it. Real windings and dielectrics add loss, leakage, and self-resonance that bound where the ideal formulas hold.\n",{"path":15792,"title":15793,"module":15785,"summary":15794},"\u002Felectricity-and-magnetism\u002Falternating-current\u002Frlc-resonance","RLC Resonance","Put a resistor, inductor, and capacitor in one loop and their reactances work against each other: inductive reactance grows with frequency while capacitive reactance shrinks, and at one frequency they cancel exactly. There the branch looks purely resistive, the current peaks, and the inductor and capacitor voltages can swing far above the source. We locate that resonance at $\\omega_0=1\u002F\\sqrt{LC}$, measure how sharp the peak is with the quality factor $Q=\\omega_0L\u002FR$, tie its half-power bandwidth $R\u002FL$ to the ringdown of the unforced circuit, and read the same poles off as bandpass and peaked filters at the R, L, or C terminals.\n",{"path":15796,"title":15797,"module":15785,"summary":15798},"\u002Felectricity-and-magnetism\u002Falternating-current\u002Fac-power","AC Power","Multiply an AC load's RMS voltage by its RMS current and you get an answer in volt-amperes that the wiring must carry, but not in general the watts the load consumes. The phase between voltage and current splits that product into a part that does net work and a part that merely sloshes energy back and forth. We derive the average power $P=V_{\\rm rms}I_{\\rm rms}\\cos\\phi$, package amplitude and phase into complex power $S=P+jQ$ so that real, reactive, and apparent power form one right triangle, and see why a harmonic-rich current forces the time-domain definition $P=\\langle vi\\rangle$ in place of a single phase angle.\n",{"path":15800,"title":15801,"module":15785,"summary":15802},"\u002Felectricity-and-magnetism\u002Falternating-current\u002Ftransformers","Transformers","Two coils sharing an iron core exchange no charge, yet a changing current in one drives a voltage in the other, and the ratio of their turns sets how voltage and current trade off between the windings. That lets a transformer step a voltage up or down, isolate two circuits, and make a load look larger or smaller to the source by the square of the turns ratio. We build the ideal ratio element from Faraday's law and the dot convention, derive the reflected-impedance rule, then add the winding resistance, leakage, magnetizing current, and core loss that turn the ideal ratios into real regulation, efficiency, and a bounded voltage-frequency range.\n",{"path":15804,"title":15805,"module":15806,"summary":15807},"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdisplacement-current","Displacement Current","Maxwell’s Equations and Electromagnetic Waves","Ampère's law asks for the current through a surface bounded by a loop, but a charging capacitor breaks it: slide the surface off the wire and into the gap and the enclosed conduction current drops to zero, while the magnetic field around the loop plainly does not. Maxwell's repair is to count a changing electric flux as itself a source of magnetic circulation. We derive the displacement-current term $\\varepsilon_0\\,\\d\\Phi_E\u002F\\d t$, show that charge continuity demands it, compute the magnetic field it produces inside a charging capacitor, and see how it closes the Ampère–Maxwell law so that electric and magnetic fields can sustain one another as a wave.\n",{"path":15809,"title":15810,"module":15806,"summary":15811},"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-waves","Electromagnetic Waves","Once a changing electric flux can drive a magnetic field, the two curl laws feed each other: a disturbance in one regenerates the other, and the pair walks off through empty space with no medium holding it up. We take the curl of Faraday's law, land on a wave equation whose speed is fixed entirely by $\\mu_0$ and $\\varepsilon_0$, and find that $c=1\u002F\\sqrt{\\mu_0\\varepsilon_0}$ falls out of purely electric and magnetic constants. The plane-wave solution then fixes the geometry — $\\vec E$, $\\vec B$, and the propagation direction mutually perpendicular, oscillating in phase, with amplitudes locked at $E=cB$ — a set of independent predictions any real measurement must meet at once.\n",{"path":15813,"title":15814,"module":15806,"summary":15815},"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Felectromagnetic-momentum","Electromagnetic Momentum","A light beam carries no mass, yet it pushes: shine it on a surface and the surface feels a force. We trace that force back to the fields, which store energy with density $\\varepsilon_0E^2$ and carry it along the Poynting vector $\\vec S=\\vec E\\times\\vec B\u002F\\mu_0$. Because that energy also carries momentum $U\u002Fc$, an absorbed beam presses with $I\u002Fc$ and a mirror with $2I\u002Fc$. We derive the Poynting theorem as local energy conservation, tie intensity to field amplitude, and work the momentum balance carefully enough that oblique incidence, partial reflection, and finite beams all drop out of one accounting.\n",{"path":15817,"title":15818,"module":15806,"summary":15819},"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fdipole-radiation","Dipole Radiation","Only accelerating charge radiates, and the simplest accelerator is a charge sloshing back and forth: an oscillating electric dipole. We work out the field it throws off, keeping the part that survives to large distance — the $1\u002Fr$ radiation field whose intensity goes as $\\sin^2\\theta\u002Fr^2$, zero along the dipole axis and strongest broadside. From it follow the $\\omega^4$ scaling of total radiated power, radiation resistance as the feed's view of that escaping power, and, through reciprocity, the fact that a good transmitter receives well in the same directions. The near-zone terms that fall off faster carry no net power, and we mark carefully where each description is allowed to be used.\n",{"path":15821,"title":15822,"module":15806,"summary":15823},"\u002Felectricity-and-magnetism\u002Fmaxwell-electromagnetic-waves\u002Fpolarization","Polarization","A plane wave still leaves one thing free: which way its electric field points as it oscillates. That freedom is polarization, set entirely by the relative amplitude and phase of the two transverse field components — in phase gives a line, equal amplitudes a quarter cycle apart give a circle, everything else an ellipse. We work out how a linear analyzer reads a state through Malus's law $I=I_0\\cos^2\\theta$, why that scan alone cannot tell circular light from unpolarized, and how a quarter-wave plate plus a few analyzer settings recover the full Stokes vector and the degree of polarization.\n",{"path":15825,"title":15826,"module":15827,"summary":15828},"\u002Felectricity-and-magnetism\u002Foptics\u002Freflection-and-refraction","Reflection and Refraction","Geometrical Optics","Light meeting a boundary between two transparent media splits into a reflected ray and a bent transmitted one, and predicting where those rays go is the whole starting point of geometrical optics. Fixing one convention — every angle measured from the surface normal — we get reflection's equal angles and derive Snell's law $n_1\\sin\\theta_1=n_2\\sin\\theta_2$ from wavefront timing. That single relation, applied once or twice, yields the critical angle and total internal reflection, prism deviation, the lateral shift through a window, apparent depth, and a fiber's acceptance cone; a wavelength-dependent index then adds dispersion. We mark throughout where the ray picture is trustworthy: feature sizes large against the wavelength and clean interface geometry.\n",{"path":15830,"title":15831,"module":15827,"summary":15832},"\u002Felectricity-and-magnetism\u002Foptics\u002Fthin-lenses","Thin Lenses","A lens gathers the light spreading from one point back onto another, and a single paraxial relation $1\u002Fs+1\u002Fs'=1\u002Ff$ predicts where that image lands and how large it is. We collapse two refractions into one bending plane, read image position and orientation off the three principal rays, and trace focal length back to glass and curvature through the lensmaker equation. Sign conventions carry the physics here — they separate real from virtual images and upright from inverted — so we drill them before chaining lenses in sequence and in contact. The lesson ends on how focal length is actually measured on a bench, and where finite thickness, aperture, and dispersion break the thin-lens picture.\n",{"path":15834,"title":15835,"module":15827,"summary":15836},"\u002Felectricity-and-magnetism\u002Foptics\u002Fspherical-mirrors","Spherical Mirrors","Curve a mirror and it stops merely reflecting an image and starts forming one: the same $1\u002Fs+1\u002Fs'=1\u002Ff$ that governs lenses reappears, now with $f=R\u002F2$ and reflected rays and object sharing one side of the glass. We derive the mirror equation from the reflection geometry of a single paraxial ray, then let signed distances do the sorting — real inverted images on the near branch, virtual upright ones behind the surface — and check the concave, convex, and plane-mirror limits against each other. The second half turns to how focal length is actually measured on a bench, by finite conjugates, distant targets, return imaging, and sagitta, and to the aperture and off-axis aberrations the single paraxial focus cannot capture.\n",{"path":15838,"title":15839,"module":6,"summary":6},"\u002Felectricity-and-magnetism","Electricity & Magnetism",{"path":15841,"title":15842,"module":15843,"summary":15844},"\u002Flinear-algebra\u002Flinear-systems\u002Fsystems-and-echelon-forms","Systems of Linear Equations and Row Reduction","Linear Equations in Linear Algebra","A linear system is a finite set of linear equations in shared variables. Elementary row operations rewrite it without changing its solution set, and reducing the augmented matrix to echelon form decides both existence and uniqueness. Pivot positions say whether the solution set is empty, a single point, or infinite.\n",{"path":15846,"title":15847,"module":15843,"summary":15848},"\u002Flinear-algebra\u002Flinear-systems\u002Fvector-and-matrix-equations","Vector Equations and the Matrix Equation Ax = b","The same linear system reads three equivalent ways: a system of equations, a vector equation asking whether b is a linear combination of fixed vectors, and a matrix equation Ax = b. Ax is the linear combination of A's columns weighted by x, so consistency for a given b means b lies in the span of the columns, and consistency for every b means the columns span all of R^m.\n",{"path":15850,"title":15851,"module":15843,"summary":15852},"\u002Flinear-algebra\u002Flinear-systems\u002Fsolution-sets-and-applications","Solution Sets and Applied Linear Systems","A homogeneous system Ax = 0 has a solution set that is a span through the origin; a consistent Ax = b has that same span translated by any one particular solution. Parametric vector form writes both explicitly. The structure shows up in applied systems with many solutions: equilibrium prices, balanced chemical reactions, network flows, weight-loss diets, and migration models.\n",{"path":15854,"title":15855,"module":15843,"summary":15856},"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-independence","Linear Independence","A set of vectors is linearly independent when the only linear combination equal to zero is the trivial one; otherwise a dependence relation writes one vector in terms of the others. For the columns of A the question becomes whether Ax = 0 has only the trivial solution — a pivot in every column. Counting pivots settles independence, and any set with more vectors than entries is automatically dependent.\n",{"path":15858,"title":15859,"module":15843,"summary":15860},"\u002Flinear-algebra\u002Flinear-systems\u002Flinear-transformations","Linear Transformations and Their Matrices","Reading A as an action rather than an array, x maps to Ax is a transformation from R^n to R^m. The ones that preserve addition and scalar multiplication are the linear transformations, and every one is x maps to Ax for a unique standard matrix whose columns are the images of the standard basis vectors. Onto and one-to-one translate into the span and independence of those columns.\n",{"path":15862,"title":15863,"module":15864,"summary":15865},"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-operations","Matrix Operations","Matrix Algebra","Matrices add and scale entrywise, but their product is defined so that multiplication corresponds to composition of linear maps: the columns of AB are A applied to the columns of B. From that requirement follow the row-column rule, the algebra of products (associative and distributive but not commutative), powers, and the transpose.\n",{"path":15867,"title":15868,"module":15864,"summary":15869},"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fmatrix-inverse-and-invertibility","The Inverse and the Invertible Matrix Theorem","The inverse of a square matrix is the matrix analogue of a reciprocal, defined by AA⁻¹ = I. A closed form settles the 2×2 case; the Gauss–Jordan algorithm row reduces [A | I] to [I | A⁻¹] in general; and elementary matrices record single row operations. The Invertible Matrix Theorem collects a dozen equivalent conditions for invertibility into one statement.\n",{"path":15871,"title":15872,"module":15864,"summary":15873},"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fpartitioned-matrices-and-lu","Block Matrices and the LU Factorization","Partitioning a matrix into blocks lets sums, products, and inverses be computed block by block, as if the submatrices were scalars. Block structure also underlies the LU factorization A = LU, which splits solving Ax = b into two fast triangular solves and repays the cost whenever many systems share one coefficient matrix.\n",{"path":15875,"title":15876,"module":15864,"summary":15877},"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fsubspaces-dimension-rank","Subspaces of Rⁿ, Dimension, and Rank","A subspace is a set closed under addition and scalar multiplication. Every matrix carries two: the column space of all attainable outputs Ax, and the null space of all solutions of Ax = 0. A basis measures each with a minimal spanning set, dimension counts it, and the Rank Theorem ties pivots and free variables together as rank + nullity = n.\n",{"path":15879,"title":15880,"module":15864,"summary":15881},"\u002Flinear-algebra\u002Fmatrix-algebra\u002Fapplications-leontief-and-graphics","Applications: Leontief Economics and Computer Graphics","The Leontief input–output model balances an economy through (I − C)x = d and expands the inverse as a geometric series in the consumption matrix. Computer graphics moves figures with matrix products, using homogeneous coordinates so that translation and perspective projection become matrix multiplications too.\n",{"path":15883,"title":15884,"module":15885,"summary":15886},"\u002Flinear-algebra\u002Fdeterminants\u002Fdeterminants-and-cofactors","Introduction to Determinants","Determinants","The determinant of a square matrix is defined recursively by cofactor expansion: an n-by-n determinant is a signed sum of (n-1)-by-(n-1) determinants built from the first row. The expansion can equally run along any row or down any column, and a triangular matrix has determinant equal to the product of its diagonal.\n",{"path":15888,"title":15889,"module":15885,"summary":15890},"\u002Flinear-algebra\u002Fdeterminants\u002Fproperties-of-determinants","Properties of Determinants","Row operations act on the determinant in three predictable ways, and this turns row reduction into a fast algorithm: the determinant is the product of the pivots times a sign for the interchanges. The same properties yield the invertibility test det A is nonzero, the transpose identity, and the multiplicative law det(AB) equals det A times det B.\n",{"path":15892,"title":15893,"module":15885,"summary":15894},"\u002Flinear-algebra\u002Fdeterminants\u002Fcramer-volume-and-area","Cramer's Rule, Volume, and Linear Transformations","Cramer's rule writes each unknown of an invertible system as a ratio of determinants, and the same idea gives a closed formula for the inverse through the adjugate. Geometrically the absolute determinant is the area of the parallelogram or the volume of the parallelepiped spanned by the columns, so a linear map scales every region's measure by that factor.\n",{"path":15896,"title":15897,"module":15898,"summary":15899},"\u002Flinear-algebra\u002Fvector-spaces\u002Fvector-spaces-and-subspaces","Vector Spaces and Subspaces","Vector Spaces","A vector space is any set closed under addition and scalar multiplication that obeys ten algebraic axioms. The same axioms that govern arrows in the plane govern polynomials, functions, matrices, and infinite signals, so one theory covers them all. A subspace is a subset that is a vector space in its own right, tested by three conditions, and the span of any set of vectors is the smallest subspace containing them.\n",{"path":15901,"title":15902,"module":15898,"summary":15903},"\u002Flinear-algebra\u002Fvector-spaces\u002Fnull-and-column-spaces","Null Spaces, Column Spaces, and Linear Transformations","Two subspaces sit inside every matrix. The null space collects all solutions of $Ax = 0$ and lives in the domain; the column space collects every attainable $Ax$ and lives in the codomain. One is defined implicitly by a condition, the other explicitly by a spanning set, and the same pair appears for an abstract linear transformation as its kernel and range.\n",{"path":15905,"title":15906,"module":15898,"summary":15907},"\u002Flinear-algebra\u002Fvector-spaces\u002Fbases-and-independent-sets","Linearly Independent Sets and Bases","A basis is a spanning set with no redundancy: linearly independent and still large enough to reach every vector. The spanning-set theorem shows any spanning set can be trimmed to a basis by discarding dependent vectors, and the pivot columns of a matrix give a basis for its column space. Independence and spanning are defined for abstract spaces exactly as in $\\mathbb{R}^n$.\n",{"path":15909,"title":15910,"module":15898,"summary":15911},"\u002Flinear-algebra\u002Fvector-spaces\u002Fcoordinate-systems","Coordinate Systems","Fixing a basis assigns every vector a unique list of coordinates, turning an abstract space into $\\mathbb{R}^n$. The coordinate mapping is a one-to-one linear transformation onto $\\mathbb{R}^n$ — an isomorphism — so any $n$-dimensional space is indistinguishable from $\\mathbb{R}^n$ as far as vector-space computations go. In $\\mathbb{R}^n$ the change-of-coordinates matrix $P_B$ and its inverse convert between basis coordinates and standard coordinates.\n",{"path":15913,"title":15914,"module":15898,"summary":15915},"\u002Flinear-algebra\u002Fvector-spaces\u002Fdimension-and-rank","The Dimension of a Vector Space and Rank","Every basis of a space has the same number of vectors, and that number is the dimension. Rank is the dimension of the column space, equal to the dimension of the row space and to the number of pivots. The Rank Theorem, rank plus nullity equals the number of columns, ties the four fundamental subspaces of a matrix together and adds six lines to the Invertible Matrix Theorem.\n",{"path":15917,"title":15918,"module":15898,"summary":15919},"\u002Flinear-algebra\u002Fvector-spaces\u002Fchange-of-basis","Change of Basis","Two bases give the same vector two different coordinate vectors, and a single invertible matrix converts between them. Its columns are the coordinate vectors of the old basis expressed in the new one, and its inverse reverses the conversion. In $\\mathbb{R}^n$ the change-of-coordinates matrix between two bases is found by one row reduction.\n",{"path":15921,"title":15922,"module":15898,"summary":15923},"\u002Flinear-algebra\u002Fvector-spaces\u002Fdifference-equations-and-markov","Applications: Difference Equations and Markov Chains","The solutions of an nth-order linear difference equation form an $n$-dimensional vector space, so finding $n$ independent solutions gives them all. A Markov chain evolves a probability distribution by repeated multiplication by a stochastic matrix, and a regular chain converges to a unique steady-state vector fixed by that matrix. Both applications turn a dynamic process into a subspace or a fixed-point question.\n",{"path":15925,"title":15926,"module":15927,"summary":15928},"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-eigenvalues","Eigenvectors and Eigenvalues","Eigenvalues and Eigenvectors","An eigenvector of a square matrix is a nonzero vector the matrix only stretches; its eigenvalue is the stretch factor. The eigenspace of an eigenvalue is the null space of A minus lambda times the identity, the eigenvalues of a triangular matrix are its diagonal entries, and eigenvectors for distinct eigenvalues are linearly independent.\n",{"path":15930,"title":15931,"module":15927,"summary":15932},"\u002Flinear-algebra\u002Feigenvalues\u002Fthe-characteristic-equation","The Characteristic Equation","The eigenvalues of a matrix are the roots of its characteristic polynomial det(A minus lambda I). This degree-n polynomial carries an algebraic multiplicity at each repeated root, a nonzero determinant is equivalent to zero not being an eigenvalue, and similar matrices share a characteristic polynomial and hence the same eigenvalues.\n",{"path":15934,"title":15935,"module":15927,"summary":15936},"\u002Flinear-algebra\u002Feigenvalues\u002Fdiagonalization","Diagonalization","A matrix is diagonalizable when it factors as A equals P D P inverse with D diagonal, which happens exactly when it has n linearly independent eigenvectors. The factorization computes matrix powers cheaply, distinct eigenvalues guarantee it, and a repeated eigenvalue permits it only when its eigenspace dimension equals its multiplicity.\n",{"path":15938,"title":15939,"module":15927,"summary":15940},"\u002Flinear-algebra\u002Feigenvalues\u002Feigenvectors-and-linear-transformations","Eigenvectors and Linear Transformations","Every linear transformation between finite-dimensional spaces has a matrix relative to chosen bases, built from the coordinate vectors of the images of the basis vectors. For a map from a space to itself, an eigenvector basis makes that matrix diagonal, and that change of basis is diagonalization; the matrices similar to A are the representations of the map in every basis.\n",{"path":15942,"title":15943,"module":15927,"summary":15944},"\u002Flinear-algebra\u002Feigenvalues\u002Fcomplex-eigenvalues","Complex Eigenvalues","A real matrix with no real eigenvalues still has complex ones, occurring in conjugate pairs. A real 2-by-2 matrix with eigenvalue a plus b i is similar to a rotation-scaling matrix, whose rotation angle is the argument of the eigenvalue and whose scale factor is its modulus; the modulus decides whether the trajectories close up, spiral in, or spiral out.\n",{"path":15946,"title":15947,"module":15927,"summary":15948},"\u002Flinear-algebra\u002Feigenvalues\u002Fdynamical-systems","Discrete and Continuous Dynamical Systems","Eigenvalues govern the long-term behavior of a system that evolves by x becomes A x or by x prime equals A x. An eigenvector basis decouples both kinds of system into independent scalar equations; the eigenvalues then classify the origin as attractor, repeller, saddle, or spiral, and the dominant eigenpair fixes the growth rate and limiting direction.\n",{"path":15950,"title":15951,"module":15927,"summary":15952},"\u002Flinear-algebra\u002Feigenvalues\u002Fpower-method","Iterative Estimates for Eigenvalues","When only a numerical eigenvalue is needed, iteration is preferred over the characteristic polynomial. The power method repeatedly multiplies by A to converge on the dominant eigenvalue and its eigenvector; the Rayleigh quotient sharpens the estimate for symmetric matrices; and the inverse power method targets any eigenvalue near a known guess.\n",{"path":15954,"title":15955,"module":15956,"summary":15957},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-length-orthogonality","Inner Product, Length, and Orthogonality","Orthogonality and Least Squares","The dot product turns the algebra of vectors in R^n into geometry: length, distance, and perpendicularity. The inner product yields the norm, the Pythagorean theorem, and the orthogonal complement, and the null space of a matrix is the orthogonal complement of its row space.\n",{"path":15959,"title":15960,"module":15956,"summary":15961},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Forthogonal-sets-and-projections","Orthogonal Sets and Orthogonal Projections","An orthogonal basis makes coordinates trivial: each weight is a single dot product, no linear system required. Orthogonal and orthonormal bases give a direct projection formula onto a line and onto a subspace, the orthogonal decomposition and best-approximation theorems, and the matrix form U U-transpose of a projection.\n",{"path":15963,"title":15964,"module":15956,"summary":15965},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fgram-schmidt-and-qr","The Gram-Schmidt Process and QR Factorization","Gram-Schmidt turns any basis into an orthogonal one by repeatedly subtracting off projections onto the span already built. Normalizing the result and recording the coefficients factors the matrix as A = QR, with Q orthonormal and R upper triangular, the factorization behind stable least-squares and eigenvalue algorithms.\n",{"path":15967,"title":15968,"module":15956,"summary":15969},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-problems","Least-Squares Problems","When Ax = b has no solution, the least-squares solution makes Ax as close to b as possible. The closest Ax is the projection of b onto the column space, and the vector that produces it solves the normal equations A-transpose A x = A-transpose b. Uniqueness, the residual error, and the stabler QR route follow.\n",{"path":15971,"title":15972,"module":15956,"summary":15973},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Fleast-squares-applications","Applications to Linear Models","Curve fitting is a least-squares problem in statistical notation. The least-squares line, polynomial fits, and multiple regression all reduce to X beta = y with a design matrix X built from the data, solved by the same normal equations.\n",{"path":15975,"title":15976,"module":15956,"summary":15977},"\u002Flinear-algebra\u002Forthogonality-least-squares\u002Finner-product-spaces","Inner Product Spaces","Promoting the four properties of the dot product to axioms defines an inner product on any vector space, including spaces of functions. Length, distance, orthogonality, Gram-Schmidt, and best approximation all carry over, along with the Cauchy-Schwarz and triangle inequalities and the integral inner product behind Fourier approximation.\n",{"path":15979,"title":15980,"module":15981,"summary":15982},"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fdiagonalizing-symmetric-matrices","Diagonalization of Symmetric Matrices","Symmetric Matrices, Quadratic Forms, and the SVD","A symmetric matrix is one that equals its own transpose. Every such matrix can be diagonalized by an orthogonal change of basis, A = PDPᵀ, with real eigenvalues and perpendicular eigenvectors. This is the Spectral Theorem, and it rewrites A as a weighted sum of rank-one projections onto its eigenvectors.\n",{"path":15984,"title":15985,"module":15981,"summary":15986},"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fquadratic-forms","Quadratic Forms","A quadratic form xᵀAx is the second-degree analogue of a linear map, attached to a symmetric matrix A. Orthogonal diagonalization changes variables to the eigenbasis, removing all cross-terms and rotating the form into standard position. The signs of the eigenvalues then classify it as definite or indefinite.\n",{"path":15988,"title":15989,"module":15981,"summary":15990},"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fconstrained-optimization","Constrained Optimization","Maximizing a quadratic form xᵀAx over the unit sphere has an exact answer: the maximum is the largest eigenvalue of A, attained at its eigenvector, and the minimum is the smallest eigenvalue. Adding orthogonality constraints peels off the eigenvalues in order, characterizing the whole spectrum by optimization.\n",{"path":15992,"title":15993,"module":15981,"summary":15994},"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsingular-value-decomposition","The Singular Value Decomposition","The singular value decomposition factors any m×n matrix as A = UΣVᵀ, with orthogonal U and V and a nonnegative diagonal Σ of singular values. The singular values are the square roots of the eigenvalues of AᵀA, and they describe the matrix geometrically as a rotation, an axiswise stretch, and another rotation, exposing rank, the four fundamental subspaces, and a best low-rank approximation.\n",{"path":15996,"title":15997,"module":15981,"summary":15998},"\u002Flinear-algebra\u002Fsymmetric-quadratic-svd\u002Fsvd-applications-pca-imaging","Applications: Image Processing and Statistics","Principal component analysis diagonalizes the covariance matrix of a data set, producing uncorrelated variables ordered by variance. The leading components capture most of the variation, which reduces dimension, compresses images through low-rank SVD approximation, and connects directly to the singular values of the data matrix.\n",{"path":16000,"title":16001,"module":16002,"summary":16003},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-thinking-and-matrix-computation","Numerical Thinking and Matrix Computation","Numerical Linear Algebra","Numerical analysis builds efficient discrete algorithms for continuous problems, and its cost is dominated as much by memory traffic as by arithmetic. Block matrix calculus, flop counts, and the BLAS efficiency ratio fix the cost model; triangular and unitary matrices are the two computational building blocks every factorization rests on.\n",{"path":16005,"title":16006,"module":16002,"summary":16007},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Flu-and-cholesky","LU and Cholesky Factorization in Practice","Gaussian elimination, read as a factorization A = LU, turns a linear system into two triangular solves. A single near-zero pivot wrecks it, so partial pivoting reorders rows to pick the largest available pivot and makes the method work for every invertible matrix. For symmetric positive-definite systems, Cholesky halves the cost and needs no pivoting.\n",{"path":16009,"title":16010,"module":16002,"summary":16011},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fconditioning-and-floating-point","Conditioning and Floating-Point Arithmetic","A problem's condition number measures how much its answer moves when its data is perturbed, independent of any algorithm. Subtraction is ill-conditioned under cancellation, and for a linear system the amplifier is the matrix condition number κ(A). Floating-point arithmetic supplies the perturbation: every real number is rounded to within a relative machine precision, so even perfect computation inherits an error of order κ times the unit roundoff.\n",{"path":16013,"title":16014,"module":16002,"summary":16015},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fstability-and-error-analysis","Numerical Stability and Backward Error Analysis","An algorithm is backward stable when its computed answer is the exact answer to a slightly perturbed problem. Combined with the condition number this gives the governing rule of thumb: forward error is at most condition times stability. Three cancellation case studies make the point, then the residual-based backward error applies it to Ax = b and shows why partial pivoting keeps Gaussian elimination stable.\n",{"path":16017,"title":16018,"module":16002,"summary":16019},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fqr-and-numerical-least-squares","QR, Householder, and Numerical Least Squares","The least-squares problem reduces to the normal equations, but forming AᵀA squares the condition number and can wreck accuracy. The stable route computes a QR factorization directly on A and solves Rx = Qᵀb. Householder reflectors build that QR one column at a time using length-preserving reflections, the unconditionally backward-stable building block behind every serious least-squares solver.\n",{"path":16021,"title":16022,"module":16002,"summary":16023},"\u002Flinear-algebra\u002Fnumerical-linear-algebra\u002Fnumerical-eigenvalues-and-svd","Numerical Eigenvalue Problems and the SVD","Eigenvalues cannot be found by a formula for large matrices, so they are found by iteration. Power and inverse iteration converge to one eigenvector at a rate set by the eigenvalue gap; the QR algorithm sweeps a matrix to Schur form and, with a good shift and a Hessenberg reduction, computes the whole spectrum in cubic time. Singular values follow from the same machinery applied without ever forming AᵀA.\n",{"path":16025,"title":16026,"module":16027,"summary":16028},"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-combinations","Affine Combinations","Geometry of Vector Spaces","An affine combination is a linear combination whose weights sum to one. The affine hull of a set is the smallest flat containing it: a point, a line, a plane, or a translated subspace. Homogeneous coordinates turn every affine combination into an ordinary linear combination one dimension up.\n",{"path":16030,"title":16031,"module":16027,"summary":16032},"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Faffine-independence-and-barycentric-coordinates","Affine Independence and Barycentric Coordinates","Affine independence is linear independence for the translated or lifted points, and it guarantees each point of an affine hull a unique weight vector. Those weights are barycentric coordinates: centers of mass, ratios of triangle areas, and the interpolation rule behind smooth shading in computer graphics.\n",{"path":16034,"title":16035,"module":16027,"summary":16036},"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fconvex-combinations-and-convex-sets","Convex Combinations and Convex Sets","A convex combination is an affine combination with nonnegative weights, and the convex hull of a set is the smallest convex set containing it. Convex sets are closed under intersection, and Carathéodory's theorem bounds how many points a convex combination in $\\mathbb{R}^n$ ever needs: at most $n+1$.\n",{"path":16038,"title":16039,"module":16027,"summary":16040},"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fhyperplanes-and-polytopes","Hyperplanes and Polytopes","A hyperplane is a level set of a linear functional, the set where an inner product equals a constant. Hyperplanes separate disjoint convex sets and support them at their boundaries. Polytopes are convex hulls of finite point sets; their vertices are the extreme points, and a linear functional attains its extremes there.\n",{"path":16042,"title":16043,"module":16027,"summary":16044},"\u002Flinear-algebra\u002Fgeometry-of-vector-spaces\u002Fcurves-and-surfaces","Curves and Surfaces","Bézier curves are affine combinations of control points with polynomial weights, so they lie in the convex hull of those points and bend toward them. The de Casteljau algorithm evaluates them by repeated interpolation, a matrix form factors them for computation, and matching endpoints and tangents joins segments into smooth curves and surfaces.\n",{"path":16046,"title":16047,"module":6,"summary":6},"\u002Flinear-algebra","Linear Algebra",{"path":16049,"title":16050,"module":6,"summary":6},"\u002Ftheory-of-computation","Theory of Computation",{"path":16052,"title":16053,"module":14862,"summary":16054},"\u002Fcomputer-architecture\u002Ffoundations\u002Fbits-bytes-and-words","Bits, Bytes, and Words","Everything a machine stores is a string of bits grouped into bytes. We set out binary and hexadecimal, the byte as the unit of addressing, the word as the machine's natural integer size, and byte ordering — why the same four bytes read as 0x01234567 on one machine and 0x67452301 on another.\n",{"path":16056,"title":16057,"module":14862,"summary":16058},"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-representation","Integer Representation","A fixed-width byte string is just a pattern; what makes it a number is the rule we read it by. We define unsigned encoding and two's complement — where the top bit carries a negative weight — derive the ranges UMax, TMin, and TMax, and show how the same bits reinterpret between signed and unsigned, how widening sign-extends, and what truncation throws away.\n",{"path":16060,"title":16061,"module":14862,"summary":16062},"\u002Fcomputer-architecture\u002Ffoundations\u002Finteger-arithmetic","Integer Arithmetic","Fixed-width integer arithmetic is arithmetic modulo a power of two: add past the top and the result wraps. We work out unsigned and two's-complement addition and the rules that detect their overflow, why negation is a complement-plus-one, how multiplication truncates to the low-order bits and how compilers turn constant multiplies into shifts and adds, why C declares signed overflow undefined, and the bias fix that keeps shift-based signed division rounding toward zero.\n",{"path":16064,"title":16065,"module":14862,"summary":16066},"\u002Fcomputer-architecture\u002Ffoundations\u002Ffloating-point","Floating Point","IEEE-754 trades the exactness of integers for enormous range by storing numbers as sign, exponent, and fraction — scientific notation in binary. We lay out the single and double formats, the bias that encodes the exponent, the three regimes (normalized, denormalized, special), a worked encode\u002Fdecode, the four rounding modes and round-to-even at the bit level, why addition is not associative, the pitfalls of float-int conversion, and why 0.1 has no exact binary representation.\n",{"path":16068,"title":16069,"module":14862,"summary":16070},"\u002Fcomputer-architecture\u002Ffoundations\u002Fboolean-algebra-and-bit-manipulation","Boolean Algebra and Bit Manipulation","Treat a word as a vector of independent bits and the bitwise operators become an algebra. We define AND, OR, NOT, and XOR as bit vectors, build the masking idioms that set, clear, toggle, and test individual bits, extract fields with zero- and sign-extension, count set bits three ways, derive the classic x & (x - 1) family of tricks, and distinguish bitwise operators from C's short-circuiting logical operators.\n",{"path":16072,"title":16073,"module":16074,"summary":16075},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fthe-machines-view","The Machine's View","Machine-Level Programming","The instruction set architecture is the contract a compiler writes against: the program counter, sixteen integer registers with their sub-register widths, and the condition codes. We follow one C function down through gcc to assembly, learn to read an instruction as operation plus operands, and fix the vocabulary the rest of the module uses.\n",{"path":16077,"title":16078,"module":16074,"summary":16079},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fdata-movement","Data Movement","Most instructions a program runs simply move data. We cover the mov family and its size suffixes, the three operand forms, the full memory addressing mode D(Rb,Ri,S) and its special cases, lea for address arithmetic, and how push and pop manipulate the stack pointer %rsp on a stack that grows toward lower addresses.\n",{"path":16081,"title":16082,"module":16074,"summary":16083},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farithmetic-and-logic","Arithmetic and Logic","The ALU instructions that compute on register and memory values: add, sub, and imul; the unary inc\u002Fdec\u002Fneg\u002Fnot; the shifts sal\u002Fshr\u002Fsar; the bitwise and\u002For\u002Fxor; and lea reused as a fast arithmetic trick. Each binary operation also sets the condition-code flags CF, ZF, SF, and OF, which cmp and test compute without keeping a result.\n",{"path":16085,"title":16086,"module":16074,"summary":16087},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fcontrol-flow","Control Flow","How a flat instruction stream realizes branches and loops. The conditional jumps read the condition-code flags; set instructions turn flags into a 0\u002F1 byte. We translate if\u002Felse into the standard compare-and-branch pattern, while\u002Ffor loops into the guarded-do form, and dense switches into jump tables that index a target directly.\n",{"path":16089,"title":16090,"module":16074,"summary":16091},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fprocedures","Procedures","How a function call works at the machine level: the run-time stack, call and ret passing control through a saved return address, the System V convention that routes the first six arguments through %rdi..%r9 and the result through %rax, the caller-saved versus callee-saved split, the stack frame, and a recursive factorial traced through its frames.\n",{"path":16093,"title":16094,"module":16074,"summary":16095},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Farrays-structs-and-alignment","Arrays, Structs, and Alignment","How aggregate data lays out in memory. Arrays as base-plus-scaled-index, the row-major ordering of multidimensional arrays, pointer arithmetic in units of the pointed-to type, struct fields at fixed byte offsets, the overlapping storage of unions, and the alignment rules that force padding into a struct.\n",{"path":16097,"title":16098,"module":16074,"summary":16099},"\u002Fcomputer-architecture\u002Fmachine-level-x86-64\u002Fmemory-layout-and-buffer-overflows","Memory Layout and Buffer Overflows","The process address space — text, data, heap, and stack — and the classic vulnerability it enables. A stack buffer that is written past its end can overwrite the saved return address and redirect ret, so we sketch the mechanism defensively and then the three standard protections: stack canaries, a non-executable stack, and address-space layout randomization.\n",{"path":16101,"title":16102,"module":16103,"summary":16104},"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fwhat-an-isa-is","What an ISA Is","Instruction Set Architecture","The instruction set architecture is the contract that lets a compiler and a chip be written by people who never meet: the stable interface software targets and hardware implements. We separate architecture from microarchitecture, read RISC and CISC as opposite answers to where complexity should live, price out what each choice costs in decode hardware, code density, and pipeline friendliness, and see how x86-64 endures by translating its instructions into RISC-like operations on the fly.\n",{"path":16106,"title":16107,"module":16103,"summary":16108},"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Finstruction-formats-and-operands","Instruction Formats and Operands","An instruction is an opcode plus a way to name its operands. We count operands — 3-address, 2-address, 1-address accumulator, and 0-address stack machines — by writing the same C = A + B four ways, weigh register operands against memory operands, then lay out the same add byte by byte in x86-64 (REX prefix, opcode, ModRM) and in Y86-64, and what fixed versus variable length costs at fetch time.\n",{"path":16110,"title":16111,"module":16103,"summary":16112},"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Faddressing-modes","Addressing Modes","Once an operand field exists, it needs a rule for turning its bits into the data it names. That rule is the addressing mode. We walk the standard set — immediate, register, direct, register-indirect, displacement, scaled-indexed, and PC-relative — fixing the effective-address computation for each, run every mode against one concrete machine state, and price out what Y86-64 loses by keeping only base plus displacement.\n",{"path":16114,"title":16115,"module":16103,"summary":16116},"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fthe-y86-64-instruction-set","The Y86-64 Instruction Set","Y86-64 is a teaching ISA — a stripped-down x86-64 simple enough to implement by hand yet real enough to compile to. We fix its programmer-visible state (fifteen registers, three condition codes, the PC, memory, and a status code), give the instruction set with exact byte encodings, spell out how the condition codes decide every jXX and cmovXX, and run the encoding both directions: assembly to bytes and raw bytes back to meaning.\n",{"path":16118,"title":16119,"module":16103,"summary":16120},"\u002Fcomputer-architecture\u002Finstruction-set-architecture\u002Fy86-64-programming","Y86-64 Programming","With the encodings fixed, we write real Y86-64 assembly: the .pos, .align, and .quad directives, the calling convention borrowed from x86-64, a stack set up by hand, and complete programs — an array sum and a branch-free max. We watch the assembler turn the listing into the exact byte image the processor will execute, and trace the stack across the call.\n",{"path":16122,"title":16123,"module":16124,"summary":16125},"\u002Fcomputer-architecture\u002Fdigital-logic\u002Ftransistors-gates-and-boolean-functions","Transistors, Gates, and Boolean Functions","Digital Logic","A processor is built from millions of transistor switches. We start at the MOS transistor as a voltage-controlled switch, build the CMOS inverter and NAND transistor by transistor, meet the seven standard gates with their truth tables, show that NAND alone is functionally complete, price each gate in transistors and in time, and turn any truth table into a sum-of-products circuit.\n",{"path":16127,"title":16128,"module":16124,"summary":16129},"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fcombinational-logic-and-hcl","Combinational Logic and HCL","A combinational circuit is a pure Boolean function of its current inputs — no memory, no clock. We draw the line between combinational and sequential logic, do the gate-delay accounting that finds a circuit's critical path and bounds the clock, meet don't-cares, then introduce CS:APP's Hardware Control Language: bit-level operators, word-level signals, equality nets, and the case expression that compiles to a multiplexer tree.\n",{"path":16131,"title":16132,"module":16124,"summary":16133},"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmultiplexers-decoders-and-the-alu","Multiplexers, Decoders, and the ALU","The combinational building blocks that make a datapath. We build the 2:1 and 4:1 multiplexer and tie it back to HCL's case expression, the n-to-2^n decoder, a one-bit full adder (sum is XOR, carry is majority), the ripple-carry adder that chains them, and finally the ALU — a function unit that selects among add, sub, and, and xor under a control input and exposes condition flags.\n",{"path":16135,"title":16136,"module":16124,"summary":16137},"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fmemory-elements-latches-flip-flops-and-clocking","Memory Elements: Latches, Flip-Flops, and Clocking","A combinational circuit holds no state; feeding a circuit's output back to its input creates memory. We build the SR latch from cross-coupled gates, the level-sensitive D latch, and the master\u002Fslave edge-triggered D flip-flop, then introduce the clock and the synchronous design discipline, the setup\u002Fhold timing window, clock skew, metastability, and the register as n flip-flops sharing one clock.\n",{"path":16139,"title":16140,"module":16124,"summary":16141},"\u002Fcomputer-architecture\u002Fdigital-logic\u002Fregister-files-and-random-access-memory","Register Files and Random-Access Memory","Storage organized for access by address. We build the register file (a small bank of registers with addressed read ports and clocked write ports, the exact structure Y86-64's decode and write-back stages use), then descend to the SRAM and DRAM cells of main memory, why one is fast and dear and the other dense and slow, and how a row decoder picks a word out of a memory array.\n",{"path":16143,"title":16144,"module":16145,"summary":16146},"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-fetch-decode-execute-cycle","The Fetch-Decode-Execute Cycle","Processor Design","A processor is a machine that repeats one loop forever: read the next instruction from memory, figure out what it asks for, do it, and advance. We fix the stored-program idea, lay out the datapath at a high level — PC, instruction memory, register file, ALU, data memory — and the control unit that sequences them, break the work into the six stages the rest of the module builds in hardware, and work out exactly how fetch parses variable-length instructions and computes the next PC.\n",{"path":16148,"title":16149,"module":16145,"summary":16150},"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fthe-seq-stages","The SEQ Stages","The six SEQ stages, made exact. For every Y86-64 instruction — halt, nop, the moves, OPq, the jumps, call and ret, pushq and popq — we write down what Fetch, Decode, Execute, Memory, Write-back, and PC update each compute, as per-instruction stage tables with every row justified. Once the tables are filled in, the processor is fully specified; the remaining lessons turn them into wires.\n",{"path":16152,"title":16153,"module":16145,"summary":16154},"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fcontrol-logic-and-sequencing","Control Logic and Sequencing","The stage tables say what each instruction needs; the control logic computes it from icode. We write the HCL for the register-port selections (srcA, srcB, dstE, dstM), the ALU function and input selection, the memory read\u002Fwrite and address, the branch condition, and the next-PC mux — each a case expression on icode that compiles to a mux — and see how one blob of combinational logic serves every instruction at once. We close by contrasting hardwired control with the microprogrammed alternative.\n",{"path":16156,"title":16157,"module":16145,"summary":16158},"\u002Fcomputer-architecture\u002Fprocessor-design\u002Fassembling-seq","Assembling SEQ","We wire the whole thing together. The functional units from digital logic and the control signals from the last lesson assemble into the complete SEQ datapath, laid out the way CS:APP draws it — six stages stacked bottom to top, Fetch at the floor and PC update at the ceiling, signals flowing up the margins. Then the timing analysis: why everything must settle in one cycle, the no-reading-back principle that makes single-cycle execution consistent, and the critical path that sets the clock. We close by walking an OPq and a ret through the assembled machine.\n",{"path":16160,"title":16161,"module":16145,"summary":16162},"\u002Fcomputer-architecture\u002Fprocessor-design\u002Ftracing-a-program","Tracing a Program","To close the module, we take a complete Y86-64 program — a loop that sums 1 through 3 — and run it through SEQ one cycle at a time, recording the PC, the fetched instruction, every stage computation, and the registers, condition codes, and memory after each cycle. Then we examine single cycles in detail: every named signal of an OPq in concrete hex, and a second program whose call and ret we trace through the stack. The traces confirm that the assembled datapath and control logic behave as a processor.\n",{"path":16164,"title":16165,"module":16166,"summary":16167},"\u002Fcomputer-architecture\u002Fpipelining\u002Fpipelining-principles","Pipelining Principles","Pipelining","A processor that runs one instruction to completion before starting the next wastes most of its hardware most of the time. Pipelining splits the work into stages separated by registers so several instructions are in flight at once. We separate throughput from latency, work the 300 ps example through one, two, and three stages, and derive the three ceilings on the gain: uneven stages, register overhead, and the dependencies between instructions.\n",{"path":16169,"title":16170,"module":16166,"summary":16171},"\u002Fcomputer-architecture\u002Fpipelining\u002Ffrom-seq-to-pipe","From SEQ to PIPE","We turn the sequential Y86-64 processor into a pipelined one by inserting pipeline registers between its stages so each cycle holds one instruction per stage. Doing it correctly forces a rearrangement: the next-PC computation must move into Fetch as a prediction, because the later stages that used to compute it are now busy with other instructions. We walk SEQ to SEQ+ to PIPE, spell out exactly what each pipeline register carries, and fix the naming discipline (D_stat versus d_stat) that keeps five in-flight instructions straight.\n",{"path":16173,"title":16174,"module":16166,"summary":16175},"\u002Fcomputer-architecture\u002Fpipelining\u002Fdata-hazards-stalling-and-forwarding","Data Hazards: Stalling and Forwarding","Overlapping instructions collide when a later one needs a value an earlier one has not finished computing: a read-after-write data hazard. We map exactly which instruction distances are dangerous, fix hazards the slow way by stalling (three bubbles), then the fast way by forwarding from five distinct sources into Decode, in a priority order that sequential semantics forces. Forwarding handles almost everything; the load-use hazard still needs exactly one stall.\n",{"path":16177,"title":16178,"module":16166,"summary":16179},"\u002Fcomputer-architecture\u002Fpipelining\u002Fcontrol-hazards-and-branch-prediction","Control Hazards and Branch Prediction","A pipeline must fetch an instruction every cycle, but after a conditional jump or a ret the next address is not yet known: a control hazard. We measure the branch penalty, weigh predict-taken against its alternatives with real loop arithmetic, watch PIPE detect a misprediction in Execute and squash the two wrong-path instructions, and meet the ret hazard, which has nothing to predict and stalls three cycles. A 2-bit counter gives a taste of dynamic prediction.\n",{"path":16181,"title":16182,"module":16166,"summary":16183},"\u002Fcomputer-architecture\u002Fpipelining\u002Fthe-complete-pipe-processor","The Complete PIPE Processor","We assemble the full pipelined Y86-64: five stages, five pipeline registers, forwarding paths, and a small control unit that decides, each cycle, whether to stall or bubble each register. The subtle part is when hazards combine: one pairing hides a genuine bug. A fourth control case reads stat and keeps exceptions precise. Performance reduces to CPI = 1 + lp + mp + rp, worked out to 1.27 with realistic frequencies, and PIPE beats SEQ by several times despite every penalty.\n",{"path":16185,"title":16186,"module":16187,"summary":16188},"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fstorage-technologies-and-the-latency-gap","Storage Technologies and the Latency Gap","The Memory Hierarchy","No single memory is both fast and large and cheap. We survey the technologies a machine can store bits in — SRAM, DRAM, flash, and rotating disk — open up a DRAM chip to find the row buffer, work a disk access down to the millisecond, and rank everything by speed, density, and cost per bit. Then we watch the processor outrun memory decade after decade. That widening gap is the whole reason a machine stacks fast small storage on top of slow large storage into a hierarchy.\n",{"path":16190,"title":16191,"module":16187,"summary":16192},"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Flocality","Locality","A hierarchy only pays off because programs do not touch memory at random. They reuse recently-used data (temporal locality) and touch nearby data soon after (spatial locality). We make both precise and then quantitative: miss rates for stride-1 and stride-k traversals against a concrete block size, and the loop-order pair on a 2-D array where the same sum misses 16 times one way and 64 times the other — why row-major versus column-major order can change a program's speed by an order of magnitude.\n",{"path":16194,"title":16195,"module":16187,"summary":16196},"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-memories-direct-mapped","Cache Memories and Direct Mapping","A cache is fast SRAM that holds copies of recently-used blocks of main memory. We fix its organization — S sets, E lines per set, B bytes per block — and the way it dissects an address into tag, set index, and block offset, worked bit by bit on a concrete 16-byte cache. Then we run the direct-mapped (E=1) access algorithm end to end on a seven-access trace: index to a set, compare the tag, hit or miss, evict. Cold and conflict misses fall out of the structure, and a two-array ping-pong shows conflict thrashing and its padding fix.\n",{"path":16198,"title":16199,"module":16187,"summary":16200},"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fset-associative-and-write-policies","Set-Associative Caches and Write Policies","Give each set several lines and a block has a choice of homes — fewer conflict misses, at the cost of comparing E tags in parallel and choosing a victim to evict. We re-run the direct-mapped ping-pong trace on a 2-way cache and watch the conflicts vanish, weigh LRU against random replacement, then turn to writes: write-through versus write-back with a dirty bit on a hit, write-allocate versus no-write-allocate on a miss, and a worked traffic count showing when each pairing wins.\n",{"path":16202,"title":16203,"module":16187,"summary":16204},"\u002Fcomputer-architecture\u002Fmemory-hierarchy\u002Fcache-performance-and-cache-friendly-code","Cache Performance and Cache-Friendly Code","Turn the cache mechanism into a number. Hit time, miss rate, and miss penalty combine into the average memory access time; we compute AMAT for a two-level hierarchy with real numbers, weigh the design knobs against each other, and read the memory mountain. Then we write cache-friendly code — the matrix-multiply loop-order case study (ijk versus kij, misses counted per iteration) and loop blocking, where cache-sized tiles turn evicted reuse back into hits.\n",{"path":16206,"title":16207,"module":16208,"summary":16209},"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Faddress-spaces-and-translation","Address Spaces and Translation","Virtual Memory","Every process runs as if it owns a private, contiguous span of memory — its virtual address space — while the hardware maps those addresses onto a single shared physical memory. We fix virtual memory's three jobs (a cache for disk, a memory manager, a protection boundary), the page as the unit of mapping, and the MMU replacing the virtual page number while the offset passes through untouched — then run one translation end to end at the bit level and trace the control flow of a page hit against a page fault.\n",{"path":16211,"title":16212,"module":16208,"summary":16213},"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fpage-tables-and-page-faults","Page Tables and Page Faults","The page table is an array of page-table entries indexed by virtual page number; each entry's valid bit says whether the page is in DRAM, on disk, or unallocated, and its permission, reference, and dirty bits drive protection and replacement. We walk translation as a table lookup, the page fault and demand paging, the clock algorithm the OS uses to approximate LRU, memory mapping and copy-on-write (why fork is cheap), the taxonomy of bad references, and thrashing.\n",{"path":16215,"title":16216,"module":16208,"summary":16217},"\u002Fcomputer-architecture\u002Fvirtual-memory\u002Fthe-tlb-and-multi-level-page-tables","The TLB and Multi-Level Page Tables","A page-table read on every access would double memory traffic; a flat table for a 48-bit space would occupy 512 GB per process. The TLB fixes the first: a small set-associative cache of PTEs inside the MMU whose tag and index come from the VPN. Multi-level page tables fix the second, allocating only the sub-tables a process uses; x86-64 walks four levels with a 9+9+9+9+12 split. We trace one reference end to end through TLB, walk, and cache, and close with the overlap trick that lets the L1 cache start before translation ends.\n",{"path":16219,"title":16220,"module":16221,"summary":16222},"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Fexceptional-control-flow","Exceptional Control Flow","Exceptions & I\u002FO","Beyond the sequential, branch, and call flow a program controls itself, the hardware can divert the processor in response to events. We sort these into four classes — interrupts (asynchronous, from devices), traps (intentional syscalls), faults (recoverable, like a page fault), and aborts (unrecoverable) — then take the mechanism apart: exception numbers and the table dispatch, what the hardware pushes and why it differs from a procedure call, the divide-error \u002F page-fault \u002F general-protection trio on x86-64, the full syscall round trip with a worked write in assembly, and processes and signals as the abstractions ECF makes possible.\n",{"path":16224,"title":16225,"module":16221,"summary":16226},"\u002Fcomputer-architecture\u002Fexceptions-and-io\u002Finterrupts-and-the-kernel","Interrupts and the Kernel","An I\u002FO device signals completion by raising an interrupt, crossing the privilege boundary from user mode into the kernel. We fix that boundary, follow an interrupt from device through the interrupt controller to its vectored handler, and use the timer interrupt to drive preemptive scheduling and the context switch. Then the I\u002FO mechanics: polling versus interrupt-driven I\u002FO with a cycle count, device registers and memory-mapped I\u002FO versus port I\u002FO, DMA's full transfer walkthrough and its cache hazard, and a disk read traced end to end, from the read syscall to the completion interrupt.\n",{"path":16228,"title":16229,"module":16230,"summary":16231},"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fprocesses-threads-and-parallelism","Processes, Threads, and Parallelism","Multithreading & Multicore","Around 2004 the single core stopped getting faster, and the industry's answer was to hand programmers more cores instead. This lesson builds the vocabulary that shift demands: process versus thread and exactly which hardware state each one owns, concurrency versus parallelism, the three kinds of parallelism a machine can exploit, why Dennard scaling ended and forced the multicore turn, and Amdahl's law — the arithmetic that bounds the speedup those cores can deliver.\n",{"path":16233,"title":16234,"module":16230,"summary":16235},"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fhardware-multithreading","Hardware Multithreading","A pipeline spends much of its life waiting — on cache misses, on dependences, on branches. Hardware multithreading fills the dead cycles with instructions from another thread. We compare coarse-grained switching (change threads on a long stall), fine-grained interleaving (change every cycle), and simultaneous multithreading (mix threads inside a single cycle), work out exactly which hardware a second thread context duplicates and which it shares, and weigh when SMT pays off and when two threads just fight over one cache.\n",{"path":16237,"title":16238,"module":16230,"summary":16239},"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fcache-coherence","Cache Coherence","Give each core its own cache and the same address can live in two places at once, with copies that disagree. We reproduce the stale-copy bug with a two-core trace, then fix it the way hardware does: snooping caches that watch a shared bus and keep every line in a protocol state. We build MSI in full, upgrade it to MESI, contrast invalidation with updating, add coherence misses as the fourth C, and end with false sharing: the performance bug where cores fight over a line while never touching the same byte.\n",{"path":16241,"title":16242,"module":16230,"summary":16243},"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmemory-consistency-and-synchronization","Memory Consistency and Synchronization","Coherence keeps cores agreeing about one location; consistency is the contract about many. We define sequential consistency, then watch real hardware break it: the store buffer lets a load slip ahead of an older store, and the classic two-thread litmus test ends with both sides reading zero. We state x86-TSO precisely, restore order with mfence, build atomic read-modify-write from the lock prefix, xchg, and cmpxchg, and write a spinlock twice — once naively, once bus-friendly — closing with what lock-free progress actually guarantees.\n",{"path":16245,"title":16246,"module":16230,"summary":16247},"\u002Fcomputer-architecture\u002Fmultithreading-and-multicore\u002Fmulticore-organization","Multicore Organization","Where everything sits on the die. A modern die gives each core private L1 and L2 caches, spreads a shared last-level cache across slices, and wires it all together with a ring or mesh; multi-socket servers add NUMA, where memory is local to one socket and every remote access pays a latency penalty. We walk the floorplan, put numbers on local versus remote latency, meet thread affinity, and account for the two shared resources — coherence traffic and LLC capacity — that decide how far a parallel program scales.\n",{"path":16249,"title":16250,"module":16251,"summary":16252},"\u002Fcomputer-architecture\u002Fcapstone\u002Fthe-whole-machine","The Whole Machine","Capstone","We take one line of C down the whole tower the course built — compiler to assembly, assembly to machine-code bytes, the bytes into the fetch–decode–execute datapath — then trace one load and one add through the pipelined, cached, translated, interruptible machine, each step cross-linked to the lesson that built it. We close with the map of the course as a stack of layers and an accounting of what we simplified: out-of-order execution, superscalar issue, and speculation past the branch predictor.\n",{"path":16254,"title":16255,"module":16251,"summary":16256},"\u002Fcomputer-architecture\u002Fcapstone\u002Fassembling-a-complete-cpu","Assembling a Complete CPU","We bolt the parts the course built — PC, instruction memory and its fetch logic, register file, ALU, condition codes, data memory, and the control unit — into one complete CPU, name the lesson that built each, wire them in a deliberate order, and power the machine on from reset. Then we assemble a real test program (sum a four-element array through a call\u002Fret procedure), give its exact bytes and memory layout, and trace it cycle by cycle to the answer 0xabcdabcdabcd. We close with how to validate such a machine, and what it takes to put two of them on one die.\n",{"path":16258,"title":16259,"module":6,"summary":6},"\u002Fcomputer-architecture","Computer Architecture",{"path":16261,"title":16262,"module":14862,"summary":16263},"\u002Fdifferential-equations\u002Ffoundations\u002Fmodels-and-direction-fields","Models, Direction Fields, and Solution Curves","A differential equation relates an unknown function to its own rates of change. Three first-order models — a falling body, a cooling object, a population under predation — share the form dy\u002Fdt = ay - b; the slope field fixes their equilibria and long-run behavior before any formula is found. Solving the linear case gives the general solution, its integral curves, and the particular solution selected by an initial condition.\n",{"path":16265,"title":16266,"module":14862,"summary":16267},"\u002Fdifferential-equations\u002Ffoundations\u002Fclassification-and-terminology","Classifying Equations: Order, Linearity, ODE vs. PDE","Every solution method targets a specific class of equation, so the first question about any differential equation is which classes it belongs to. Four independent axes sort them: ordinary versus partial, order, linear versus nonlinear, and homogeneous versus nonhomogeneous. Systems, verification of a solution by substitution, and the split between initial and boundary value problems complete the vocabulary.\n",{"path":16269,"title":16270,"module":16271,"summary":16272},"\u002Fdifferential-equations\u002Ffirst-order\u002Flinear-first-order-integrating-factors","Linear Equations and Integrating Factors","First-Order Equations","A first-order linear equation has the unknown and its derivative to the first power only. Multiplying by an integrating factor collapses the left side into a single derivative, and one integration gives the general solution in closed form. The solution exists wherever the coefficients are continuous, and for a constant coefficient it splits into a decaying transient and a steady state set by the forcing.\n",{"path":16274,"title":16275,"module":16271,"summary":16276},"\u002Fdifferential-equations\u002Ffirst-order\u002Fseparable-and-exact","Separable and Exact Equations","Two nonlinear first-order classes solve by direct integration. A separable equation splits so that each variable can be integrated on its own side, giving an implicit relation. An exact equation is the total differential of a hidden potential function, recognized by a symmetry test on its coefficients; when the test fails, an integrating factor can sometimes restore exactness. A change of variable brings homogeneous equations into the separable class.\n",{"path":16278,"title":16279,"module":16271,"summary":16280},"\u002Fdifferential-equations\u002Ffirst-order\u002Fmodeling-first-order","Modeling with First-Order Equations","A rate law is a differential equation. Each first-order model starts from one governing principle: conservation of mass for a mixing tank, proportional change for interest and radioactive decay, Newton's law of cooling, a force balance for a body falling against drag, and Kirchhoff's law for a series circuit. Setting the derivative to zero recovers the steady state, and the transient records how the initial condition relaxes toward it.\n",{"path":16282,"title":16283,"module":16271,"summary":16284},"\u002Fdifferential-equations\u002Ffirst-order\u002Fautonomous-and-population-dynamics","Autonomous Equations, Phase Lines, and Population Dynamics","An autonomous equation y' = f(y) can be analyzed qualitatively without being solved. Its constant solutions are the zeros of f, and the sign of f between them fixes whether nearby solutions rise or fall, which the phase line records as a column of arrows. The logistic and threshold models, constant- and effort-proportional harvesting, and the properties nonlinear equations lose all follow from this reading.\n",{"path":16286,"title":16287,"module":16271,"summary":16288},"\u002Fdifferential-equations\u002Ffirst-order\u002Fexistence-uniqueness-euler","Existence, Uniqueness, and Euler's Method","Existence and uniqueness can be settled before any attempt to solve. The existence-uniqueness theorem gives sufficient conditions on f, and a standard example shows what fails when they do not hold. Picard's successive approximations build the solution as the limit of an iteration, and Euler's method turns the same tangent-line idea into a numerical procedure for the equations no formula reaches.\n",{"path":16290,"title":16291,"module":16271,"summary":16292},"\u002Fdifferential-equations\u002Ffirst-order\u002Ffirst-order-difference-equations","First-Order Difference Equations","A difference equation advances a sequence one index at a time by a rule y_{n+1} = f(y_n). The linear case y_{n+1} = rho*y_n + b solves in closed form and converges to its equilibrium exactly when the ratio has magnitude below one, which underlies compound-interest and loan calculations. The logistic difference equation shows the nonlinear counterpart: an exchange of stability, a cascade of period doublings, and the onset of chaos.\n",{"path":16294,"title":16295,"module":16296,"summary":16297},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhomogeneous-constant-coefficients","Homogeneous Equations, the Wronskian, and Real Roots","Second-Order Linear Equations","A second-order linear homogeneous equation with constant coefficients is solved by guessing an exponential and reducing to the quadratic characteristic equation. Two solutions span every solution exactly when their Wronskian is nonzero; that condition, superposition, and Abel's formula give the full structure of the general solution for the case of two distinct real roots.\n",{"path":16299,"title":16300,"module":16296,"summary":16301},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fcomplex-and-repeated-roots","Complex Roots, Repeated Roots, and Reduction of Order","When the characteristic equation has complex conjugate roots, Euler's formula converts the complex exponentials into a real fundamental set of decaying or growing oscillations. When it has a repeated root, one exponential is lost and reduction of order recovers the missing second solution as $t\\,e^{rt}$. The same substitution $y = v(t)y_1(t)$ finds a second solution from any known one.\n",{"path":16303,"title":16304,"module":16296,"summary":16305},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fnonhomogeneous-undetermined-coefficients","Nonhomogeneous Equations: Undetermined Coefficients","The general solution of a nonhomogeneous linear equation is a complementary solution plus any one particular solution. When the forcing term is a polynomial, exponential, sine, or cosine, a particular solution can be found by assuming a trial form of the same shape with unknown coefficients and solving for them. The one complication is resonance, handled by multiplying the trial by a power of $t$.\n",{"path":16307,"title":16308,"module":16296,"summary":16309},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fvariation-of-parameters","Variation of Parameters","Variation of parameters finds a particular solution of any nonhomogeneous linear equation from a fundamental set of the homogeneous one. Replacing the constants in the complementary solution by functions and imposing one convenient constraint reduces the problem to a two-by-two linear system whose solution is expressed through the Wronskian, giving an integral formula that works for forcing terms undetermined coefficients cannot touch.\n",{"path":16311,"title":16312,"module":16296,"summary":16313},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fmechanical-electrical-vibrations","Mechanical and Electrical Vibrations","A spring-mass-damper obeys a second-order linear equation, and so does a series RLC circuit, with the same mathematics governing both. Free undamped motion is a pure sinusoid; damping adds a decaying envelope with three regimes; periodic forcing produces a transient that dies out and a steady-state oscillation whose amplitude peaks sharply near the natural frequency, the phenomenon of resonance.\n",{"path":16315,"title":16316,"module":16296,"summary":16317},"\u002Fdifferential-equations\u002Fsecond-order-linear\u002Fhigher-order-linear","Higher-Order Linear Equations","The second-order theory extends directly to order $n$: the solution space is $n$-dimensional, spanned by any $n$ solutions with nonzero Wronskian. For constant coefficients the characteristic polynomial has degree $n$, and its roots (counted with multiplicity, real and complex) build the basis by the same rules as before. Coupled oscillators are the natural application that raises the order.\n",{"path":16319,"title":16320,"module":16321,"summary":16322},"\u002Fdifferential-equations\u002Fseries-solutions\u002Fpower-series-ordinary-points","Power Series Solutions Near Ordinary Points","Series Solutions and Special Functions","A linear equation with variable coefficients has no characteristic equation. A power series substituted into the equation matches coefficients to a recurrence relation, which near an ordinary point yields two independent analytic solutions. The radius of convergence is at least the distance from the expansion point to the nearest singular point in the complex plane.\n",{"path":16324,"title":16325,"module":16321,"summary":16326},"\u002Fdifferential-equations\u002Fseries-solutions\u002Fregular-singular-frobenius","Euler Equations, Regular Singular Points, and Frobenius","The Euler equation x^2 y'' + a x y' + b y = 0 is solved outright by y = x^r, and its three root cases fix the behavior at any regular singular point. The Frobenius method multiplies x^r by a power series; the indicial equation chooses the exponents, and equal or integer-separated roots force a logarithm in the second solution. Gauss's hypergeometric equation is the archetype containing most classical functions as special cases.\n",{"path":16328,"title":16329,"module":16321,"summary":16330},"\u002Fdifferential-equations\u002Fseries-solutions\u002Fbessel-and-special-functions","Bessel's Equation, Legendre Polynomials, and Special Functions","Bessel's equation puts the Frobenius machinery through all three of its cases and produces the functions J and Y that govern anything vibrating or diffusing with circular symmetry. The gamma function extends the factorial so that Bessel functions of every order make sense; Legendre's equation, run through the hypergeometric form, yields the polynomials that play the same role in spherical geometry. Orthogonality ties both families to the eigenfunction expansions of Sturm–Liouville theory.\n",{"path":16332,"title":16333,"module":16334,"summary":16335},"\u002Fdifferential-equations\u002Flaplace\u002Flaplace-definition-ivps","The Laplace Transform: Definition, Properties, and Solving IVPs","The Laplace Transform","The Laplace transform sends a function of time to a function of a complex frequency by integrating it against the kernel e^{-st}. Differentiation in t becomes multiplication by s, so a linear constant-coefficient initial value problem turns into an algebraic equation. Existence rests on piecewise continuity and exponential order; the derivative rule folds in the initial data; and inversion runs through a transform table and partial fractions.\n",{"path":16337,"title":16338,"module":16334,"summary":16339},"\u002Fdifferential-equations\u002Flaplace\u002Fstep-impulse-convolution","Step Functions, Discontinuous Forcing, Impulses, and Convolution","The Heaviside step function and the second shifting theorem transform switches and discontinuous forcing into exponential factors on the transform. The Dirac delta idealizes an instantaneous impulse and transforms to a pure exponential. The convolution theorem inverts a product of transforms, writes the forced response as the impulse response convolved with the input, and solves Abel's tautochrone by transform.\n",{"path":16341,"title":16342,"module":16343,"summary":16344},"\u002Fdifferential-equations\u002Fsystems\u002Fmatrices-eigenvalues-review","Matrices, Linear Systems, and the Eigenvalue Toolkit","Systems of First-Order Linear Equations","Any nth-order linear equation, and any coupled collection of them, rewrites as a single first-order system x' = P(t)x + g(t). The matrix and vector algebra behind that form, the eigenvalue problem det(A - λI) = 0 that drives every solution method, and the fundamental theory — superposition, the Wronskian, Abel's theorem — together establish that n independent solutions span all solutions.\n",{"path":16346,"title":16347,"module":16343,"summary":16348},"\u002Fdifferential-equations\u002Fsystems\u002Fconstant-coefficient-systems-phase-portraits","Homogeneous Constant-Coefficient Systems and Phase Portraits","For x' = Ax with A constant, the trial x = ξe^{rt} turns the differential equation into the eigenvalue problem Aξ = rξ. The eigenvalues fix the geometry of the phase plane: real opposite signs give a saddle, real same sign a node, complex a spiral, purely imaginary a center. Worked in the plane, these cases form the eigenvalue-type classification of equilibria.\n",{"path":16350,"title":16351,"module":16343,"summary":16352},"\u002Fdifferential-equations\u002Fsystems\u002Frepeated-eigenvalues-fundamental-matrices","Repeated Eigenvalues, Fundamental Matrices, and Nonhomogeneous Systems","When a repeated eigenvalue supplies too few eigenvectors, a generalized eigenvector supplies the missing solution as ξte^{ρt} + ηe^{ρt}, giving an improper node. A fundamental set packaged as a matrix Φ(t) yields the matrix exponential e^{At}, the propagator mapping initial states to later ones. Variation of parameters solves the nonhomogeneous system x' = Ax + g(t).\n",{"path":16354,"title":16355,"module":16356,"summary":16357},"\u002Fdifferential-equations\u002Fnumerical\u002Feuler-and-runge-kutta","Euler, Improved Euler, and Runge–Kutta","Numerical Methods","Most initial value problems have no closed-form solution, so the solution is approximated on a grid. Euler's method steps along the tangent line, the improved Euler method averages two slopes, and the classical Runge–Kutta method averages four. Each added stage raises the order of accuracy at the cost of more evaluations per step, measured by how the local and global truncation errors scale with the step size.\n",{"path":16359,"title":16360,"module":16356,"summary":16361},"\u002Fdifferential-equations\u002Fnumerical\u002Fmultistep-systems-stability","Multistep Methods, Systems, and Stability","One-step methods discard everything but the last point. Multistep methods fit a polynomial to several past values and integrate it forward: the explicit Adams–Bashforth formulas, the implicit and more accurate Adams–Moulton formulas, and predictor–corrector pairs that combine them. The same rules extend verbatim to systems in vector form. A separate concern is stability: round-off can dominate truncation, and stiff equations force a tiny step for stability even when accuracy would allow a large one.\n",{"path":16363,"title":16364,"module":16365,"summary":16366},"\u002Fdifferential-equations\u002Fnonlinear\u002Fphase-plane-autonomous-stability","The Phase Plane, Critical Points, and Stability","Nonlinear Systems and Stability","Most nonlinear systems cannot be solved in closed form, so they are studied geometrically. The phase plane turns an autonomous planar system into a family of trajectories; the five archetypes of critical point follow from the eigenvalues of the coefficient matrix; the trace-determinant plane reads off type and stability directly; and epsilon-delta definitions make stability, asymptotic stability, and instability precise.\n",{"path":16368,"title":16369,"module":16365,"summary":16370},"\u002Fdifferential-equations\u002Fnonlinear\u002Flocally-linear-and-liapunov","Locally Linear Systems and Liapunov's Method","Near a critical point a nonlinear system looks linear, and the linear part is the Jacobian. The linearization fixes the type and stability of the nonlinear critical point in every case except a center or a repeated eigenvalue. Liapunov's direct method settles those cases and bounds the basin of attraction by constructing an energy-like function, without solving the system.\n",{"path":16372,"title":16373,"module":16365,"summary":16374},"\u002Fdifferential-equations\u002Fnonlinear\u002Fcompeting-species-predator-prey-limit-cycles","Population Models, Limit Cycles, and Chaos","The phase-plane methods apply directly to interacting-population models. Competing species either coexist or drive one another to extinction, decided by a single inequality among the interaction constants; the Lotka-Volterra predator-prey system produces closed population cycles. Limit cycles and the Poincaré-Bendixson theorem, the van der Pol oscillator, and the Lorenz equations with their strange attractor carry the theory into chaos.\n",{"path":16376,"title":16377,"module":16378,"summary":16379},"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Ffourier-series","Fourier Series and Convergence","PDEs, Fourier Series, and Boundary Value Problems","A two-point boundary value problem has nontrivial solutions only at a discrete set of eigenvalues, the same trichotomy that governs a singular linear system. For y'' + lambda y = 0 with zero endpoints the eigenfunctions are sines and cosines, and their orthogonality gives the Euler-Fourier coefficient formulas. The convergence theorem fixes when the series returns the function, the Gibbs phenomenon measures the overshoot at a jump, and even\u002Fodd symmetry produces half-range sine and cosine series.\n",{"path":16381,"title":16382,"module":16378,"summary":16383},"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fheat-wave-laplace-equations","Separation of Variables: Heat, Wave, and Laplace Equations","Separation of variables replaces a partial differential equation by a pair of ordinary ones joined through a shared separation constant. Applied to the heat equation it produces the eigenvalue problem X'' + lambda X = 0, and the solution assembles as a Fourier series in the eigenfunctions. The same steps solve the wave equation, whose modes are standing waves, and Laplace's equation, the steady-state limit posed on a region rather than an interval.\n",{"path":16385,"title":16386,"module":16378,"summary":16387},"\u002Fdifferential-equations\u002Fpdes-fourier-bvp\u002Fsturm-liouville","Sturm-Liouville Theory","The eigenvalue problem behind separation of variables generalizes to the self-adjoint Sturm-Liouville form. Lagrange's identity makes the operator symmetric, and from that one fact follow real eigenvalues, orthogonal eigenfunctions, and eigenfunction expansions that behave like Fourier series. Singular problems admit Bessel and Legendre functions, and Sturm's separation and comparison theorems describe how the eigenfunctions oscillate.\n",{"path":16389,"title":16390,"module":16391,"summary":16392},"\u002Fdifferential-equations\u002Fhistory-variations\u002Fcalculus-of-variations","The Calculus of Variations","Historical Notes and the Calculus of Variations","Ordinary calculus finds the point where a function is stationary; the calculus of variations finds the whole curve where an integral is stationary. Euler's differential equation is the necessary condition for an extremal, and it becomes integrable in three cases, solving the shortest-path, minimal-surface, and brachistochrone problems. Lagrange multipliers extend the method to isoperimetric constraints, and Hamilton's principle recovers Newton's law from a single stationary integral.\n",{"path":16394,"title":16395,"module":16391,"summary":16396},"\u002Fdifferential-equations\u002Fhistory-variations\u002Fhistorical-notes","Great Problems and the People Who Solved Them","Differential equations grew out of specific problems, not a plan: the invention of calculus by Newton and Leibniz, the Bernoulli brachistochrone challenge, Euler's flood of methods, Lagrange's analytical mechanics, Gauss and Riemann's rigor, Laplace's celestial mechanics, and Poincaré's qualitative theory. Each method descends from a named problem, and reading the subject forward from those problems explains why its parts fit together.\n",{"path":16398,"title":16399,"module":6,"summary":6},"\u002Fdifferential-equations","Differential Equations",{"path":16401,"title":16402,"module":16403,"summary":16404},"\u002Frelativity\u002Ffoundations\u002Fspecial-relativity-postulates","The Postulates of Special Relativity","Foundations of Relativity","Newton's laws are the same in every inertial frame, but Maxwell's are not: the equations of electromagnetism single out one speed, c, and the nineteenth century read that as the speed of light relative to a medium, the ether. The Michelson-Morley experiment looked for Earth's motion through that medium and found nothing. Einstein's two postulates replace the ether, and their first consequence is that simultaneity is frame-dependent.\n",{"path":16406,"title":16407,"module":16403,"summary":16408},"\u002Frelativity\u002Ffoundations\u002Florentz-transformation-spacetime","The Lorentz Transformation and Spacetime","Requiring that a light sphere stay a light sphere in every inertial frame fixes the coordinate change between frames uniquely: the Lorentz transformation, with its factor gamma. Differentiating it gives relativistic velocity addition, which caps composed speeds at c. Plotting the same events on skewed spacetime axes turns the algebra into geometry, with calibration hyperbolae, an invariant interval, and a light cone that sorts events into past, future, and elsewhere.\n",{"path":16410,"title":16411,"module":16403,"summary":16412},"\u002Frelativity\u002Ffoundations\u002Ftime-dilation-length-contraction","Time Dilation, Length Contraction, and Paradoxes","A light clock and the constancy of c give the two headline effects directly: a moving clock runs slow by gamma, and a moving rod is short by the same factor. Cosmic-ray muons reaching sea level are the standing experimental proof. The relativistic Doppler effect adds the time-dilation factor to the classical shift, and the twin and pole-barn paradoxes dissolve once the relativity of simultaneity is taken seriously.\n",{"path":16414,"title":16415,"module":16403,"summary":16416},"\u002Frelativity\u002Ffoundations\u002Frelativistic-momentum-energy","Relativistic Momentum and Energy","Conserving momentum in every inertial frame forces the redefinition p = gamma m u, which diverges as the speed approaches c. Integrating the corresponding force gives the total energy E = gamma m c-squared, whose rest term m c-squared is Einstein's mass-energy equivalence. Energy and momentum join into a four-vector whose invariant length is the rest energy, giving E-squared = (pc)-squared + (m c-squared)-squared, massless particles, and nuclear binding energy.\n",{"path":16418,"title":16419,"module":16403,"summary":16420},"\u002Frelativity\u002Ffoundations\u002Fgeneral-relativity","A Taste of General Relativity","Einstein's happiest thought was that a freely falling observer feels no gravity: a uniform gravitational field is locally indistinguishable from an accelerating frame. That equivalence principle predicts that light bends near a mass, that clocks run slow deep in a gravitational well, that Mercury's orbit precesses, and that radar echoes are delayed. Every prediction has been confirmed, and pushing the redshift to its limit gives the black hole.\n",{"path":16422,"title":16423,"module":16424,"summary":16425},"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fminkowski-spacetime-and-the-interval","Minkowski Spacetime and the Interval","Spacetime and the Lorentz Group","The Lorentz transformation of the foundations module is repackaged as the geometry of a four-dimensional space whose invariant is not a distance but the spacetime interval. Events, worldlines, and the metric signature define a causal structure that every observer shares. Proper time is the length of a timelike worldline, and the twin paradox becomes the statement that a straight worldline accumulates the most proper time.\n",{"path":16427,"title":16428,"module":16424,"summary":16429},"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Ffour-vectors-and-index-notation","Four-Vectors and Index Notation","The index calculus that the rest of the course runs on. Contravariant and covariant components, the Minkowski metric as the machine that raises and lowers indices, and the Einstein summation convention are assembled into scalar products that are the same in every frame. The four-velocity and four-acceleration follow, together with the identity that the four-velocity has constant invariant length.\n",{"path":16431,"title":16432,"module":16424,"summary":16433},"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fthe-lorentz-group-and-rapidity","The Lorentz Group and Rapidity","The Lorentz transformations are the linear maps that preserve the Minkowski metric, and they form the group O(1,3). Boosts are hyperbolic rotations parametrized by rapidity, which adds along a line where velocity does not. The boost and rotation generators fix the group's local structure; its four disconnected components are set by two signs; and two non-collinear boosts compose into a boost plus a rotation, the Wigner rotation behind Thomas precession.\n",{"path":16435,"title":16436,"module":16424,"summary":16437},"\u002Frelativity\u002Fspacetime-and-the-lorentz-group\u002Fdoppler-aberration-and-appearance","Doppler, Aberration, and Appearance","Light carries a null four-momentum, and boosting it produces every optical effect of relativity at once. The covariant Doppler formula follows from the transformation of frequency, aberration from the transformation of direction, and the headlight effect from the resulting concentration of light forward. The Terrell-Penrose result shows that a fast object photographs as rotated, not contracted.\n",{"path":16439,"title":16440,"module":16441,"summary":16442},"\u002Frelativity\u002Frelativistic-dynamics\u002Ffour-momentum-force-and-accelerated-motion","Four-Momentum, Four-Force, and Accelerated Motion","Relativistic Dynamics","The four-momentum packages energy and momentum into a single vector whose invariant length is the rest mass. Its proper-time derivative is the four-force, always orthogonal to the four-velocity, and a constant orthogonal four-force produces hyperbolic motion. Constant proper acceleration gives rapidity linear in proper time, the relativistic rocket equation, and the Rindler horizon behind an eternally accelerating observer.\n",{"path":16444,"title":16445,"module":16441,"summary":16446},"\u002Frelativity\u002Frelativistic-dynamics\u002Fparticle-decays-and-two-body-kinematics","Particle Decays and Two-Body Kinematics","Conservation of four-momentum fixes the kinematics of a decay from the masses alone. In the center-of-momentum frame a parent breaks into two daughters with equal and opposite momenta and energies set by the Kallen triangle function. Boosting to the lab opens the decay into a cone, and the invariant mass built from the daughters reconstructs the parent as a peak. Worked cases: the two-photon decay of the neutral pion and a heavy two-body hadronic decay.\n",{"path":16448,"title":16449,"module":16441,"summary":16450},"\u002Frelativity\u002Frelativistic-dynamics\u002Fcollisions-thresholds-and-the-cm-frame","Relativistic Collisions and Threshold Energies","Two-body collisions run on the same conserved four-momentum as decays. The invariant s sets the total energy available in the center-of-momentum frame and therefore the threshold for producing new particles. Fixed-target energy grows only as the square root of beam energy while a collider grows linearly, which is why colliders reach high energy. Compton scattering follows as a worked photon-electron collision giving the wavelength shift.\n",{"path":16452,"title":16453,"module":16441,"summary":16454},"\u002Frelativity\u002Frelativistic-dynamics\u002Fmandelstam-variables-and-invariants","Mandelstam Variables and Lorentz Invariants","For a two-to-two process the three Mandelstam invariants s, t, and u encode all the kinematics in frame-independent form. They obey a single linear constraint, the sum of the four squared masses, so only two are independent. s is the center-of-momentum energy squared, t and u are momentum transfers tied to the scattering angle, and crossing symmetry relates one amplitude across three channels through these variables.\n",{"path":16456,"title":16457,"module":16458,"summary":16459},"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ffour-current-and-the-four-potential","The Four-Current and Four-Potential","Covariant Electromagnetism","Charge density and current combine into a single four-vector whose divergence is charge conservation. The scalar and vector potentials combine likewise into the four-potential, whose gauge freedom fixes to the Lorenz condition, reducing Maxwell's equations for the potentials to a single wave equation sourced by the four-current.\n",{"path":16461,"title":16462,"module":16458,"summary":16463},"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fthe-electromagnetic-field-tensor","The Electromagnetic Field Tensor","The antisymmetric derivative of the four-potential is the field-strength tensor F, gauge invariant by construction, with the electric and magnetic fields as its components. Its dual exchanges E and B, and its two contractions form the Lorentz invariants that classify a field as electric, magnetic, or radiative in every frame.\n",{"path":16465,"title":16466,"module":16458,"summary":16467},"\u002Frelativity\u002Fcovariant-electrodynamics\u002Ftransformation-of-electric-and-magnetic-fields","How E and B Transform","Transforming the field tensor under a boost gives explicit rules for the electric and magnetic fields: components along the motion are unchanged, transverse components mix and pick up a gamma. The field of a uniformly moving charge compresses transversely, and the force between a current and a moving charge shows that magnetism is the relativistic shadow of electrostatics.\n",{"path":16469,"title":16470,"module":16458,"summary":16471},"\u002Frelativity\u002Fcovariant-electrodynamics\u002Fcovariant-maxwell-and-the-stress-energy-tensor","Covariant Maxwell and the Stress–Energy Tensor","Maxwell's four equations collapse into two tensor equations, one sourced by the four-current and one an identity on the field strength, with charge conservation automatic. The Lorentz force becomes a four-vector law, and the field's energy, momentum, and stress assemble into a symmetric, conserved stress–energy tensor — the object that will source gravity.\n",{"path":16473,"title":16474,"module":16475,"summary":16476},"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-equivalence-principle-formalized","The Equivalence Principle","Curved Spacetime","The equality of gravitational and inertial mass promotes to a physical principle in three graded strengths — weak, Einstein, and strong. A freely falling laboratory is locally indistinguishable from an inertial frame, but the qualifier \"locally\" is essential: the size of the patch over which gravity vanishes is set by the tidal field, which no change of frame can remove. Tidal forces are the true, coordinate-independent signature of gravity, and they are what curvature will measure.\n",{"path":16478,"title":16479,"module":16475,"summary":16480},"\u002Frelativity\u002Fcurved-spacetime\u002Fmanifolds-vectors-and-the-metric","Manifolds, Vectors, and the Metric","A manifold is a space that looks locally like flat space, described by overlapping coordinate charts. Tangent vectors are directional derivatives with the coordinate basis vectors as partial-derivative operators; one-forms live in the dual space; and the metric tensor turns a coordinate line element into an invariant length. The 2-sphere and Rindler metrics serve as worked examples, including the coordinate singularities that are artefacts of the chart, not of the geometry.\n",{"path":16482,"title":16483,"module":16475,"summary":16484},"\u002Frelativity\u002Fcurved-spacetime\u002Fcovariant-derivative-and-christoffel-symbols","Parallel Transport and the Covariant Derivative","The ordinary derivative of a vector field is not a tensor, because it subtracts vectors living in different tangent spaces. A connection supplies the missing comparison: the covariant derivative adds Christoffel-symbol correction terms that cancel the coordinate artefacts. Requiring the connection to be torsion-free and to preserve the metric fixes the Christoffel symbols uniquely in terms of derivatives of the metric, giving the Levi-Civita connection that general relativity uses.\n",{"path":16486,"title":16487,"module":16475,"summary":16488},"\u002Frelativity\u002Fcurved-spacetime\u002Fgeodesics-and-the-geodesic-equation","Geodesics and the Newtonian Limit","Free fall is geodesic motion: a freely falling particle follows the straightest possible worldline, obtained either by parallel-transporting its own tangent vector or by extremizing proper time. Both routes give the geodesic equation. Affine parameters, and conserved quantities from symmetries via Killing vectors, make it solvable. In the weak-field slow-motion limit the geodesic equation reproduces Newton's law of gravity, fixing the time-time metric component as the Newtonian potential.\n",{"path":16490,"title":16491,"module":16475,"summary":16492},"\u002Frelativity\u002Fcurved-spacetime\u002Fcurvature-riemann-and-geodesic-deviation","Curvature and the Riemann Tensor","Curvature is the failure of parallel transport to commute: carrying a vector around an infinitesimal loop returns it rotated, and the rotation per unit area is the Riemann tensor. Its symmetries cut the components to twenty in four dimensions. Geodesic deviation makes it the equation of tidal forces, and its contractions — the Ricci tensor, the Ricci scalar, and the divergence-free Einstein tensor — assemble the objects the field equation is built from.\n",{"path":16494,"title":16495,"module":16475,"summary":16496},"\u002Frelativity\u002Fcurved-spacetime\u002Fthe-einstein-field-equations","The Einstein Field Equations","The field equation is assembled from a short list of requirements: a symmetric, divergence-free, second-order geometric tensor set proportional to the stress–energy tensor, with the coefficient fixed by the Newtonian limit. The cosmological constant is the one extra term the requirements allow. The Einstein–Hilbert action gives the same equation from a variational principle, and the coupled system closes the logic of the module: matter curves spacetime, and spacetime tells matter how to move.\n",{"path":16498,"title":16499,"module":16500,"summary":16501},"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fthe-schwarzschild-metric","The Schwarzschild Metric","The Schwarzschild Solution","The first exact solution of Einstein's equation follows from two assumptions, staticity and spherical symmetry, imposed on the vacuum outside a mass. Solving the vacuum field equations fixes two metric functions and produces the Schwarzschild geometry, whose one length scale is the Schwarzschild radius $r_s = 2GM\u002Fc^2$. Birkhoff's theorem shows this is the only spherical vacuum, and the far field reduces to Newtonian gravity.\n",{"path":16503,"title":16504,"module":16500,"summary":16505},"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Fgeodesics-and-orbits-in-schwarzschild","Orbits in the Schwarzschild Geometry","The two Killing symmetries of the Schwarzschild metric give a conserved energy and angular momentum per unit mass, reducing geodesic motion to a one-dimensional problem in an effective potential. The potential carries an extra attractive $1\u002Fr^3$ term absent from Newton's, which caps the centrifugal barrier, produces an innermost stable circular orbit at $6GM\u002Fc^2$, and makes bound orbits precess instead of closing.\n",{"path":16507,"title":16508,"module":16500,"summary":16509},"\u002Frelativity\u002Fthe-schwarzschild-solution\u002Flight-bending-and-null-geodesics","Null Geodesics and the Photon Sphere","Light follows null geodesics, governed by a photon effective potential with a single unstable maximum at $3GM\u002Fc^2$, the photon sphere. The impact parameter sorts rays into those that escape with a deflection and those captured, with the critical value $b_c = 3\\sqrt{3}\\,GM\u002Fc^2$ dividing them. A grazing ray bends by $4GM\u002F(c^2 b)$, twice the naive Newtonian value, and the critical impact parameter sets the edge of a black hole's shadow.\n",{"path":16511,"title":16512,"module":16513,"summary":16514},"\u002Frelativity\u002Ftests-of-general-relativity\u002Fperihelion-precession-of-mercury","The Perihelion Precession of Mercury","Tests of General Relativity","A single extra term in the Schwarzschild orbit equation, cubic in the inverse radius, keeps a bound orbit from closing. The perturbation advances the perihelion by 6πGM\u002F(c²a(1−e²)) per revolution, which for Mercury is 43 arcseconds per century — exactly the anomaly left after Newtonian planetary perturbations are subtracted. A note on frame dragging closes the lesson.\n",{"path":16516,"title":16517,"module":16513,"summary":16518},"\u002Frelativity\u002Ftests-of-general-relativity\u002Fdeflection-of-light-and-gravitational-lensing","Light Deflection and Gravitational Lensing","A light ray grazing the Sun bends by 4GM\u002F(c²b), exactly twice the value a Newtonian corpuscle would give; the extra factor is the curvature of space. The 1919 eclipse confirmed it. The same bending focuses light from distant sources into Einstein rings, multiple images, and microlensing brightenings, making lensing a direct probe of mass, including mass that emits no light.\n",{"path":16520,"title":16521,"module":16513,"summary":16522},"\u002Frelativity\u002Ftests-of-general-relativity\u002Fgravitational-redshift-and-shapiro-delay","Gravitational Redshift and the Shapiro Delay","A clock deeper in a gravitational well ticks slower, and a photon climbing out loses frequency by the ratio of the metric's time-time components. Pound and Rebka measured the 2.5×10⁻¹⁵ shift over a 22.5-metre tower. Radar signals grazing the Sun return late by about 250 microseconds, the Shapiro delay. Both probe the time part of the metric directly.\n",{"path":16524,"title":16525,"module":16513,"summary":16526},"\u002Frelativity\u002Ftests-of-general-relativity\u002Frelativity-in-technology-gps","Relativity and the Global Positioning System","A GPS satellite clock runs slow by 7 microseconds a day from its orbital speed and fast by 46 from its higher gravitational potential, a net gain of about 38 microseconds a day. Left uncorrected, the timing error would grow into kilometres of position error within a day and exceed navigation tolerance within minutes. The satellites carry a pre-launch frequency offset to cancel it.\n",{"path":16528,"title":16529,"module":16530,"summary":16531},"\u002Frelativity\u002Fblack-holes\u002Fhorizons-and-coordinate-singularities","Horizons and Coordinate Singularities","Black Holes","The Schwarzschild radius is a coordinate singularity, not a curvature singularity: the metric blows up there only because the static coordinates fail, while the geometry stays finite. Eddington–Finkelstein and Kruskal– Szekeres coordinates cross the horizon smoothly and show the light cones tipping toward the center. A freely falling observer reaches the true singularity at r=0 in finite proper time, while a distant observer sees the infall freeze and redden at the horizon.\n",{"path":16533,"title":16534,"module":16530,"summary":16535},"\u002Frelativity\u002Fblack-holes\u002Frotating-and-charged-black-holes","Rotating and Charged Black Holes","A stationary black hole is fixed by three numbers: mass, angular momentum, and charge. The Reissner–Nordström metric adds charge and splits the horizon in two; the Kerr metric adds rotation, drags inertial frames, and wraps the horizon in an ergosphere where nothing can stay still. Inside the ergosphere the Penrose process extracts rotational energy, and the no-hair theorem states that no other detail of the collapsed matter survives.\n",{"path":16537,"title":16538,"module":16530,"summary":16539},"\u002Frelativity\u002Fblack-holes\u002Fblack-hole-thermodynamics","Black-Hole Thermodynamics","The four laws of black-hole mechanics mirror the four laws of thermodynamics term for term, with horizon area playing the role of entropy and surface gravity the role of temperature. Hawking's calculation makes the analogy literal: a black hole radiates at a temperature set by its surface gravity, carries a real entropy proportional to its horizon area, and slowly evaporates. The thermal spectrum raises the information paradox.\n",{"path":16541,"title":16542,"module":16543,"summary":16544},"\u002Frelativity\u002Fgravitational-waves\u002Flinearized-gravity-and-wave-solutions","Linearized Gravity and Wave Solutions","Gravitational Waves","Weak gravity is a small perturbation of flat spacetime, and the linearized Einstein equation in the Lorenz gauge is an ordinary wave equation propagating at the speed of light. The trace-reversed perturbation carries the dynamics, residual gauge freedom fixes the transverse-traceless form, and the two physical polarizations deform a ring of freely falling masses into oscillating ellipses whose fractional size change is the strain.\n",{"path":16546,"title":16547,"module":16543,"summary":16548},"\u002Frelativity\u002Fgravitational-waves\u002Fgeneration-and-the-quadrupole-formula","The Quadrupole Formula","The retarded solution of the linearized field equation gives the field of a moving source, and conservation of mass and momentum forbids monopole and dipole radiation, leaving the mass quadrupole as the leading emitter. The quadrupole formula fixes the strain and the radiated luminosity, and applied to a compact binary it predicts the inspiral chirp of rising frequency and amplitude. The Hulse-Taylor pulsar's orbital decay confirmed it to a fraction of a percent.\n",{"path":16550,"title":16551,"module":16543,"summary":16552},"\u002Frelativity\u002Fgravitational-waves\u002Fdetection-ligo-and-the-first-events","LIGO and the First Detections","A gravitational wave is measured as a differential length change of the two arms of a kilometre-scale Michelson interferometer, a strain of order ten to the minus twenty-one that moves the mirrors by a fraction of a proton radius. GW150914 recorded the inspiral, merger, and ringdown of two black holes, fixing their masses and the energy radiated, and GW170817 with its coincident gamma-ray burst and kilonova opened multimessenger astronomy.\n",{"path":16554,"title":16555,"module":16556,"summary":16557},"\u002Frelativity\u002Fcosmological-bridge\u002Fthe-cosmological-principle-and-flrw-metric","The Cosmological Principle and the FLRW Metric","A Bridge to Cosmology","Homogeneity and isotropy restrict the spacetime of the universe to a single family of metrics: a flat cosmic-time slicing of spatial sections of constant curvature, scaled by a time-dependent factor a(t). This lesson builds the Friedmann–Lemaître–Robertson–Walker metric from those symmetries, separates comoving from proper distance, and derives cosmological redshift as the stretching of wavelengths with the scale factor.\n",{"path":16559,"title":16560,"module":16556,"summary":16561},"\u002Frelativity\u002Fcosmological-bridge\u002Ffriedmann-equations-and-cosmic-dynamics","The Friedmann Equations and Cosmic Dynamics","The Einstein equation applied to the FLRW metric with a perfect-fluid source yields the two Friedmann equations and the conservation law that ties them together. This lesson derives them, defines the critical density and the density parameters that fix the spatial geometry, works out how matter, radiation, and a cosmological constant dilute and drive the expansion, and hands off to a dedicated cosmology subject.\n",{"path":16563,"title":16564,"module":6,"summary":6},"\u002Frelativity","Relativity",{"path":16566,"title":16567,"module":6,"summary":6},"\u002Fphysical-computing","Physical Computing",{"path":16569,"title":16570,"module":16571,"summary":16572},"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fblackbody-radiation-and-the-planck-quantum","Blackbody Radiation and the Planck Quantum","Origins of the Quantum","Millikan's oil-drop experiment fixed the electron charge as an indivisible unit, and the spectrum of thermal radiation forced a second, deeper quantum. Classical physics predicts an infinite energy density at short wavelengths; Planck removed the divergence by allowing a cavity oscillator to hold only energies that are integer multiples of hf, the first appearance of the quantum of action.\n",{"path":16574,"title":16575,"module":16571,"summary":16576},"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-photoelectric-effect-and-the-photon","The Photoelectric Effect and the Photon","Light shone on a clean metal ejects electrons, but the details defied the wave theory: the electrons' maximum energy depends on the light's frequency, not its brightness, and there is a sharp threshold frequency below which nothing happens. Einstein resolved every anomaly by treating light as a stream of energy quanta hf, each absorbed whole by one electron, and Millikan's measurement of the stopping-potential slope confirmed h to a decade before anyone expected.\n",{"path":16578,"title":16579,"module":16571,"summary":16580},"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fx-rays-and-the-compton-effect","X-Rays and the Compton Effect","X-rays are short-wavelength electromagnetic waves produced when fast electrons are braked in a target, and their diffraction by crystals lets Bragg's law measure atomic spacings. Compton then scattered X-rays off electrons and found the wavelength shifted by an amount that only a photon carrying momentum hf\u002Fc could explain, closing the case for the particle nature of light.\n",{"path":16582,"title":16583,"module":16571,"summary":16584},"\u002Fquantum-mechanics\u002Fold-quantum-theory\u002Fthe-old-quantum-theory-bohr-and-sommerfeld","The Old Quantum Theory: Bohr, Sommerfeld, and Correspondence","Between Bohr's 1913 atom and Schrödinger's 1926 equation, physics ran on a provisional recipe: keep classical orbits, but admit only those whose action integral is a whole multiple of Planck's constant. This lesson develops the Wilson-Sommerfeld phase-integral rule, applies it to the oscillator and to the elliptical Kepler orbits of hydrogen, derives Sommerfeld's relativistic fine structure and the quantization of orbit orientation, and shows how the correspondence principle fixed intensities and selection rules. The systematic failures — helium, line intensities, the anomalous Zeeman effect — mark exactly where a theory of orbits had to give way to a theory of waves.\n",{"path":16586,"title":16587,"module":16588,"summary":16589},"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fde-broglie-waves-and-electron-diffraction","De Broglie Waves and Electron Diffraction","The Wave Nature of Matter","In 1924 de Broglie proposed that every particle carries a wave of wavelength h\u002Fp. The hypothesis explains Bohr's quantized orbits as standing waves, and Davisson and Germer, then G. P. Thomson, confirmed it by diffracting electrons from crystals exactly as X-rays diffract. We derive the electron wavelength, work the Bragg analysis of the data, and give the relativistic form.\n",{"path":16591,"title":16592,"module":16588,"summary":16593},"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fwave-packets-and-the-probability-interpretation","Wave Packets and the Probabilistic Wave Function","A single de Broglie wave fills all space, but a particle is localized. Adding many waves of nearby wavelength builds a wave packet that is confined and moves at the group velocity, which equals the particle velocity. Born's rule reads the squared amplitude of the wave function as a probability density, the meaning confirmed by electron interference building up one detection at a time.\n",{"path":16595,"title":16596,"module":16588,"summary":16597},"\u002Fquantum-mechanics\u002Fmatter-waves\u002Fthe-uncertainty-principle","The Uncertainty Principle and Wave-Particle Duality","The packet relations delta-k delta-x about 1 become Heisenberg's principle once momentum is hbar times wave number: position and momentum cannot both be sharp, nor energy and time. The gamma-ray microscope shows the limit is physical, not technical. It fixes the zero-point energy of a confined particle, the size of the hydrogen atom, and the natural width of spectral lines, and it frames the wave-particle duality of all matter and radiation.\n",{"path":16599,"title":16600,"module":16601,"summary":16602},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-schrodinger-equation-in-one-dimension","The Schrödinger Equation in One Dimension","Wave Mechanics in One Dimension","The wave equation for matter cannot be derived; it is postulated and judged by experiment. We build the time-dependent Schrödinger equation from the de Broglie relations, read Born's probability rule off the complex wave function, and separate the time and space dependence to get the time-independent equation whose bound-state solutions are the stationary states. The five acceptability conditions on the wave function are what force energy to be quantized.\n",{"path":16604,"title":16605,"module":16601,"summary":16606},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-free-particle-and-wave-packet-dynamics","The Free Particle and Wave-Packet Dynamics","The free particle has no bound states: its stationary solutions are non-normalizable plane waves forming a continuum. Physical states are wave packets built by superposing them, and the superposition is a Fourier transform. We delta-normalize the plane waves, assemble a Gaussian packet, solve for its exact time evolution, and read off the two facts that reconcile the wave picture with mechanics: the packet moves at the group velocity ħk\u002Fm, the classical velocity, and it spreads because its component momenta travel at different speeds.\n",{"path":16608,"title":16609,"module":16601,"summary":16610},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fparticle-in-infinite-and-finite-square-wells","Particle in Infinite and Finite Square Wells","The infinite square well is the simplest bound-state problem: two boundary conditions quantize the energy into a ladder E_n = n² E_1, and the eigenfunctions are the standing waves of a string fixed at both ends. Relaxing the walls to a finite depth lets the wave function leak into the classically forbidden region, keeps the number of bound states finite, and turns the eigenvalue condition into a transcendental equation solved graphically.\n",{"path":16612,"title":16613,"module":16601,"summary":16614},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Foperators-expectation-values-and-the-harmonic-oscillator","Operators, Expectation Values, and the Harmonic Oscillator","Measurable quantities are extracted from the wave function as expectation values, and each observable is represented by an operator that acts between Ψ* and Ψ — position by multiplication, momentum by a derivative, energy by the Hamiltonian. Applied to the harmonic oscillator, the machinery yields evenly spaced levels E_n = (n+½)ℏω, Gaussian- times-Hermite eigenfunctions of definite parity, and the selection rule Δn = ±1.\n",{"path":16616,"title":16617,"module":16601,"summary":16618},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fthe-dirac-delta-potential","The Dirac-Delta Potential: A Single Bound State and Scattering","A potential concentrated at a single point is solvable in closed form and isolates the physics of matching a wave function across a discontinuity. Integrating the Schrödinger equation across the spike gives a jump condition on the derivative; the attractive delta well then supports exactly one bound state, of energy set by the strength alone, while the same spike scatters an incoming beam with a transmission that rises from zero to one. The attractive well and the repulsive barrier scatter identically yet only the well binds.\n",{"path":16620,"title":16621,"module":16601,"summary":16622},"\u002Fquantum-mechanics\u002Fwave-mechanics-1d\u002Fbarrier-penetration-and-quantum-tunneling","Barrier Penetration and Quantum Tunneling","Unbound states scatter rather than bind. A particle meeting a step is partly reflected even when it has more than enough energy to pass, and a particle meeting a barrier taller than its energy has a nonzero chance of appearing on the far side. Matching the wave function across the boundaries gives the reflection and transmission coefficients and the exponential tunneling probability that explains alpha decay, the scanning tunneling microscope, and the ammonia clock.\n",{"path":16624,"title":16625,"module":16626,"summary":16627},"\u002Fquantum-mechanics\u002Fformalism\u002Fhilbert-space-and-dirac-notation","Hilbert Space and Dirac Bra–Ket Notation","The Formalism of Quantum Mechanics","Wave mechanics is one representation of a deeper structure: quantum states are vectors in a complex inner-product space, and observables act on them as linear operators. We build that space from the axioms, introduce Dirac's kets and bras as vectors and the linear functionals that measure them, and identify the wavefunction as the components of an abstract state in the position basis. The resolution of the identity is the single algebraic tool that ties every basis, expansion, and matrix element together.\n",{"path":16629,"title":16630,"module":16626,"summary":16631},"\u002Fquantum-mechanics\u002Fformalism\u002Fobservables-hermitian-operators-and-eigenvalues","Observables, Hermitian Operators, and the Spectral Theorem","Every measurable quantity is represented by a Hermitian operator, and the reason is forced: a measurement needs real eigenvalues, orthogonal eigenvectors, and a complete eigenbasis, and Hermiticity delivers precisely those. We derive those properties from self-adjointness, state the spectral theorem, handle degeneracy, and show that two observables share an eigenbasis precisely when they commute — the algebraic condition behind compatible and incompatible measurements.\n",{"path":16633,"title":16634,"module":16626,"summary":16635},"\u002Fquantum-mechanics\u002Fformalism\u002Fthe-postulates-and-quantum-measurement","The Postulates and Quantum Measurement","With states as vectors and observables as Hermitian operators, the physical content of quantum mechanics reduces to a short list of postulates. We state them precisely, derive the Born probability rule for discrete and continuous spectra, work out projective collapse and its idempotence, compute expectation values and their variance, and state the measurement problem cleanly — the one place the postulates split unitary evolution from measurement without explaining the seam.\n",{"path":16637,"title":16638,"module":16626,"summary":16639},"\u002Fquantum-mechanics\u002Fformalism\u002Fposition-momentum-and-continuous-spectra","Position, Momentum, and Continuous Spectra","Position and momentum are the observables with no normalizable eigenstates: their spectra are continuous, their eigenkets are delta-normalized, and the two are Fourier conjugates. We derive the canonical commutator from the momentum operator, build the continuous-basis machinery (Dirac deltas replacing Kronecker deltas), show the position and momentum wavefunctions are a Fourier-transform pair, and compute expectation values in either representation.\n",{"path":16641,"title":16642,"module":16626,"summary":16643},"\u002Fquantum-mechanics\u002Fformalism\u002Fcommutators-and-the-generalized-uncertainty-principle","Commutators and the Generalized Uncertainty Principle","The commutator of two observables measures the obstruction to sharing an eigenbasis, and it bounds how sharply both can be known at once. We derive the generalized uncertainty relation from the Schwarz inequality, recover the position–momentum bound as a special case, characterize the minimum-uncertainty states that saturate it as Gaussians, and give the energy–time relation its correct reading as a lifetime bound rather than a commutator relation.\n",{"path":16645,"title":16646,"module":16626,"summary":16647},"\u002Fquantum-mechanics\u002Fformalism\u002Ftime-evolution-schrodinger-and-heisenberg-pictures","Time Evolution, Propagators, and the Heisenberg Picture","Time evolution is generated by the Hamiltonian and implemented by a unitary operator that preserves probability. We build that operator, expand a state in stationary states to see why probability densities freeze while phases wind, introduce the propagator, transfer the time dependence onto operators in the Heisenberg picture, and derive Ehrenfest's theorem — which recovers classical equations of motion for expectation values and identifies conserved quantities as observables commuting with the Hamiltonian.\n",{"path":16649,"title":16650,"module":16651,"summary":16652},"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fladder-operators-and-the-number-states","Ladder Operators and the Number States","The Oscillator Algebraically, and Symmetry","The harmonic oscillator can be solved without touching a differential equation. Factoring the Hamiltonian into a lowering operator and its adjoint turns the spectrum into pure algebra: the commutator relation fixes the ladder, the vacuum condition fixes the ground state, and the energies fall out as equally spaced rungs. The same operators give the matrix elements of position and momentum for free.\n",{"path":16654,"title":16655,"module":16651,"summary":16656},"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fcoherent-and-squeezed-states","Coherent and Squeezed States","A single number state never moves — its position expectation is pinned at the origin. The superposition that oscillates like a classical particle is the eigenstate of the annihilation operator: the coherent state. It is a displaced vacuum, carries Poissonian photon statistics, saturates the uncertainty bound, and traces a rigid Gaussian orbit in phase space. Squeezing deforms that circle, trading precision in one quadrature for noise in the other.\n",{"path":16658,"title":16659,"module":16651,"summary":16660},"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fsymmetries-generators-and-conservation-laws","Symmetries, Generators, and Conservation Laws","Every continuous symmetry of a quantum system is a unitary operator built by exponentiating a Hermitian generator: momentum generates translations, angular momentum generates rotations, the Hamiltonian generates time evolution. When a generator commutes with the Hamiltonian, the transformation leaves the dynamics unchanged and the generator is conserved — the quantum form of Noether's theorem — and any symmetry that mixes states within a level forces degeneracy.\n",{"path":16662,"title":16663,"module":16651,"summary":16664},"\u002Fquantum-mechanics\u002Foscillator-and-symmetry\u002Fparity-time-reversal-and-discrete-symmetries","Parity, Time Reversal, and Discrete Symmetries","Parity and time reversal are symmetries no continuous generator can reach. Parity is a unitary involution whose eigenvalues label states even or odd, fixing the dipole selection rules. Time reversal is antiunitary: it conjugates i, flips momenta and spins, and for half-integer spin squares to minus one, which by Kramers' theorem makes every level of a time-reversal-invariant Hamiltonian at least doubly degenerate.\n",{"path":16666,"title":16667,"module":15506,"summary":16668},"\u002Fquantum-mechanics\u002Fangular-momentum\u002Forbital-angular-momentum-and-spherical-harmonics","Orbital Angular Momentum and Spherical Harmonics","Orbital angular momentum is the operator triple built from position and momentum. Its components fail to commute, so no state carries sharp values of more than one of them, but each commutes with the total square. Solving the common eigenvalue problem in spherical coordinates quantizes both the magnitude and the projection and produces the spherical harmonics, the angular part of every central-force wavefunction.\n",{"path":16670,"title":16671,"module":15506,"summary":16672},"\u002Fquantum-mechanics\u002Fangular-momentum\u002Fthe-angular-momentum-algebra","The Angular-Momentum Algebra and Ladder Operators","The eigenvalues of angular momentum follow from the commutation relations alone, with no reference to coordinates or wavefunctions. Raising and lowering operators built from the components generate finite multiplets, force the total quantum number to be a non-negative integer or half-integer, and fix the matrix elements of every component. The half-integer values excluded by orbital motion appear here, and they are what spin realizes.\n",{"path":16674,"title":16675,"module":15506,"summary":16676},"\u002Fquantum-mechanics\u002Fangular-momentum\u002Faddition-of-angular-momenta-and-clebsch-gordan","Addition of Angular Momenta and Clebsch–Gordan Coefficients","Two angular momenta combine into a total whose allowed magnitudes run from the difference to the sum of the parts in integer steps. The change from the uncoupled product basis to the coupled total-angular-momentum basis is carried out with the lowering operator and orthogonality, and its matrix of overlaps is the table of Clebsch–Gordan coefficients. Two spin-halves split into a triplet and a singlet, the prototype for every composite spin.\n",{"path":16678,"title":16679,"module":16680,"summary":16681},"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-schrodinger-equation-in-three-dimensions","The Schrödinger Equation in Three Dimensions","Central Potentials","A central potential depends only on the distance from a force center, so the three-dimensional Schrödinger equation separates in spherical coordinates. The angular factor is a spherical harmonic; the radial factor obeys a one-dimensional equation with an effective potential whose centrifugal barrier depends on the angular-momentum quantum number. The free particle and the spherical box fix the two limiting cases through the spherical Bessel functions.\n",{"path":16683,"title":16684,"module":16680,"summary":16685},"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-hydrogen-atom","The Hydrogen Atom","The Coulomb potential turns the radial equation into one whose bound states exist only for a discrete set of energies. A power-series solution truncated to keep the wavefunction normalizable forces the principal quantum number, and the energy comes out proportional to minus one over its square, recovering the Rydberg spectrum. The bound states are the associated Laguerre functions times spherical harmonics, and their energy depends on the principal number alone, giving an n-squared degeneracy larger than rotational symmetry can explain.\n",{"path":16687,"title":16688,"module":16680,"summary":16689},"\u002Fquantum-mechanics\u002Fcentral-potentials\u002Fthe-isotropic-oscillator-and-hidden-symmetry","The Isotropic Oscillator and Hidden Symmetry","The three-dimensional isotropic harmonic oscillator solves in both Cartesian and spherical bases, and the two solutions must agree on the degeneracy of every level. That agreement, and the accidental degeneracy of hydrogen, both come from a symmetry larger than rotation: the oscillator carries an SU(3) invariance built from a conserved quadrupole tensor, and the Coulomb problem carries an SO(4) invariance built from the conserved Runge–Lenz vector. These hidden symmetries pin the degeneracies that rotational invariance alone leaves unexplained.\n",{"path":16691,"title":16692,"module":16693,"summary":16694},"\u002Fquantum-mechanics\u002Fspin\u002Fspin-half-pauli-matrices-and-stern-gerlach","Spin-½, the Pauli Matrices, and Stern–Gerlach","Spin","A silver atom passing through an inhomogeneous magnetic field splits into two beams, not a smear. That single fact fixes the internal angular momentum of the electron to a two-valued quantity with no spatial wavefunction. We build the two-dimensional spin space, the Pauli matrices and their algebra, the spinor for measurement along an arbitrary axis, and the sequential Stern–Gerlach filters that expose measurement disturbance.\n",{"path":16696,"title":16697,"module":16693,"summary":16698},"\u002Fquantum-mechanics\u002Fspin\u002Fspin-in-a-magnetic-field-precession-and-resonance","Spin in a Magnetic Field: Precession and Resonance","A spin coupled to a magnetic field is the simplest nontrivial quantum dynamics. A static field makes the spin expectation precess on a cone at the Larmor frequency while the energy levels split linearly. Adding a weak oscillating field and passing to the rotating frame produces Rabi oscillations and a resonance lineshape — the physics of NMR and ESR, and the driven qubit.\n",{"path":16700,"title":16701,"module":16693,"summary":16702},"\u002Fquantum-mechanics\u002Fspin\u002Ftwo-level-systems-and-the-bloch-sphere","Two-Level Systems and the Bloch Sphere","Every two-state quantum system is a spin-½ in disguise. Its Hamiltonian is an effective magnetic field, its pure states are points on the Bloch sphere, and its unitary evolution is a rigid rotation of that sphere. The same structure produces avoided level crossings, the ammonia inversion doublet and its maser, and the qubit.\n",{"path":16704,"title":16705,"module":16706,"summary":16707},"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fidentical-particles-and-exchange-symmetry","Identical Particles and Exchange Symmetry","Identical Particles","Two electrons carry no label that distinguishes one from the other, and that bare fact reshapes the state space. The exchange operator that swaps particle labels commutes with any Hamiltonian built from identical particles, so its eigenvalue is conserved, and nature admits only its two extremes: totally symmetric states for bosons and totally antisymmetric states for fermions. The antisymmetry forces a statistical correlation, the exchange \"force,\" that keeps fermions apart and draws bosons together even with no interaction between them.\n",{"path":16709,"title":16710,"module":16706,"summary":16711},"\u002Fquantum-mechanics\u002Fidentical-particles\u002Fthe-pauli-principle-atoms-and-the-periodic-table","The Pauli Principle, Atoms, and the Periodic Table","Antisymmetry packaged as a Slater determinant turns the exclusion principle into an operating rule for building atoms. Helium shows the machinery in full: the electron-electron repulsion splits into a direct Coulomb integral and an exchange integral, and the exchange term alone pushes the spin-triplet (orthohelium) below the spin-singlet (parahelium) with no magnetic interaction in sight. Screening, the aufbau order, and Hund's rules then assemble the whole periodic table from the same antisymmetry.\n",{"path":16713,"title":16714,"module":16715,"summary":16716},"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ftime-independent-perturbation-theory","Time-Independent Perturbation Theory","Approximation Methods for Bound States","Almost no realistic Hamiltonian can be solved exactly. Perturbation theory treats a hard Hamiltonian as a solvable one plus a small correction and expands the eigenvalues and eigenstates in powers of that correction. We derive the first- and second-order energy shifts and the first-order state correction for a nondegenerate level, expose the small-denominator failure that degeneracy forces, and fix it by diagonalizing the perturbation inside the degenerate subspace to find the \"good\" zeroth-order states.\n",{"path":16718,"title":16719,"module":16715,"summary":16720},"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Ffine-structure-and-the-real-hydrogen-atom","Fine Structure and the Real Hydrogen Atom","The Bohr spectrum is only the leading term. Two relativistic corrections of order alpha-squared — the relativistic kinetic-energy correction and spin–orbit coupling, joined by the Darwin term for s states — split the hydrogen levels into fine structure that depends on the total angular momentum j. We derive each shift as a first-order perturbation, combine them into a formula depending only on n and j, and continue down the energy ladder to the Lamb shift and the hyperfine 21 cm line.\n",{"path":16722,"title":16723,"module":16715,"summary":16724},"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-zeeman-and-stark-effects","The Zeeman and Stark Effects","An atom in an external field is a perturbation problem whose good basis depends on which interaction wins. A magnetic field competes with the internal spin–orbit coupling: the weak-field limit gives the anomalous Zeeman splitting set by the Landé g-factor, the strong-field limit gives the Paschen–Back pattern in the uncoupled basis, and the intermediate regime is a matrix diagonalization. An electric field gives a quadratic shift for the nondegenerate ground state and a linear splitting for the degenerate n = 2 level.\n",{"path":16726,"title":16727,"module":16715,"summary":16728},"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-variational-method","The Variational Method","The expectation of the Hamiltonian in any trial state is an upper bound on the true ground-state energy. Minimizing that expectation over a parametrized family of trial functions turns the ground-state problem into ordinary calculus and needs no small parameter. We prove the bound, apply it to the helium atom with a screened effective charge, use a two-center trial to predict binding in the hydrogen molecular ion, and extend the method to excited states through orthogonality.\n",{"path":16730,"title":16731,"module":16715,"summary":16732},"\u002Fquantum-mechanics\u002Fapproximation-methods\u002Fthe-wkb-approximation","The WKB Approximation","When the potential varies slowly on the scale of the de Broglie wavelength, the wavefunction is locally a plane wave with a position-dependent wavelength. This semiclassical picture builds the wavefunction from the classical momentum, breaks down at the turning points where the momentum vanishes, and is repaired there by connection formulas. The result recovers the Bohr–Sommerfeld quantization rule with its half-integer correction and gives the exponential tunneling rate through a smooth barrier, the Gamow factor.\n",{"path":16734,"title":16735,"module":6,"summary":6},"\u002Fquantum-mechanics","Quantum Mechanics",{"path":16737,"title":16738,"module":16739,"summary":16740},"\u002Freal-analysis\u002Ffoundations\u002Fsets-logic-functions","Sets, Logic, and Functions","Foundations and the Real Number System","The working language of analysis: quantifiers and the proof patterns (contrapositive, contradiction, induction), sets and their operations, relations and equivalence classes, and functions with their images, injections, surjections, and bijections. Cardinality is measured by bijection, and Cantor's theorem that no set surjects onto its power set forces uncountable sets to exist.\n",{"path":16742,"title":16743,"module":16739,"summary":16744},"\u002Freal-analysis\u002Ffoundations\u002Fordered-fields-completeness","Ordered Fields and the Completeness Axiom","The real numbers are the unique ordered field with the least-upper-bound property. The field and order axioms, the exact failure of the rationals (no supremum for the set of rationals below √2), and completeness as the defining axiom of ℝ lead to the first consequences: the existence of √2, the Archimedean property, and the density of ℚ in ℝ.\n",{"path":16746,"title":16747,"module":16739,"summary":16748},"\u002Freal-analysis\u002Ffoundations\u002Fabsolute-value-bounds","Absolute Value, Bounded Sets, and Inequalities","The absolute value turns the order on ℝ into a notion of distance, with the triangle inequality as the estimate underlying most later proofs. Covered: its algebra, the triangle and reverse-triangle inequalities, and the extension of the sup\u002Finf vocabulary from sets to bounded functions.\n",{"path":16750,"title":16751,"module":16739,"summary":16752},"\u002Freal-analysis\u002Ffoundations\u002Fintervals-uncountability","Intervals, Uncountability, and Decimals","Intervals are classified, and ℝ is proved uncountable two ways: a nested-interval construction and the decimal diagonal argument. Decimal expansions are built as suprema of truncations, which pins the source of their non-uniqueness (the 0.4999… equals 0.5000… identity) and the identification of the rationals with the eventually-repeating expansions. The middle-thirds Cantor set is an uncountable set of measure zero.\n",{"path":16754,"title":16755,"module":16756,"summary":16757},"\u002Freal-analysis\u002Fsequences-series\u002Fsequences-limits","Sequences and Their Limits","Sequences and Series","A sequence is a function on the natural numbers; it converges to a limit when its terms eventually stay within any prescribed tolerance of that number. The epsilon-M definition fixes the order of the quantifiers, and from it the limit is unique, every convergent sequence is bounded, and only the tail matters. Divergence to plus or minus infinity records terms that outgrow every bound.\n",{"path":16759,"title":16760,"module":16756,"summary":16761},"\u002Freal-analysis\u002Fsequences-series\u002Flimit-laws-monotone","Limit Laws and Monotone Convergence","Limits commute with sums, products, quotients, roots, and absolute values and preserve non-strict inequalities, so a limit can be assembled from the limits of its parts without returning to epsilon and M. The squeeze lemma transfers a limit through two envelopes; the monotone convergence theorem produces a limit from boundedness alone; and the ratio test settles the geometric and factorial standard limits.\n",{"path":16763,"title":16764,"module":16756,"summary":16765},"\u002Freal-analysis\u002Fsequences-series\u002Flimsup-bolzano-weierstrass","Subsequences, Limit Superior, and Bolzano–Weierstrass","A bounded sequence need not converge, but it always has convergent subsequences, and its terms cluster between two extreme values. The limit superior and inferior are the limits of the tail suprema and infima; they always exist for a bounded sequence, coincide exactly when it converges, and are its largest and smallest subsequential limits. Bolzano–Weierstrass extracts a convergent subsequence from boundedness alone.\n",{"path":16767,"title":16768,"module":16756,"summary":16769},"\u002Freal-analysis\u002Fsequences-series\u002Fcauchy-completeness","Cauchy Sequences and the Completeness of the Reals","The Cauchy criterion tests convergence without knowing the limit: a sequence converges exactly when its terms eventually all lie within any tolerance of one another. Cauchy sequences are bounded, in the reals Cauchy and convergent are equivalent, and this completeness property is interchangeable with the least-upper-bound axiom — the single feature that separates the real line from the rationals.\n",{"path":16771,"title":16772,"module":16756,"summary":16773},"\u002Freal-analysis\u002Fsequences-series\u002Fseries-convergence","Series and Convergence Tests","A series converges when its sequence of partial sums does, so every fact about sequences transfers. Geometric and telescoping series sum in closed form; the n-th term test rejects series whose terms miss zero, though the harmonic series shows the converse fails; and the comparison test against the geometric and p-series benchmarks settles most nonnegative-term series.\n",{"path":16775,"title":16776,"module":16756,"summary":16777},"\u002Freal-analysis\u002Fsequences-series\u002Fabsolute-conditional-rearrangement","Absolute Convergence, the Ratio and Root Tests, and Rearrangements","Absolute convergence is the strong form of convergence that permits free manipulation; conditional convergence is fragile. Absolute convergence implies convergence, and the ratio and root tests detect it by comparison with the geometric series. The alternating series test supplies conditionally convergent series, Riemann's theorem rearranges any of them to any sum, and Mertens' theorem multiplies series when at least one converges absolutely.\n",{"path":16779,"title":16780,"module":16781,"summary":16782},"\u002Freal-analysis\u002Fmetric-spaces\u002Fmetric-spaces-norms","Metric Spaces, Norms, and Examples","Metric Spaces and Topology","A metric is a function $d(x,y)$ obeying four axioms: nonnegativity, identity of indiscernibles, symmetry, and the triangle inequality. The Euclidean, taxicab, sup, discrete, and great-circle metrics all qualify, as does the sup metric on $C[a,b]$. Every norm induces a metric, and strongly equivalent metrics share the same open sets.\n",{"path":16784,"title":16785,"module":16781,"summary":16786},"\u002Freal-analysis\u002Fmetric-spaces\u002Fopen-closed-sets","Open and Closed Sets, Interior, Closure","Open sets are those in which every point has room to move; closed sets are their complements. From the single ball construction come the topology axioms (arbitrary unions, finite intersections), the interior, closure, and boundary of a set, and the fact that openness is always relative to the ambient space.\n",{"path":16788,"title":16789,"module":16781,"summary":16790},"\u002Freal-analysis\u002Fmetric-spaces\u002Fconvergence-completeness","Convergence, Cauchy Sequences, and Completeness","The $\\varepsilon$-$N$ definition of a limit transfers verbatim to any metric space once $|x-y|$ is replaced by $d(x,y)$. Convergent sequences characterize closed sets and closures; Cauchy sequences and completeness capture spaces with no missing limits, with $\\mathbb{R}^n$ and $C[a,b]$ complete and $\\mathbb{Q}$ and $(0,1]$ not.\n",{"path":16792,"title":16793,"module":16781,"summary":16794},"\u002Freal-analysis\u002Fmetric-spaces\u002Fcompactness","Compactness","A set is compact if every open cover has a finite subcover. In a metric space this is equivalent to sequential compactness and to being complete and totally bounded. Compact sets are closed and bounded; the Heine–Borel theorem gives the converse in $\\mathbb{R}^n$ but nowhere else in general.\n",{"path":16796,"title":16797,"module":16781,"summary":16798},"\u002Freal-analysis\u002Fmetric-spaces\u002Fconnectedness","Connectedness","A space is connected when it cannot be split into two nonempty open pieces. The connected subsets of $\\mathbb{R}$ are precisely the intervals, path- connectedness gives a constructive sufficient condition, and connectedness is a topological invariant preserved by continuous maps, the fact behind the intermediate value theorem.\n",{"path":16800,"title":16801,"module":15200,"summary":16802},"\u002Freal-analysis\u002Fcontinuity\u002Flimits-of-functions","Limits of Functions","The limit of a function at a point is an epsilon–delta condition pinning one value L as the target of f(x) as x approaches c, mirroring the sequence definition with distance replacing index. It is stated only at cluster points of the domain, is unique when it exists, and reduces to sequential limits through the Heine criterion. The algebra of limits and one-sided limits follow from that reduction.\n",{"path":16804,"title":16805,"module":15200,"summary":16806},"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuous-functions","Continuous Functions","A function is continuous at c when its limit there equals its own value, lim f(x) = f(c). The epsilon–delta and sequential forms agree; sums, products, quotients, and compositions of continuous functions are continuous; and the failures split into jump, Dirichlet, popcorn, and removable types. The topological reading is that preimages of open sets are open.\n",{"path":16808,"title":16809,"module":15200,"summary":16810},"\u002Freal-analysis\u002Fcontinuity\u002Fevt-ivt","Extreme and Intermediate Value Theorems","On a closed bounded interval a continuous function attains an absolute maximum and minimum (the extreme value theorem, compactness preserved by continuity) and takes every value between its endpoint values (the intermediate value theorem, connectedness preserved). Both proofs run through Bolzano–Weierstrass and bisection, and yield root-finding, existence of k-th roots, and fixed-point theorems.\n",{"path":16812,"title":16813,"module":15200,"summary":16814},"\u002Freal-analysis\u002Fcontinuity\u002Funiform-continuity","Uniform Continuity","Uniform continuity strengthens continuity by demanding one delta that works at every point of the domain, not a delta re-chosen at each point. It separates x^2 on a compact interval from x^2 on the whole line and from 1\u002Fx near zero; continuity on a closed bounded interval is automatically uniform; uniformly continuous functions preserve Cauchy sequences and extend to endpoints; and Lipschitz continuity is the strongest of the three, through its secant-slope bound.\n",{"path":16816,"title":16817,"module":15200,"summary":16818},"\u002Freal-analysis\u002Fcontinuity\u002Fcontinuity-metric-spaces","Continuity on Metric Spaces","The epsilon–delta definition used only distances, so continuity transfers to maps between metric spaces by replacing absolute values with the two metrics. In this generality continuity still admits a sequential form, preserves compactness and connectedness, is uniform on a compact domain, and reads topologically as preimages of open sets being open, the formulation that defines homeomorphisms.\n",{"path":16820,"title":16821,"module":15200,"summary":16822},"\u002Freal-analysis\u002Fcontinuity\u002Flimits-infinity-monotone","Limits at Infinity and Monotone Functions","Treating infinity as a cluster point extends the epsilon–delta limit to x approaching plus or minus infinity, giving horizontal asymptotes and infinite limits. For monotone functions the one-sided limits always exist as suprema and infima, the discontinuities are jumps and at most countably many, the continuity is equivalent to the image being an interval, and a strictly monotone function always has a continuous inverse.\n",{"path":16824,"title":16825,"module":16826,"summary":16827},"\u002Freal-analysis\u002Fdifferentiation\u002Fthe-derivative","The Derivative","Differentiation","The derivative is the limit of the difference quotient, the slope the secant lines approach as the second point slides into the first. Differentiability forces continuity; linearity and the product, quotient, and chain rules follow from the definition; and a continuous function can fail to be differentiable, as the absolute value does at the origin.\n",{"path":16829,"title":16830,"module":16826,"summary":16831},"\u002Freal-analysis\u002Fdifferentiation\u002Fmean-value-theorem","The Mean Value Theorem","A relative extremum in the interior forces the derivative to vanish; Rolle's theorem and the mean value theorem turn that local fact into global control. The sign of the derivative fixes monotonicity, a bounded derivative yields a Lipschitz bound, and Darboux's theorem shows derivatives have the intermediate value property even where they are discontinuous.\n",{"path":16833,"title":16834,"module":16826,"summary":16835},"\u002Freal-analysis\u002Fdifferentiation\u002Ftaylors-theorem","Taylor's Theorem","Taylor's theorem generalizes the mean value theorem: an n-times differentiable function is matched near a point by a degree-n polynomial, with a Lagrange remainder that names the error exactly through one higher derivative. Iterating the mean value theorem proves it; the second-derivative test is the order-one case; and a smooth non-analytic bump separates a Taylor series from the function it fails to represent.\n",{"path":16837,"title":16838,"module":16826,"summary":16839},"\u002Freal-analysis\u002Fdifferentiation\u002Finverse-function-1d","The Inverse Function Theorem in One Variable","A nonzero derivative certifies a local inverse and fixes its slope. A strictly monotone differentiable function has a differentiable inverse whose derivative is the reciprocal of the original; the inverse function theorem removes the monotonicity hypothesis, and the reciprocal formula constructs nth roots and the logarithm's derivative, failing exactly where the derivative vanishes.\n",{"path":16841,"title":16842,"module":16843,"summary":16844},"\u002Freal-analysis\u002Friemann-integration\u002Fdarboux-integral","Partitions, Darboux Sums, and Integrability","The Riemann Integral","The Riemann integral is defined by trapping the area under a bounded function between under- and over-estimates. Partitions cut the domain into strips; lower and upper Darboux sums bracket the area; refining a partition tightens the bracket. A function is integrable exactly when the bracket can be made arbitrarily thin, and the tagged Riemann-sum limit gives the same number.\n",{"path":16846,"title":16847,"module":16843,"summary":16848},"\u002Freal-analysis\u002Friemann-integration\u002Fintegrability-classes","Which Functions Are Integrable","The Cauchy criterion certifies whole classes of functions as integrable. Continuous functions are integrable because uniform continuity makes every oscillation cap small; monotone functions are integrable because their caps telescope to a single total jump; bounded functions with finitely many discontinuities are integrable by isolating the bad points. The Dirichlet function fails, and the Lebesgue criterion names the exact boundary.\n",{"path":16850,"title":16851,"module":16843,"summary":16852},"\u002Freal-analysis\u002Friemann-integration\u002Fproperties-of-the-integral","Properties of the Integral","The integral is a linear, order-preserving, additive operator on the integrable functions. It splits across subintervals, respects inequalities, bounds the size of a function by the integral of its absolute value, and preserves products. The mean value theorem for integrals identifies the integral with an attained average height on a fixed rectangle.\n",{"path":16854,"title":15255,"module":16843,"summary":16855},"\u002Freal-analysis\u002Friemann-integration\u002Ffundamental-theorem","The fundamental theorem ties the integral to the derivative in two forms. The evaluation form computes a definite integral from any antiderivative; the differentiation form shows the area function has derivative equal to the integrand at points of continuity. Together they make differentiation and integration inverse operations, and yield integration by parts and change of variables.\n",{"path":16857,"title":16858,"module":16843,"summary":16859},"\u002Freal-analysis\u002Friemann-integration\u002Flog-exp-improper","The Logarithm, Exponential, and Improper Integrals","The integral defines transcendental functions. The logarithm is the area under 1\u002Ft, the exponential is its inverse, and their calculus properties follow from the fundamental theorem. Improper integrals extend integration to unbounded intervals and unbounded integrands as limits of proper integrals, with a p-test, a comparison test, absolute versus conditional convergence, and the integral test linking integrals to series.\n",{"path":16861,"title":16862,"module":16863,"summary":16864},"\u002Freal-analysis\u002Ffunction-sequences\u002Fpointwise-uniform-convergence","Pointwise and Uniform Convergence","Sequences and Series of Functions","A sequence of functions has two natural notions of limit. Pointwise convergence fixes each input and takes the limit of numbers; uniform convergence demands one rate that works for every input at once. The uniform norm turns the second into a statement about a single sequence of numbers, and the uniform Cauchy criterion and the Weierstrass M-test let us certify it.\n",{"path":16866,"title":16867,"module":16863,"summary":16868},"\u002Freal-analysis\u002Ffunction-sequences\u002Finterchange-of-limits","Interchange of Limits: Continuity, Integration, Differentiation","Passing to a limit inside a continuity statement, an integral, or a derivative is an interchange of two limits, and the two limits do not always commute. Uniform convergence licenses the first two swaps: the uniform limit of continuous functions is continuous, and the limit of the integrals is the integral of the limit. Differentiation needs uniform convergence of the derivatives, and counterexamples show why each hypothesis is required.\n",{"path":16870,"title":16871,"module":16863,"summary":16872},"\u002Freal-analysis\u002Ffunction-sequences\u002Fpower-series-weierstrass","Power Series and the Weierstrass Approximation Theorem","A power series converges uniformly on every closed subinterval inside its radius of convergence, together with all of its derivatives. That makes it continuous, differentiable, and integrable term by term, so a power series defines an infinitely differentiable function. The Weierstrass approximation theorem then shows that polynomials come uniformly close to any continuous function on a closed bounded interval.\n",{"path":16874,"title":16875,"module":16863,"summary":16876},"\u002Freal-analysis\u002Ffunction-sequences\u002Fpicard-ode","Picard's Existence and Uniqueness Theorem","The Banach fixed-point theorem says a contraction of a complete metric space has exactly one fixed point, found by iterating from any start. Applied to the space of continuous functions with the uniform norm, it proves Picard's theorem: a first-order differential equation with a Lipschitz right-hand side has a unique local solution. Picard iteration constructs that solution explicitly, and worked examples show the Lipschitz condition is not optional.\n",{"path":16878,"title":16879,"module":16880,"summary":16881},"\u002Freal-analysis\u002Fseveral-variables\u002Fdifferentiability-rn","The Derivative of a Map ℝⁿ → ℝᵐ","Functions of Several Variables (Introduction)","The derivative of a map between Euclidean spaces is the linear transformation of vanishing relative error, unique when it exists and represented in coordinates by the Jacobian matrix of partial derivatives. Differentiability forces continuity through a local Lipschitz bound. Existence of the partial derivatives alone does not suffice; continuity of the partials does.\n",{"path":16883,"title":16884,"module":16880,"summary":16885},"\u002Freal-analysis\u002Fseveral-variables\u002Fgradient-chain-rule","Directional Derivatives, the Gradient, and the Chain Rule","The directional derivative measures the rate of change of a scalar field along a chosen heading and equals the derivative applied to that direction. The gradient collects these into a vector that points along steepest ascent and sits orthogonal to level sets. The chain rule composes derivatives by multiplying Jacobians, and a mean value theorem holds for scalar fields but fails for vector-valued maps.\n",{"path":16887,"title":16888,"module":16880,"summary":16889},"\u002Freal-analysis\u002Fseveral-variables\u002Fhigher-derivatives-taylor-extrema","Higher Derivatives, Taylor's Theorem, and Extrema","Iterating the derivative gives a symmetric second derivative, the Hessian, whose mixed partials agree when they are continuous. Taylor's theorem expands a smooth map to any order with a Lagrange-type remainder, and at a critical point the definiteness of the Hessian decides between a local minimum, a local maximum, and a saddle.\n",{"path":16891,"title":16892,"module":16880,"summary":16893},"\u002Freal-analysis\u002Fseveral-variables\u002Finverse-implicit-theorems","The Inverse and Implicit Function Theorems","A nonlinear map with a nonsingular Jacobian is locally invertible, with the inverse's derivative given by the inverse matrix. The contraction mapping principle supplies the local inverse; the implicit function theorem then solves a system for some variables in terms of the rest whenever the relevant Jacobian block is invertible. Worked coordinate changes show both theorems in use.\n",{"path":16895,"title":16896,"module":16880,"summary":16897},"\u002Freal-analysis\u002Fseveral-variables\u002Fmultiple-integrals","Multiple Integrals","The Riemann integral of a bounded function over a closed rectangle in Euclidean space is built from Darboux upper and lower sums on a grid of subrectangles, with the same squeeze criterion that governs the one-variable integral. Continuous integrands are integrable, and a set of content zero can be ignored. Fubini's theorem evaluates a multiple integral as an iterated one in either order, and the indicator trick extends the theory to regions bounded by curves.\n",{"path":16899,"title":16900,"module":6,"summary":6},"\u002Freal-analysis","Real Analysis",{"path":16902,"title":16903,"module":14862,"summary":16904},"\u002Fabstract-algebra\u002Ffoundations\u002Fsets-functions-relations","Sets, Functions, and Equivalence Relations","Algebra is built on three prior notions: the set, the map between sets, and the equivalence relation that reorganizes a set into disjoint classes. Sets, maps (injective, surjective, bijective), fibers and preimages, and the correspondence between equivalence relations and partitions — the one structural fact reused in every later quotient construction.\n",{"path":16906,"title":16907,"module":14862,"summary":16908},"\u002Fabstract-algebra\u002Ffoundations\u002Fintegers-and-modular-arithmetic","The Integers and Modular Arithmetic","The integers carry the template every ring later imitates: well-ordering drives induction, induction drives the division algorithm, and division drives the Euclidean algorithm, gcd, Bézout's identity, and unique factorization into primes. Quotienting by congruence mod n builds the first finite arithmetic, Z\u002FnZ, whose invertible elements form the group of units.\n",{"path":16910,"title":16911,"module":16912,"summary":16913},"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fgroup-axioms-and-first-examples","Group Axioms and First Examples","Groups and Symmetry","A group is a set with one associative operation that has an identity and inverses. We state the axioms, prove that the identity, inverses, and cancellation behave as expected, define the order of a group and of an element, and catalogue the running examples: the integers, the additive group of residues mod n, and the multiplicative group of units mod n.\n",{"path":16915,"title":16916,"module":16912,"summary":16917},"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fdihedral-and-symmetric-groups","Dihedral and Symmetric Groups","The dihedral group D_{2n} is the symmetries of a regular n-gon, generated by a rotation r and a reflection s subject to three relations. The symmetric group S_n is all permutations of n objects, written in cycle notation. Orders, generators and relations, cycle decomposition, the order of a permutation from its cycle type, and the parity that splits S_n in half.\n",{"path":16919,"title":16920,"module":16912,"summary":16921},"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fmatrix-and-quaternion-groups","Matrix and Quaternion Groups","Invertible matrices over a field form the general linear group GL_n(F), with the determinant-one matrices as the subgroup SL_n(F). Over a finite field the order of GL_n(F) has a clean product formula. The quaternion group Q_8 is a second small nonabelian group, distinct from the dihedral group of the same order; its multiplication and subgroup structure sharpen the contrast between the two.\n",{"path":16923,"title":16924,"module":16912,"summary":16925},"\u002Fabstract-algebra\u002Fgroups-and-symmetry\u002Fhomomorphisms-and-group-actions","Homomorphisms, Isomorphisms, and Actions","A homomorphism is a map between groups that respects the operation; an isomorphism is a bijective one, making two groups the same up to relabeling. The kernel and image measure how far a homomorphism is from injective and surjective. A group action realizes a group as permutations of a set, and actions correspond exactly to homomorphisms into a symmetric group, with orbits and stabilizers as the first tools for counting.\n",{"path":16927,"title":16928,"module":16929,"summary":16930},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fsubgroups-and-substructures","Subgroups and Their Substructures","Subgroups and Quotients","A subgroup is a subset that is a group under the inherited operation. One test decides it: nonempty and closed under the map $(x,y) \\mapsto xy^{-1}$. From an arbitrary subset $A$ we build the centralizer, normalizer, and center, and from an action the stabilizer and kernel, all of them subgroups nested in a fixed chain inside $G$.\n",{"path":16932,"title":16933,"module":16929,"summary":16934},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcyclic-groups","Cyclic Groups","A cyclic group is generated by one element. Two facts organize the whole theory: the order of an element equals the order of the subgroup it generates, and cyclic groups of equal order are isomorphic, so $\\mathbb{Z}$ and $\\mathbb{Z}\u002Fn\\mathbb{Z}$ are the only ones. From there the generators ($\\varphi(n)$ of them), the subgroups (one per divisor of $n$), and a fast exponentiation algorithm all follow.\n",{"path":16936,"title":16937,"module":16929,"summary":16938},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fgeneration-and-subgroup-lattices","Generation and the Lattice of Subgroups","The subgroup generated by a subset $A$ is the smallest subgroup containing it, described top-down as an intersection and bottom-up as the set of words in $A$ and its inverses. Collecting all subgroups and ordering them by containment produces the subgroup lattice, whose Hasse diagram shows the joins, meets, and containment relations among all subgroups.\n",{"path":16940,"title":16941,"module":16929,"summary":16942},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcosets-lagrange-and-normal-subgroups","Cosets, Lagrange, and Normal Subgroups","The left cosets of a subgroup partition a group into equal-sized blocks, so the order of a subgroup divides the order of the group: Lagrange's theorem. When the blocks can be multiplied consistently — exactly when the subgroup is normal — they form the quotient group $G\u002FN$. Fermat's and Euler's theorems fall out as index computations.\n",{"path":16944,"title":16945,"module":16929,"summary":16946},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fisomorphism-theorems","The Isomorphism Theorems","Four theorems relate homomorphisms, quotients, and subgroup lattices. The first identifies the image of a homomorphism with the quotient by its kernel; the second and third compute quotients built from two subgroups and quotients of quotients; the fourth matches the subgroups of $G\u002FN$ with the subgroups of $G$ lying above $N$. Together they make quotient groups computable.\n",{"path":16948,"title":16949,"module":16929,"summary":16950},"\u002Fabstract-algebra\u002Fsubgroups-and-quotients\u002Fcomposition-series-and-the-alternating-group","Composition Series and the Alternating Group","A composition series breaks a finite group into simple quotient factors, and Jordan-Hölder says those factors are unique up to order. This turns classification into two problems: list the simple groups, and describe how to reassemble them. The sign homomorphism splits $S_n$ into even and odd permutations, defining the alternating group $A_n$, simple for $n \\ge 5$.\n",{"path":16952,"title":16953,"module":16954,"summary":16955},"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Factions-and-cayleys-theorem","Actions, Orbits, and Cayley's Theorem","Group Actions and Sylow Theory","A group action turns abstract elements into permutations of a set. The action splits the set into orbits, and the orbit-stabilizer theorem ties each orbit's size to the index of a stabilizer. Applied to a group acting on itself by left multiplication, this gives Cayley's theorem: every group is a group of permutations.\n",{"path":16957,"title":16958,"module":16954,"summary":16959},"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fconjugation-and-the-class-equation","Conjugation and the Class Equation","A group acts on itself by conjugation, and the orbits are the conjugacy classes. Orbit-stabilizer turns the resulting partition into the class equation, which forces every group of prime-power order to have a nontrivial center. Conjugacy in the symmetric group is cycle type, and Burnside's lemma counts orbits by averaging fixed points.\n",{"path":16961,"title":16962,"module":16954,"summary":16963},"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fsylow-theorems","The Sylow Theorems","Lagrange's theorem forbids subgroups whose order fails to divide the group order; Sylow's theorems supply a partial converse for prime powers. A Sylow p-subgroup always exists, all of them are conjugate, and their count satisfies two congruence-and-divisibility constraints tight enough to prove many groups non-simple from their order alone.\n",{"path":16965,"title":16966,"module":16954,"summary":16967},"\u002Fabstract-algebra\u002Fgroup-actions-and-sylow\u002Fautomorphisms-and-simple-groups","Automorphisms and Simplicity of Aₙ","Conjugation makes a group act on itself and on its normal subgroups by automorphisms, giving the inner automorphism group G\u002FZ(G) and the embedding of N(H)\u002FC(H) into Aut(H). Characteristic subgroups are those every automorphism fixes, and the automorphism group of a cyclic group is its unit group. The lesson closes by proving the alternating group Aₙ is simple for n ≥ 5.\n",{"path":16969,"title":16970,"module":16971,"summary":16972},"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fdirect-products-and-finite-abelian-groups","Direct Products and Finite Abelian Groups","Products and Group Structure","The direct product assembles a larger group from componentwise copies of smaller ones, and a recognition theorem reverses the process when two normal subgroups meet trivially and span the group. The Fundamental Theorem of Finitely Generated Abelian Groups then classifies every such group by two equivalent invariants, invariant factors and elementary divisors.\n",{"path":16974,"title":16975,"module":16971,"summary":16976},"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fsemidirect-products","Semidirect Products","The semidirect product relaxes the direct product by requiring only one factor to be normal, with the other acting on it through a homomorphism into its automorphism group. This single twisting map lets abelian pieces assemble into non-abelian groups, realizes the dihedral groups as $\\mathbb{Z}_n \\rtimes \\mathbb{Z}_2$, and, with a recognition theorem, classifies groups of several small orders.\n",{"path":16978,"title":16979,"module":16971,"summary":16980},"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fnilpotent-and-solvable-groups","p-Groups, Nilpotent, and Solvable Groups","Finite p-groups have nontrivial center, and iterating the center upward builds the nilpotent groups, which decompose as the direct product of their Sylow subgroups. Iterating the commutator downward builds the solvable groups, whose factors are abelian. The chain cyclic, abelian, nilpotent, solvable orders these classes, and A_5 breaks the last link.\n",{"path":16982,"title":16983,"module":16971,"summary":16984},"\u002Fabstract-algebra\u002Fproducts-and-group-structure\u002Fclassifying-small-groups","Classifying Groups of Small Order","With Sylow's theorem to force normal subgroups, direct and semidirect products to assemble them, and presentations to name the result, every group up to order fifteen can be listed explicitly. Free groups make presentations precise: generators with no relations, from which any group is a quotient by the normal closure of its relations.\n",{"path":16986,"title":16987,"module":16988,"summary":16989},"\u002Fabstract-algebra\u002Fring-theory\u002Frings-definitions-and-examples","Rings: Definitions and Examples","Ring Theory","A ring carries two operations: an abelian group under addition and an associative multiplication linked by the distributive laws. The named special cases — commutative rings, integral domains, division rings, and fields — differ only in how their multiplication behaves. Standard examples include quadratic integer rings, polynomial rings, matrix rings, and group rings.\n",{"path":16991,"title":16992,"module":16988,"summary":16993},"\u002Fabstract-algebra\u002Fring-theory\u002Fideals-quotients-and-homomorphisms","Ideals, Quotient Rings, and Homomorphisms","Ring homomorphisms have kernels that absorb multiplication; such subsets are ideals, and every ideal is the kernel of the projection onto a quotient ring. The quotient construction yields the ring isomorphism theorems and classifies ideals by their quotients: R\u002FI is a field exactly when I is maximal, an integral domain exactly when I is prime.\n",{"path":16995,"title":16996,"module":16988,"summary":16997},"\u002Fabstract-algebra\u002Fring-theory\u002Ffractions-and-the-chinese-remainder-theorem","Fields of Fractions and the CRT","Rings of fractions invert a multiplicatively closed set, enlarging an integral domain into its field of fractions the way Z becomes Q. The Chinese Remainder Theorem splits a quotient by comaximal ideals into a direct product, generalizing Z\u002FmnZ ≅ Z\u002FmZ × Z\u002FnZ and explaining why the Euler function is multiplicative.\n",{"path":16999,"title":17000,"module":17001,"summary":17002},"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Feuclidean-domains-pids-ufds","Euclidean Domains, PIDs, and UFDs","Factorization and Polynomial Rings","Three classes of integral domain, ordered by how much of elementary arithmetic survives: Euclidean domains carry a division algorithm, principal ideal domains make every ideal a single multiple, and unique factorization domains factor every element into irreducibles in one way. We prove the chain ED implies PID implies UFD, the classes are separated by explicit counterexamples, and irreducible and prime coincide exactly in a UFD.\n",{"path":17004,"title":17005,"module":17001,"summary":17006},"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fpolynomial-rings-over-fields","Polynomial Rings over Fields","When the coefficients form a field, polynomial long division works exactly as it does over the rationals, and it works with a unique quotient and remainder. That single fact makes F[x] a Euclidean domain, hence a PID and a UFD: every ideal is the multiples of one polynomial, roots correspond to linear factors, and F[x]\u002F(f) is a field precisely when f is irreducible.\n",{"path":17008,"title":17009,"module":17001,"summary":17010},"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Fgauss-lemma-and-unique-factorization","Gauss's Lemma and Unique Factorization","A UFD is not a field, so its polynomial ring is not a PID — yet unique factorization survives the passage from R to R[x]. Gauss's lemma supplies the passage: a polynomial that factors over the fraction field already factors over R, once content is factored out. This gives the theorem that R[x] is a UFD whenever R is, so Z[x] and Q[x,y] factor uniquely even though neither is a PID.\n",{"path":17012,"title":17013,"module":17001,"summary":17014},"\u002Fabstract-algebra\u002Ffactorization-and-polynomials\u002Firreducibility-criteria-and-groebner","Irreducibility Criteria and Gröbner Bases","Deciding whether a given polynomial is irreducible, and computing in multivariate polynomial rings. In one variable: the rational root test, reduction modulo a prime, and Eisenstein's criterion. In several variables, where division fails, a monomial order gives leading terms, a Gröbner basis restores a well-defined remainder, and Buchberger's algorithm computes it.\n",{"path":17016,"title":17017,"module":17018,"summary":17019},"\u002Fabstract-algebra\u002Fmodule-theory\u002Fintroduction-to-modules","Introduction to Modules","Module Theory","A module is an abelian group on which a ring acts, generalizing both vector spaces (when the ring is a field) and abelian groups (when the ring is the integers). Submodules, homomorphisms, quotients, and the isomorphism theorems carry over from groups, and an F[x]-module is the same datum as a vector space with a chosen linear operator — the correspondence behind the canonical forms.\n",{"path":17021,"title":17022,"module":17018,"summary":17023},"\u002Fabstract-algebra\u002Fmodule-theory\u002Ffree-modules-and-direct-sums","Generation, Direct Sums, and Free Modules","A generating set spans a module by R-linear combinations; a direct sum decomposes it into independent pieces; a free module has a basis and the universal property that a homomorphism is determined by arbitrary values on that basis. Rank is well defined over a commutative ring, torsion blocks a basis, and every module is a quotient of a free one — a presentation by generators and relations.\n",{"path":17025,"title":17026,"module":17018,"summary":17027},"\u002Fabstract-algebra\u002Fmodule-theory\u002Ftensor-products-and-exact-sequences","Tensor Products and Exact Sequences","The tensor product builds a module in which elements of two modules can be multiplied, characterized by a universal property turning bilinear maps into linear ones; extension of scalars is its guiding case. Exact sequences track how a module is assembled from a submodule and a quotient, when that assembly splits, and which modules — projective, injective, flat — make the Hom and tensor functors preserve exactness.\n",{"path":17029,"title":17030,"module":17018,"summary":17031},"\u002Fabstract-algebra\u002Fmodule-theory\u002Fvector-spaces-and-linear-maps","Vector Spaces and Linear Maps","A vector space is a module over a field, and the field hypothesis removes every pathology a general module can have: every vector space is free, so it has a basis, a well-defined dimension, and a coordinate isomorphism with F^n. Linear maps become matrices, change of basis becomes similarity, every space pairs with a dual of the same dimension, and the determinant is the unique alternating multilinear normalized form.\n",{"path":17033,"title":17034,"module":17035,"summary":17036},"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fstructure-theorem-over-pids","The Structure Theorem for Modules over a PID","Modules over PIDs and Canonical Forms","Every finitely generated module over a principal ideal domain splits as a free part plus a direct sum of cyclic torsion pieces, in two canonical ways: invariant factors, tied together by a divisibility chain, and elementary divisors, one prime power at a time. Existence follows from the stacked-basis theorem, both lists are unique, and the case $R = \\mathbb{Z}$ is the classification of finitely generated abelian groups.\n",{"path":17038,"title":17039,"module":17035,"summary":17040},"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Frational-canonical-form","Rational Canonical Form","A linear operator turns its vector space into a module over the polynomial ring $F[x]$, with $x$ acting as the operator. The structure theorem's invariant factors then become polynomials, each cyclic summand becomes a companion matrix, and the block-diagonal assembly is the rational canonical form. It is unique, it is computed inside the base field, and two matrices are similar exactly when their rational canonical forms agree.\n",{"path":17042,"title":17043,"module":17035,"summary":17044},"\u002Fabstract-algebra\u002Fmodules-over-pids\u002Fjordan-canonical-form","Jordan Canonical Form","When the base field contains all the eigenvalues, the elementary divisors of an operator are powers of linear polynomials, and each cyclic summand becomes a Jordan block: an eigenvalue on the diagonal with ones just above it. Stacking the blocks gives the Jordan canonical form, unique up to reordering, as close to diagonal as the operator allows. Diagonalizability reads off the minimal polynomial, and the block sizes are counted by ranks of powers of the operator minus the eigenvalue.\n",{"path":17046,"title":17047,"module":17048,"summary":17049},"\u002Fabstract-algebra\u002Ffield-theory\u002Ffield-extensions-and-algebraic-elements","Field Extensions and Algebraic Elements","Field Theory","A field extension makes a larger field K into a vector space over a smaller field F, and its degree [K:F] is that dimension. Adjoining a root of an irreducible polynomial builds a simple extension F(α) isomorphic to F[x]\u002F(m), whose degree is the degree of the minimal polynomial. The tower law makes these degrees multiply, which turns algebra over fields into bookkeeping with integers.\n",{"path":17051,"title":17052,"module":17048,"summary":17053},"\u002Fabstract-algebra\u002Ffield-theory\u002Fstraightedge-and-compass-constructions","Straightedge-and-Compass Constructions","The lengths a straightedge and compass can build from a unit form a field closed under square roots, and every constructible number lies in a tower of quadratic extensions. So its degree over the rationals is a power of two. That single obstruction settles three problems the Greeks left open: doubling the cube, trisecting a general angle, and squaring the circle are all impossible.\n",{"path":17055,"title":17056,"module":17048,"summary":17057},"\u002Fabstract-algebra\u002Ffield-theory\u002Fsplitting-fields-and-algebraic-closure","Splitting Fields and Algebraic Closure","The splitting field of a polynomial is the smallest extension in which it factors into linear pieces, obtained by adjoining all its roots. Every polynomial has one, its degree is at most n factorial, and any two splitting fields are isomorphic. Pushing this to all polynomials at once gives the algebraic closure, a field in which every polynomial splits and which is unique up to isomorphism.\n",{"path":17059,"title":17060,"module":17048,"summary":17061},"\u002Fabstract-algebra\u002Ffield-theory\u002Fseparable-and-cyclotomic-extensions","Separable Extensions and Cyclotomic Fields","A polynomial is separable when its roots are distinct, detected by whether it shares a factor with its formal derivative. Over perfect fields — characteristic zero and finite fields — every irreducible is separable, and the existence and uniqueness of the finite fields follow. Cyclotomic polynomials package the roots of unity by order, are irreducible over the rationals, and give the cyclotomic field its degree phi(n).\n",{"path":17063,"title":17064,"module":17065,"summary":17066},"\u002Fabstract-algebra\u002Fgalois-theory\u002Fthe-galois-correspondence","The Galois Correspondence","Galois Theory","Galois theory attaches to a field extension its group of symmetries and shows that, for the right extensions, the subgroups of that group are in exact order-reversing correspondence with the intermediate fields. The automorphism group, Artin's theorem, the characterization of Galois extensions, and the Fundamental Theorem together turn questions about fields into questions about finite groups.\n",{"path":17068,"title":17069,"module":17065,"summary":17070},"\u002Fabstract-algebra\u002Fgalois-theory\u002Ffinite-fields","Finite Fields","Every finite field has prime-power order, is the splitting field of $x^{p^n} - x$, and is unique up to isomorphism. Its extension over the prime field is Galois with cyclic group generated by the Frobenius map $x \\mapsto x^p$, so the Galois correspondence reduces the subfield lattice to the divisor lattice of $n$. Möbius inversion counts the irreducible polynomials of each degree, and cyclic error-correcting codes are one application.\n",{"path":17072,"title":17073,"module":17065,"summary":17074},"\u002Fabstract-algebra\u002Fgalois-theory\u002Fcyclotomic-and-abelian-extensions","Cyclotomic and Abelian Extensions","The Galois group of the $n$th cyclotomic field over $\\mathbb{Q}$ is the unit group $(\\mathbb{Z}\u002Fn\\mathbb{Z})^\\times$, which makes cyclotomic fields the worked catalogue of abelian extensions of $\\mathbb{Q}$. The isomorphism identifies subfields with subgroups, realizes every finite abelian group as a Galois group over $\\mathbb{Q}$, and leads to Kronecker–Weber. Composites of Galois extensions and the primitive element theorem supply the machinery.\n",{"path":17076,"title":17077,"module":17065,"summary":17078},"\u002Fabstract-algebra\u002Fgalois-theory\u002Fgalois-groups-of-polynomials","Galois Groups of Polynomials","Ordering the roots of a separable polynomial embeds its Galois group in the symmetric group $S_n$, and the group is transitive exactly when the polynomial is irreducible. The discriminant decides membership in $A_n$; for cubics and quartics the resolvent cubic pins the group down; and reduction modulo a prime produces elements of prescribed cycle type, the standard tool for computing Galois groups over $\\mathbb{Q}$.\n",{"path":17080,"title":17081,"module":17065,"summary":17082},"\u002Fabstract-algebra\u002Fgalois-theory\u002Fsolvability-by-radicals-and-the-quintic","Solvability by Radicals and the Quintic","A polynomial is solvable by radicals exactly when its Galois group is solvable. Cyclic extensions are radical extensions once roots of unity are present, which turns a radical tower into a solvable subnormal series. Since $S_n$ is solvable only for $n \\le 4$, the general quintic has no radical formula, and an explicit quintic with Galois group $S_5$ has roots provably not expressible in radicals.\n",{"path":17084,"title":17085,"module":17086,"summary":17087},"\u002Fabstract-algebra\u002Fcapstone\u002Fcommutative-algebra-and-algebraic-geometry","A Glimpse of Commutative Algebra and Algebraic Geometry","Capstone: Where Algebra Goes Next","Commutative algebra reads geometry off the ring of polynomial functions. The dictionary runs through Noetherian rings and the ascending chain condition, Hilbert's Basis Theorem, affine algebraic sets and the two maps connecting ideals to zero sets, radicals, the Zariski topology, and Hilbert's Nullstellensatz, which over an algebraically closed field makes radical ideals and algebraic sets the same object.\n",{"path":17089,"title":17090,"module":17086,"summary":17091},"\u002Fabstract-algebra\u002Fcapstone\u002Frepresentation-and-character-theory","A Glimpse of Representation and Character Theory","Representation theory studies a group by the ways it can act linearly on a vector space. Representations are equivalent to modules over the group ring; Maschke's theorem gives complete reducibility, the Wedderburn consequences bound the irreducible degrees, and character theory reduces a representation to a trace invariant governed by the orthogonality relations and displayed in the character table of a small group.\n",{"path":17093,"title":17094,"module":6,"summary":6},"\u002Fabstract-algebra","Abstract Algebra",{"path":17096,"title":17097,"module":17098,"summary":17099},"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fatomic-spectra-rutherford","Atomic Spectra and Rutherford's Nucleus","Early Atomic Models and the Old Quantum Theory","Atoms emit light only at sharp, reproducible wavelengths, and by 1890 those wavelengths were captured by the Rydberg-Ritz formula. Neither empirical regularity had a mechanical explanation. Rutherford's alpha-scattering experiment supplied the missing structure: the atom's positive charge and nearly all its mass sit in a tiny central nucleus, with the electrons far outside.\n",{"path":17101,"title":17102,"module":17098,"summary":17103},"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-model-hydrogen","The Bohr Model of Hydrogen","Bohr grafted three quantum postulates onto Rutherford's nuclear atom: certain orbits do not radiate, radiation accompanies a jump between them, and quantization must match classical physics for large orbits. Quantizing the angular momentum fixes the orbit radii and energies, reproduces the Rydberg-Ritz formula, and predicts the Rydberg constant from fundamental constants alone.\n",{"path":17105,"title":17106,"module":17098,"summary":17107},"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fx-ray-spectra-franck-hertz","X-Ray Spectra and the Franck-Hertz Experiment","Two 1913-14 experiments confirmed the Bohr-Rutherford atom independently of optical spectra. Moseley found that the square root of a characteristic X-ray frequency is linear in atomic number, fixing Z as nuclear charge and ordering the periodic table. Franck and Hertz measured discrete atomic energy levels directly by scattering electrons through a mercury vapor.\n",{"path":17109,"title":17110,"module":17098,"summary":17111},"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fbohr-sommerfeld-old-quantum-theory","The Bohr-Sommerfeld Old Quantum Theory","Bohr fixed the hydrogen levels with a single quantum number by quantizing angular momentum. Sommerfeld replaced that ad hoc rule with a general prescription: quantize the action of each separable coordinate. The rule produces elliptical orbits, a second (azimuthal) quantum number, space quantization, and — once the relativistic mass variation is included — a fine-structure splitting that matches experiment to order alpha squared.\n",{"path":17113,"title":17114,"module":17098,"summary":17115},"\u002Fatomic-physics\u002Fearly-models-and-old-quantum-theory\u002Fold-quantum-theory-limits-wkb","Limits of the Old Quantum Theory and the WKB Bridge","The old quantum theory works only where the classical motion is separable into independent periodic coordinates. It fails for helium, forbids the correct zero angular momentum of the hydrogen ground state, and misses the half-integer in the oscillator and in molecular spectra. The WKB quantization condition, derived from the Schrodinger equation, is the modern descendant of the Sommerfeld rule and repairs the half-integer through the Maslov correction.\n",{"path":17117,"title":17118,"module":17119,"summary":17120},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fschrodinger-3d-hydrogen","The Schrödinger Equation in Three Dimensions and Hydrogen","The Quantum Hydrogen Atom","Extending the Schrödinger equation to three dimensions and separating it in spherical coordinates produces three ordinary differential equations, one per coordinate. Their boundary conditions generate the quantum numbers n, ℓ, and mℓ, quantize the angular momentum to √(ℓ(ℓ+1))ℏ with projections mℏ, and fix the bound-state energies of hydrogen at −Z²(13.6 eV)\u002Fn².\n",{"path":17122,"title":17123,"module":17119,"summary":17124},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fhydrogen-wave-functions","Hydrogen Wave Functions and Orbitals","The hydrogen wave functions factor into a radial part Rₙℓ(r) and an angular spherical harmonic Yℓm(θ,φ). Squaring gives the probability cloud; the radial distribution P(r) = r²|ψ|² peaks at the Bohr radius for the ground state and at the Bohr orbits for excited states. The angular part fixes the s, p, and d orbital shapes that govern chemical bonding.\n",{"path":17126,"title":17127,"module":17119,"summary":17128},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fradial-equation-in-full","Solving the Radial Equation in Full","The hydrogen radial equation is solved from the differential equation up. The substitution u = rR turns it into a one-dimensional problem with a centrifugal barrier; matching the asymptotic behaviour at the origin and at infinity peels off the factors r^(ℓ+1) and e^(−r\u002Fna₀); a Frobenius series for the remainder must terminate, and that termination condition yields the quantization n ≥ ℓ+1 with E = −Z²Ry\u002Fn². The surviving polynomials are the associated Laguerre functions, whose degree n−ℓ−1 counts the radial nodes.\n",{"path":17130,"title":17131,"module":17119,"summary":17132},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fsymmetry-degeneracy-runge-lenz","Accidental Degeneracy and the Runge-Lenz Symmetry","Hydrogen energies depend only on n, so states of different ℓ at the same n are degenerate. This is not a coincidence but the mark of a hidden symmetry: the quantum Runge-Lenz vector is conserved for the 1\u002Fr potential alone, and together with angular momentum it generates the group SO(4). The Casimir invariant of that group reproduces E = −Z²Ry\u002Fn² and its representations count the n² states. Any departure from 1\u002Fr breaks the symmetry and lifts the ℓ-degeneracy.\n",{"path":17134,"title":17135,"module":17119,"summary":17136},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fexpectation-values-virial","Expectation Values, the Virial Theorem, and Scaling","The radial matrix elements ⟨r^k⟩ of hydrogenic states are the raw material of every later correction. This lesson derives ⟨1\u002Fr⟩ from the virial theorem, builds the full family ⟨r⟩, ⟨r²⟩, ⟨1\u002Fr²⟩, ⟨1\u002Fr³⟩ from Kramers' recursion and the Feynman-Hellmann theorem, and reads off their scaling with n, ℓ, and Z. The virial balance ⟨T⟩ = −½⟨V⟩ = −E fixes the energy budget of every bound state.\n",{"path":17138,"title":17139,"module":17119,"summary":17140},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Fquantum-defects-alkali-spectra","Quantum Defects and Alkali Spectra","An alkali atom is one valence electron outside a closed-shell core, and to a good approximation it is hydrogen with a modified quantum number. Core penetration makes low-ℓ states more bound than the Coulomb formula predicts, and the shortfall is captured by a single number per ℓ, the quantum defect δℓ. The spectrum then follows the Rydberg formula with n replaced by the effective n − δℓ, and the sodium D-line doublet is the worked case.\n",{"path":17142,"title":17143,"module":17119,"summary":17144},"\u002Fatomic-physics\u002Fquantum-hydrogen-atom\u002Frydberg-atoms","Rydberg Atoms","A Rydberg atom is an atom excited to a very high principal quantum number, and every hydrogenic property becomes exaggerated by a power of n. Size grows as n², binding falls as n⁻², radiative lifetime lengthens as n³, and the static polarizability explodes as n⁷. The levels crowd toward the ionization limit, and the enormous dipole interaction between two Rydberg atoms produces the blockade that underlies neutral-atom quantum computing.\n",{"path":17146,"title":17147,"module":17148,"summary":17149},"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Frelativistic-kinetic-correction","The Relativistic Kinetic-Energy Correction","Fine Structure and the Dirac Atom","The Bohr energies treat the electron as slowly moving, but its speed is of order αc, so the kinetic energy needs a relativistic correction. Expanding √(p²c²+m²c⁴) to order (v\u002Fc)² produces the perturbation −p⁴\u002F8m³c², whose first-order shift on a hydrogenic state is evaluated with the trick p²=2m(E−V). The result depends on n and ℓ, is smaller than the gross structure by α²≈5×10⁻⁵, and is one of the three pieces that combine into the fine-structure formula.\n",{"path":17151,"title":17152,"module":17148,"summary":17153},"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fspin-orbit-thomas-precession","Spin-Orbit Coupling and Thomas Precession","In the electron's rest frame the nucleus orbits it, and the resulting current produces a magnetic field that couples to the electron's spin moment. The interaction is ξ(r) L·S, with ξ built from the Coulomb potential and the radial expectation ⟨1\u002Fr³⟩. A relativistic subtlety, Thomas precession, halves the naive coefficient because the electron's rest frame is accelerating. The result splits each ℓ≥1 level into a j=ℓ±½ doublet and makes (n, ℓ, j, mⱼ) the good quantum numbers.\n",{"path":17155,"title":17156,"module":17148,"summary":17157},"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdarwin-term-fine-structure-formula","The Darwin Term and the Fine-Structure Formula","The third fine-structure correction, the Darwin term, is a contact interaction proportional to ∇²V that acts only on s-states, physically a smearing of the electron over a Compton wavelength. Adding the relativistic, spin-orbit, and Darwin shifts, the ℓ-dependence cancels and the total collapses to a formula in n and j alone. The n=2 shell splits into 2S₁\u002F₂, 2P₁\u002F₂, 2P₃\u002F₂, with the two j=½ levels exactly degenerate, a coincidence the Dirac theory explains.\n",{"path":17159,"title":17160,"module":17148,"summary":17161},"\u002Fatomic-physics\u002Ffine-structure-and-the-dirac-atom\u002Fdirac-equation-hydrogen","The Dirac Equation for Hydrogen","The fine-structure formula was assembled from three perturbations; the Dirac equation produces it in one stroke and exactly. A first-order relativistic wave equation forces a four-component spinor, from which spin s=½, the g-factor of 2, the spin-orbit term, and antiparticles all emerge automatically. Its exact Coulomb spectrum depends only on n and j, and expanding in Zα reproduces the perturbative result, including the 2S₁\u002F₂–2P₁\u002F₂ degeneracy that sets up the Lamb shift.\n",{"path":17163,"title":17164,"module":17165,"summary":17166},"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Flamb-shift-qed","The Lamb Shift and QED Radiative Corrections","QED Corrections and Hyperfine Structure","The Dirac equation makes the 2S₁\u002F₂ and 2P₁\u002F₂ levels of hydrogen exactly degenerate. Lamb and Retherford measured a splitting of about 1058 MHz that the Dirac theory cannot produce. The gap comes from the electron's coupling to the quantized electromagnetic field: self-energy, vacuum polarization, and the anomalous magnetic moment. Welton's vacuum-fluctuation estimate reproduces the size and shows why the effect lands almost entirely on s-states, and the same radiative corrections make hydrogen the most stringent test of QED.\n",{"path":17168,"title":17169,"module":17165,"summary":17170},"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fhyperfine-structure-21cm","Hyperfine Structure and the 21 cm Line","The proton carries a magnetic moment, and it interacts with the magnetic field the electron produces at the nucleus. For s-states that interaction is the Fermi contact term, proportional to the electron density at the origin and to the dot product of the nuclear and electronic spins. Coupling I and J into F = I + J splits each level by a Landé interval rule; in hydrogen's ground state it produces the F = 0\u002FF = 1 doublet whose 1420 MHz, 21 cm transition maps neutral hydrogen across the galaxy.\n",{"path":17172,"title":17173,"module":17165,"summary":17174},"\u002Fatomic-physics\u002Fqed-corrections-and-hyperfine-structure\u002Fnuclear-effects-isotope-shift","Nuclear Size, Moments, and Isotope Shifts","A real nucleus has a finite size, a mass that changes between isotopes, and, when its spin is at least one, an electric quadrupole moment. Each leaves a fingerprint in the atomic spectrum: the volume shift from s-electrons sampling the charge distribution, the mass and field isotope shifts that separate on a King plot, the quadrupole interaction that breaks the Landé interval rule, and the hyperfine anomaly from the magnetization distribution. Atomic spectroscopy reads nuclear properties out of these shifts.\n",{"path":17176,"title":17177,"module":17178,"summary":17179},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fperiodic-table-atomic-spectra","The Periodic Table and Atomic Spectra","Many-Electron Atoms","Identical electrons demand antisymmetric wave functions, which is the Pauli exclusion principle: no two electrons share all four quantum numbers. Filling shells in order of increasing energy — shifted by penetration and shielding — builds the periodic table and its recurring ionization pattern. Selection rules govern optical spectra, and an external field splits lines by the Zeeman effect.\n",{"path":17181,"title":17182,"module":17178,"summary":17183},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fcentral-field-self-consistent","The Central-Field Approximation and the Self-Consistent Field","The N-electron Hamiltonian does not separate because every pair of electrons repels. The central-field approximation replaces that pairwise repulsion with an averaged spherical potential each electron feels, restoring hydrogen-like orbitals labelled by n and ℓ. The Thomas-Fermi statistical model fixes the shape of the screened charge from Fermi-gas thermodynamics; the Hartree self-consistent field determines it exactly by iterating orbitals against the potential they generate until the two agree.\n",{"path":17185,"title":17186,"module":17178,"summary":17187},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fidentical-particles-hartree-fock","Exchange, Slater Determinants, and Hartree-Fock","A product wave function ignores that electrons are identical fermions. Enforcing antisymmetry writes the state as a Slater determinant, which vanishes whenever two electrons share a spin-orbital — the exclusion principle made algebraic. The energy of a determinant carries a new term with no classical analogue, the exchange integral, nonzero only for parallel spins; it lowers the energy of aligned electrons and carves a Fermi hole around each one. Adding the exchange operator to the mean field gives the Hartree-Fock equations, and what they still miss defines the correlation energy.\n",{"path":17189,"title":17190,"module":17178,"summary":17191},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhelium-two-electron-atom","Helium: the Prototype Two-Electron Atom","Helium is the smallest atom the Schrödinger equation cannot solve exactly, and the smallest that shows every many-electron effect. Ignoring the electron repulsion overbinds the ground state by 30 eV; first-order perturbation theory and a one-parameter variational calculation with an effective charge close most of the gap. The excited configurations split into para (singlet) and ortho (triplet) states separated by the exchange integral, with the triplet lower — and the absence of a 1s² triplet is the Pauli principle in its plainest form.\n",{"path":17193,"title":17194,"module":17178,"summary":17195},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fls-jj-coupling-term-symbols","LS and jj Coupling; Term Symbols","A configuration is not a single energy level. The residual electrostatic repulsion and the spin-orbit interaction split it, and which one dominates fixes the coupling scheme. In light atoms the electrostatic term wins: orbital and spin angular momenta couple separately into L and S, then into J, giving Russell- Saunders term symbols. In heavy atoms spin-orbit wins and each electron's j forms first. The Pauli principle prunes the allowed terms of equivalent electrons, the Landé interval rule spaces the fine-structure multiplet, and the scheme crosses over from LS to jj down a column.\n",{"path":17197,"title":17198,"module":17178,"summary":17199},"\u002Fatomic-physics\u002Fmany-electron-atoms\u002Fhund-rules-ground-terms","Hund's Rules and Ground-State Terms","A configuration allows several terms; Hund's three rules pick the ground one. Maximize the spin S first, then the orbital L, then set J to |L−S| for a less-than-half shell and L+S for a more-than-half shell. The first two rules come from exchange lowering the energy of apart-kept electrons; the third comes from the sign of the spin-orbit coupling, which flips as a shell passes half-filling and turns the multiplet from normal to inverted. Worked ground terms for carbon, nitrogen, oxygen, and iron show the rules in action.\n",{"path":17201,"title":17202,"module":17203,"summary":17204},"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fzeeman-effect","The Zeeman Effect","Atoms in External Fields","A magnetic field couples to the atom through its magnetic moment, splitting each level into equally spaced sublevels labelled by the projection of the total angular momentum. When spin is present the spacing is not the classical one: it carries the Landé g-factor, a projection of the spin and orbital moments onto the total angular momentum. We derive the weak-field Hamiltonian from minimal coupling, evaluate the shift with the projection theorem, and read off the polarization of the emitted components.\n",{"path":17206,"title":17207,"module":17203,"summary":17208},"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fpaschen-back-intermediate","The Paschen-Back and Intermediate-Field Regimes","When the magnetic interaction grows past the fine-structure coupling, spin and orbital angular momentum decouple and precess independently about the field. The anomalous Zeeman pattern reverts to a simple triplet, the Paschen-Back effect. Between the two limits neither coupling dominates and the level positions follow from diagonalizing the combined spin-orbit and Zeeman Hamiltonian. We build the two-by-two problem for a single valence electron, solve it in closed form, and show both limits emerge from one expression.\n",{"path":17210,"title":17211,"module":17203,"summary":17212},"\u002Fatomic-physics\u002Fatoms-in-external-fields\u002Fstark-effect-polarizability","The Stark Effect and Field Ionization","An electric field shifts atomic levels by coupling to the electron's position. Parity forbids a first-order shift for a non-degenerate state, so most atoms respond only at second order through their polarizability, a quadratic Stark shift. Hydrogen is the exception: its accidental degeneracy admits a permanent dipole and a linear shift, cleanest in parabolic coordinates. At large fields the Coulomb well develops a saddle, and Rydberg states field-ionize at a threshold that falls as the fourth power of the principal quantum number.\n",{"path":17214,"title":17215,"module":17216,"summary":17217},"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Ftime-dependent-perturbation-golden-rule","Time-Dependent Perturbation Theory and the Golden Rule","Radiative Transitions and Spectral Lines","An atom in a weak oscillating field makes transitions between its stationary states. First-order time-dependent perturbation theory gives the transition amplitude as a Fourier component of the perturbation at the Bohr frequency, and the resulting probability is a sinc-squared resonance that sharpens as the field acts longer. For a two-level system the same coupling produces Rabi oscillations; for a transition into a continuum the long-time limit collapses the sinc-squared into a delta function and yields Fermi's golden rule, a constant transition rate set by the coupling strength and the density of final states.\n",{"path":17219,"title":17220,"module":17216,"summary":17221},"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fdipole-approximation-einstein-coefficients","The Dipole Approximation and Einstein Coefficients","The coupling between an atom and light is the interaction of the electron with the electromagnetic field. Because an optical wavelength dwarfs the atom, the spatial variation of the field across the atom can be dropped, leaving the electric-dipole interaction and its matrix element. That matrix element defines the oscillator strength, which obeys the Thomas-Reiche-Kuhn sum rule. Einstein's three rate coefficients (absorption, stimulated emission, spontaneous emission) follow from detailed balance with thermal radiation, fixing the ratio of spontaneous to stimulated rates and its steep growth with frequency.\n",{"path":17223,"title":17224,"module":17216,"summary":17225},"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Fselection-rules-forbidden-transitions","Selection Rules and Forbidden Transitions","The dipole matrix element vanishes for most pairs of states, and the pattern of which survive is the set of selection rules. Parity forces the orbital angular momentum to change by one; the angular integral of three spherical harmonics restricts the magnetic quantum number to change by zero or one; the photon's spin restricts the total angular momentum. When the dipole element vanishes, higher multipoles (magnetic dipole and electric quadrupole) can still drive the transition at rates smaller by powers of the fine-structure constant, and states with no allowed decay become metastable.\n",{"path":17227,"title":17228,"module":17216,"summary":17229},"\u002Fatomic-physics\u002Fradiative-transitions-and-line-shapes\u002Flifetimes-and-line-shapes","Lifetimes, Line Widths, and Line Shapes","A spectral line is never infinitely sharp. The finite lifetime of the excited state gives every line a natural Lorentzian width set by the total decay rate, the Fourier transform of an exponentially damped emission. Thermal motion adds a Gaussian Doppler width that usually dominates in a gas; collisions add a further Lorentzian pressure width; the observed profile is the Voigt convolution of the Gaussian and Lorentzian parts. Strong driving fields broaden the line further through saturation. Each mechanism has a distinct dependence on temperature, density, and intensity that lets it be identified and, where possible, removed.\n",{"path":17231,"title":17232,"module":17233,"summary":17234},"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Flaser-principles","Population Inversion, Gain, and the Laser","Lasers and Spectroscopy","A laser is an optical amplifier placed inside a resonant cavity. Amplification requires that stimulated emission outrun absorption, which requires more atoms in the upper level than the lower one — a population inversion that the Einstein relations forbid in thermal equilibrium and that no two-level pump can produce. Three- and four-level schemes reach it by routing atoms through auxiliary states. The gain coefficient sets how strongly a weak beam grows, the cavity fixes the threshold and selects a comb of longitudinal modes, and gain saturation clamps the steady-state inversion at its threshold value.\n",{"path":17236,"title":17237,"module":17233,"summary":17238},"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fspectroscopy-techniques","Spectroscopic Techniques and Frequency Combs","A tunable laser turns spectroscopy from photographing a spectrum into interrogating a single transition, but at room temperature the Doppler width buries the natural linewidth under a thousandfold-broader Gaussian. Saturated absorption and two-photon spectroscopy defeat the first-order Doppler shift by selecting the zero-velocity class or cancelling the shift between counter-propagating photons, recovering natural-width features. Laser-induced fluorescence pushes sensitivity to single atoms, and the optical frequency comb converts an optical frequency into a countable radio-frequency beat, giving absolute frequency measurement across the visible spectrum.\n",{"path":17240,"title":17241,"module":17233,"summary":17242},"\u002Fatomic-physics\u002Flasers-and-spectroscopy\u002Fline-catalog-nist-asd","Reading Real Spectra with the NIST Database","Every quantity computed in this course — energy levels, transition frequencies, oscillator strengths, lifetimes — is tabulated for real atoms in the NIST Atomic Spectra Database. This lesson reads that data as physics: how levels are labelled by term symbols and energies in wavenumbers, how a transition list encodes wavelength, Einstein coefficient, and line strength, how a Grotrian diagram is reconstructed from the tables, and how a measured spectrum is matched to catalog lines. The residual between computed and tabulated positions is the running score of atomic theory.\n",{"path":17244,"title":17245,"module":17246,"summary":17247},"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Flaser-cooling-doppler","Laser Cooling and Optical Molasses","Modern Atomic Physics","A near-resonant laser beam pushes an atom because every absorbed photon delivers one unit of momentum and the subsequent spontaneous emission averages to zero. Two counter-propagating red-detuned beams turn that push into friction: the Doppler shift brings a moving atom closer to resonance with the beam it moves against, so the net force opposes the velocity. Six beams give optical molasses in three dimensions. The random recoil of spontaneous emission heats against the friction, and the balance sets the Doppler cooling limit. Adding a magnetic-field gradient makes the force position-dependent as well, giving the magneto-optical trap.\n",{"path":17249,"title":17250,"module":17246,"summary":17251},"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fsub-doppler-trapping","Sub-Doppler Cooling and Atom Traps","Optical molasses cools multilevel atoms below the Doppler limit. A polarization gradient plus optical pumping makes an atom repeatedly climb a light-shift hill and be pumped to the valley, losing kinetic energy each cycle — Sisyphus cooling. The floor is the recoil limit, one photon momentum of residual motion. Below it, cooling must avoid scattering photons: conservative magnetic and optical-dipole traps hold the atoms while forced evaporation removes the hot tail, driving the phase-space density up toward quantum degeneracy.\n",{"path":17253,"title":17254,"module":17246,"summary":17255},"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Fbose-einstein-condensation","Bose-Einstein Condensation of Atomic Gases","Below a critical temperature a gas of identical bosons places a macroscopic fraction of its atoms in the single lowest-energy state. The transition occurs when the thermal de Broglie wavelength grows to the interparticle spacing, so the phase- space density reaches order unity. The critical temperature follows from the Bose-Einstein distribution and the density of states, the condensate fraction grows as one minus (T\u002FTc) to the three-halves, and the condensate reveals itself in time-of-flight as a sharp bimodal peak in the momentum distribution. The 1995 rubidium and sodium experiments realized it in dilute trapped gases.\n",{"path":17257,"title":17258,"module":17246,"summary":17259},"\u002Fatomic-physics\u002Fmodern-atomic-physics\u002Foptical-clocks-precision","Optical Atomic Clocks and Precision Measurement","An atomic clock counts the oscillations of a field locked to an atomic transition. The cesium microwave standard defines the second through the 9.19 GHz ground-state hyperfine transition, interrogated by Ramsey's separated-oscillatory-field method whose fringe width is set by the free-precession time. Optical clocks replace the microwave transition with an optical one five orders of magnitude higher in frequency, raising the quality factor and the fractional stability in proportion. Lattice and single-ion clocks reach fractional uncertainties near ten-to-the-minus- eighteen by trapping the atoms at a magic wavelength that cancels the light shift, and at that level they measure the gravitational redshift over centimetres of height.\n",{"path":17261,"title":17262,"module":6,"summary":6},"\u002Fatomic-physics","Atomic Physics",{"path":17264,"title":17265,"module":6,"summary":6},"\u002Fdatabases","Databases",{"path":17267,"title":17268,"module":14862,"summary":17269},"\u002Fcategory-theory\u002Ffoundations\u002Fwhat-is-a-category","Categories, Objects, and Arrows","A category is objects, arrows between them, a rule for composing arrows, and an identity arrow on every object, subject to associativity and the unit laws. The axioms mention no elements: arrows need not be functions, and an object is known only through the arrows into and out of it. Isomorphism, commutative diagrams, duality, and the terminal object are the first consequences.\n",{"path":17271,"title":17272,"module":14862,"summary":17273},"\u002Fcategory-theory\u002Ffoundations\u002Fexamples-of-categories","A Zoo of Categories","The axioms admit two very different kinds of model: large categories of structured sets and their structure-preserving maps (Set, Mon, Grp, Top, Vect), and small categories that are themselves single algebraic objects — a monoid as a one-object category, a poset as a thin category. The awkward cases Rel and Pfn have sets as objects but relations and partial functions as arrows, and a typed programming language presents its types and programs as a category.\n",{"path":17275,"title":17276,"module":14862,"summary":17277},"\u002Fcategory-theory\u002Ffoundations\u002Fspecial-morphisms","Isomorphisms, Monos, and Epis","Injectivity and surjectivity mention elements, so a general category re-expresses them by cancellation: monomorphisms cancel on the left, epimorphisms on the right. Sections and retractions are the split versions with an explicit one-sided inverse. Mono plus epi does not force an isomorphism, and subobjects are equivalence classes of monos into a fixed object.\n",{"path":17279,"title":17280,"module":14862,"summary":17281},"\u002Fcategory-theory\u002Ffoundations\u002Ffunctors","Functors: Maps Between Categories","A functor sends objects to objects and arrows to arrows while preserving composition and identities. Covariant and contravariant functors, the standard stock (forgetful, free, hom, and powerset), and the classification by faithfulness, fullness, and essential surjectivity all follow. Functors compose, so categories and functors form a category themselves.\n",{"path":17283,"title":17284,"module":14862,"summary":17285},"\u002Fcategory-theory\u002Ffoundations\u002Fnatural-transformations","Natural Transformations and Functor Categories","A natural transformation is a map between two parallel functors: one component arrow per object, subject to a commuting square for every arrow of the source. Naturality is verified for the determinant, the double dual, and list operations; functors and natural transformations form the functor category [C, D]; and vertical and horizontal composition satisfy the Godement interchange law.\n",{"path":17287,"title":17288,"module":14862,"summary":17289},"\u002Fcategory-theory\u002Ffoundations\u002Fsize-and-set-theory","Size: Small, Large, Locally Small","The objects of Set do not form a set, and pretending otherwise reproduces the classical paradoxes. Classes make the small\u002Flarge distinction precise, with locally small and essentially small as the intermediate notions. Cantor's theorem shows Set and its algebraic relatives are large, and the function-based axiomatization of sets is the one category theory prefers to ZFC.\n",{"path":17291,"title":17292,"module":17293,"summary":17294},"\u002Fcategory-theory\u002Funiversal-properties\u002Funiversal-properties","Universal Properties, Initial and Terminal Objects","Universal Properties and Basic Constructions","A universal property characterizes an object by a for-all\u002Fexists-unique condition on the arrows into or out of it, and any two objects satisfying the same property are isomorphic by a unique isomorphism. Initial and terminal objects are the simplest cases; the free vector space, the discrete topology, and the ring of integers show the pattern at work.\n",{"path":17296,"title":17297,"module":17293,"summary":17298},"\u002Fcategory-theory\u002Funiversal-properties\u002Fproducts-and-coproducts","Products and Coproducts","The product of two objects is a wedge of projections through which every other wedge factors uniquely; the coproduct is the dual, built from injections. In Set these are the cartesian product and the disjoint union, in a poset the meet and join, and in abelian groups the two coincide. The mediating-arrow discipline established here is the template for all limits.\n",{"path":17300,"title":17301,"module":17293,"summary":17302},"\u002Fcategory-theory\u002Funiversal-properties\u002Fconstructions-on-categories","Opposite, Product, Slice, and Comma Categories","Categories are themselves mathematical structures, and the standard algebraic constructions apply: opposites, products, subcategories, slices, and the comma category that subsumes them. The opposite category yields the duality principle, halving the subject's proofs; slice and comma categories repackage every universal property as an initial or terminal object.\n",{"path":17304,"title":17305,"module":17306,"summary":17307},"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Frepresentable-functors","Hom-Functors and Representables","Representables and the Yoneda Lemma","Fixing an object A of a locally small category produces a set-valued functor, the hom-functor A(A,-), that records every map out of A. A functor is representable when it is naturally isomorphic to such a hom-functor. We define the covariant and contravariant hom-functors, collect the standard representables (identity, forgetful, powerset), and read maps as generalized elements of varying shape.\n",{"path":17309,"title":17310,"module":17306,"summary":17311},"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-lemma","The Yoneda Lemma","The Yoneda lemma computes the natural transformations out of a representable presheaf: they form a set in natural bijection with X(A). The proof fixes a single degree of freedom, the image of the identity arrow, and shows naturality forces everything else. We prove the bijection, verify naturality in both variables, and read off that a natural transformation out of a representable is just one element.\n",{"path":17313,"title":17314,"module":17306,"summary":17315},"\u002Fcategory-theory\u002Frepresentables-yoneda\u002Fyoneda-consequences","The Yoneda Embedding and Its Uses","Three corollaries turn the Yoneda lemma into working machinery. A representation of a presheaf is the same thing as a universal element; the Yoneda embedding of a category into its presheaf category is full and faithful; and two objects are isomorphic exactly when their representables are. Together they justify constructing arrows by constructing natural transformations between hom-functors, and they contain Cayley's theorem as the one-object case.\n",{"path":17317,"title":17318,"module":17319,"summary":17320},"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits","Cones and Limits","Limits and Colimits","A diagram is a functor from a small shape category; a cone over it is an object with compatible legs to every node; and a limit is the terminal cone, the one every other cone factors through uniquely. Products and terminal objects reappear as limits over particular shapes, and the whole construction is unique up to a single isomorphism.\n",{"path":17322,"title":17323,"module":17319,"summary":17324},"\u002Fcategory-theory\u002Flimits-colimits\u002Fproducts-equalizers-pullbacks","Equalizers and Pullbacks","The equalizer of a parallel pair is the universal arrow that makes the two composites agree; the pullback of a cospan is the universal commutative square. In Set they are solution sets and fibered products, every equalizer is monic, monics are stable under pullback, and products plus equalizers together generate all limits.\n",{"path":17326,"title":17327,"module":17319,"summary":17328},"\u002Fcategory-theory\u002Flimits-colimits\u002Fcolimits","Colimits: Coproducts, Coequalizers, Pushouts","Colimits are limits in the opposite category: cocones replace cones, and the universal cocone is initial rather than terminal. Coproducts glue objects side by side, coequalizers impose relations and produce quotients, pushouts glue along a shared part, and in Set every colimit is a quotient of a disjoint union. Directed colimits admit a clean elementwise description.\n",{"path":17330,"title":17331,"module":17319,"summary":17332},"\u002Fcategory-theory\u002Flimits-colimits\u002Fcomputing-limits","Computing Limits in Concrete Categories","In Set the limit of any diagram is the set of threads: choice functions through the nodes that commute with every edge. In Pos, Mon, and Top the recipe is the same limit downstairs plus the unique structure that makes the projections structure-preserving — pointwise order, componentwise operations, the topology generated by the projections. The pattern is what \"the forgetful functor creates limits\" means concretely.\n",{"path":17334,"title":17335,"module":17319,"summary":17336},"\u002Fcategory-theory\u002Flimits-colimits\u002Flimits-and-functors","Preservation, Reflection, and Creation of Limits","A functor preserves limits if it sends limit cones to limit cones, reflects them if it recognizes them, and creates them if limits downstairs lift uniquely upstairs. Representable functors preserve all limits, forgetful functors from algebra create them, and limits in functor categories are computed pointwise, one evaluation at a time.\n",{"path":17338,"title":17339,"module":17340,"summary":17341},"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions","Adjoint Functors via Hom-Set Bijections","Adjunctions","An adjunction is a natural bijection between two hom-sets: maps out of $F(A)$ in one category correspond to maps into $G(B)$ in the other. We give the definition, spell out the naturality axioms that make the correspondence compatible with composition, and work the flagship examples — free vector spaces, free groups, discrete and indiscrete topologies, and currying.\n",{"path":17343,"title":17344,"module":17340,"summary":17345},"\u002Fcategory-theory\u002Fadjunctions\u002Funits-and-counits","Units, Counits, and the Triangle Identities","The whole hom-set bijection of an adjunction is generated by two natural transformations: the unit, obtained by transposing identity maps on one side, and the counit, by transposing them on the other. Two triangle identities are all they must satisfy, and any pair satisfying them determines a unique adjunction. The same correspondence specializes to order-preserving maps between posets and to free constructions.\n",{"path":17347,"title":17348,"module":17340,"summary":17349},"\u002Fcategory-theory\u002Fadjunctions\u002Fadjunctions-via-universal-arrows","Adjunctions from Universal Arrows","The unit component at a single object is an initial object of a comma category, and this universal property alone rebuilds the whole adjunction. A functor has a left adjoint exactly when every object admits such a universal arrow, and the left adjoint is assembled from them one object at a time. We prove the equivalence of all three formulations of adjointness.\n",{"path":17351,"title":17352,"module":17340,"summary":17353},"\u002Fcategory-theory\u002Fadjunctions\u002Ffree-forgetful-adjunctions","Free Constructions and Free–Forgetful Adjunctions","Free monoids, free groups, and free vector spaces are left adjoints to forgetful functors, and the universal mapping property is all one needs to prove it. Some forgetful functors also have right adjoints (co-free constructions like the indiscrete topology), producing three-functor chains. Contravariant adjunctions, symmetric in their two functors, close the lesson with the pattern behind duality and representation theorems.\n",{"path":17355,"title":17356,"module":17357,"summary":17358},"\u002Fcategory-theory\u002Fadjoints-limits\u002Flimits-via-adjoints","Limits as Adjoints and as Representables","Adjoints, Representables, and Limits Together","A cone on a diagram is a natural transformation from a constant diagram, so a limit is a representation of the cone functor and, equivalently, a value of the right adjoint to the diagonal functor. We prove both rephrasings, derive uniqueness and functoriality of limits from them, and record the dual statement that a colimit is the left adjoint to the diagonal.\n",{"path":17360,"title":17361,"module":17357,"summary":17362},"\u002Fcategory-theory\u002Fadjoints-limits\u002Fpresheaf-limits-colimits","Limits and Colimits of Presheaves","Representables preserve limits, and limits in a functor category are computed one object at a time, so a presheaf category is complete and cocomplete with all its structure inherited pointwise from Set. The Yoneda embedding then preserves limits but not colimits, and the density theorem repairs the colimit side: every presheaf is a canonical colimit of representables.\n",{"path":17364,"title":17365,"module":17357,"summary":17366},"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoints-preserve-limits","Right Adjoints Preserve Limits (RAPL)","A functor with a left adjoint preserves every limit that exists, and dually a functor with a right adjoint preserves colimits. The proof is a four-line chain of natural isomorphisms through the adjunction and the continuity of representables. The theorem yields product-and-exponential arithmetic in Set, another proof that limits commute with limits, and a standard test for proving that a functor has no adjoint.\n",{"path":17368,"title":17369,"module":17357,"summary":17370},"\u002Fcategory-theory\u002Fadjoints-limits\u002Fadjoint-functor-theorem","The Adjoint Functor Theorem","RAPL makes limit preservation necessary for having a left adjoint; the adjoint functor theorems identify when it is sufficient. For ordered sets no extra hypothesis is needed. In general the candidate adjoint is a limit over a comma category that may be large, and the general adjoint functor theorem tames it with a weakly initial set. We prove GAFT in full and apply it to free groups and, through the special adjoint functor theorem, the Stone–Čech compactification.\n",{"path":17372,"title":17373,"module":17374,"summary":17375},"\u002Fcategory-theory\u002Fmonads-algebras\u002Fmonads","Monads from Adjunctions","Monads and Algebras","A monad on a category is an endofunctor equipped with a unit and a multiplication satisfying associativity and unit laws — the data of a monoid, written internally to the category of endofunctors. Every adjunction induces one, and the list, exception, and state constructions that model computational effects are all monads on Set.\n",{"path":17377,"title":17378,"module":17374,"summary":17379},"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-eilenberg-moore","Algebras for a Monad","An algebra for a monad is an object with a structure map that interacts correctly with the unit and multiplication. The algebras form the Eilenberg–Moore category, whose free–forgetful adjunction induces the monad back; a comparison functor relates any other inducing adjunction to it, and for the list monad the algebras are exactly monoids.\n",{"path":17381,"title":17382,"module":17374,"summary":17383},"\u002Fcategory-theory\u002Fmonads-algebras\u002Fkleisli-and-programming","The Kleisli Category and Monads in Programming","The Kleisli category of a monad has the same objects as the base but takes arrows A to TB, composed by mapping and flattening. These arrows are effectful programs, Kleisli composition is the bind of functional programming, and the Kleisli adjunction is the initial resolution of the monad, with Eilenberg–Moore at the terminal end.\n",{"path":17385,"title":17386,"module":17374,"summary":17387},"\u002Fcategory-theory\u002Fmonads-algebras\u002Falgebras-for-endofunctors","Algebras for an Endofunctor and Recursion","Dropping the monad laws leaves algebras for a bare endofunctor, whose initial objects are the least fixed points of the functor by Lambek's lemma. The natural numbers, lists, and trees are initial algebras; the unique map out of an initial algebra is the fold of functional programming; and the Smyth–Plotkin fixed-point technique builds Scott domains the same way.\n",{"path":17389,"title":17390,"module":17391,"summary":17392},"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Fcartesian-closed-categories","Cartesian Closed Categories","Cartesian Closed Categories and Typed Lambda Calculus","A cartesian closed category has a terminal object, binary products, and for every pair of objects an exponential object that internalizes the hom-set as an object of the category. The defining data is an evaluation arrow and a currying operation, packaged by the adjunction between product-with-A and exponential-by-A. Set, Boolean and Heyting algebras, functor categories, and Cat are all cartesian closed.\n",{"path":17394,"title":17395,"module":17391,"summary":17396},"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Flambda-calculus-correspondence","Typed Lambda Calculus and CCCs","The typed lambda calculus and the cartesian closed category are two presentations of the same theory. Types become objects, terms with one free variable become arrows, product types become products, and function types become exponentials, with abstraction matching currying and application matching evaluation. Building the category of a lambda theory and the internal language of a category are mutually inverse up to equivalence.\n",{"path":17398,"title":17399,"module":17391,"summary":17400},"\u002Fcategory-theory\u002Fcartesian-closed-lambda\u002Ffixed-points-and-recursion","Fixed Points in Cartesian Closed Categories","The untyped lambda calculus has a fixed-point combinator; the typed calculus cannot, and Lawvere's fixed-point theorem explains why: any point-surjection onto an exponential forces every endomap to have a fixed point, which is the abstract form of Cantor's diagonal argument. Recursion is recovered instead by restricting to omega-complete partially ordered objects, where every continuous endomap has a least fixed point built by iterating from bottom. This gives While loops a semantics.\n",{"path":17402,"title":17403,"module":6,"summary":6},"\u002Fcategory-theory","Category Theory",{"path":17405,"title":16047,"module":17406,"summary":17407},"\u002Fdeep-learning\u002Fmathematical-background\u002Flinear-algebra-for-deep-learning","Mathematical Background","Every quantity a network touches is a tensor, and every layer is a matrix acting on one. This lesson compiles the linear algebra deep learning actually uses: products and norms, the system $Ax=b$ and when it is solvable, the two decompositions (eigen and SVD) that diagonalize a transformation, and the pseudoinverse that solves what cannot be solved exactly. It then derives PCA as the worked example that ties it all together.\n",{"path":17409,"title":17410,"module":17406,"summary":17411},"\u002Fdeep-learning\u002Fmathematical-background\u002Fprobability-and-information-theory","Probability & Information Theory","This lesson assembles the probabilistic vocabulary a network is trained in (random variables, densities, the chain rule, expectation and covariance, the handful of distributions that recur everywhere) and then the information theory that turns a probabilistic model into a loss: self-information, entropy, and the KL divergence whose asymmetry is the cross-entropy objective itself.\n",{"path":17413,"title":17414,"module":17406,"summary":17415},"\u002Fdeep-learning\u002Fmathematical-background\u002Fnumerical-computation","Numerical Computation","Machine learning runs on finite-precision arithmetic, where every number is approximated and every operation rounds. This lesson sets the numerical ground rules: overflow and underflow and the standard stabilizations, the condition number that measures how much a problem amplifies error, and the gradient-based optimization (first and second order, constrained and unconstrained) that every training loop runs.\n",{"path":17417,"title":15406,"module":17406,"summary":17418},"\u002Fdeep-learning\u002Fmathematical-background\u002Fcalculus","This lesson assembles the differential calculus used in training networks: the gradient and directional derivative, the Jacobian and Hessian, and the chain rule in scalar, vector, and matrix form. From the chain rule it derives back-propagation as a single sweep over the computational graph, tabulates the matrix-calculus identities that recur in layer gradients, reads optimization off a second-order Taylor expansion, and ends with why reverse-mode automatic differentiation is the algorithm every framework runs.\n",{"path":17420,"title":17421,"module":14862,"summary":17422},"\u002Fdeep-learning\u002Ffoundations\u002Fwhat-is-deep-learning","What Is Deep Learning?","Deep learning is representation learning by composition: stack simple differentiable layers, define a loss, and let gradient descent discover the features a human would otherwise have to engineer by hand. We set up the whole vocabulary (model, loss, optimizer, data), the training loop that ties them together, and the three reasons the approach became practical.\n",{"path":17424,"title":17425,"module":14862,"summary":17426},"\u002Fdeep-learning\u002Ffoundations\u002Fmachine-learning-refresher","A Machine-Learning Refresher","The statistical framework the networks live in: data drawn from an unknown distribution, a loss to minimize, and the central question of generalization: will it work on data we have not seen? We set up empirical risk, capacity, the bias–variance tradeoff, and maximum likelihood.\n",{"path":17428,"title":17429,"module":14862,"summary":17430},"\u002Fdeep-learning\u002Ffoundations\u002Flinear-models-and-the-perceptron","Linear Models & the Perceptron","The simplest learners (linear regression, logistic regression, the perceptron) already contain the whole template: a weighted sum, a loss, a gradient step. They also fail on the XOR problem, which no linear model can solve — the limitation that motivates deep learning.\n",{"path":17432,"title":17433,"module":17434,"summary":17435},"\u002Fdeep-learning\u002Fneural-networks\u002Fthe-multilayer-perceptron","The Multilayer Perceptron","Neural Networks","Stacking linear layers with a nonlinearity between them removes the limitation that stopped the perceptron. We build the multilayer perceptron in explicit matrix form (the forward pass, its dimensions, a worked XOR network with concrete weights) and prove why the nonlinearity is essential: without it the deepest stack collapses to a single hyperplane.\n",{"path":17437,"title":17438,"module":17434,"summary":17439},"\u002Fdeep-learning\u002Fneural-networks\u002Factivation-functions","Activation Functions","The activation is the only nonlinear part of a layer, and the reason depth adds expressive power. We catalog the standard hidden units (sigmoid, tanh, ReLU and its descendants, plus GELU, softplus, swish and maxout), derive each unit's derivative in full, make the vanishing-gradient problem quantitative with the chain-rule product, work numeric examples, and explain why the saturating units gave way to ReLU and why ReLU's own dead-unit failure gave way to Leaky\u002FPReLU\u002FELU\u002FGELU.\n",{"path":17441,"title":17442,"module":17434,"summary":17443},"\u002Fdeep-learning\u002Fneural-networks\u002Funiversal-approximation","Universal Approximation","One hidden layer with a non-polynomial activation can approximate any continuous function on a compact set to arbitrary accuracy: the universal approximation theorem. We prove it constructively (two sigmoids make a bump; sums of bumps make any curve), then show the limitation: existence is not efficiency. Depth-separation results exhibit functions a deep net represents with $O(n)$ units that a shallow net needs $\\exp(n)$ units to match.\n",{"path":17445,"title":17446,"module":17434,"summary":17447},"\u002Fdeep-learning\u002Fneural-networks\u002Fbackpropagation","Backpropagation","Backpropagation is the chain rule run backward over a computational graph. We formalize the graph, derive the four backprop equations for an MLP, present the forward and backward passes as algorithms, and work a tiny two-layer net by hand with explicit numbers. The result: one scalar loss, reverse-mode autodiff, and a gradient for every parameter at twice the cost of a forward pass.\n",{"path":17449,"title":17450,"module":17434,"summary":17451},"\u002Fdeep-learning\u002Fneural-networks\u002Floss-functions-and-output-units","Loss Functions & Output Units","The last layer is where a network's hidden representation meets the task. Choosing an output unit and a loss is not two independent choices; maximum likelihood fixes the pair. We derive the standard couplings (linear\u002FMSE, sigmoid\u002FBCE, softmax\u002Fcross-entropy), show why softmax and cross-entropy were built to cancel into the residual $\\hat y - y$, and prove why squared error is the wrong loss for a saturating classifier.\n",{"path":17453,"title":17454,"module":17455,"summary":17456},"\u002Fdeep-learning\u002Foptimization\u002Fgradient-descent-and-sgd","Gradient Descent & SGD","Optimization","Training is descent on the empirical risk: step the parameters against the gradient. We derive the minibatch gradient as an unbiased estimator whose variance falls as $1\u002FB$, derive the learning-rate ceiling from the smoothness-stability bound $\\eta \u003C 2\u002FL$, and lay out the schedules (step, exponential, cosine, warmup) that anneal it over training.\n",{"path":17458,"title":17459,"module":17455,"summary":17460},"\u002Fdeep-learning\u002Foptimization\u002Fmomentum-and-adaptive-methods","Momentum & Adaptive Methods","Plain gradient descent zig-zags across ravines and moves slowly along flat valleys, because one global learning rate cannot suit a surface with wildly different curvature in different directions. Two fixes address the two problems: momentum accumulates a velocity that damps the oscillation and accelerates the drift, and adaptive methods give every parameter its own learning rate scaled by the history of its gradients. Adam fuses both, and is the default optimizer of modern deep learning.\n",{"path":17462,"title":17463,"module":17455,"summary":17464},"\u002Fdeep-learning\u002Foptimization\u002Finitialization","Weight Initialization","The initial weights determine whether training can succeed before the first gradient step. Initialize every weight equal and all hidden units compute the same function forever; initialize too small or too large and the signal vanishes or explodes as it crosses depth. A single variance condition, $n_{\\text{in}}\\mathrm{Var}(W)=1$, fixes both, and reading it off the forward and backward passes yields Xavier and He initialization directly.\n",{"path":17466,"title":17467,"module":17455,"summary":17468},"\u002Fdeep-learning\u002Foptimization\u002Fthe-optimization-landscape","The Optimization Landscape","The loss of a deep network is a non-convex surface in millions of dimensions, so local search carries no global guarantee, yet it works. We classify critical points by the eigenvalues of the Hessian, show that in high dimension nearly all of them are saddle points rather than bad local minima, and read off the practical terrain — plateaus, cliffs, ill-conditioning, and the sharp-versus-flat distinction that ties the geometry of a minimum to how well it generalizes.\n",{"path":17470,"title":17471,"module":17455,"summary":17472},"\u002Fdeep-learning\u002Foptimization\u002Fsecond-order-and-approximate-methods","Second-Order & Approximate Methods","Newton's method reads the curvature of the loss off its Hessian and jumps to the minimum of the local quadratic in a single step, rescaling away the ill-conditioning that slows first-order descent. We derive it, then explain the three obstacles that keep it out of deep learning: a $d \\times d$ Hessian for $d$ in the billions, an attraction to saddle points, and minibatch noise. The alternative is approximation (conjugate gradients, BFGS and L-BFGS, the natural gradient and Hessian-free methods), each buying some of Newton's curvature information without ever forming or inverting $H$.\n",{"path":17474,"title":17475,"module":17476,"summary":17477},"\u002Fdeep-learning\u002Fregularization\u002Fregularization-overview","Regularization Overview","Regularization","Regularization is any modification to a learning algorithm meant to lower test error at the possible expense of training error. We derive the bias–variance decomposition that explains why it helps, set up the two parameter-norm penalties, $L^2$ weight decay and $L^1$, derive their update rules and eigenbasis shrinkage, show geometrically why $L^1$ alone produces sparse weights (soft-thresholding), distinguish weight decay from loss-added $L^2$ under AdamW, and read both penalties through the two lenses that recur across the chapter: a norm-ball constraint via KKT, and a prior via MAP estimation.\n",{"path":17479,"title":17480,"module":17476,"summary":17481},"\u002Fdeep-learning\u002Fregularization\u002Fdropout-and-data-augmentation","Dropout & Data Augmentation","Two of the most effective regularizers add no penalty term at all; they perturb the computation instead. Dropout multiplies hidden units by a random Bernoulli mask, training an exponential ensemble of thinned subnetworks that share weights; inverted scaling collapses that ensemble into one cheap forward pass at test time. Data augmentation enlarges the training set with label-preserving transforms, injecting the invariances the task demands, and noise injection (input, weight, label smoothing, Mixup) generalizes the same idea into a continuous family.\n",{"path":17483,"title":17484,"module":17476,"summary":17485},"\u002Fdeep-learning\u002Fregularization\u002Fearly-stopping-and-parameter-sharing","Early Stopping & Parameter Sharing","Two cheap regularizers that cost no extra term in the loss. Early stopping treats training time itself as a hyperparameter (watch the validation curve, halt at its minimum, keep the best checkpoint), and for a quadratic objective it is provably equivalent to $L^2$ weight decay. Parameter sharing goes the other way: it constrains many weights to be _equal_, the prior behind every convolution and every recurrent step, and the reason a CNN has orders of magnitude fewer parameters than the dense net it replaces.\n",{"path":17487,"title":17488,"module":17476,"summary":17489},"\u002Fdeep-learning\u002Fregularization\u002Fnormalization","Normalization","Normalization layers standardize activations to zero mean and unit variance inside the network, then hand the model a learnable scale and shift to undo the constraint when it pays to. Batch normalization does this across the batch and must keep separate train-time and test-time statistics; layer, instance, and group norm change only the axes they average over. The result is faster, better-conditioned optimization and a free dose of regularizing batch noise.\n",{"path":17491,"title":17492,"module":17493,"summary":17494},"\u002Fdeep-learning\u002Farchitectures\u002Fconvolutional-networks","Convolutional Networks","Architectures","A convolutional network replaces the dense layer's all-to-all weight matrix with a small kernel slid across the input. Three structural commitments (sparse connectivity, parameter sharing, and translation equivariance) collapse the parameter count by orders of magnitude and bake the right prior for images directly into the architecture. We derive the convolution arithmetic, the output geometry, pooling, and the receptive field, then assemble the canonical stack.\n",{"path":17496,"title":17497,"module":17493,"summary":17498},"\u002Fdeep-learning\u002Farchitectures\u002Fcnn-architectures","CNN Architectures","Six landmark networks, each contributing exactly one idea: LeNet's conv-pool stack, AlexNet's ReLU-and-dropout scale, VGG's $3\\times3$ uniformity, Inception's multi-scale module, ResNet's residual skip, and DenseNet's dense connectivity. The common thread is the degradation problem (why plain deeper nets train worse, not just overfit) and the residual block that solved it by keeping a $+1$ path open for the gradient.\n",{"path":17500,"title":17501,"module":17493,"summary":17502},"\u002Fdeep-learning\u002Farchitectures\u002Frecurrent-networks","Recurrent Networks","A recurrent network folds a sequence into a fixed-size hidden state, reusing one set of weights at every time step, the architectural prior that the same rule applies wherever it lands in time. Unrolling the recurrence exposes a deep feed-forward graph; backpropagation through it sums gradient contributions across all steps and chains a product of Jacobians, and that product is why long-range gradients vanish or explode. That failure motivates gated architectures.\n",{"path":17504,"title":17505,"module":17493,"summary":17506},"\u002Fdeep-learning\u002Farchitectures\u002Flstm-and-gru","LSTM & GRU","A plain recurrent network propagates its hidden state through a repeated weight-matrix multiply, and the Jacobian product that results vanishes or explodes long before a useful gradient can reach the early steps. Gated RNNs fix this with an additive memory path: a cell state that is carried forward almost unchanged, past which the gradient flows along a near-identity highway. We derive that highway, give the full LSTM and GRU equations, and compare the two.\n",{"path":17508,"title":17509,"module":17493,"summary":17510},"\u002Fdeep-learning\u002Farchitectures\u002Fattention-and-transformers","Attention & Transformers","Attention replaces fixed wiring with content-based routing: every position reads from every other through a soft, learned dot-product lookup. We derive scaled dot-product attention and its $\\sqrt{d_k}$ correction, build it into multi-head self-attention, inject order with positional encodings, and stack the whole thing into the Transformer block that displaced recurrence and convolution alike.\n",{"path":17512,"title":17513,"module":17493,"summary":17514},"\u002Fdeep-learning\u002Farchitectures\u002Fthe-transformer-architecture","The Transformer Architecture","The Transformer is the architecture built around the attention mechanism. This first part assembles the full encoder–decoder of \"Attention Is All You Need\" — embeddings and positional encoding, stacked self-attention and feed-forward sublayers wrapped in residual connections and LayerNorm, masked decoding and cross-attention — works through causal masking and the three modern families (encoder-only, decoder-only, encoder–decoder), and accounts for where the parameters and the $O(n^2)$ compute actually go.\n",{"path":17516,"title":17517,"module":17493,"summary":17518},"\u002Fdeep-learning\u002Farchitectures\u002Ftransformers-in-practice","Transformers in Practice","The Transformer makes no assumption about what a token represents. This part follows the architecture out of language: image patches feed a plain encoder (the Vision Transformer), the decoder-only half scales into the GPT line of large language models, and one substrate covers translation, retrieval, and multimodal grounding. We work the ViT patch arithmetic and a GPT parameter count by hand, then close on the empirical scaling laws — power-law loss, the Chinchilla compute-optimal balance, and emergent behavior — that made scale the dominant lever.\n",{"path":17520,"title":17521,"module":17493,"summary":17522},"\u002Fdeep-learning\u002Farchitectures\u002Fgraph-neural-networks","Graph Neural Networks","A graph neural network learns on data with no grid and no canonical ordering: atoms in a molecule, users in a social network, road segments in a map. The unifying idea is message passing — each node repeatedly aggregates its neighbors' states and updates its own — built to respect the one symmetry graphs demand, permutation equivariance. We derive the message-passing framework, specialize it into GCN, GraphSAGE, GAT, and GIN, read off graph-level outputs, and bound what message passing can and cannot tell apart.\n",{"path":17524,"title":17525,"module":17493,"summary":17526},"\u002Fdeep-learning\u002Farchitectures\u002Fstate-space-models","State-Space Models and Mamba","A state-space model carries a continuous linear hidden state through a sequence, and that linearity buys two equivalent algorithms from one set of weights: a recurrence that runs in linear time with constant memory, and a global convolution that trains in parallel. Long-range memory comes from how the transition matrix is initialized (HiPPO) and parameterized (S4's diagonal-plus-low-rank form). Mamba breaks the convolution on purpose, making the parameters input-dependent so the model can select what to remember, recovered at speed by a hardware-aware parallel scan.\n",{"path":17528,"title":17529,"module":17530,"summary":17531},"\u002Fdeep-learning\u002Ftheory\u002Fgeneralization-theory","Generalization Theory","Theory & Frontiers","Classical learning theory bounds the gap between training and test error by a model's capacity (VC dimension, Rademacher complexity), and predicts that a model with more parameters than data should overfit catastrophically. Modern networks do the opposite: they interpolate, even fit pure noise, and still generalize. We derive the classical bounds, work the bias-variance decomposition, show why the bounds go vacuous, and survey what replaced them: double descent, the interpolation threshold, margin and norm-based bounds, and the implicit bias of the optimizer itself.\n",{"path":17533,"title":17534,"module":17530,"summary":17535},"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-robustness","Adversarial Robustness","A trained network can be fooled by a perturbation too small for a human to see: add a carefully aimed vector of magnitude $\\epsilon$ to a correctly classified image and the prediction flips. We derive the fast gradient sign method as the first-order-optimal step inside an $L_\\infty$ ball, explain the linearity hypothesis that makes high-dimensional models so easy to push around, build up to projected gradient descent, and frame adversarial training as a min-max robust-optimization problem with its own accuracy cost. Defenses beyond training continue in the next lesson.\n",{"path":17537,"title":17538,"module":17530,"summary":17539},"\u002Fdeep-learning\u002Ftheory\u002Fadversarial-defenses","Adversarial Defenses","Defending a network against an adversary is far harder than attacking one. This lesson covers the defense side: certified guarantees via randomized smoothing, the transferability that makes black-box attacks possible, and the recurring failure of gradient masking, where a defense hides the attacker's gradient instead of moving the decision boundary. It ends with the adaptive-attack discipline (BPDA, EOT, transfer) that every robustness claim must be tested against.\n",{"path":17541,"title":17542,"module":17530,"summary":17543},"\u002Fdeep-learning\u002Ftheory\u002Fbayesian-and-ensemble-methods","Bayesian & Ensemble Methods","A trained network returns a single point prediction and, with the softmax, a confidence, but that confidence is usually miscalibrated, collapsing to near- certainty even on inputs the model has never seen. This lesson covers uncertainty estimation for networks: the two kinds of uncertainty, the Bayesian posterior over weights and its tractable stand-ins (MC dropout, deep ensembles), and how to check whether a model's reported confidences match observed frequencies.\n",{"path":17545,"title":17546,"module":17530,"summary":17547},"\u002Fdeep-learning\u002Ftheory\u002Fdeep-equilibrium-models","Deep Equilibrium Models","A deep network need not be a fixed stack of layers; it can be a single weight-tied layer iterated to convergence, its output defined implicitly as the fixed point $z^\\star = f_\\theta(z^\\star, x)$. The forward pass becomes root-finding and the backward pass becomes implicit differentiation, so training costs O(1) memory regardless of effective depth. We derive both passes from the implicit function theorem and close the course on defining a layer by a fixed-point condition rather than an explicit stack.\n",{"path":17549,"title":17550,"module":17551,"summary":17552},"\u002Fdeep-learning\u002Fgenerative-models\u002Flinear-factor-models","Linear Factor Models","Generative Models","The simplest generative models share one template: a latent variable drawn from a fixed prior, run through a linear decoder, plus noise. Probabilistic PCA, factor analysis, independent component analysis, and sparse coding are all this template with a different prior on the latents and a different noise model. We derive each marginal, see why ICA needs non-Gaussianity to identify its sources, and show how sparse coding learns Gabor-like dictionary atoms.\n",{"path":17554,"title":17555,"module":17551,"summary":17556},"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoencoders","Autoencoders","An autoencoder is a network trained to copy its input to its output through a narrow channel; the useful product is the bottleneck representation $h$, not the reconstruction. We derive the undercomplete autoencoder and prove its linear case recovers PCA, then trade the bottleneck for explicit regularization (sparse, denoising, contractive) and show how a denoising autoencoder learns the low-dimensional manifold the data lives on.\n",{"path":17558,"title":17559,"module":17551,"summary":17560},"\u002Fdeep-learning\u002Fgenerative-models\u002Fvariational-autoencoders","Variational Autoencoders","An autoencoder compresses, but its latent space has gaps: sample a point between two encodings and the decoder produces noise. The variational autoencoder fixes this by training a probabilistic encoder against a prior, so the latent space becomes a smooth, samplable density. We derive the evidence lower bound it maximizes, the reparameterization trick that lets gradients flow through a random sample, and the closed-form Gaussian regularizer that pulls the posterior toward the prior.\n",{"path":17562,"title":17563,"module":17551,"summary":17564},"\u002Fdeep-learning\u002Fgenerative-models\u002Fgenerative-adversarial-networks","Generative Adversarial Networks","A generative adversarial network trains two networks against each other: a generator that turns noise into samples, and a discriminator that tries to tell real data from forgeries. The game has a clean theory: the optimal discriminator is a likelihood ratio, and at equilibrium the generator minimizes the Jensen–Shannon divergence to the data, with a global optimum exactly when its distribution matches the data. We derive that result, fix the saturating loss that breaks training, and catalogue the failure modes (mode collapse, instability, vanishing gradients) and the architectural fixes.\n",{"path":17566,"title":17567,"module":17551,"summary":17568},"\u002Fdeep-learning\u002Fgenerative-models\u002Fautoregressive-and-normalizing-flows","Autoregressive Models & Normalizing Flows","Two families that provide exact likelihoods, each at a cost. Autoregressive models factor the joint by the probability chain rule and learn each conditional with a masked network: exact $\\log p(x)$, but sampling proceeds one coordinate at a time. Normalizing flows push a simple base density through an invertible map and read $\\log p(x)$ off the change-of-variables formula, trading architectural freedom for a cheap Jacobian determinant via triangular coupling layers.\n",{"path":17570,"title":17571,"module":17551,"summary":17572},"\u002Fdeep-learning\u002Fgenerative-models\u002Fenergy-based-and-boltzmann-machines","Energy-Based & Boltzmann Machines","Energy-based models replace an explicit density with a scalar energy and a Boltzmann normalization, $p(x) = e^{-E(x)}\u002FZ$: simple to specify, but with an intractable partition function $Z$. The Boltzmann machine and its restricted variant make the energy bilinear so the hidden units factorize, and contrastive divergence sidesteps $Z$ by replacing the model expectation with a few Gibbs steps started at the data. We close on the undirected deep models (DBNs and DBMs) and how they differ from the directed VAE.\n",{"path":17574,"title":17575,"module":17551,"summary":17576},"\u002Fdeep-learning\u002Fgenerative-models\u002Fdiffusion-and-score-based-models","Diffusion and Score-Based Models","Corrupt a data point with Gaussian noise in small steps until only noise remains, then train a network to undo one step at a time. We derive the forward process and its closed-form marginal, reduce the variational bound to the single noise-prediction objective that makes diffusion trainable, and show the score-matching view that unifies it with Langevin sampling and the continuous SDE. The lesson closes with DDIM fast sampling, classifier-free guidance, and the latent diffusion that powers modern text-to-image systems.\n",{"path":17578,"title":17579,"module":17580,"summary":17581},"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fstructured-probabilistic-models","Structured Probabilistic Models","Probabilistic Methods","A joint distribution over $n$ variables is a table with exponentially many entries; nobody can store it, fit it, or sample from it directly. Structure fixes this: a graph whose missing edges encode conditional independencies that factor the joint into small local pieces. We build the two dialects, directed (Bayesian networks) and undirected (Markov random fields), read independence off the graph, and connect the machinery to the latent-variable and energy-based models that power deep generative learning.\n",{"path":17583,"title":17584,"module":17580,"summary":17585},"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fmonte-carlo-and-mcmc","Monte Carlo & MCMC","Most quantities of interest in a probabilistic model are integrals nobody can compute in closed form: expectations, marginals, partition functions. Monte Carlo replaces the integral with an average over samples; importance sampling reweights samples from a tractable proposal; and when even sampling the target is hard, Markov-chain Monte Carlo builds a chain whose stationary distribution _is_ the target. We derive Metropolis–Hastings and Gibbs, analyze mixing, and close on the partition-function gradient that powers energy-based learning.\n",{"path":17587,"title":17588,"module":17580,"summary":17589},"\u002Fdeep-learning\u002Fprobabilistic-methods\u002Fapproximate-inference","Approximate Inference","In a latent-variable model the quantity we need, the posterior $p(h\\mid v)$ over hidden causes, is almost never computable, because its normalizer is an intractable sum over configurations. Approximate inference reframes the problem as optimization: maximize the evidence lower bound, a tractable functional whose gap to the true log-evidence equals a KL divergence. From that single bound fall expectation–maximization, mean-field variational inference, MAP, and the learned encoders behind variational autoencoders.\n",{"path":17591,"title":17592,"module":17593,"summary":17594},"\u002Fdeep-learning\u002Fpractical\u002Fpractical-methodology","Practical Methodology","Practical Deep Learning","Knowing the algorithms is half the job; the other half is a disciplined loop. Fix a goal and a metric, stand up an end-to-end baseline, then read the train\u002Fvalidation gap to decide whether the next move is more data or a bigger model. We detail that loop: choosing metrics under class imbalance, default baselines by data type, extrapolating the data a target needs, and guarding the data pipeline against the leaks and label bugs that corrupt every gradient. Hyperparameter tuning, debugging, and deployment continue in the sequel.\n",{"path":17596,"title":17597,"module":17593,"summary":17598},"\u002Fdeep-learning\u002Fpractical\u002Fhyperparameters-and-debugging","Hyperparameters & Debugging","The tuning half of the methodology loop. The learning rate is the one hyperparameter that dominates, so we tune it first, on a log scale, coarse to fine, and prefer random search to grid when only a few dials matter. Then an ordered debugging playbook — overfit one batch, check the loss at initialization against ln C, watch the gradient norm, gradient-check against centered finite differences — and, after launch, monitoring for train-test skew and distribution drift with confidence-based abstention.\n",{"path":17600,"title":17601,"module":17593,"summary":17602},"\u002Fdeep-learning\u002Fpractical\u002Frepresentation-learning","Representation Learning","A good representation makes a hard task easy by changing coordinates: it disentangles the factors of variation, spends its bits as a distributed code, and respects the low-dimensional manifold the data lives on. We make those three properties precise, recover the manifold hypothesis, and close on the first method that turned them into training practice — greedy layer-wise unsupervised pretraining — before the sequel picks up how the field learned to reuse those features.\n",{"path":17604,"title":17605,"module":17593,"summary":17606},"\u002Fdeep-learning\u002Fpractical\u002Ftransfer-learning","Transfer Learning","A representation learned once can be reused everywhere. We cover the main mechanisms of reuse: feature extraction versus fine-tuning, the generic-to-specific gradient of features that sets the freeze boundary, the learning-rate discipline that keeps borrowed weights from being erased, domain adaptation when only the input distribution shifts, and the modern arc from supervised transfer to self-supervised foundation models.\n",{"path":17608,"title":17609,"module":17593,"summary":17610},"\u002Fdeep-learning\u002Fpractical\u002Fapplications","Applications","We survey large-scale training (the hardware, the two axes of parallelism, mixed precision, and the compression tricks that shrink a model after it is trained), then specialize the same gradient loop to vision, language, speech, and recommendation. Each domain is a different prior bolted onto one optimizer: convolutional invariance for pixels, distributed word vectors for tokens, sequence transduction for audio, low-rank factorization for the user–item matrix.\n",{"path":17612,"title":17613,"module":17593,"summary":17614},"\u002Fdeep-learning\u002Fpractical\u002Fmodel-compression-and-distillation","Model Compression and Distillation","A trained network and a deployable one are rarely the same object. This lesson is the toolkit for closing that gap: knowledge distillation transfers a large teacher's soft, information-rich logits into a small student; pruning deletes the weights that contribute least; quantization swaps 32-bit floats for 8- or 4-bit integers; and low-rank factorization replaces a fat matrix with two thin ones. We derive each method, show what it costs in accuracy, and lay out which combinations win on which hardware.\n",{"path":17616,"title":17617,"module":17593,"summary":17618},"\u002Fdeep-learning\u002Fpractical\u002Fmeta-learning-and-few-shot","Meta-Learning and Few-Shot Learning","A deep network trained on one example per class overfits. Meta-learning targets this few-shot regime by training across a distribution of tasks so that a new task is learnable from a handful of examples. We formalize the $N$-way $K$-shot episode, then derive the two dominant families: metric methods that learn an embedding where distance classifies (Prototypical Networks), and optimization methods that learn an initialization a few gradient steps can adapt (MAML). We close on the link to transfer learning and to the in-context few-shot behavior of large language models.\n",{"path":17620,"title":17621,"module":17622,"summary":17623},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Flarge-language-models","Large Language Models","Large Models & Agents","A large language model is a decoder-only Transformer trained on one objective, next-token prediction, then scaled until new behavior appears. This first part builds the object itself: the equivalence between next-token prediction and lossless compression, subword tokenization (BPE, WordPiece, Unigram, SentencePiece) worked on a real sentence, the four pretraining objectives and the attention masks that distinguish them, and the three model families (encoder-only, decoder-only, encoder--decoder) with their parameter budgets. Scaling, decoding, the KV cache, and alignment continue in part two.\n",{"path":17625,"title":17626,"module":17622,"summary":17627},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fscaling-inference-and-alignment","Scaling, Inference, and Alignment of Language Models","Once a language model is built, three questions remain: how does it improve as it grows, how is it decoded and served affordably, and how is a raw next-token predictor turned into an assistant. We derive the Kaplan power laws and the Chinchilla compute-optimal balance, trace emergent abilities and in-context learning, catalog the decoding strategies from greedy to nucleus sampling, work the KV cache that makes generation quadratic instead of cubic, cover parameter-efficient adaptation by low-rank updates (LoRA), and close on the alignment stack: instruction tuning, RLHF, and DPO.\n",{"path":17629,"title":17630,"module":17622,"summary":17631},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fseq2seq-pretraining-and-bart","Denoising Sequence-to-Sequence Pretraining: BART","BERT corrupts and reconstructs; GPT predicts the next token. Sequence-to-sequence pretraining unifies both by training a full encoder–decoder as a denoising autoencoder: corrupt the text with a noise function, then reconstruct the original through a bidirectional encoder and an autoregressive decoder. This first part derives the denoising objective, catalogs BART's five noise functions (with a worked Poisson-infilling budget), proves BART specializes to both BERT and GPT, and traces a dimension-annotated forward pass through its encoder--decoder. T5, PEGASUS, fine-tuning, and decoding continue in part two.\n",{"path":17633,"title":17634,"module":17622,"summary":17635},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ftext-to-text-transfer-and-conditional-generation","Text-to-Text Transfer and Conditional Generation","BART reconstructs a corrupted document; T5 pushes the same denoising idea into a single interface where every task is a string-to-string map. This second part covers T5's span corruption with sentinel tokens (with a worked token budget), PEGASUS's summarization-matched gap sentences and the MASS midpoint, supervised fine-tuning and beam-search decoding with a length penalty, the exposure-bias failure modes of autoregressive decoding, and a theorem showing why a bidirectional encoder--decoder strictly dominates a decoder-only model when the output is conditioned on a full input.\n",{"path":17637,"title":17638,"module":17622,"summary":17639},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fspeech-and-audio-models","Speech Recognition: Front-Ends and Alignment","Speech is a long, high-rate sequence whose label is short and unaligned, so the whole subject turns on bridging that mismatch. This first part builds the spectral front-ends that compress a waveform into frames (STFT, mel spectrogram, MFCC, with a worked frame-count), derives CTC's marginalization over alignments and its forward-backward recursion with a two-frame numeric example, and contrasts it with attention-based seq2seq (LAS) and the RNN transducer. Self-supervised and weakly-supervised models, and text-to-speech, continue in part two.\n",{"path":17641,"title":17642,"module":17622,"summary":17643},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fself-supervised-speech-and-synthesis","Self-Supervised Speech Models and Synthesis","The recognition front-ends and alignment losses of part one all need transcribed audio, which is scarce. This second part removes that dependence: wav2vec 2.0 learns speech representations from unlabeled audio by a masked contrastive objective, HuBERT swaps the contrast for masked prediction of clustered units, and Whisper trades curation for scale with weakly-supervised web audio and a multitask token interface. We close with text-to-speech (the same length mismatch run backwards) and a tour of speech foundation models, discrete audio codecs, and neural TTS.\n",{"path":17645,"title":17646,"module":17622,"summary":17647},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fai-agents","AI Agents: Tools and Reasoning","A language model that only emits text is a function from prompt to prompt; an agent closes the loop, letting that model act on an environment, read back the result, and decide again. This first part formalizes the agent as a policy over interaction histories, builds out tool calling and the executor trust boundary, the ReAct interleaving of reasoning and action (with concrete traces), and search over thoughts: chain-of-thought, self-consistency, least-to-most, and Tree of Thoughts. Memory, retrieval, reflection, and multi-agent orchestration continue in part two.\n",{"path":17649,"title":17650,"module":17622,"summary":17651},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fagent-memory-retrieval-and-orchestration","Agent Memory, Retrieval, and Orchestration","An agent's reasoning and tool use only matter if it can remember what it learned and coordinate work larger than one context window. This second part builds the systems around the loop: short-term scratchpad versus long-term vector store, retrieval-augmented generation with a worked softmax over passage scores, reflection (Reflexion, Self-Refine), and multi-agent orchestration. It closes on the failure modes that bound agents — invalid tool calls, horizon-error compounding, context overflow, non-terminating loops — and the benchmarks that score the full loop.\n",{"path":17653,"title":17654,"module":17622,"summary":17655},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmixture-of-experts","Mixture-of-Experts","A mixture-of-experts layer replaces one feed-forward network with many and a router that sends each token to only a few of them, so the parameter count and the per-token compute become separate dials. We derive the gated output, sparse top-$k$ routing softmax, the load-balancing loss that stops the router from collapsing onto a single expert, and expert\u002Ftoken capacity with dropping, then work the dimension-annotated tensor shapes and FLOP arithmetic. We trace the architectures from the sparsely-gated LSTM through GShard, Switch Transformer, and Mixtral, cover distributed expert parallelism, and close on the training dynamics, failure modes, and serving costs of a sparse model.\n",{"path":17657,"title":17658,"module":17622,"summary":17659},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Fmultimodal-models","Multimodal Contrastive Learning","A multimodal model places images, text, and audio in one representation space, so a picture and its caption land close together. This first part builds the contrastive route: the shared embedding space and its residual modality gap, the Vision Transformer image encoder (patch embedding, CLS token, position embeddings, with shapes), the symmetric InfoNCE loss that trains the CLIP dual encoder from a batch similarity matrix (with a worked numeric step), and zero-shot classification as a softmax over class-prompt embeddings. Fusion and vision-language models continue in part two.\n",{"path":17661,"title":17662,"module":17622,"summary":17663},"\u002Fdeep-learning\u002Flarge-models-and-agents\u002Ffusion-and-vision-language-models","Fusion and Vision-Language Models","A contrastive model compares modalities but never lets one read another. This second part builds the fusion route: early, late, and cross-attention fusion, then the three designs that connect a frozen vision encoder to a frozen language model — Flamingo's zero-initialized gated cross-attention, BLIP-2's Q-Former, and LLaVA's linear projector. We work the token-budget arithmetic that separates them, name the object-hallucination and fine-detail failure modes, cover the contrastive-then- instruction-tune recipe and its retrieval\u002Fcaptioning\u002FVQA benchmarks, and close on natively multimodal models.\n",{"path":17665,"title":17666,"module":17667,"summary":17668},"\u002Fdeep-learning\u002Freinforcement-learning\u002Ffoundations-of-reinforcement-learning","Foundations of Reinforcement Learning","Reinforcement Learning","Reinforcement learning is the third paradigm: an agent learns to act by interacting with an environment that returns rewards, not labels. We formalize the interaction as a Markov decision process, define the value functions that rank states and actions, and derive the Bellman expectation and optimality equations that every method downstream solves. Dynamic programming gives the exact answer when the model is known, and its convergence rests on a single fact: the Bellman operator is a contraction.\n",{"path":17670,"title":17671,"module":17667,"summary":17672},"\u002Fdeep-learning\u002Freinforcement-learning\u002Fmodel-free-prediction-and-control","Model-Free Prediction and Control","When the dynamics are unknown, an agent cannot plan against a model; it must learn directly from sampled experience. We build prediction and control from two estimators of the same return: Monte Carlo averages whole episodes, while temporal-difference learning bootstraps from its own next estimate. We trace the bias-variance contrast between them, derive SARSA and Q-learning as the on-policy and off-policy forms of control, unify everything through n-step returns and eligibility traces, and close on the deadly triad that makes off-policy bootstrapping with function approximation diverge.\n",{"path":17674,"title":17675,"module":17667,"summary":17676},"\u002Fdeep-learning\u002Freinforcement-learning\u002Fdeep-q-networks","Deep Q-Networks","A Deep Q-Network replaces the tabular action-value function with a neural approximator $Q(s,a;\\theta)$ and trains it by regression toward a bootstrapped target. Naive online Q-learning with a network diverges, so DQN adds two stabilizers: an experience-replay buffer that decorrelates samples, and a periodically-frozen target network that holds the regression target still. We derive the loss, give the full algorithm and the Atari pipeline, and then layer on Double DQN, the dueling split, prioritized replay, and the Rainbow combination.\n",{"path":17678,"title":17679,"module":17667,"summary":17680},"\u002Fdeep-learning\u002Freinforcement-learning\u002Fpolicy-gradients-and-actor-critic","Policy Gradients and Actor-Critic Methods","Value-based reinforcement learning learns what each state is worth and acts greedily; policy-gradient methods skip the detour and optimize a parameterized policy directly by ascending the gradient of expected return. The policy gradient theorem makes this tractable through the log-derivative trick, turning an intractable gradient of an expectation into an expectation of a gradient. REINFORCE realizes the idea but suffers high variance; baselines, the advantage function, and actor-critic learning reduce it, and trust-region methods (TRPO, PPO) keep each update from destroying the policy it just learned.\n",{"path":17682,"title":17683,"module":17667,"summary":17684},"\u002Fdeep-learning\u002Freinforcement-learning\u002Frl-from-human-feedback","Reinforcement Learning from Human Feedback","Many objectives we want from a model, that it be helpful and harmless, are hard to write down but easy to judge by comparison. RLHF turns that asymmetry into a training signal: fit a reward model to pairwise human preferences under the Bradley-Terry likelihood, then fine-tune the policy to maximize that reward under a KL penalty toward a reference. We derive the reward loss, the KL-regularized RL objective and its closed-form optimum, then show how DPO inverts that optimum to collapse the whole pipeline into one supervised log-sigmoid loss, and survey IPO, KTO, RLAIF, and GRPO.\n",{"path":17686,"title":17687,"module":6,"summary":6},"\u002Fdeep-learning","Deep Learning",{"path":17689,"title":17690,"module":15597,"summary":17691},"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fequilibrium-state-variables-zeroth-law","Equilibrium, State Variables, and the Zeroth Law","Thermodynamics describes a many-body system by a handful of macroscopic variables and the equilibrium relations among them. This lesson fixes the vocabulary: systems and the walls that separate them, state variables versus path-dependent process quantities, quasi-static and reversible idealizations, and the zeroth law, whose transitivity of thermal equilibrium is what lets temperature exist as a number. The ideal-gas thermometer turns that number into a scale, and an equation of state ties the variables into a surface.\n",{"path":17693,"title":17694,"module":15597,"summary":17695},"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Ffirst-law-heat-and-work","The First Law: Internal Energy, Heat, and Work","The first law is energy conservation for a system that exchanges energy as both heat and work. Internal energy is a state function with an exact differential; heat and work are path-dependent process quantities. This lesson states $\\d U=\\delta Q+\\delta W$, computes compression work as an area on the $P$–$V$ plane, defines the heat capacities $C_V$ and $C_P$ and the enthalpy that makes $C_P$ natural, and works the isothermal and adiabatic processes of an ideal gas, including the adiabat $PV^\\gamma=\\text{const}$.\n",{"path":17697,"title":17698,"module":15597,"summary":17699},"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fsecond-law-entropy-and-the-carnot-bound","The Second Law, Carnot Cycles, and Entropy","The second law forbids the free conversion of heat into work. This lesson states the Kelvin and Clausius forms, proves them equivalent, and analyzes the Carnot cycle to get the efficiency bound $1-T_c\u002FT_h$. Carnot's theorem makes that bound universal and defines the thermodynamic temperature scale. The Clausius inequality $\\oint \\delta Q\u002FT\\le 0$ then constructs entropy as a state function, $\\d S=\\delta Q_{\\rm rev}\u002FT$, whose non-decrease in isolated systems is the arrow of time.\n",{"path":17701,"title":17702,"module":15597,"summary":17703},"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fthermodynamic-potentials-and-maxwell-relations","Thermodynamic Potentials and Maxwell Relations","The fundamental relation $\\d U=T\\,\\d S-P\\,\\d V+\\mu\\,\\d N$ packages the first and second laws into one exact differential. Legendre transforms swap each conjugate pair to produce the Helmholtz, enthalpy, Gibbs, and grand potentials, each minimized under its own natural variables. Equality of mixed second partials of these potentials gives the Maxwell relations, which convert unmeasurable entropy derivatives into measurable ones from the equation of state.\n",{"path":17705,"title":17706,"module":15597,"summary":17707},"\u002Fstatistical-mechanics\u002Fthermodynamics\u002Fstability-response-functions-and-the-third-law","Response Functions, Stability, and the Third Law","Response functions — heat capacities, compressibilities, thermal expansion — are the second derivatives of the potentials and the quantities an experiment actually measures. This lesson derives the general relation $C_P-C_V=TV\\alpha^2\u002F\\kappa_T$, shows that convexity of the potentials forces the stability conditions $C_V>0$ and $\\kappa_T>0$, and states the third law: entropy approaches a constant as $T\\to0$, so heat capacities and expansion coefficients vanish there and absolute zero is unattainable.\n",{"path":17709,"title":17710,"module":17711,"summary":17712},"\u002Fstatistical-mechanics\u002Ffoundations\u002Fclassical-statistics-and-equipartition","Classical Statistics and Equipartition","Microstates, Phase Space, and Statistical Entropy","A liter of gas holds on the order of a trillion trillion molecules, far too many to track by their equations of motion. Classical statistical mechanics replaces the trajectories with a single probability law, the Boltzmann distribution, and reads the measurable properties of matter off it: the Maxwell speed distribution, the average energy per degree of freedom, and the heat capacities of gases and solids — together with the low-temperature failures that forced the quantum revision.\n",{"path":17714,"title":17715,"module":17711,"summary":17716},"\u002Fstatistical-mechanics\u002Ffoundations\u002Fphase-space-and-liouvilles-theorem","Phase Space, Trajectories, and Liouville's Theorem","A classical system of N particles is one point in a 6N-dimensional phase space, and its evolution is a single trajectory driven by Hamilton's equations. This lesson builds that geometric picture, introduces the phase-space density of an ensemble, and proves Liouville's theorem: the density is carried by the flow as an incompressible fluid, so phase-space volume is conserved. The stationary densities of equilibrium follow as functions of the conserved quantities alone.\n",{"path":17718,"title":17719,"module":17711,"summary":17720},"\u002Fstatistical-mechanics\u002Ffoundations\u002Fensembles-and-the-equal-probability-postulate","Ensembles and the Postulate of Equal a Priori Probabilities","An ensemble is a probability distribution over the microstates of a system. This lesson states the single postulate on which equilibrium statistical mechanics rests — that an isolated system in equilibrium is equally likely to be in any of its accessible microstates — and works out its consequences: the accessible phase-space volume, the overwhelming dominance of the most probable macrostate as the particle number grows, and the ergodic hypothesis that lets a time average be replaced by an ensemble average.\n",{"path":17722,"title":17723,"module":17711,"summary":17724},"\u002Fstatistical-mechanics\u002Ffoundations\u002Fstatistical-entropy-boltzmann-and-gibbs","Statistical Entropy: Boltzmann and Gibbs","Entropy is the logarithm of the number of accessible microstates. This lesson builds the two statistical entropies — Boltzmann's S = k ln Omega for an isolated system and Gibbs's S = -k sum p ln p for any ensemble — proves they agree for a uniform distribution, and connects both to Shannon's measure of missing information. The second law emerges as the drift toward maximum multiplicity, and maximizing the Gibbs entropy under constraints previews the canonical distribution.\n",{"path":17726,"title":17727,"module":17728,"summary":17729},"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fmicrocanonical-ensemble-and-entropy","The Microcanonical Ensemble and Statistical Entropy","The Microcanonical Ensemble","An isolated system holds its energy, volume, and particle number fixed, and the fundamental postulate assigns equal probability to every microstate on its energy shell. This lesson builds the microcanonical distribution, defines the enclosed phase-space volume $\\Gamma(E)$, the surface density of states $\\omega(E)=\\d\\Gamma\u002F\\d E$, and the shell count $\\Omega(E)$, shows their logarithms agree to $O(\\ln N)$ for large $N$, and reads the Boltzmann entropy $S=k\\ln\\Omega$ off the count. The measure factors $h^{3N}$ and $N!$ enter here and make $S$ extensive.\n",{"path":17731,"title":17732,"module":17728,"summary":17733},"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fequilibrium-conditions-temperature-pressure-chemical-potential","Thermal, Mechanical, and Diffusive Equilibrium","Two isolated subsystems that can exchange energy, volume, or particles reach equilibrium at the partition that maximizes their combined entropy. Setting the derivative of the total entropy to zero identifies the statistical definitions $1\u002FT=(\\partial S\u002F\\partial E)$, $P\u002FT=(\\partial S\u002F\\partial V)$, and $-\\mu\u002FT=(\\partial S\u002F\\partial N)$, shows heat flows from hot to cold as an entropy increase, and recovers the fundamental relation $\\d S=(\\d E+P\\,\\d V-\\mu\\,\\d N)\u002FT$ from pure counting.\n",{"path":17735,"title":17736,"module":17728,"summary":17737},"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Fideal-gas-phase-space-and-the-sackur-tetrode-entropy","The Ideal Gas, Phase-Space Volume, and the Sackur–Tetrode Entropy","The monatomic ideal gas is the first system whose microcanonical count can be done in closed form. The momentum integral is the volume of a $3N$-dimensional ball of radius $\\sqrt{2mE}$, the configuration integral is $V^N$, and together they give the Sackur–Tetrode entropy $S=Nk[\\ln(V\u002FN\\lambda^3)+5\u002F2]$ with the thermal wavelength $\\lambda=h\u002F\\sqrt{2\\pi mkT}$. The formula matches the measured entropy of helium, fixes the classical regime $n\\ll n_Q$, and shows why the $N!$ is needed for extensivity.\n",{"path":17739,"title":17740,"module":17728,"summary":17741},"\u002Fstatistical-mechanics\u002Fmicrocanonical\u002Ftwo-state-systems-paramagnets-and-negative-temperature","Two-State Systems, Paramagnets, and Negative Temperature","The ideal two-state paramagnet has a multiplicity counted by the binomial coefficient, an entropy that is an inverted dome in the energy, and a temperature read from the slope $1\u002FT=\\partial S\u002F\\partial E$. Because the energy is bounded above, the slope changes sign past the entropy maximum: a population-inverted spin system has a negative absolute temperature, which is hotter than any positive temperature. Nuclear-spin experiments and lasers realize the inverted state.\n",{"path":17743,"title":17744,"module":17745,"summary":17746},"\u002Fstatistical-mechanics\u002Fcanonical\u002Fcanonical-ensemble-and-the-boltzmann-distribution","The Canonical Ensemble and the Boltzmann Distribution","The Canonical Ensemble","A system held at fixed temperature by contact with a heat reservoir is described by the canonical ensemble. Expanding the reservoir entropy to first order in the system energy gives the Boltzmann distribution $p_i\\propto e^{-\\beta E_i}$, and the same law follows from maximizing the Gibbs entropy at fixed mean energy. Both routes identify $\\beta=1\u002Fk_BT$ and fix the probability of every microstate from the temperature alone.\n",{"path":17748,"title":17749,"module":17745,"summary":17750},"\u002Fstatistical-mechanics\u002Fcanonical\u002Fpartition-function-and-the-helmholtz-free-energy","The Partition Function and the Helmholtz Free Energy","The normalizing sum of the Boltzmann distribution, the partition function $Z=\\sum_i e^{-\\beta E_i}$, is a generating function for the thermodynamics. The mean energy is $-\\partial\\ln Z\u002F\\partial\\beta$, and the Gibbs entropy of the canonical distribution collapses to the bridge relation $F=-k_BT\\ln Z$. From $F$ every thermodynamic quantity follows by differentiation, and $Z$ factorizes over independent degrees of freedom.\n",{"path":17752,"title":17753,"module":17745,"summary":17754},"\u002Fstatistical-mechanics\u002Fcanonical\u002Fenergy-fluctuations-and-ensemble-equivalence","Energy Fluctuations and the Equivalence of Ensembles","In the canonical ensemble the energy fluctuates, and the second derivative of $\\ln Z$ gives its variance. The fluctuation–response identity $\\langle\\Delta E^2\\rangle = k_BT^2C_V$ ties the spread of the energy to the heat capacity, and the relative fluctuation falls as $1\u002F\\sqrt{N}$. In the thermodynamic limit the canonical energy distribution is a sharp spike, and the canonical and microcanonical ensembles predict the same thermodynamics.\n",{"path":17756,"title":17757,"module":17745,"summary":17758},"\u002Fstatistical-mechanics\u002Fcanonical\u002Fthe-einstein-solid-and-harmonic-systems","Harmonic Systems: The Einstein Solid and Vibrational Heat Capacity","A quantum harmonic oscillator has a geometric partition function summed in closed form, giving a mean energy $\\hbar\\omega(\\tfrac12+\\langle n\\rangle)$ with the Bose occupation factor. Modeling a solid as $3N$ independent oscillators yields a heat capacity that rises from zero and saturates at the Dulong–Petit value $3Nk_B$. The Einstein temperature sets the crossover, and the model's exponential low-temperature falloff, too steep against the observed $T^3$, motivates the Debye theory.\n",{"path":17760,"title":17761,"module":17745,"summary":17762},"\u002Fstatistical-mechanics\u002Fcanonical\u002Fparamagnetism-and-the-schottky-anomaly","Paramagnetism, Two-Level Systems, and the Schottky Anomaly","A magnetic moment in a field is a two-level system whose partition function is a hyperbolic cosine. The magnetization of a spin-$\\tfrac12$ paramagnet is $N\\mu\\tanh(\\mu B\u002Fk_BT)$, generalizing to the Brillouin function for spin $J$; it gives Curie's law $\\chi\\propto 1\u002FT$ at high temperature and saturates at low temperature. A finite level gap produces the Schottky heat-capacity peak, and the temperature dependence of the entropy on the field is the basis of adiabatic demagnetization cooling.\n",{"path":17764,"title":17765,"module":17766,"summary":17767},"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fideal-gas-partition-function-and-the-gibbs-paradox","The Ideal Gas Partition Function and the Gibbs Paradox","The Classical Ideal Gas","The classical monatomic ideal gas built from the partition function. The single-particle sum is $z_1=V\u002F\\lambda^3$ with the thermal de Broglie wavelength $\\lambda$; the $N$-particle partition function is $z_1^N\u002FN!$, and the $N!$ is forced by indistinguishability. From $Z$ the ideal-gas law, $U=\\tfrac32 Nk_BT$, and the Sackur–Tetrode entropy follow. The $N!$ makes the entropy extensive and resolves the Gibbs paradox: mixing identical gases produces no entropy change.\n",{"path":17769,"title":17770,"module":17766,"summary":17771},"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fequipartition-and-the-virial-theorem","Equipartition and the Virial Theorem","The equipartition theorem derived from the canonical ensemble: every phase-space coordinate that enters the Hamiltonian quadratically carries a mean energy $\\tfrac12 k_BT$. The generalized form $\\langle x_i\\,\\partial H\u002F\\partial x_j\\rangle = k_BT\\,\\delta_{ij}$ contains equipartition and the classical virial theorem as special cases. Equipartition fixes the classical heat capacities, fails by quantum freeze-out when a level gap exceeds $k_BT$, and shifts for a relativistic gas whose energy is linear rather than quadratic in momentum.\n",{"path":17773,"title":17774,"module":17766,"summary":17775},"\u002Fstatistical-mechanics\u002Fclassical-gas\u002Fmolecular-gases-rotation-and-vibration","Molecular Gases: Rotational and Vibrational Degrees of Freedom","The internal partition function of a diatomic gas factorizes into translational, rotational, vibrational, and electronic parts. The rigid rotor gives a rotational temperature $\\theta_{\\rm rot}$; the harmonic bond gives a vibrational temperature $\\theta_{\\rm vib}$. Each mode contributes to the heat capacity only above its characteristic temperature, producing the diatomic $C_V$ staircase from $\\tfrac32 R$ to $\\tfrac52 R$ to $\\tfrac72 R$. Homonuclear molecules carry a symmetry number, and hydrogen splits into ortho and para species.\n",{"path":17777,"title":17778,"module":17779,"summary":17780},"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fgrand-canonical-ensemble-and-the-grand-partition-function","The Grand Canonical Ensemble","Grand Canonical Ensemble","When a system exchanges both energy and particles with a reservoir, the reservoir fixes its temperature and its chemical potential. Expanding the reservoir entropy to first order in the exchanged energy and particle number gives the Gibbs factor $e^{-\\beta(E-\\mu N)}$, and summing it over every microstate of every particle number gives the grand partition function $\\Xi$. The grand potential $\\Phi = -k_BT\\ln\\Xi = -PV$ generates the mean particle number, energy, entropy, and pressure by differentiation.\n",{"path":17782,"title":17783,"module":17779,"summary":17784},"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fchemical-potential-fugacity-and-number-fluctuations","Chemical Potential, Fugacity, and Number Fluctuations","The chemical potential is the energy to add one particle at fixed entropy and volume, equal to the slope of the free energy in the particle number. For the classical ideal gas $\\mu=k_BT\\ln(n\\lambda^3)$ is large and negative, and the fugacity $z=n\\lambda^3$ is small. The grand ensemble makes the particle number fluctuate; its variance $\\langle\\Delta N^2\\rangle=k_BT(\\partial N\u002F\\partial\\mu)$ equals $k_BT\\,N^2\\kappa_T\u002FV$, tying density fluctuations to the isothermal compressibility. Equality of $\\mu$ is the condition for diffusive equilibrium and phase coexistence.\n",{"path":17786,"title":17787,"module":17779,"summary":17788},"\u002Fstatistical-mechanics\u002Fgrand-canonical\u002Fensemble-summary-and-the-thermodynamic-web","The Three Ensembles and the Thermodynamic Web","The microcanonical, canonical, and grand canonical ensembles hold different variables fixed and generate different potentials — the entropy $S$, the Helmholtz free energy $F$, and the grand potential $\\Phi$ — linked by Legendre transforms that trade each fixed variable for its conjugate. Each successive ensemble lets one more quantity fluctuate. In the thermodynamic limit the three agree, the relative fluctuations vanishing as $1\u002F\\sqrt{N}$; the ideal gas gives the same equation of state in all three. The choice of ensemble is a matter of convenience, set by which sum is easiest.\n",{"path":17790,"title":17791,"module":17792,"summary":17793},"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fquantum-statistics-bose-einstein-and-fermi-dirac","Quantum Statistics — Bose-Einstein and Fermi-Dirac","Quantum Statistics","Quantum particles of the same kind are genuinely indistinguishable: no label survives an overlap of their wave functions. Counting states with that constraint replaces the Boltzmann distribution with two quantum laws — the Bose-Einstein distribution for integer-spin particles, which clump into shared states, and the Fermi-Dirac distribution for half-integer-spin particles, which exclude one another. Both reduce to Boltzmann in the dilute, hot limit, and a de Broglie criterion says exactly when.\n",{"path":17795,"title":17796,"module":17792,"summary":17797},"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fderiving-the-quantum-distributions","Deriving the Quantum Distributions from the Grand Ensemble","The Bose-Einstein and Fermi-Dirac distributions follow from one observation: in the occupation-number representation the single-particle modes are independent, so the grand partition function factorizes into one factor per mode. A boson mode sums a geometric series over all occupancies; a fermion mode sums two terms. Differentiating each factor gives the mean occupation $1\u002F(e^{\\beta(\\varepsilon-\\mu)}\\mp 1)$, the Maxwell-Boltzmann limit when occupancies are small, and the occupation fluctuations that distinguish bunching from anti-bunching.\n",{"path":17799,"title":17800,"module":17792,"summary":17801},"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fthe-classical-limit-and-quantum-concentration","The Classical Limit and Quantum Concentration","When every single-particle level is nearly empty, both quantum distributions collapse to the Maxwell-Boltzmann form, and the fugacity equals the ratio of the number density to the quantum concentration $n_Q = 1\u002F\\lambda^3$. The gas is classical when $n \\ll n_Q$, degenerate when $n \\gtrsim n_Q$. The chemical potential is large and negative in the classical regime and rises through zero as the gas degenerates. The leading quantum correction to the ideal-gas law is a second virial term that lowers the pressure for bosons and raises it for fermions — a statistical attraction and repulsion with no interaction behind it.\n",{"path":17803,"title":17804,"module":17792,"summary":17805},"\u002Fstatistical-mechanics\u002Fquantum-statistics\u002Fideal-quantum-gases-general-framework","Ideal Quantum Gases: The General Framework","Every ideal quantum gas is handled by one calculation. The sum over single-particle modes becomes an energy integral weighted by a density of states $g(\\varepsilon)\\propto\\varepsilon^{1\u002F2}$, and the number and pressure reduce to the Bose and Fermi functions $g_\\nu(z)$ and $f_\\nu(z)$ of the fugacity. An integration by parts fixes $PV=\\tfrac23 U$ for a nonrelativistic gas and $PV=\\tfrac13 U$ for an ultrarelativistic one, independent of statistics. Specializing the density of states and the chemical potential then produces the photon gas, phonons, the Bose gas, and the Fermi gas as four branches of the same framework.\n",{"path":17807,"title":17808,"module":17809,"summary":17810},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-and-the-fermion-gas","Bose-Einstein Condensation and the Fermion Gas","Bosonic Systems","Below a critical temperature a boson gas drops a macroscopic fraction of its particles into the single ground state — Bose-Einstein condensation, the mechanism behind superfluid helium and the dilute-atom condensates cooled to nanokelvin. The same statistics applied to a photon gas reproduces Planck's blackbody spectrum. Fermions do the opposite: forbidden from sharing states, they fill every level up to the Fermi energy, and that filled sea governs the electrons in metals and the pressure that holds up a white dwarf.\n",{"path":17812,"title":17813,"module":17809,"summary":17814},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthe-photon-gas-and-plancks-radiation-law","The Photon Gas and Planck's Radiation Law","Electromagnetic radiation in equilibrium with cavity walls is a gas of non-conserved bosons, and non-conservation forces the chemical potential to zero. Counting standing-wave modes with two polarizations and weighting each by the Bose occupation gives the Planck spectral energy density. Its low-frequency tail reproduces the classical Rayleigh-Jeans law and the ultraviolet catastrophe; the Bose factor cuts the divergence off at high frequency and the peak obeys Wien's displacement law.\n",{"path":17816,"title":17817,"module":17809,"summary":17818},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fblackbody-thermodynamics-and-radiation-pressure","Blackbody Thermodynamics and Radiation Pressure","Integrating the Planck spectrum over all frequencies gives the total energy density proportional to the fourth power of temperature — the Stefan-Boltzmann law — and the isotropy of a relativistic gas fixes the radiation pressure at one third of the energy density. From the free energy follow the entropy and heat capacity, both proportional to T cubed, and the adiabatic law for radiation. The results govern the pressure inside stars and the cooling of the cosmic microwave background as the universe expands.\n",{"path":17820,"title":17821,"module":17809,"summary":17822},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fphonons-and-the-debye-model","Phonons and the Debye Model","The vibrations of a crystal lattice are quantized into phonons — bosons of zero chemical potential, counted exactly like cavity photons but with three polarizations, a finite sound speed, and a total of 3N modes. The Debye model replaces the true dispersion by a linear one cut off at a frequency that enforces that count. It gives the correct low-temperature T-cubed heat capacity the Einstein model missed and recovers the Dulong-Petit value at high temperature.\n",{"path":17824,"title":17825,"module":17809,"summary":17826},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fbose-einstein-condensation-derived","Bose-Einstein Condensation Derived","For a gas of conserved bosons the excited states can hold only a finite number of particles at fixed temperature, set by the Bose function at unit fugacity. When the total exceeds that ceiling the surplus collapses into the single ground state, which the continuum density-of-states integral misses and which must be restored by hand. This fixes the critical temperature, the condensate fraction, and the fact that a uniform gas condenses only in three or more dimensions.\n",{"path":17828,"title":17829,"module":17809,"summary":17830},"\u002Fstatistical-mechanics\u002Fbose-systems\u002Fthermodynamics-of-the-bose-gas-and-superfluidity","Thermodynamics of the Bose Gas and Superfluidity","The energy and pressure of the ideal Bose gas follow from the Bose function at the order above the density, and below the critical temperature the pressure depends on temperature alone because the condensate carries none. The heat capacity rises to a cusp at the transition. Real superfluid helium departs from the ideal gas because interactions matter: the Landau criterion ties frictionless flow to the phonon-roton excitation spectrum, and the two-fluid model carries a second sound.\n",{"path":17832,"title":17833,"module":17834,"summary":17835},"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fthe-ideal-fermi-gas-at-zero-temperature","The Ideal Fermi Gas at Zero Temperature","Degenerate Fermi Gas","At absolute zero a gas of non-interacting fermions fills every single-particle state up to the Fermi energy and leaves the rest empty, a filled Fermi sphere in momentum space. This lesson computes the Fermi momentum, energy, and temperature from the density, the density of states, the total ground-state energy, and the degeneracy pressure that grows as $n^{5\u002F3}$. Numerical Fermi energies for metals set the scale: they are electron-volts, so room temperature is deep in the degenerate regime.\n",{"path":17837,"title":17838,"module":17834,"summary":17839},"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fsommerfeld-expansion-and-electrons-in-metals","The Sommerfeld Expansion and Electrons in Metals","Turning on a small temperature blurs the Fermi step over a shell of width $k_BT$ around $\\epsilon_F$. The Sommerfeld expansion turns integrals over the Fermi function into a power series in $(k_BT\u002F\\epsilon_F)^2$, giving the shift of the chemical potential and a heat capacity linear in $T$. This resolves the old puzzle of the missing electronic heat capacity, predicts the combined $C=\\gamma T+AT^3$ of a metal, and gives the temperature-independent Pauli paramagnetism of the electron gas.\n",{"path":17841,"title":17842,"module":17834,"summary":17843},"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fwhite-dwarfs-and-the-chandrasekhar-limit","White Dwarfs and the Chandrasekhar Limit","A white dwarf is held up against its own gravity by the degeneracy pressure of its electrons. Balancing that pressure against gravity gives a mass-radius relation $R\\propto M^{-1\u002F3}$: heavier white dwarfs are smaller and denser. As the density rises the electrons turn relativistic, the pressure softens from $n^{5\u002F3}$ to $n^{4\u002F3}$, and the star can no longer support itself above a critical mass. This lesson derives that Chandrasekhar mass, about $1.4\\,M_\\odot$, and what lies beyond it.\n",{"path":17845,"title":17846,"module":17834,"summary":17847},"\u002Fstatistical-mechanics\u002Ffermi-gas\u002Fneutron-stars-and-nuclear-matter","Neutron Stars and Dense Matter","When a collapsing core passes nuclear density, electron capture converts the matter to neutrons and their degeneracy pressure takes over. The same balance that fixes a white dwarf, rescaled by the neutron mass, gives a neutron star of a few solar masses in a ten-kilometre radius. General relativity is no longer a correction: the Tolman-Oppenheimer-Volkoff equation replaces the Newtonian balance and sets a maximum mass around two solar masses. This lesson rescales the Fermi-gas argument, states where it breaks, and places the compact objects in one stability sequence.\n",{"path":17849,"title":17850,"module":17851,"summary":17852},"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-cluster-expansion-and-virial-coefficients","The Cluster Expansion and Virial Coefficients","Interacting Gases","A real gas departs from $PV=Nk_BT$ because its molecules interact. The configuration integral factors through the Mayer function $f_{ij}=e^{-\\beta u_{ij}}-1$, and expanding it in powers of density produces the virial expansion $PV\u002FNk_BT = 1 + B_2(T)n + B_3(T)n^2 + \\cdots$. The second virial coefficient $B_2(T)=-\\tfrac12\\int f\\,\\d^3r$ is a single integral over the pair potential; it is positive for a hard core, negative for an attractive well, and vanishes at the Boyle temperature where the two balance.\n",{"path":17854,"title":17855,"module":17851,"summary":17856},"\u002Fstatistical-mechanics\u002Finteractions\u002Fthe-van-der-waals-gas-and-liquid-gas-coexistence","The van der Waals Gas and Liquid-Gas Coexistence","Resumming the second virial coefficient $B_2=b-a\u002Fk_BT$ into an equation of state gives the van der Waals model $(P+a\u002Fv^2)(v-b)=k_BT$, the simplest theory of a fluid that condenses. Below the critical temperature its isotherms develop a mechanically unstable loop; the Maxwell equal-area construction replaces the loop with a coexistence tie line. The critical point sits at $v_c=3b$, $k_BT_c=8a\u002F27b$, $P_c=a\u002F27b^2$, and the model predicts universal but incorrect critical exponents because it ignores fluctuations.\n",{"path":17858,"title":17859,"module":17851,"summary":17860},"\u002Fstatistical-mechanics\u002Finteractions\u002Fquantum-gases-with-interactions-and-exchange","Quantum Gases with Interactions and Statistical Exchange","A quantum gas has a nonzero second virial coefficient even with no forces between the particles: symmetrization alone produces an effective statistical interaction, attractive for bosons and repulsive for fermions, with range the thermal wavelength $\\lambda$. This lesson derives that exchange contribution $B_2=\\mp\\lambda^3\u002F2^{5\u002F2}g$, writes it as a statistical potential $v_s(r)=-k_BT\\ln(1\\pm e^{-2\\pi r^2\u002F\\lambda^2})$, and shows how real interactions add on top through the Beth-Uhlenbeck phase-shift formula, reducing at low temperature to a single scattering length.\n",{"path":17862,"title":17863,"module":17864,"summary":17865},"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fphases-coexistence-and-classification","Phases, Coexistence, and the Classification of Transitions","Phase Transitions","A phase transition is a point where the free energy of a substance loses analyticity, so a small change in temperature or pressure produces a qualitative change of state. This lesson maps the coexistence curves of a pure substance, derives the Clausius-Clapeyron relation between the slope of a coexistence line and its latent heat, and separates first-order transitions (discontinuous entropy and density) from continuous ones (a vanishing order parameter and divergent response). The Ehrenfest scheme, the order parameter, and the triple and critical points fix the vocabulary the rest of the module builds on.\n",{"path":17867,"title":17868,"module":17864,"summary":17869},"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-ising-model-and-exact-solutions","The Ising Model and Exact Results","The Ising model reduces cooperative ordering to spins on a lattice coupled to their neighbors, and the same Hamiltonian describes uniaxial magnets, the liquid-gas critical point through the lattice gas, and binary alloys. This lesson solves the one-dimensional chain exactly with the transfer matrix, shows by a domain-wall argument why one dimension has no ordered phase at any positive temperature, contrasts the survival of order in two dimensions, and quotes Onsager's exact two-dimensional results: the critical temperature, the logarithmically divergent heat capacity, and the magnetization exponent one eighth.\n",{"path":17871,"title":17872,"module":17864,"summary":17873},"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fmean-field-theory-and-the-weiss-model","Mean-Field Theory and Spontaneous Symmetry Breaking","Mean-field theory replaces the neighbors of each spin by their average, turning the interacting Ising model into a single spin in a self-consistent field. The resulting equation m = tanh(beta J z m + beta h) has only the zero solution above a critical temperature and gains a nonzero root below it, giving spontaneous magnetization and a mean-field critical temperature k T_c = J z. The Bragg-Williams free energy turns single-welled above T_c and double-welled below, the picture of spontaneous symmetry breaking. The approximation is exact in high dimension and fails below the upper critical dimension four, quantified by the Ginzburg criterion.\n",{"path":17875,"title":17876,"module":17864,"summary":17877},"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fcritical-exponents-and-landau-theory","Critical Exponents, Scaling, and Landau Theory","Near a continuous transition every singular quantity follows a power law in the reduced temperature, and the exponents alpha, beta, gamma, delta, nu, and eta encode the transition more sharply than T_c itself. Landau theory expands the free energy in the order parameter and delivers the mean-field exponents in a few lines. They disagree with experiment and with the exact two-dimensional Ising values, but the exponents are not independent: the scaling relations of Rushbrooke, Widom, Fisher, and Josephson tie them together, and the correlation length sets the length scale that organizes universality classes.\n",{"path":17879,"title":17880,"module":17864,"summary":17881},"\u002Fstatistical-mechanics\u002Fphase-transitions\u002Fthe-renormalization-group-idea","Scaling and the Renormalization-Group Idea","At a critical point fluctuations exist on every length scale, so the system looks the same after coarse-graining. The renormalization group makes this self-similarity a computation: group spins into blocks, integrate out the short scales, and track how the couplings change. The transformation has fixed points, and the flow near a critical fixed point separates relevant couplings that grow from irrelevant ones that shrink, which is why only dimension and symmetry survive to set the exponents. The one-dimensional Ising decimation carries the whole scheme through in closed form and reproduces the absence of a finite-temperature transition.\n",{"path":17883,"title":17884,"module":17885,"summary":17886},"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fthermodynamic-fluctuations-and-response","Thermodynamic Fluctuations and Response Functions","Fluctuations and Response","Thermodynamic variables are sharp only on average; a macroscopic system in equilibrium fluctuates about its mean values. Einstein inverted Boltzmann's $S=k_B\\ln\\Omega$ into a Gaussian probability for a fluctuation, $w\\propto e^{\\Delta S\u002Fk_B}$, and the second moments it predicts reproduce the response functions: $\\langle\\Delta E^2\\rangle=k_BT^2C_V$, $\\langle\\Delta V^2\\rangle=k_BTV\\kappa_T$, $\\langle\\Delta M^2\\rangle=k_BT\\chi_T$. The variances diverge where the responses diverge, at a critical point, producing critical opalescence and the breakdown of the thermodynamic description.\n",{"path":17888,"title":17889,"module":17885,"summary":17890},"\u002Fstatistical-mechanics\u002Ffluctuations\u002Fbrownian-motion-and-the-langevin-equation","Brownian Motion and the Langevin Equation","A pollen grain in water executes a random walk driven by molecular collisions. Einstein tied its diffusion constant to its mobility, $D=\\mu_{\\mathrm{mob}}k_BT$, turning a visible motion into a measurement of Avogadro's number. The Langevin equation splits the collisions into a systematic drag and a random force whose strength is fixed by the drag through $\\langle\\xi(t)\\xi(t')\\rangle=2\\gamma k_BT\\,\\delta(t-t')$ — the first fluctuation–dissipation relation. The mean-square displacement grows ballistically at short times and linearly, $\\langle r^2\\rangle=2dDt$, at long times, and the Stokes–Einstein relation $D=k_BT\u002F6\\pi\\eta a$ closes the loop to Perrin's experiments.\n",{"path":17892,"title":17893,"module":17885,"summary":17894},"\u002Fstatistical-mechanics\u002Ffluctuations\u002Flinear-response-and-the-fluctuation-dissipation-theorem","Linear Response and the Fluctuation-Dissipation Theorem","A system driven by a weak external field responds through a generalized susceptibility $\\chi(\\omega)$ whose imaginary part measures dissipation. The Wiener–Khinchin theorem makes the power spectrum of equilibrium fluctuations the Fourier transform of their correlation function, and the fluctuation–dissipation theorem ties the two together: $S_x(\\omega)=(2k_BT\u002F\\omega)\\,\\chi''(\\omega)$, so the spectrum of spontaneous fluctuations is fixed by the dissipative response. The Johnson–Nyquist noise of a resistor, $\\langle V^2\\rangle=4k_BTR\\,\\Delta f$, is the canonical example, and Onsager reciprocity closes the subject.\n",{"path":17896,"title":17897,"module":6,"summary":6},"\u002Fstatistical-mechanics","Statistical Mechanics",{"path":17899,"title":17900,"module":17901,"summary":17902},"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fbonding-mechanisms","Bonding Mechanisms","Molecules and Chemical Bonding","A molecule forms when the total energy of two atoms drops below the energy of the separated pair. This lesson works through the four mechanisms that produce that minimum: the ionic bond from charge transfer, the covalent bond from shared electron wave functions, the metallic bond, and the weak dipole-dipole and hydrogen bonds, computing bond lengths and dissociation energies for NaCl, H₂, and H₂⁺.\n",{"path":17904,"title":17905,"module":17901,"summary":17906},"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fmolecular-orbitals-and-h2-plus","The Molecular-Orbital Method and H₂⁺","The hydrogen molecule ion is the two-center problem that fixes the language of chemical bonding. This lesson builds the molecular orbital as a linear combination of atomic orbitals, minimizes the energy through the variational secular equation, and reduces the result to three two-center integrals: the overlap, the Coulomb term, and the exchange (resonance) integral. The bonding and antibonding levels, their potential-energy curves, and the charge piled between the nuclei follow from those integrals.\n",{"path":17908,"title":17909,"module":17901,"summary":17910},"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fhydrogen-molecule-and-exchange","The Hydrogen Molecule, Exchange, and Hybridization","Adding the second electron turns the one-electron ion into the two-electron hydrogen molecule, where electron-electron repulsion and the Pauli principle govern the bond. This lesson contrasts the Heitler-London valence-bond and molecular-orbital wave functions, derives the singlet-triplet splitting as an exchange energy, shows why naive molecular orbitals fail at dissociation, and builds the sp, sp², and sp³ hybrids that fix the directed geometry of covalent bonds.\n",{"path":17912,"title":17913,"module":17901,"summary":17914},"\u002Fcondensed-matter\u002Fmolecules-and-bonding\u002Fvan-der-waals-forces","Van der Waals Forces","The bond of last resort acts between all atoms, even closed-shell noble gases with no permanent moment. This lesson separates the three van der Waals contributions — Keesom orientation, Debye induction, and London dispersion — derives the London 1\u002Fr⁶ attraction from the coupled-oscillator and second-order perturbation pictures, and assembles the Lennard-Jones potential to compute the equilibrium spacing and cohesive energy of the noble-gas crystals, argon in particular.\n",{"path":17916,"title":17917,"module":17918,"summary":17919},"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Frotational-vibrational-spectra","Rotational and Vibrational Spectra of Molecules","Molecular Spectra","A diatomic molecule stores energy in three well-separated ledgers: electronic, vibrational, and rotational. Quantizing the rigid rotor gives levels spaced as ℓ(ℓ+1); quantizing the bond as a harmonic oscillator gives equally spaced vibrational levels. Their combination produces the P and R branches of an infrared absorption band, from which the bond length and force constant are read directly.\n",{"path":17921,"title":17922,"module":17918,"summary":17923},"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Fanharmonicity-and-rovibrational-structure","Anharmonicity and Rovibrational Structure","The rigid rotor and harmonic oscillator are first approximations. A real bond follows the Morse potential, whose levels converge toward dissociation; a real rotor stretches centrifugally; and vibration couples to rotation, so the rotational constant depends on the vibrational level. This lesson works out the anharmonic and centrifugal corrections, the Birge-Sponer route to the dissociation energy, the isotope shift, and the thermal band envelope.\n",{"path":17925,"title":17926,"module":17918,"summary":17927},"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Framan-and-electronic-bands","Raman Scattering and Electronic Bands","Not every vibration absorbs in the infrared. Raman scattering reaches modes that modulate the polarizability, giving Stokes and anti-Stokes lines whose intensity ratio measures temperature, and the mutual-exclusion rule pairs it with infrared absorption. Electronic transitions add the vibronic structure of band spectra, governed by the Franck-Condon principle, and the radiative fates of an excited state are sorted by the Jablonski diagram into fluorescence and phosphorescence.\n",{"path":17929,"title":17930,"module":17918,"summary":17931},"\u002Fcondensed-matter\u002Fmolecular-spectra\u002Flasers-and-masers","Lasers, Masers, and Stimulated Emission","Einstein's three radiative processes — absorption, spontaneous emission, and stimulated emission — and the coefficients that relate them. Stimulated emission produces coherent photons, and inverting the level populations turns it into net amplification. We build the ruby three-level laser and the helium-neon four-level laser, and show why the fourth level makes inversion easy.\n",{"path":17933,"title":17934,"module":17935,"summary":17936},"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fstructure-of-solids","The Structure of Solids","Crystal Structure","A crystal is a unit cell repeated in three dimensions. We classify the common cubic lattices, compute the Coulomb energy of an ionic crystal through the Madelung constant, and show how the divergent naive lattice sum is tamed by cubic shells. The cohesive energy that results predicts melting points and connects the diatomic bond of an earlier lesson to the bulk solid.\n",{"path":17938,"title":17939,"module":17935,"summary":17940},"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fbravais-lattices-and-crystal-systems","Bravais Lattices, Bases, and Crystal Structures","A crystal is a Bravais lattice decorated by a basis. This lesson separates the two, builds primitive and Wigner-Seitz cells, enumerates the seven crystal systems and fourteen Bravais lattices, and fixes the language of point and space groups. Miller indices label planes and directions, and the packing fractions of the close-packed, cubic, and diamond structures follow from the geometry.\n",{"path":17942,"title":17943,"module":17935,"summary":17944},"\u002Fcondensed-matter\u002Fcrystal-structure\u002Freciprocal-lattice-and-brillouin-zones","The Reciprocal Lattice and Brillouin Zones","Every periodic crystal has a dual lattice in wavevector space. This lesson defines the reciprocal lattice through the condition b_i dot a_j equals two pi delta, derives its properties, shows the reciprocal of fcc is bcc, links reciprocal vectors to families of lattice planes, and builds the first Brillouin zone as the Wigner-Seitz cell of the reciprocal lattice, including the higher zones.\n",{"path":17946,"title":17947,"module":17935,"summary":17948},"\u002Fcondensed-matter\u002Fcrystal-structure\u002Fdiffraction-and-structure-factors","X-ray and Neutron Diffraction","A crystal diffracts radiation whose wavelength matches its atomic spacing. This lesson derives the Bragg condition, the equivalent Laue condition 2k dot G equals G squared, and the Ewald-sphere construction, then computes the geometric structure factor that produces systematic absences for bcc and fcc, the atomic form factor, and the powder method. It closes on why neutrons and electrons complement X-rays.\n",{"path":17950,"title":17951,"module":17952,"summary":17953},"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonon-dispersion","The Harmonic Crystal and Phonon Dispersion","Lattice Dynamics","Atoms in a crystal vibrate about their equilibrium sites, and expanding the potential to second order turns the whole lattice into a set of coupled harmonic oscillators. This lesson sets up the harmonic approximation and the dynamical matrix, solves the monatomic linear chain for its dispersion omega(k) = 2 sqrt(K\u002FM) times the absolute sine of ka over two, explains why wavevectors outside the first Brillouin zone are redundant, and extends the chain to two atoms per cell to produce acoustic and optical branches with a frequency gap.\n",{"path":17955,"title":17956,"module":17952,"summary":17957},"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fphonons-quantization-and-dos","Phonons, Density of States, and Crystal Momentum","Quantizing the normal modes of a harmonic crystal turns each vibrational mode into a quantum oscillator whose excitations are phonons. This lesson counts phonons with Bose-Einstein statistics, defines crystal momentum and the normal versus Umklapp distinction in momentum conservation, builds the density of states with its van Hove singularities, and shows how inelastic neutron scattering measures a dispersion curve point by point.\n",{"path":17959,"title":17960,"module":17952,"summary":17961},"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fdebye-einstein-heat-capacity","Thermal Properties — Einstein and Debye Models","The lattice heat capacity follows the classical Dulong-Petit value at high temperature but collapses toward zero as T approaches zero, a purely quantum effect. This lesson derives that behavior from the Einstein model of a single frequency, then the Debye model of a linear phonon spectrum with a cutoff, obtaining the Debye T-cubed law at low temperature and the Debye interpolation across all temperatures, and closes with thermal expansion and the Gruneisen parameter.\n",{"path":17963,"title":17964,"module":17952,"summary":17965},"\u002Fcondensed-matter\u002Flattice-dynamics\u002Fanharmonicity-and-thermal-transport","Anharmonicity, Thermal Expansion, and Heat Conduction","A perfectly harmonic crystal neither expands when heated nor resists heat flow. Both effects come from the cubic and higher terms the harmonic approximation discards. This lesson derives thermal expansion from an asymmetric interatomic potential, treats phonon-phonon scattering as the decay channel these terms open, shows why Umklapp processes are what make lattice thermal conductivity finite, and traces the temperature dependence of the conductivity and the phonon mean free path.\n",{"path":17967,"title":17968,"module":17969,"summary":17970},"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ffree-electron-gas-and-conduction","Conduction and the Free-Electron Gas","Free-Electron Fermi Gas","Drude's classical free-electron model gets Ohm's law right but the resistivity, its temperature dependence, and the heat capacity wrong. Replacing the Maxwell-Boltzmann distribution with the Fermi-Dirac distribution and treating electron-lattice collisions as wave scattering repairs all three: the Fermi energy, Fermi speed, and a mean free path set by thermal lattice vibrations.\n",{"path":17972,"title":17973,"module":17969,"summary":17974},"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fsommerfeld-model-and-heat-capacity","The Sommerfeld Model: Ground State and Heat Capacity","Quantizing the free-electron gas in a box fills a Fermi sphere in k-space. The density of states grows as the square root of energy in three dimensions, and the Fermi energy, temperature, and wavevector follow for real metals. The Sommerfeld expansion shows only a thermal shell of width k_BT near E_F is excited, giving an electronic heat capacity linear in T that sits beneath the phonon T-cubed term.\n",{"path":17976,"title":17977,"module":17969,"summary":17978},"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Ftransport-and-the-hall-effect","Transport, Wiedemann–Franz, and the Hall Effect","The relaxation-time picture displaces the Fermi sphere under an applied field and gives the electrical conductivity ne-squared-tau over m. The same electrons carry heat, and their ratio yields the Wiedemann–Franz law with the universal Lorenz number. A magnetic field bends the carriers into cyclotron orbits and produces the Hall voltage, whose sign reveals the charge of the carriers.\n",{"path":17980,"title":17981,"module":17969,"summary":17982},"\u002Fcondensed-matter\u002Ffree-electron-fermi-gas\u002Fscreening-and-plasmons","Screening, Plasmons, and the Limits of Free Electrons","A mobile electron gas rearranges to screen any foreign charge, turning the bare Coulomb potential into a short-ranged Yukawa form over the Thomas–Fermi length. Displaced collectively, the gas rings at the plasma frequency, whose quantum is the plasmon and whose value sets the reflectivity edge of metals. A ledger of free-electron successes and failures then motivates band theory.\n",{"path":17984,"title":17985,"module":17986,"summary":17987},"\u002Fcondensed-matter\u002Fband-theory\u002Fblochs-theorem-and-energy-bands","Bloch's Theorem and Energy Bands","Band Theory","An electron in a periodic potential has stationary states that are plane waves modulated by a lattice-periodic envelope. This lesson proves Bloch's theorem two ways, defines crystal momentum and the band index, counts the allowed wavevectors from Born–von Kármán boundary conditions, and sets up the extended, reduced, and repeated-zone descriptions of a band.\n",{"path":17989,"title":17990,"module":17986,"summary":17991},"\u002Fcondensed-matter\u002Fband-theory\u002Fnearly-free-electron-model","The Nearly-Free-Electron Model","A weak periodic potential leaves the free-electron parabola almost intact except near Brillouin-zone boundaries, where two nearly degenerate plane waves mix. This lesson solves the resulting two-by-two secular problem, shows the gap of size twice the potential component opening at each boundary, identifies the two standing waves that pile charge on and between the ions, and works the exactly solvable Kronig–Penney model.\n",{"path":17993,"title":17994,"module":17986,"summary":17995},"\u002Fcondensed-matter\u002Fband-theory\u002Ftight-binding-method","The Tight-Binding Method","The opposite limit to nearly-free electrons builds bands from atomic orbitals. A Bloch sum of one orbital per site gives a dispersion set by the hopping integral between neighbours; the band widens from a sharp atomic level as the atoms approach. This lesson derives the s-band cosine dispersion, extends it to p-bands, and introduces Wannier functions as the localized dual of Bloch states.\n",{"path":17997,"title":17998,"module":17986,"summary":17999},"\u002Fcondensed-matter\u002Fband-theory\u002Ffermi-surfaces-and-semiclassical-dynamics","Fermi Surfaces, Effective Mass, and Metals vs Insulators","Filling the bands settles which crystals conduct. A filled band carries no current, so a crystal with filled bands and a gap is an insulator, while a partly filled band makes a metal. This lesson derives the no-current theorem for a filled band, defines the Fermi surface and Harrison's construction, introduces holes and the effective mass from band curvature, and states the semiclassical equations of motion that lead to Bloch oscillations.\n",{"path":18001,"title":18002,"module":18003,"summary":18004},"\u002Fcondensed-matter\u002Fsemiconductors\u002Fsemiconductor-bands-and-junctions","Band Theory and Semiconductors","Semiconductors","The periodic lattice splits atomic levels into allowed energy bands separated by forbidden gaps. Whether the highest occupied band is full or partly full, and how wide the gap above it is, sorts every solid into conductor, insulator, or semiconductor. Doping adds donor or acceptor levels inside the gap, and a p-n junction built from doped regions gives the diode, the solar cell, the LED, and the transistor.\n",{"path":18006,"title":18007,"module":18003,"summary":18008},"\u002Fcondensed-matter\u002Fsemiconductors\u002Fintrinsic-and-extrinsic-semiconductors","Carrier Statistics: Intrinsic and Extrinsic Semiconductors","The number of mobile electrons and holes in a semiconductor follows from the density of states near each band edge and the Fermi-Dirac tail that reaches into it. This lesson derives the effective densities of states, the intrinsic concentration and its exponential gap dependence, the law of mass action, the temperature march of the Fermi level, and the freeze-out, saturation, and intrinsic regimes of a doped crystal.\n",{"path":18010,"title":18011,"module":18003,"summary":18012},"\u002Fcondensed-matter\u002Fsemiconductors\u002Fcarrier-transport-and-recombination","Carrier Transport and Recombination","Carriers move by drift in a field and by diffusion down a concentration gradient, the two tied together by the Einstein relation. This lesson derives mobility and its scattering-limited temperature dependence, the drift and diffusion currents, the continuity equations, band-to-band and trap-assisted recombination, and the minority-carrier lifetime and diffusion length that set the length scale of every junction device.\n",{"path":18014,"title":18015,"module":18003,"summary":18016},"\u002Fcondensed-matter\u002Fsemiconductors\u002Fthe-pn-junction","The p-n Junction in Depth","Joining p-type and n-type silicon aligns their Fermi levels and leaves a depletion region of fixed charge with a built-in potential. This lesson derives the space-charge field and potential from Poisson's equation in the depletion approximation, the built-in voltage from Fermi-level alignment, the Shockley diode equation from minority-carrier diffusion, junction and diffusion capacitance, and the avalanche and Zener breakdown mechanisms.\n",{"path":18018,"title":18019,"module":18003,"summary":18020},"\u002Fcondensed-matter\u002Fsemiconductors\u002Ftransistors-and-optoelectronics","Transistors and Optoelectronic Devices","Two junctions in series make a bipolar transistor whose thin base gives current gain; a gate over an oxide makes a MOSFET whose inversion channel switches digital logic. Run in reverse, a junction converts photons to current. This lesson derives the transistor current gain and the MOSFET channel current, then treats the LED, the diode laser, and the illuminated solar-cell characteristic.\n",{"path":18022,"title":18023,"module":18024,"summary":18025},"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fdielectrics-and-polarization","Dielectrics, Polarization, and the Local Field","Dielectrics and Ferroelectrics","An insulator responds to an electric field by polarizing. This lesson builds the macroscopic polarization and the dielectric constant, sorts the microscopic response into electronic, ionic, and orientational polarizability, and corrects the field an atom actually feels to the Lorentz local field E + P\u002F3 epsilon-0. The Clausius-Mossotti relation links the measured permittivity to the atomic polarizability, and the frequency dependence of each mechanism explains why the static and optical dielectric constants differ.\n",{"path":18027,"title":18028,"module":18024,"summary":18029},"\u002Fcondensed-matter\u002Fdielectrics-and-ferroelectrics\u002Fferroelectrics-and-piezoelectrics","Ferroelectrics, Piezoelectrics, and Structural Transitions","Some crystals carry a polarization with no applied field and switch it under a reversing field, tracing a hysteresis loop. This lesson develops the ferroelectric transition through the perovskite BaTiO3 displacive instability and its soft transverse-optical mode, builds the Landau free-energy theory of first- and second-order polar transitions, derives the Curie-Weiss divergence of the dielectric constant, and closes with piezoelectricity and pyroelectricity and their devices.\n",{"path":18031,"title":18032,"module":18033,"summary":18034},"\u002Fcondensed-matter\u002Fmagnetism\u002Fdiamagnetism-and-paramagnetism","Diamagnetism and Paramagnetism","Magnetism in Solids","Every solid responds to a magnetic field. Filled shells give a small negative diamagnetic susceptibility from induced Larmor currents; localized moments give a positive Curie paramagnetism described by the Brillouin function, with the ground-state moment fixed by Hund's rules. The conduction electrons add a temperature-independent Pauli paramagnetism from the thermal shell near the Fermi surface, partly cancelled by Landau diamagnetism of their orbital motion.\n",{"path":18036,"title":18037,"module":18033,"summary":18038},"\u002Fcondensed-matter\u002Fmagnetism\u002Fexchange-and-ferromagnetism","Exchange and Ferromagnetism","Magnetic ordering at hundreds of kelvin cannot be dipolar; it is an exchange effect, the Coulomb repulsion sorted by the Pauli principle into a spin-dependent energy captured by the Heisenberg Hamiltonian. Weiss molecular-field theory replaces the exchange field by an average proportional to the magnetization, giving a self-consistent equation whose solution is spontaneous magnetization below a Curie temperature and a Curie–Weiss susceptibility above it. Itinerant ferromagnetism follows from the Stoner criterion on the band density of states.\n",{"path":18040,"title":18041,"module":18033,"summary":18042},"\u002Fcondensed-matter\u002Fmagnetism\u002Fantiferromagnetism-and-domains","Antiferromagnetism, Ferrimagnetism, and Domains","A negative exchange coupling orders neighboring spins antiparallel. Two-sublattice molecular-field theory gives a Néel temperature marked by a cusp in the susceptibility, and unequal sublattices leave a net moment — ferrimagnetism, the magnetism of the ferrites. A ferromagnet breaks into domains to reduce its magnetostatic energy, separated by Bloch walls whose width is set by the competition between exchange and magnetocrystalline anisotropy, and the irreversible motion of those walls produces the hysteresis loop.\n",{"path":18044,"title":18045,"module":18033,"summary":18046},"\u002Fcondensed-matter\u002Fmagnetism\u002Fspin-waves-and-magnons","Spin Waves and Magnons","The lowest excitations of a ferromagnet are not single flipped spins but collective precessions in which every moment tips slightly and its phase advances along the crystal. These spin waves have a quadratic dispersion at long wavelength, quantize into magnons obeying Bose statistics, and their thermal population removes magnetization as the Bloch T-to-the-three-halves law. Antiferromagnetic magnons disperse linearly, and inelastic neutron scattering measures both.\n",{"path":18048,"title":18049,"module":18050,"summary":18051},"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fsuperconductivity-phenomenology","Superconductivity: Phenomenology and BCS","Superconductivity","Below a critical temperature some materials lose all resistance and expel magnetic flux — the Meissner effect that defines the state. The isotope effect points to lattice vibrations, and BCS theory binds electrons into Cooper pairs through phonon exchange. The paired condensate opens an energy gap, quantizes magnetic flux, and drives the Josephson effects.\n",{"path":18053,"title":18054,"module":18050,"summary":18055},"\u002Fcondensed-matter\u002Fsuperconductivity\u002Flondon-theory-and-the-meissner-effect","London Theory and the Meissner Effect","A perfect conductor freezes the field it was cooled in; a superconductor expels it. The distinction needs a constitutive law beyond zero resistance — the two London equations — whose solution is exponential flux decay over the penetration depth. The same rigidity follows from a macroscopic condensate wave function, and the thermodynamics of the critical field fixes the condensation energy, the latent heat, and the specific-heat jump.\n",{"path":18057,"title":18058,"module":18050,"summary":18059},"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fginzburg-landau-theory","Ginzburg–Landau Theory, Vortices, and Type-II","A complex order parameter and a free-energy expansion turn the superconducting transition into a Landau theory. Two lengths emerge — the coherence length and the penetration depth — whose ratio kappa sorts superconductors into type I and type II. Type-II materials admit flux as an Abrikosov lattice of vortices, each threading exactly one quantum h\u002F2e, between a lower and an upper critical field.\n",{"path":18061,"title":18062,"module":18050,"summary":18063},"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fbcs-theory","Microscopic BCS Theory","A phonon-mediated attraction, however weak, binds two electrons above the Fermi sea — the Cooper problem shows the sea is unstable. The BCS variational ground state pairs all electrons near the Fermi surface and, through a self-consistent gap equation, opens an energy gap. Weak-coupling solution gives the exponential T_c and the universal ratios 2 Delta(0) = 3.53 k_B T_c and Delta C \u002F C_n = 1.43.\n",{"path":18065,"title":18066,"module":18050,"summary":18067},"\u002Fcondensed-matter\u002Fsuperconductivity\u002Fjosephson-and-high-tc","Josephson Effects and Unconventional Superconductors","Two superconductors joined by a thin barrier carry a supercurrent set by their phase difference — the dc Josephson effect — and oscillate at 2eV\u002Fh under a voltage. A two-junction loop turns flux quantization into a magnetometer of single-quantum sensitivity. The cuprates superconduct in CuO2 planes with a doping-dependent dome, d-wave pairing, and a pseudogap that lie outside the phonon picture.\n",{"path":18069,"title":18070,"module":18071,"summary":18072},"\u002Fcondensed-matter\u002Fnanostructures\u002Fquantum-wells-wires-and-dots","Quantum Wells, Wires, and Dots","Nanostructures","When a crystal is shrunk until one or more of its dimensions approaches the electron wavelength, the continuous bands of the bulk break into discrete subbands. Confining in one direction gives a quantum well with a step-like density of states, in two directions a quantum wire with inverse-square-root singularities, and in all three a quantum dot whose levels are sharp like an atom's. This lesson derives the density of states in each case and applies it to size-tunable dot emission and the Coulomb blockade of a single-electron transistor.\n",{"path":18074,"title":18075,"module":18071,"summary":18076},"\u002Fcondensed-matter\u002Fnanostructures\u002Finteger-quantum-hall-effect","The 2D Electron Gas and the Integer Quantum Hall Effect","A two-dimensional electron gas in a strong perpendicular magnetic field has its continuous density of states collapse into macroscopically degenerate Landau levels. As the field is swept, the Hall resistance locks onto exact plateaus at h over an integer times e squared, while the longitudinal resistance drops to zero. This lesson derives the Landau levels and their degeneracy, explains the plateaus through disorder-localized states and current-carrying edge channels, and states why the von Klitzing constant is now a resistance standard.\n",{"path":18078,"title":18079,"module":18071,"summary":18080},"\u002Fcondensed-matter\u002Fnanostructures\u002Ffractional-quantum-hall-and-topology","The Fractional Quantum Hall Effect and Topological Order","When the lowest Landau level is only partly filled, the non-interacting theory predicts no gap, yet a plateau appears at filling one-third. It is a many-body effect: Coulomb repulsion selects a correlated ground state, the Laughlin wavefunction, whose excitations carry a fraction of the electron charge. This lesson builds the Laughlin state, introduces composite fermions that map the fractional effect onto an integer one, and explains how the quantum Hall effect brought the Chern number and topology into condensed-matter physics.\n",{"path":18082,"title":18083,"module":18071,"summary":18084},"\u002Fcondensed-matter\u002Fnanostructures\u002Fgraphene-and-dirac-materials","Graphene and Dirac Materials","Graphene is one atomic layer of carbon on a honeycomb lattice. A tight-binding calculation on its two-atom basis gives valence and conduction bands that touch at the corners of the Brillouin zone, where the dispersion is linear and the electrons behave as massless two-dimensional Dirac particles with a fixed speed. This lesson derives the Dirac cones, the Berry phase of pi and the sublattice chirality, the anomalous half-integer quantum Hall effect that follows, and how opening a gap in a Dirac cone points toward topological insulators.\n",{"path":18086,"title":18087,"module":6,"summary":6},"\u002Fcondensed-matter","Condensed Matter Physics",{"path":18089,"title":18090,"module":14862,"summary":18091},"\u002Flogic\u002Ffoundations\u002Flogic-as-a-mathematical-model","Logic as a Mathematical Model of Deduction","Symbolic logic models deductive reasoning the way probability theory models chance: it keeps the form of a correct deduction and discards its content. A deduction is valid when its conclusion follows from the form of the premises alone, independent of what the non-logical words mean. Two models carry the subject — coarse sentential logic and fine first-order logic — and four questions organize it: logical consequence, methods of proof, the gap between provable and true, and the link between logic and computability. Tuples, relations, functions, equivalence classes, and cardinality supply the set-theoretic vocabulary every later chapter uses.\n",{"path":18093,"title":18094,"module":18095,"summary":18096},"\u002Flogic\u002Fsentential-logic\u002Fformal-languages-and-well-formed-formulas","Formal Languages and Well-Formed Formulas","Sentential Logic","The language of sentential logic has an alphabet of sentence symbols, five connectives, and two parentheses, with formation rules that pick out the well-formed formulas. The wffs are the least set of expressions closed under the five formula-building operations, and every such generated set carries an induction principle.\n",{"path":18098,"title":18099,"module":18095,"summary":18100},"\u002Flogic\u002Fsentential-logic\u002Ftruth-assignments-and-tautologies","Truth Assignments, Tautologies, and Consequence","A truth assignment fixes the sentence symbols true or false, and a recursion extends it uniquely to every formula. Satisfaction, tautologies, and tautological implication — one formula following semantically from others — rest on that extension, and the truth-table procedure decides implication for finite premise sets.\n",{"path":18102,"title":18103,"module":18095,"summary":18104},"\u002Flogic\u002Fsentential-logic\u002Funique-readability-and-parsing","Unique Readability and a Parsing Algorithm","Parentheses keep a formula from being read two ways. The parenthesis lemmas and a top-down parsing algorithm recover a formula's structure and yield unique readability: every wff has exactly one formation tree, which is what makes the truth recursion well defined.\n",{"path":18106,"title":18107,"module":18095,"summary":18108},"\u002Flogic\u002Fsentential-logic\u002Finduction-and-recursion","Induction and Recursion on Formulas","Two principles govern any set generated from initial elements by operations: prove a property of all its members by covering the initial elements and the closure steps, and define a function on it by recursion on structure. The recursion theorem needs the set to be freely generated, and unique readability supplies that condition for the well-formed formulas.\n",{"path":18110,"title":18111,"module":18095,"summary":18112},"\u002Flogic\u002Fsentential-logic\u002Fexpressive-completeness-and-normal-forms","Sentential Connectives and Normal Forms","Every formula computes a Boolean function of its atoms, and Post's theorem gives the converse: every Boolean function is realized by a wff in disjunctive normal form, so the five connectives are more than enough. Minimal complete sets follow, down to the single connectives NAND and NOR, together with a method for proving a set of connectives incomplete.\n",{"path":18114,"title":18115,"module":18095,"summary":18116},"\u002Flogic\u002Fsentential-logic\u002Fboolean-circuits","Switching Circuits","A memoryless two-valued circuit computes a Boolean function, so every formula names a gate network and every network a formula. Cost and delay are read off the formula by recursion, and tautological equivalence and normal forms design and simplify circuits realizing a given specification.\n",{"path":18118,"title":18119,"module":18095,"summary":18120},"\u002Flogic\u002Fsentential-logic\u002Fcompactness-and-effectiveness","Compactness and Effectiveness","The compactness theorem reduces satisfiability of an infinite set of formulas to its finite subsets, proved by extension to a maximal finitely satisfiable set and applied to color infinite graphs. Effectiveness fixes what \"decidable\" and \"effectively enumerable\" mean and settles the decidability of tautologyhood.\n",{"path":18122,"title":18123,"module":18124,"summary":18125},"\u002Flogic\u002Ffirst-order-languages\u002Ffirst-order-languages","First-Order Languages","First-Order Languages and Structures","Sentential logic cannot see inside a simple statement, so it misses valid arguments that turn on quantifiers and predicates. A first-order language adds a quantifier, variables, and a chosen vocabulary of predicate, function, and constant symbols. Terms and well-formed formulas are built by recursion over this alphabet, and a variable occurs free or bound according to the quantifiers that reach it.\n",{"path":18127,"title":18128,"module":18124,"summary":18129},"\u002Flogic\u002Ffirst-order-languages\u002Fstructures-truth-and-satisfaction","Structures, Truth, and Satisfaction","A structure interprets a language: a nonempty universe plus a meaning for every predicate, function, and constant symbol. Tarski's recursion defines when a structure satisfies a formula under a variable assignment, and hence when a sentence is true. From satisfaction we recover logical implication, validity, and logical equivalence for first-order logic.\n",{"path":18131,"title":18132,"module":18124,"summary":18133},"\u002Flogic\u002Ffirst-order-languages\u002Fdefinability-and-elementary-equivalence","Definability and Elementary Equivalence","Fix a structure and ask which relations a formula can pick out: the definable ones. A set of sentences picks out a class of structures, the elementary classes. Homomorphisms and isomorphisms compare structures, and the homomorphism theorem shows isomorphic structures satisfy the same sentences. Automorphisms bound what first-order logic can distinguish, giving a tool for proving relations undefinable.\n",{"path":18135,"title":18136,"module":18124,"summary":18137},"\u002Flogic\u002Ffirst-order-languages\u002Fterms-substitution-and-parsing","Parsing, Substitution, and Substitutability","Every recursion on first-order syntax rests on unique readability. A parenthesis-counting function proves that terms and formulas decompose in exactly one way, and a parsing algorithm recovers the decomposition. Substituting a term for a free variable can capture it under a quantifier; the substitutability condition rules that out, and the substitution lemma trades syntactic substitution for a change of assignment.\n",{"path":18139,"title":18140,"module":18141,"summary":18142},"\u002Flogic\u002Fdeductive-calculus\u002Fa-deductive-calculus","A Deductive Calculus for First-Order Logic","The Deductive Calculus and Its Metatheorems","A proof must be finite and mechanically checkable. A Hilbert-style calculus meets both demands: six schemas of logical axioms, a single rule of inference (modus ponens), and the syntactic consequence relation they generate. Substitution and substitutability are defined by recursion, and the bridge theorem reduces deducibility to tautological implication from the axioms.\n",{"path":18144,"title":18145,"module":18141,"summary":18146},"\u002Flogic\u002Fdeductive-calculus\u002Fdeduction-theorem-and-derived-rules","The Deduction Theorem and Derived Rules","Raw deductions from axioms are unusable by hand. The generalization theorem, the deduction theorem, contraposition, reductio ad absurdum, and rule T reduce the calculus to the moves of ordinary mathematics, each proved once to license a block of axiom-level steps. Generalization on constants and alphabetic variants handle the quantifier and substitution bookkeeping.\n",{"path":18148,"title":18149,"module":18141,"summary":18150},"\u002Flogic\u002Fdeductive-calculus\u002Fsoundness","The Soundness Theorem","Soundness is the easy half of the match between proof and truth. Whatever the calculus deduces is logically implied, by an induction on deduction length that rests on one lemma: every logical axiom is valid. The only hard case, quantifier instantiation, needs the substitution lemma. The contrapositive corollary states that every satisfiable set is consistent.\n",{"path":18152,"title":18153,"module":18141,"summary":18154},"\u002Flogic\u002Fdeductive-calculus\u002Fcompleteness-and-consistency","The Completeness Theorem","Gödel's completeness theorem is the deep converse of soundness: whatever is logically implied can be deduced. Equivalently, every consistent set has a model. The Henkin proof manufactures that model out of syntax alone: add witnessing constants, extend to a maximal consistent set, and read a term model off the formulas it contains. Compactness and the enumerability theorem drop out.\n",{"path":18156,"title":18157,"module":18158,"summary":18159},"\u002Flogic\u002Fmodels-and-theories\u002Fcompactness-and-lowenheim-skolem","Compactness and the Löwenheim–Skolem Theorems","Models, Compactness, and Theories","A set of first-order sentences has a model whenever each of its finite subsets does. This compactness theorem follows from completeness and yields the finiteness limitation, the downward and upward Löwenheim–Skolem theorems, models of every infinite cardinality, and nonstandard models of arithmetic.\n",{"path":18161,"title":18162,"module":18158,"summary":18163},"\u002Flogic\u002Fmodels-and-theories\u002Ftheories-elementary-classes-and-categoricity","Theories, Elementary Classes, and Categoricity","A theory is a set of sentences closed under logical consequence. Theories correspond to classes of models; a theory may be complete, axiomatizable, or finitely axiomatizable, and completeness together with axiomatizability yields decidability. The Łoś–Vaught test derives completeness from categoricity in a cardinal, applied to dense linear orders and to algebraically closed fields.\n",{"path":18165,"title":18166,"module":18158,"summary":18167},"\u002Flogic\u002Fmodels-and-theories\u002Finterpretations-between-theories","Interpretations Between Theories","An interpretation translates the vocabulary of one theory into formulas of another, relativizing quantifiers to a definable domain and mapping symbols to defining formulas. Defined function symbols meet a noncreativity criterion; the syntactic translation of formulas carries theoremhood forward, and a faithful interpretation transfers decidability and undecidability between theories.\n",{"path":18169,"title":18170,"module":18158,"summary":18171},"\u002Flogic\u002Fmodels-and-theories\u002Fnonstandard-analysis","Nonstandard Analysis","Compactness builds a model of the real ordered field containing infinite elements and nonzero infinitesimals. The transfer principle carries every first-order truth from the reals to this extension, the standard-part map collapses finite hyperreals back onto the reals, and continuity and the derivative are rederived by working with infinitely small quantities directly.\n",{"path":18173,"title":18174,"module":18175,"summary":18176},"\u002Flogic\u002Farithmetic-and-definability\u002Fdefinability-in-arithmetic","The Structure of Arithmetic and Definability","Number Theory and Definability","Number theory is the theory of one fixed structure, the natural numbers under successor, order, addition, multiplication, and exponentiation. Every number is named by a numeral, and a relation is definable when a single formula picks out exactly its tuples. The central gap separates the sentences true in that structure from those any reasonable set of axioms can prove.\n",{"path":18178,"title":18179,"module":18175,"summary":18180},"\u002Flogic\u002Farithmetic-and-definability\u002Fnatural-numbers-with-successor","Natural Numbers with Successor","The weakest reduct keeps only zero and successor. Its models are a standard chain together with disjoint copies of the integers, which makes the theory categorical in every uncountable power, hence complete and decidable. A quantifier-elimination procedure gives a practical decision method and shows a subset is definable if and only if it is finite or cofinite.\n",{"path":18182,"title":18183,"module":18175,"summary":18184},"\u002Flogic\u002Farithmetic-and-definability\u002Fpresburger-and-reducts","Reducts: Order, Addition, and Multiplication","Adding order to the successor reduct keeps decidability and makes the theory finitely axiomatizable; adding addition gives Presburger arithmetic, still decidable by quantifier elimination once congruence predicates are included, with definable sets exactly the eventually periodic ones. Multiplication is the break point: neither addition nor order can define it, and once it joins addition the theory stops being decidable.\n",{"path":18186,"title":18187,"module":18175,"summary":18188},"\u002Flogic\u002Farithmetic-and-definability\u002Fa-subtheory-and-representability","A Subtheory of Number Theory and Representability","A finite set of eleven axioms, the recursion equations for successor, order, addition, multiplication, and exponentiation, already proves every true quantifier-free and existential sentence. Representability asks a theory to prove the right instances of a formula rather than merely make them true, and a relation is defined to be recursive exactly when some consistent finite theory represents it. Church's thesis identifies that with decidability, and closure under composition, minimization, and primitive recursion builds the catalog the incompleteness proofs need.\n",{"path":18190,"title":18191,"module":18192,"summary":18193},"\u002Flogic\u002Fincompleteness\u002Farithmetization-of-syntax","Arithmetization of Syntax","Arithmetization and the Incompleteness Theorems","Gödel numbering assigns a natural number to every symbol, expression, formula, and deduction, turning statements about syntax into statements about numbers. The syntactic operations — substitution, \"is a wff\", \"is an axiom\", \"d codes a deduction of a\" — come out primitive recursive and hence representable in the subtheory, which lets a formula of arithmetic talk about formulas, including itself.\n",{"path":18195,"title":18196,"module":18192,"summary":18197},"\u002Flogic\u002Fincompleteness\u002Fincompleteness-and-undecidability","Incompleteness, Undecidability, and Church's Theorem","The fixed-point lemma manufactures a sentence that talks about its own Gödel number. Pointed at truth it gives Tarski's theorem — arithmetic truth is not arithmetically definable; pointed at provability it gives Gödel's first incompleteness theorem and the undecidability of the theory of the natural numbers, and, applied to validity, Church's theorem that first-order logic is undecidable. The set of theorems of a recursive theory is only recursively enumerable — the gap between provable and true.\n",{"path":18199,"title":18200,"module":18192,"summary":18201},"\u002Flogic\u002Fincompleteness\u002Fsecond-incompleteness-theorem","The Second Incompleteness Theorem","Consistency of a recursively axiomatized theory is itself an arithmetic sentence, built from a provability predicate. When the theory is strong enough to formalize its own reflection and modus ponens — the Hilbert–Bernays–Löb derivability conditions — it cannot prove that sentence unless it is inconsistent. Löb's theorem is the companion result, and set theory is the case that closes Hilbert's program.\n",{"path":18203,"title":18204,"module":18205,"summary":18206},"\u002Flogic\u002Fcomputability-and-representability\u002Frecursive-functions","Recursive Functions and Church's Thesis","Recursive Functions and Representability","The recursive functions are the formal counterpart of the effectively computable ones: built from three initial functions by composition, primitive recursion, and minimization, and equivalently the functions representable in a finitely axiomatized arithmetic. Church's thesis identifies the class with effective calculability; Kleene's normal form theorem and the unsolvable halting problem place the recursive sets strictly inside the recursively enumerable ones.\n",{"path":18208,"title":18209,"module":18205,"summary":18210},"\u002Flogic\u002Fcomputability-and-representability\u002Frepresenting-exponentiation","Representing Exponentiation and the β-Function","Coding finite sequences by prime-power exponents already assumes exponentiation, so representing exponentiation from addition and multiplication alone needs a different encoder. Gödel's β-function, built from a pairing function and the Chinese remainder theorem, reads back arbitrary finite sequences using only plus and times. This represents exponentiation in the addition-multiplication arithmetic and closes the last gap in the representability of every recursive syntactic operation.\n",{"path":18212,"title":18213,"module":18214,"summary":18215},"\u002Flogic\u002Fsecond-order-logic\u002Fsecond-order-languages","Second-Order Languages","Second-Order Logic and Beyond","Second-order logic quantifies over relations and functions, not just individuals. Second-order Peano arithmetic and the second-order theory of the reals become categorical, and finiteness is definable by a single sentence. Compactness, completeness, and the Löwenheim–Skolem theorems all fail for the standard semantics.\n",{"path":18217,"title":18218,"module":18214,"summary":18219},"\u002Flogic\u002Fsecond-order-logic\u002Fskolem-functions-and-many-sorted-logic","Skolem Functions and Many-Sorted Logic","Skolem functions replace existential quantifiers with named witnesses, putting any first-order formula into a prenex form with all existentials — now over functions — pulled to the front. The Skolemized formula is equisatisfiable with the original, which reduces satisfiability to universal sentences and, through Herbrand expansions, to sentential logic. Many-sorted logic then adds several universes at once and reduces cleanly to ordinary one-sorted logic.\n",{"path":18221,"title":18222,"module":18214,"summary":18223},"\u002Flogic\u002Fsecond-order-logic\u002Fgeneral-structures","General (Henkin) Structures","General semantics reinterprets second-order logic by letting the predicate and function quantifiers range over a designated collection of relations and functions rather than all of them. Recast as many-sorted first-order logic with comprehension axioms, general second-order logic recovers a sound and complete calculus together with compactness and Löwenheim–Skolem, giving up the categoricity of the standard semantics. The ω-models of analysis show the trade.\n",{"path":18225,"title":18226,"module":6,"summary":6},"\u002Flogic","Logic",{"path":18228,"title":18229,"module":14862,"summary":18230},"\u002Freinforcement-learning\u002Ffoundations\u002Fwhat-is-reinforcement-learning","What Is Reinforcement Learning?","Reinforcement learning is learning what to do — how to map situations to actions — so as to maximize a numerical reward signal, discovered by trial and error rather than told. We set up the agent–environment loop, separate it from supervised and unsupervised learning, name the four elements (policy, reward, value, and an optional model), and train a tic-tac-toe player with a temporal-difference value update.\n",{"path":18232,"title":18233,"module":14862,"summary":18234},"\u002Freinforcement-learning\u002Ffoundations\u002Fa-brief-history-of-rl","A Brief History of Reinforcement Learning","The origins of reinforcement learning. Three threads — trial-and-error learning from animal psychology, optimal control and dynamic programming, and temporal-difference learning — ran independently for decades and merged around 1989 into the modern field. Replacing the lookup table with a neural network then produced deep reinforcement learning: DQN, AlphaGo, AlphaZero, MuZero, and RLHF.\n",{"path":18236,"title":18237,"module":14862,"summary":18238},"\u002Freinforcement-learning\u002Ffoundations\u002Fmulti-armed-bandits","Multi-Armed Bandits","A bandit is reinforcement learning stripped to a single decision, repeated: no state, no consequences, only the tension between exploiting the arm that looks best and exploring the ones that might be better. We build up the whole toolkit — sample-average value estimates, the incremental update rule, ε-greedy, optimistic initialization, UCB, and gradient bandits — and use it to study exploration in isolation, the one problem that carries over to the full setting.\n",{"path":18240,"title":18241,"module":14862,"summary":18242},"\u002Freinforcement-learning\u002Ffoundations\u002Fbandit-exploration-algorithms","Bandit Exploration Algorithms","Better ways to explore than picking at random. Upper-confidence-bound selection explores by optimism about what it hasn't measured; gradient bandits learn action preferences by stochastic gradient ascent on reward. We then add context to get the contextual bandit, the bridge to full RL, and measure everything by regret — where UCB1 and Thompson sampling reach the logarithmic optimum that fixed-ε greedy cannot.\n",{"path":18244,"title":18245,"module":14862,"summary":18246},"\u002Freinforcement-learning\u002Ffoundations\u002Fmarkov-decision-processes","Markov Decision Processes","A Markov decision process is the formal interface between an agent and its environment: at each step the agent reads a state, chooses an action, and receives a reward and a next state. We fix that loop, the dynamics function that governs it, and the Markov property that makes the state sufficient; then turn goals into a scalar reward and rewards into a discounted return, with one notation that covers both episodic and continuing tasks.\n",{"path":18248,"title":18249,"module":14862,"summary":18250},"\u002Freinforcement-learning\u002Ffoundations\u002Fvalue-functions-and-optimality","Value Functions and Optimality","A value function scores how good a state (or state–action pair) is under a policy: the expected return from there onward. Its defining property is the Bellman equation, a self-consistency condition linking a state's value to its successors' values, which we derive from the return and the dynamics. Pushing the same idea to the best-achievable value gives the Bellman optimality equations, whose solution yields an optimal policy — and whose intractability is what the rest of the course is about.\n",{"path":18252,"title":15079,"module":18253,"summary":18254},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdynamic-programming","Tabular Solution Methods","Dynamic programming computes optimal policies when a perfect model of the MDP is given, by turning the Bellman equations into assignment statements. We build up iterative policy evaluation (the expected update), the policy improvement theorem, and the two classic algorithms that alternate them — policy iteration and value iteration — worked on the gridworld, a two-state MDP, Jack's car rental, and the gambler's problem.\n",{"path":18256,"title":18257,"module":18253,"summary":18258},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdp-async-and-gpi","Dynamic Programming: Asynchronous DP and Generalized Policy Iteration","Policy and value iteration both sweep the entire state set on every pass, which is impossible once the state space is huge. This lesson loosens the schedule: asynchronous DP updates states in any order, generalized policy iteration names the alternation of evaluation and improvement that underlies nearly every RL method, and a look at efficiency and the curse of dimensionality places DP among the alternatives. We close past Sutton & Barto with prioritized sweeping, neuro-dynamic programming, value-iteration networks, and MuZero.\n",{"path":18260,"title":18261,"module":18253,"summary":18262},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-methods","Monte Carlo Methods","Monte Carlo methods learn value functions and optimal policies from complete sampled episodes, with no model of the environment: they simply average the returns that actually followed each state. We build prediction (first-visit and every-visit averaging), see why estimating action values forces the exploration question, and answer it two ways on-policy — exploring starts and epsilon-soft control. Throughout, Monte Carlo samples one whole trajectory to termination and never bootstraps.\n",{"path":18264,"title":18265,"module":18253,"summary":18266},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-off-policy","Monte Carlo Methods: Off-Policy Learning","On-policy Monte Carlo can only reach the best exploring policy, not the true optimum. Off-policy methods remove that ceiling by learning about a greedy target policy from data generated by a soft behavior policy, corrected with importance sampling. We derive the importance-sampling ratio, weigh ordinary against weighted estimators on real numbers, give the incremental off-policy algorithm, sharpen it with discounting-aware sampling, and close by placing Monte Carlo on the model\u002Fbootstrap map beside DP and temporal-difference learning.\n",{"path":18268,"title":18269,"module":18253,"summary":18270},"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftemporal-difference-learning","Temporal-Difference Learning","Temporal-difference learning is the one idea most central to reinforcement learning: learn a value directly from experience, like Monte Carlo, but update each guess toward the next guess before the episode ends, like dynamic programming. We derive the TD(0) prediction rule and its reward-prediction error, contrast its one-step backup with MC and DP, work the driving-home and random-walk examples, and show the batch-updating optimality that makes TD approximate the certainty-equivalence estimate.\n",{"path":18272,"title":18273,"module":18253,"summary":18274},"\u002Freinforcement-learning\u002Ftabular-methods\u002Ftd-control-sarsa-and-q-learning","TD Control: Sarsa, Q-learning, and Double Learning","With TD prediction in hand, control follows the generalized-policy-iteration pattern with TD as the evaluation step. We build Sarsa (on-policy), Q-learning (off-policy, targeting the optimal policy), and Expected Sarsa that spans the two, then confront the maximization bias every max-based method inherits and fix it with Double Q-learning. We close past Sutton & Barto, following each one-step tabular update into its deep-RL descendant — DQN, Double DQN, and Rainbow.\n",{"path":18276,"title":18277,"module":18253,"summary":18278},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-bootstrapping","n-Step Bootstrapping","Monte Carlo waits for the full return; one-step TD bootstraps after a single reward. Between them lies a whole spectrum, indexed by one integer n: look ahead n real rewards, then bootstrap from the value n steps out. The n-step return unifies the previous two lessons, and — on the random walk — an intermediate n beats both extremes. We build the n-step return, the n-step TD update, the backup-diagram spectrum, and n-step Sarsa for control.\n",{"path":18280,"title":18281,"module":18253,"summary":18282},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fn-step-off-policy-methods","n-Step Bootstrapping: Off-Policy Methods","Taking the n-step family off-policy raises the same importance-sampling questions Monte Carlo did, now over a window of exactly n actions. We reweight n-step returns by the policy ratio, watch the ratio product inflate variance on real numbers, then build the tree-backup algorithm that learns off-policy with no ratios at all — and finally n-step Q(sigma), one algorithm whose per-step switch recovers Sarsa, tree backup, and Expected Sarsa as special cases.\n",{"path":18284,"title":18285,"module":18253,"summary":18286},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-and-learning","Planning and Learning","Planning and learning are the same operation run on two kinds of experience. A model turns states and actions into simulated transitions; planning backs up values over that simulated experience exactly as learning backs them up over real experience. We build the Dyna architecture that interleaves acting, model-learning, direct RL, and planning in one loop, trace a single Dyna-Q step by hand, and patch the architecture for when the model goes stale.\n",{"path":18288,"title":18289,"module":18253,"summary":18290},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fplanning-focusing-and-decision-time","Planning: Focusing Updates and Decision-Time Search","Dyna plans by replaying remembered transitions, but sampling them uniformly wastes most of the effort. This lesson sharpens planning: prioritized sweeping works backward from states whose value just changed, expected versus sample updates weigh thoroughness against cost, and trajectory sampling and real-time DP focus updates on the states the policy actually visits. We trace Dyna forward to model-based deep RL, then turn to decision-time planning — heuristic search, rollouts, and Monte Carlo Tree Search.\n",{"path":18292,"title":18293,"module":18253,"summary":18294},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fdecision-time-planning","Decision-Time Planning","Planning need not build a global policy. Decision-time planning runs a fresh lookahead every time a state arrives and returns just one action, then throws the work away. We start from real-time dynamic programming — asynchronous value iteration on the states the agent actually visits — then move through heuristic search and rollout algorithms, each a one-step policy improvement applied on the fly to the current state.\n",{"path":18296,"title":18297,"module":18253,"summary":18298},"\u002Freinforcement-learning\u002Ftabular-methods\u002Fmonte-carlo-tree-search","Monte Carlo Tree Search","Monte Carlo Tree Search is a rollout algorithm with memory: it accumulates value estimates across simulations and steers later ones toward promising branches. We work through the four steps — selection, expansion, simulation, backup — the UCT selection rule computed on real numbers, the asymmetric growing tree, and the full pseudocode. We close past Sutton & Barto with the lineage from UCT to AlphaGo, AlphaZero, and MuZero, where a learned network stands in for the leaf value and the rollout.\n",{"path":18300,"title":18301,"module":18302,"summary":18303},"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-prediction","On-Policy Prediction with Approximation","Approximate Solution Methods","Every tabular method so far stored one number per state, which fails once the state space is large or continuous. We replace the table with a parameterized value function $\\hat v(s,\\mathbf{w})$, define the mean squared value error it should minimize under the on-policy distribution, and derive stochastic- and semi-gradient learning rules — the semi-gradient TD(0) update that bootstraps and so is not a true gradient. Linear methods make the analysis clean and give the TD fixed point; feature construction (polynomials, Fourier basis, coarse and tile coding, RBFs) supplies the vectors $\\mathbf{x}(s)$, and neural networks are the nonlinear bridge to deep RL.\n",{"path":18305,"title":18306,"module":18302,"summary":18307},"\u002Freinforcement-learning\u002Fapproximation\u002Ffeature-construction-and-nonlinear","Feature Construction and Nonlinear Approximation","Linear methods are only as good as the feature vectors $\\mathbf{x}(s)$ fed to them, and this lesson builds those vectors. Polynomials and the Fourier basis turn a state's coordinates into smooth global features; coarse coding, tile coding, and radial basis functions cover a continuous space with overlapping local receptive fields whose size sets the reach of generalization. Then we stop designing features by hand: a neural network learns the representation itself by gradient descent, trading the convergence guarantees of the linear case for expressiveness — the bridge to deep reinforcement learning.\n",{"path":18309,"title":18310,"module":18302,"summary":18311},"\u002Freinforcement-learning\u002Fapproximation\u002Fon-policy-control","On-Policy Control with Approximation","Prediction learned a value function from features; control learns to act. We carry semi-gradient methods over to action values $\\hat q(s,a,\\mathbf{w})$, giving episodic semi-gradient Sarsa and its n-step form, and solve Mountain Car by descending a cost-to-go surface. In the continuing case, function approximation makes discounting unable to affect which policy is best, so we replace it with the average-reward setting — the differential return, differential value functions, and differential semi-gradient Sarsa.\n",{"path":18313,"title":18314,"module":18302,"summary":18315},"\u002Freinforcement-learning\u002Fapproximation\u002Faverage-reward-control","Average-Reward Control for Continuing Tasks","With function approximation, discounting has no effect on a continuing task: averaged over the on-policy distribution, the discounted objective equals the average reward times a policy-independent constant, so $\\gamma$ cannot change which policy is best. This lesson replaces discounting with the average-reward setting — the long-run reward rate $r(\\pi)$, the differential return that measures each state's transient advantage over that rate, differential value functions and TD error, and differential semi-gradient Sarsa, the control method for continuing tasks that never invokes a discount factor.\n",{"path":18317,"title":18318,"module":18302,"summary":18319},"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-and-the-deadly-triad","Off-Policy Methods and the Deadly Triad","Off-policy learning with function approximation is where the convergence guarantees of reinforcement learning fail. We extend the tabular off-policy updates to semi-gradient form with per-step importance sampling, show Baird's counterexample driving the weights to infinity, and identify the cause: the deadly triad of function approximation, bootstrapping, and off-policy training — any two are safe, all three can diverge. The divergence is not caused by sampling noise: a fully synchronous dynamic-programming update blows up just the same, which is what makes the triad a structural hazard rather than a fluke.\n",{"path":18321,"title":18322,"module":18302,"summary":18323},"\u002Freinforcement-learning\u002Fapproximation\u002Fbellman-error-and-gradient-td","Value-Function Geometry and Gradient-TD Methods","Why does the deadly triad diverge, and how do you stop it? This lesson develops the geometry that explains the failure: value functions as vectors, the projection operator onto the representable subspace, and the split between the Bellman error, the value error, and the projected Bellman error: the three objectives have different minimizers. The projected Bellman error is the learnable one, and Gradient-TD methods (GTD2, TDC) do true stochastic gradient descent on it, staying stable even off-policy at $O(d)$ cost. Emphatic TD reweights states instead, and a survey of variance-reduction techniques closes the gap between stability and usable learning.\n",{"path":18325,"title":18326,"module":18302,"summary":18327},"\u002Freinforcement-learning\u002Fapproximation\u002Feligibility-traces","Eligibility Traces","n-step methods unify TD and Monte Carlo by storing the last n feature vectors; eligibility traces do the same job with a single short-term memory vector. The λ-return averages every n-step return under a geometric weighting; the forward view looks ahead to that average, and the backward view produces nearly the same updates online through a decaying trace vector. We build the λ-return, TD(λ) with its trace, the two ways λ recovers TD(0) and Monte Carlo, a note on the exact equivalence of true online TD(λ), and Sarsa(λ) for control.\n",{"path":18329,"title":18330,"module":18302,"summary":18331},"\u002Freinforcement-learning\u002Fapproximation\u002Ftrue-online-and-sarsa-lambda","True Online TD(λ) and Sarsa(λ)","Plain TD(λ) makes the forward and backward views nearly agree; this lesson closes the gap. True online TD(λ) uses a dutch trace and a small correction term to produce exactly the same weight sequence as the online λ-return algorithm, at the same memory and only a constant factor more compute — the sharpest statement of the forward\u002Fbackward duality. The whole apparatus then lifts to control unchanged: Sarsa(λ) threads a single delayed reward back along an entire trajectory in one sweep, and the λ-weighting reappears in modern deep RL as generalized advantage estimation.\n",{"path":18333,"title":18334,"module":18302,"summary":18335},"\u002Freinforcement-learning\u002Fapproximation\u002Fpolicy-gradient-methods","Policy Gradient Methods","Every method so far learned values and read a policy off them. Policy gradient methods drop the intermediary: parameterize the policy directly and climb the performance gradient. We build the softmax-in-preferences parameterization, prove the policy gradient theorem that makes the gradient computable without the unknown state distribution, and derive REINFORCE and its variance-cutting state-value baseline — the launch point for the bootstrapping actor-critic that follows.\n",{"path":18337,"title":18338,"module":18302,"summary":18339},"\u002Freinforcement-learning\u002Fapproximation\u002Factor-critic-and-continuous-actions","Actor-Critic Methods and Continuous Actions","REINFORCE with a baseline learns a value function but never bootstraps; this lesson adds the bootstrapping critic that completes the actor-critic architecture. The critic scores each transition into a single TD error that steers both the actor's policy step and its own value step, trading a little bias for much lower variance and fully online, continuing-task learning. The policy gradient theorem carries over unchanged to the average-reward setting, a Gaussian policy handles real-valued actions with self-tuning exploration, and the natural policy gradient leads straight to TRPO, PPO, and the deep actor-critic methods that train today's agents.\n",{"path":18341,"title":18342,"module":18302,"summary":18343},"\u002Freinforcement-learning\u002Fapproximation\u002Fleast-squares-and-memory-based-methods","Least-Squares TD","Semi-gradient TD spends one cheap step per example and needs many examples; this lesson makes the opposite tradeoff. Least-Squares TD (LSTD) accumulates the matrices $\\mathbf{A}$ and $\\mathbf{b}$ and solves the TD fixed point $\\mathbf{w} = \\mathbf{A}^{-1}\\mathbf{b}$ directly, using the Sherman-Morrison identity to maintain the inverse in $O(d^2)$ — the most data-efficient linear TD method, at a quadratic cost. We work a solve by hand, weigh the quadratic cost against semi-gradient TD's cheap steps, and note that LSTD never forgets — a problem in control, where least-squares policy iteration is the natural extension.\n",{"path":18345,"title":18346,"module":18302,"summary":18347},"\u002Freinforcement-learning\u002Fapproximation\u002Fmemory-and-kernel-methods","Memory-Based and Kernel Methods","Least-squares TD spent more compute to extract more from each example; this lesson drops the parametric form entirely. Memory-based methods store training examples untouched and answer a query locally at retrieval time — nearest neighbor, weighted average, locally weighted regression — so accuracy grows with the data and effort concentrates where the agent actually goes. Kernel-based methods weight stored examples by a similarity kernel $k(s,s')$, and every linear method turns out to be a kernel method. Interest and emphasis, finally, make the on-policy weighting itself a design choice, aiming scarce approximation capacity at the states that matter.\n",{"path":18349,"title":18350,"module":18302,"summary":18351},"\u002Freinforcement-learning\u002Fapproximation\u002Foff-policy-eligibility-traces","Off-Policy Eligibility Traces","Eligibility traces meet off-policy learning and function approximation — the corner where stability gets hard. We first let the bootstrapping and discounting parameters vary with state, so a single generalized return covers episodic and continuing tasks and folds termination into the discount. Then we fold the per-decision importance ratio into the trace with a control-variate correction, and build Watkins's Q(λ) and its importance-sampling-free successor Tree-Backup(λ) — all correct in expectation, but still semi-gradient, so the deadly triad and its fixes wait for the next lesson.\n",{"path":18353,"title":18354,"module":18302,"summary":18355},"\u002Freinforcement-learning\u002Fapproximation\u002Fstable-off-policy-traces","Stable Off-Policy Methods with Traces","Off-policy traces get the expected target right, but with $\\lambda \u003C 1$ they bootstrap, so off-policy plus bootstrapping plus function approximation is the deadly triad and the weights can diverge. This lesson carries the two one-step fixes to traces: GTD(λ) and GQ(λ) add a second weight vector and a gradient correction for true gradient descent on the projected Bellman error, while Emphatic TD(λ) reweights updates through a followon trace and interest to recover the on-policy stability. It closes with the implementation reality that traces are cheap because they are sparse, and with Retrace and V-trace — the clipped-ratio descendants that make off-policy traces work at deep-RL scale.\n",{"path":18357,"title":17675,"module":18358,"summary":18359},"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdeep-q-networks","Deep Reinforcement Learning","Deep Q-networks replace the linear value function with a neural network $Q(s,a;\\mathbf{w})$ and confront the fact that a nonlinear approximator, off-policy bootstrapping, and correlated online data — the deadly triad — make naive Q-learning diverge. DQN counters this empirically with two stabilizers: an experience replay buffer that decorrelates and reuses samples, and a periodically-frozen target network that fixes the bootstrap target. We derive the DQN loss and gradient, walk through the Atari convolutional architecture and its results, and then add the three refinements that define modern value-based deep RL — Double DQN, dueling networks, and prioritized experience replay.\n",{"path":18361,"title":18362,"module":18358,"summary":18363},"\u002Freinforcement-learning\u002Fdeep-rl\u002Fdqn-improvements","DQN Improvements: Double, Dueling, and Prioritized Replay","Three refinements that turn plain DQN into the standard modern value-based agent, each touching a different part of the system. Double DQN fixes the maximization bias in the target by splitting action selection from evaluation; dueling networks restructure the network around a state value and per-action advantages; prioritized replay changes which transitions are learned from. We close with Rainbow, which combines them, and the distributional view that predicts the whole return distribution rather than its mean.\n",{"path":18365,"title":18366,"module":18358,"summary":18367},"\u002Freinforcement-learning\u002Fdeep-rl\u002Factor-critic-and-ppo","Actor–Critic and GAE","Make the actor and the critic deep networks and the policy-gradient architecture becomes modern deep RL. We build the neural actor-critic, the advantage estimate that replaces the raw return, and Generalized Advantage Estimation as a λ-blend of n-step advantages, then the parallel-worker methods A3C and A2C that decorrelate on-policy data. The step-size constraints — trust regions, PPO, and the continuous-control family — follow in the next lesson.\n",{"path":18369,"title":18370,"module":18358,"summary":18371},"\u002Freinforcement-learning\u002Fdeep-rl\u002Fppo-and-continuous-control","PPO and Continuous Control","Keeping the policy-gradient step from destroying the policy, and the algorithms that result. Trust-region optimization bounds each update by a KL constraint; PPO keeps that goal but replaces the second-order machinery with a first-order clip on the probability ratio, which is why it is the modern default and the optimizer inside RLHF. We then tour the off-policy continuous-control family — DDPG, TD3, and SAC — and where actor-critic went at scale, from OpenAI Five to language-model alignment.\n",{"path":18373,"title":18374,"module":18358,"summary":18375},"\u002Freinforcement-learning\u002Fdeep-rl\u002Fcase-studies","Case Studies: Learning to Play","The game-playing systems that turned reinforcement learning from a theory into a track record: Samuel's checkers player, TD-Gammon, Watson's Daily-Double wagering, a reinforcement-learning memory controller, DQN, and AlphaGo through AlphaGo Zero. Read as a set they draw one line — a value function, learned by self-play or interaction, refined by search, carried by a deep network — that runs from a 1959 checkers program to superhuman Go.\n",{"path":18377,"title":18378,"module":18358,"summary":18379},"\u002Freinforcement-learning\u002Fdeep-rl\u002Frl-beyond-games","Reinforcement Learning Beyond Games","The same value-and-reward machinery, pointed at problems with no opponent. Web personalization as a contextual bandit and then a full MDP for life-time value; thermal soaring, where a glider learns to climb on turbulent air and reward design does most of the work; and the industrial-scale systems that carried the same design past Sutton & Barto — AlphaStar, OpenAI Five, GT Sophy, and RLHF, where the reward itself is learned from human preference.\n",{"path":18381,"title":18382,"module":18358,"summary":18383},"\u002Freinforcement-learning\u002Fdeep-rl\u002Ffrontiers","Frontiers: Beyond the Standard MDP","The standard MDP fixes three things — state, reward, and single-step actions — and this lesson loosens two of them. We generalize the value function into a general value function that predicts any signal, and use those predictions as auxiliary tasks that shape representations; we extend actions in time with the options framework; and we treat state as a construction the agent builds from a stream of observations. Reward design and the open problems follow in the next lesson.\n",{"path":18385,"title":18386,"module":18358,"summary":18387},"\u002Freinforcement-learning\u002Fdeep-rl\u002Freward-design-and-open-problems","Reward Design and Open Problems","How to design a reward signal that encodes the intended goal — sparse reward, shaping, and reward hacking — and the problems the whole tabular, approximate, and deep arc leaves unsolved. We close with how the frontiers were pushed after Sutton & Barto: auxiliary tasks, learned options, intrinsic-motivation bonuses, learned world models, and offline RL, then the two concerns of reward hacking and safety that any real-world agent must address.\n",{"path":18389,"title":18390,"module":18391,"summary":18392},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow","Sharpening DQN: Improvements and the Distributional Idea","Modern Deep Reinforcement Learning","In the years after the 2015 DQN paper, a stream of focused improvements each fixed one weakness of the baseline without disturbing its frame. This lesson recaps five that keep the scalar $Q$-value — Double DQN, multi-step returns, dueling networks, prioritized replay, and NoisyNets, each changing a different slot of the same Q-learning loop — then develops the sixth, distributional RL, which changes the objective itself: learn the whole return distribution $Z(s,a)$. We build the distributional Bellman equation and the C51 categorical algorithm, projection step and all, worked end to end on real numbers. A companion lesson takes up QR-DQN, Rainbow, and the modern distributional line.\n",{"path":18394,"title":18395,"module":18391,"summary":18396},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fdistributional-and-rainbow-part-2","Distributional RL and Rainbow","A companion to the DQN improvements lesson. C51 fixed the return atoms and learned their probabilities; QR-DQN does the reverse — fix the probabilities, learn the values — which removes the projection and trains with a quantile loss. We cover why the distribution helps even when you act on the mean, then assemble Rainbow: all six improvements in one Q-learning loop, with the component ablation that shows each one's real weight. The distributional line then runs on through IQN, FQF, and Agent57, the first agent to beat the human baseline on all 57 Atari games.\n",{"path":18398,"title":18399,"module":18391,"summary":18400},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control","Continuous Control: DDPG and TD3","When actions are real-valued, the $\\arg\\max_a Q(s,a)$ in Q-learning becomes an optimization problem on every step. This lesson builds the off-policy actor-critic family that sidesteps it: the deterministic policy gradient and DDPG, which replaces the max with a learned actor, and the three fixes of TD3 that counter the value overestimation DDPG inherits. A companion lesson takes up SAC's maximum-entropy objective and the methods built on this template.\n",{"path":18402,"title":18403,"module":18391,"summary":18404},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fcontinuous-control-part-2","Continuous Control: SAC and Beyond","A companion to the DDPG and TD3 lesson. Where those actors are deterministic and explore with bolted-on noise, soft actor-critic (SAC) changes the objective itself: maximize return plus the entropy of the policy, so exploration becomes intrinsic and the agent stays robust. We develop the maximum-entropy objective, the reparameterized squashed-Gaussian actor, and automatic temperature tuning, then survey the methods built on this off-policy template — distributional critics (D4PG), critic ensembles (REDQ), and control from pixels (DrQ, RAD).\n",{"path":18406,"title":18407,"module":18391,"summary":18408},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl","Model-Based Deep RL: Sample Efficiency and PETS","A model turns experience into imagined planning. This lesson makes the sample-efficiency case for learning a dynamics model, works through why a learned model's errors compound over the planning horizon, and builds the most direct model-based method: PETS plans online with a probabilistic ensemble under model-predictive control, distrusting the model exactly where its members disagree. A companion lesson takes up latent world models (Dreamer) and MuZero.\n",{"path":18410,"title":18411,"module":18391,"summary":18412},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmodel-based-rl-part-2","Model-Based Deep RL: World Models, Dreamer, and MuZero","A companion to the PETS lesson. PETS plans in the environment's native state space; these methods change what the model represents. World Models and Dreamer learn a compact latent state and do almost all their learning by imagining inside it, with value gradients flowing through the differentiable dynamics. MuZero predicts neither states nor pixels — only the reward, value, and policy that MCTS reads — and plans with search against that learned model, AlphaZero without the rules. We close with MBPO, TD-MPC, and EfficientZero.\n",{"path":18414,"title":18415,"module":18391,"summary":18416},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration","Exploration in Deep RL: Novelty as Reward","When the state space is enormous and reward is rare, ε-greedy amounts to a random walk that almost never reaches the first reward. This lesson scales the bandit's exploration ideas up to deep RL through the dominant approach — manufacture a reward for novelty and let the agent chase it: optimism and pseudo-counts from density models, and intrinsic motivation and curiosity (the Intrinsic Curiosity Module and Random Network Distillation). A companion lesson takes up posterior sampling, Go-Explore, and the modern methods.\n",{"path":18418,"title":18419,"module":18391,"summary":18420},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fexploration-part-2","Exploration in Deep RL: Posterior Sampling and Go-Explore","A companion to the novelty-as-reward lesson. Pseudo-counts and curiosity reward the unfamiliar after the agent stumbles into it; this lesson covers two ideas that go further. Bootstrapped DQN keeps an ensemble that approximates a posterior over value functions and explores by committing to one sampled hypothesis per episode — the deep, directed exploration ε-greedy cannot manage. Go-Explore remembers and returns to the frontier, defeating detachment and derailment to solve Montezuma's Revenge. We close with episodic memory (Never Give Up), Agent57, and model-based exploration.\n",{"path":18422,"title":18423,"module":18391,"summary":18424},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl","Offline RL: The Problem and Value-Based Fixes","Offline reinforcement learning learns a policy from a fixed logged dataset with no further environment interaction — off-policy learning pushed to the extreme, and it breaks for the extreme version of the same reason. Bootstrapping queries the value function at out-of-distribution actions the data never covers, those errors are optimistic, and with no online feedback to correct them they compound through the Bellman backup. This lesson sets up the failure and off-policy evaluation, then builds the first two families of pessimistic fixes: policy constraint (BCQ) and conservative value estimation (CQL). A companion lesson takes up implicit methods, model-based offline RL, and Decision Transformer.\n",{"path":18426,"title":18427,"module":18391,"summary":18428},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Foffline-rl-part-2","Offline RL: Implicit Methods, Sequence Models, and Beyond","A companion to the offline-RL problem lesson. Policy constraint and conservative value estimation both still query a learned value function; implicit methods (IQL) avoid querying it off the data at all, using an in-sample expectile backup. We then build pessimism into a learned model (MOPO, COMBO) and drop bootstrapping entirely with Decision Transformer's return-conditioned sequence modeling, closing with offline-to-online fine-tuning, diffusion planners, and the offline view of RLHF. The one rule throughout: without online correction, be pessimistic about what you cannot verify.\n",{"path":18430,"title":18431,"module":18391,"summary":18432},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl","Imitation Learning: Cloning, DAgger, and Inverse RL","When a reward is hard to specify but an expert is easy to watch, learn from demonstrations instead. Behavioral cloning treats control as supervised learning of the expert's state-to-action map, and fails through compounding error: small mistakes carry the agent off the expert's distribution, where it was never trained. DAgger fixes the mismatch by querying the expert on the learner's own states. Inverse RL instead recovers the reward the expert seems to optimize — an ill-posed problem that maximum-entropy IRL disambiguates. A companion lesson casts imitation as adversarial occupancy matching (GAIL, AIRL).\n",{"path":18434,"title":18435,"module":18391,"summary":18436},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fimitation-and-inverse-rl-part-2","Imitation as Adversarial Matching: GAIL and AIRL","A companion to the imitation-learning lesson. If the point of recovering a reward is only to re-run RL and match the expert, you can skip the reward and match the behavior directly. GAIL casts imitation as a GAN — a discriminator separating expert from learner state-action pairs supplies the reward a policy-gradient method optimizes — matching occupancy measures without ever naming a reward. AIRL reads a transferable reward back out of the discriminator. We compare all four methods and close with reward models in RLHF, scaled cloning, and diffusion policies.\n",{"path":18438,"title":18439,"module":18391,"summary":18440},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl","Multi-Agent RL: Markov Games and Centralized Training","With more than one learning agent in an environment, each agent's world becomes non-stationary because the others are changing too. This lesson builds the Markov-game generalization of the MDP, diagnoses non-stationarity as the central obstacle, shows why the naive baselines fail, and develops the dominant fix — centralized training with decentralized execution (MADDPG, VDN, QMIX). A companion lesson takes up self-play, the landmark game-playing systems, and the equilibrium concepts that define what \"solved\" means.\n",{"path":18442,"title":18443,"module":18391,"summary":18444},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmulti-agent-rl-part-2","Multi-Agent RL: Self-Play and Solution Concepts","A companion to the Markov-games lesson. In the purely competitive setting, an agent can generate its own training curriculum by playing against copies of itself — self-play, the method behind AlphaGo, OpenAI Five, and AlphaStar. We develop why self-play produces an ever-improving opponent, the systems it built, and then the equilibrium solution concepts (Nash, correlated, coarse-correlated) that define what \"solved\" means once there is an opponent, closing with PSRO, MAPPO, and the language-model-agent frontier.\n",{"path":18446,"title":18447,"module":18391,"summary":18448},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl","Hierarchical RL: Options and the Option-Critic","Flat RL cannot explore a long horizon: reaching reward through hundreds of primitive actions is exponentially unlikely, and every credit-assignment update crawls one step at a time. Hierarchy breaks one hard long-horizon problem into many short ones. This lesson develops temporal abstraction — the options framework and its semi-Markov view, and learning options end to end with the option-critic. A companion lesson takes up goal-conditioned manager\u002Fworker hierarchies (FeUdal Networks and HIRO), hindsight relabeling, and unsupervised skill discovery.\n",{"path":18450,"title":18451,"module":18391,"summary":18452},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fhierarchical-rl-part-2","Hierarchical RL: Goal-Conditioned Hierarchies and Skills","A companion to the options lesson. Options package a behavior; goal-conditioned hierarchies instead give the top level an explicit language of goals — a manager proposes a target state or a latent direction, and a worker is rewarded for reaching it (FeUdal Networks, HIRO). We develop that architecture, the hindsight relabeling that lets it learn from sparse reward, and unsupervised skill discovery (DIAYN) that learns a repertoire of behaviors with no reward at all. The shared idea throughout: shorten the horizon by inserting a level that decides less often.\n",{"path":18454,"title":18455,"module":18391,"summary":18456},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Frlhf-and-language-models","RLHF and Language Models","A language model trained to predict the next token is fluent but not helpful, honest, or harmless — the objective it was optimized for is not the objective we want. RLHF closes that gap by turning the one thing humans do reliably, comparing two outputs, into a reward. We build the three-stage pipeline: supervised fine-tuning, a Bradley-Terry reward model fit to preference pairs, then PPO against that reward with a KL penalty keeping it near the reference policy. We then cover reward hacking and why the KL penalty matters, Direct Preference Optimization, which folds the reward model into a single classification loss, and the RLAIF and verifiable-reward variants. This pipeline is what makes the largest models usable as assistants.\n",{"path":18458,"title":18459,"module":18391,"summary":18460},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps","Partial Observability: POMDPs and the Belief State","Drop the assumption that the agent sees the state. It sees an observation, a partial and noisy function of a hidden state, and one observation is no longer a Markov signal. This lesson builds the POMDP tuple, shows that the belief state — the posterior over hidden states — is a sufficient statistic that turns a POMDP back into an MDP over beliefs, and works the Bayes-filter belief update step by step. A companion lesson explains why exact planning is intractable and develops the deep-RL answer of recurrent, history-based policies.\n",{"path":18462,"title":18463,"module":18391,"summary":18464},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fpartial-observability-pomdps-part-2","Partial Observability: Planning and Recurrent Policies","A companion to the belief-state lesson. In principle a POMDP reduces to an MDP over beliefs; in practice two obstacles block that. Exact planning over the belief simplex is intractable — the value function is piecewise-linear-and-convex with a number of pieces that can explode — and computing the belief needs a model the agent rarely has. This lesson develops the intractability, the point-based approximations that address it, and the deep-RL answer: make the policy a function of history with a recurrent network (DRQN, R2D2), with frame-stacking, attention, and world-model latents as learned beliefs.\n",{"path":18466,"title":18467,"module":18391,"summary":18468},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl","Safe and Constrained RL: The CMDP and Policy Methods","Maximizing a scalar reward is not the same as behaving well: a capable optimizer will find and exploit any gap between the reward and what its designer actually meant, a failure called specification gaming or reward hacking. The remedy is to add explicit cost constraints — the constrained MDP — maximizing return subject to an expected-cost budget. This lesson builds the core toolkit: the CMDP itself, Lagrangian primal-dual methods that learn a multiplier on the constraint (RCPO), and constrained policy optimization (CPO) with its trust-region cost bound. A companion lesson covers risk-sensitivity, safe exploration, and the alignment framing.\n",{"path":18470,"title":18471,"module":18391,"summary":18472},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fsafe-and-constrained-rl-part-2","Safe RL: Risk, Safe Exploration, and Alignment","A companion to the constrained-MDP lesson. Constraining the mean cost is not enough: a policy safe on average can be catastrophic in the tail, and a policy safe at convergence can violate its limits wildly while learning. This lesson optimizes the tail with risk-sensitive objectives (CVaR), then makes exploration itself safe with shields, Lyapunov methods, and safety layers that project unsafe actions onto the feasible set — closing with benchmarks, safe RLHF, robustness, and the alignment framing that ties safety back to the problem of incompletely specified reward.\n",{"path":18474,"title":18475,"module":18391,"summary":18476},"\u002Freinforcement-learning\u002Fmodern-deep-rl\u002Fmeta-rl-and-generalization","Meta-RL and Generalization","An agent that masters one task often fails on the next; it has overfit to a single environment. This lesson treats fast adaptation as a meta-problem over a distribution of tasks: meta-train so that a few episodes at meta-test time suffice. We cover the two families — optimization-based (MAML learns an initialization) and context-based (RL-squared and PEARL infer a latent task) — the exploration cost of adaptation, and the parallel problem of generalization: why deep RL memorizes environments and what fixes it (domain randomization, procedural generation, augmentation, regularization). It closes on foundation models and sequence-model agents as the generalist endpoint.\n",{"path":18478,"title":18479,"module":18480,"summary":18481},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fpsychology-of-reinforcement","The Psychology of Reinforcement","Reinforcement Learning in Minds and Brains","Reinforcement learning is both an engineering method and a theory of how animals learn. The prediction\u002Fcontrol split of the algorithms mirrors the psychologist's split between classical and instrumental conditioning. We trace the correspondence: the Rescorla–Wagner model as a prediction-error rule that explains blocking, its real-time TD extension, Thorndike's Law of Effect behind trial-and-error control, and the habitual\u002Fgoal-directed distinction that maps onto model-free versus model-based learning.\n",{"path":18483,"title":18484,"module":18480,"summary":18485},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Finstrumental-conditioning-and-control","The Psychology of Reinforcement: Instrumental Control","Classical conditioning was prediction; instrumental conditioning is control. Thorndike's Law of Effect is trial-and-error control — selection plus association, search plus memory — and Skinner's shaping and schedules are reward engineering. The habitual\u002Fgoal-directed distinction maps onto model-free versus model-based control, dissociated by outcome devaluation and arbitrated by uncertainty. Delayed reinforcement is the credit-assignment problem, and the stimulus traces and secondary reinforcers of animal-learning theory are eligibility traces and value functions.\n",{"path":18487,"title":18488,"module":18480,"summary":18489},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-and-td-error","Dopamine and the TD Error","The TD error was invented as an algorithm; a decade later it turned out to closely describe the firing of the brain's dopamine neurons. We follow Schultz's experiments — dopamine fires at an unpredicted reward, shifts to the earliest predictive cue, and dips below baseline when a predicted reward is withheld — and match each result to the TD error term by term. We then read the basal ganglia as a neural actor–critic with dopamine as its shared training signal, and close on addiction as a hijacking of that signal.\n",{"path":18491,"title":18492,"module":18480,"summary":18493},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fdopamine-in-the-brain","Dopamine in the Brain: The Neural Actor–Critic","If phasic dopamine is a TD error, where does it go and what does it change? We follow the axons into the basal ganglia, read the corticostriatal synapse as the place where state, action, and error meet, and map the ventral and dorsal striatum onto the critic and the actor of an actor–critic. Addiction becomes a broken cancellation in the same learning signal, and distributional dopamine extends the scalar RPE into a population code.\n",{"path":18495,"title":18496,"module":18480,"summary":18497},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fanimal-learning-and-cognition","Animal Learning and Cognition","Three classic associative phenomena turn out to be reinforcement-learning mechanisms seen in behavior. Blocking says learning is driven by prediction error, not co-occurrence, and reduces to least-squares regression fitting a collinear feature. Higher-order conditioning and conditioned reinforcement make a value estimate a secondary reinforcer — bootstrapping in an animal. Delayed reinforcement is the credit-assignment problem, and the stimulus traces and goal gradients of Pavlov and Hull are eligibility traces and TD-learned value functions.\n",{"path":18499,"title":18500,"module":18480,"summary":18501},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fcognitive-maps-and-planning","Cognitive Maps and Model-Based Learning","Tolman's rats learned the layout of a maze with no reward, then used it the moment food appeared — latent learning, a cognitive map, and the behavioral face of model-based reinforcement learning. The map is learned by system identification (stimulus–stimulus associations), which fills in whether or not reward is present, and queried by planning, which re-solves a route from a single changed reward. The successor representation sits between cache and model, and hippocampal predictive maps and scaled-up world models carry the same idea into brain and machine.\n",{"path":18503,"title":18504,"module":18480,"summary":18505},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fneuroscience-of-reinforcement","The Neuroscience of Reinforcement","The dopamine story is one contact point between reinforcement learning and the brain; this lesson fills in the surrounding neuroscience so the mapping stands on its own. We build a working primer of neurons, synapses, and neuromodulation; separate four signals that casual usage conflates — reward, reinforcement, value, and prediction error; and read the actor and critic as corticostriatal synapses updated by two- and three-factor rules, grounded in spike-timing-dependent and reward-modulated plasticity.\n",{"path":18507,"title":18508,"module":18480,"summary":18509},"\u002Freinforcement-learning\u002Fminds-and-brains\u002Fseveral-learning-systems","The Brain's Several Learning Systems","The actor's three-factor rule has an ancestor in Klopf's hedonistic neuron — a single cell as a reinforcement-seeking agent — and a bacterium's run-and-twiddle shows the Law of Effect with no synapses at all. Teams of such neurons implement policy gradient collectively, the broadcast reward replacing backpropagation. And the brain is not only model-free: outcome devaluation, prefrontal value coding, and hippocampal forward sweeps localize a model-based system. The recurring conclusion is that the brain is several interacting learning systems, not one algorithm.\n",{"path":18511,"title":17667,"module":6,"summary":6},"\u002Freinforcement-learning",{"path":18513,"title":18514,"module":14862,"summary":18515},"\u002Fartificial-intelligence\u002Ffoundations\u002Fwhat-is-ai","What Is Artificial Intelligence?","Eight definitions of AI fall into a two-by-two grid: think versus act, and measure success against human performance versus an ideal standard of rationality. We work through all four schools — the Turing test, cognitive modelling, the laws of thought, and the rational agent — and adopt the last as the frame for the whole course: AI is the study and design of rational agents.\n",{"path":18517,"title":18518,"module":14862,"summary":18519},"\u002Fartificial-intelligence\u002Ffoundations\u002Ffoundations-of-ai","The Foundations of AI","Where the rational-agent idea came from and what surrounds it. AI inherited its core tools from eight older disciplines — philosophy, mathematics, economics, neuroscience, psychology, computer engineering, control theory, and linguistics. Its history runs in cycles of boom and winter, from the 1956 Dartmouth workshop through expert systems to the statistical turn. And the deep-learning era — AlexNet, the Transformer, GPT-3, AlphaGo — is a new way of computing the agent function at scale, not a new definition of AI.\n",{"path":18521,"title":18522,"module":14862,"summary":18523},"\u002Fartificial-intelligence\u002Ffoundations\u002Fintelligent-agents","Intelligent Agents","An agent perceives an environment through sensors and acts on it through actuators; its behavior is an agent function mapping percept sequences to actions. A rational agent chooses, for each percept sequence, the action that maximizes its expected performance measure given its knowledge. We build the first half of the vocabulary the whole course rests on — the agent function, rationality, PEAS task specifications, and the six axes along which task environments vary.\n",{"path":18525,"title":18526,"module":14862,"summary":18527},"\u002Fartificial-intelligence\u002Ffoundations\u002Fagent-architectures","Agent Architectures","How to build a program that computes a good agent function without storing an astronomically large lookup table. Four skeleton architectures in order of increasing power — simple reflex, model-based, goal-based, and utility-based — plus the learning agent that improves any of them, the scale of world representations (atomic, factored, structured) they rest on, and how a modern language-model agent fits the same frame.\n",{"path":18529,"title":18530,"module":18531,"summary":18532},"\u002Fartificial-intelligence\u002Fsearch\u002Funinformed-search","Uninformed Search","Search","A goal-based agent that cannot see which action is best turns the problem into a state space — an initial state, a set of actions, a transition model, a goal test, and a path cost — and searches for a sequence of actions reaching the goal. We build the state-space formulation on the 8-puzzle and route-finding, give the one TREE-SEARCH \u002F GRAPH-SEARCH skeleton every algorithm specializes, and measure strategies by completeness, optimality, and complexity. This lesson develops the first two frontier disciplines — breadth-first and uniform-cost search; the rest follow in the next lesson.\n",{"path":18534,"title":18535,"module":18531,"summary":18536},"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-strategies-compared","Search Strategies Compared","Breadth-first and uniform-cost search pay for optimality in memory. This lesson develops the strategies that trade memory for depth: depth-first search, which keeps only the current path; depth-limited and iterative-deepening search, which fix DFS's failure on infinite paths; and bidirectional search, which meets in the middle for a square-root saving. It closes by lining up all six uninformed strategies against completeness, optimality, and complexity, and tracing where the algorithms came from and where they went.\n",{"path":18538,"title":18539,"module":18531,"summary":18540},"\u002Fartificial-intelligence\u002Fsearch\u002Finformed-search","Informed Search and A*","An informed search uses a heuristic $h(n)$, an estimate of the cost from a node to the goal, to decide what to expand next. Greedy best-first search follows the heuristic blindly and gives up optimality; A* corrects it by ranking nodes on $f(n) = g(n) + h(n)$, and is optimal when the heuristic is admissible (tree search) or consistent (graph search). This lesson defines the heuristic, builds best-first search, and proves why A* is optimal, with the contour picture that explains its pruning. Where good heuristics come from is the next lesson.\n",{"path":18542,"title":18543,"module":18531,"summary":18544},"\u002Fartificial-intelligence\u002Fsearch\u002Fheuristic-functions","Heuristic Functions and Memory-Bounded Search","A* is only as good as its heuristic, so this lesson answers where good heuristics come from: relaxed problems, whose exact solution cost is an admissible heuristic, and pattern databases, which precompute subproblem costs. It measures heuristic quality with dominance and the effective branching factor, then tackles A*'s memory problem with IDA*, RBFS, and SMA*. It closes with modern heuristic search — weighted A*, learned and disjoint pattern-database heuristics, and bidirectional A*.\n",{"path":18546,"title":18547,"module":18531,"summary":18548},"\u002Fartificial-intelligence\u002Fsearch\u002Flocal-search","Local Search and Optimization","When the path to a goal is irrelevant and only the final state matters, we can discard the search tree entirely and keep just the current state, moving to a better neighbor at each step. This lesson builds the state-space landscape metaphor, works through hill climbing and the three obstacles that defeat it (local maxima, ridges, plateaus), then develops the first escapes: random restarts and simulated annealing with its temperature schedule. The population-based methods and continuous-space calculus follow in the next lesson.\n",{"path":18550,"title":18551,"module":18531,"summary":18552},"\u002Fartificial-intelligence\u002Fsearch\u002Fpopulation-and-continuous-search","Population and Continuous Search","Single-state local search escapes a trap by restarting or tolerating downhill moves. This lesson develops the alternatives that keep several states at once — local beam search, which shares successors across parallel threads, and genetic algorithms, which recombine two parents through crossover and mutation — then crosses into continuous spaces, where calculus replaces the finite neighbor set: gradient ascent, line search, and Newton's method. It closes with the industrial descendants of these methods and the loop they all share.\n",{"path":18554,"title":18555,"module":18531,"summary":18556},"\u002Fartificial-intelligence\u002Fsearch\u002Fadversarial-search","Adversarial Search and Games","When another agent plans against you, search becomes a game. We formalize two-player, zero-sum, perfect-information games as search problems, define the minimax value that optimal play backs up through the game tree, and give the MINIMAX algorithm that computes it. Alpha–beta pruning then cuts the cost of that search roughly in half in the exponent without changing the answer, and a heuristic evaluation function plus a cutoff test turns the exact algorithm into a real-time player that copes with the horizon effect.\n",{"path":18558,"title":18559,"module":18531,"summary":18560},"\u002Fartificial-intelligence\u002Fsearch\u002Fgames-of-chance-and-imperfect-information","Games of Chance and Imperfect Information","Minimax and alpha–beta assume a deterministic game both players can see in full. Drop either assumption and search must change. This lesson adds chance nodes and the expectiminimax value for games with dice, then belief-state reasoning for partially observable games — Kriegspiel and card games — where averaging over clairvoyance both helps and misleads. It closes with the line from Deep Blue's alpha–beta to AlphaGo's learned evaluation and Monte Carlo tree search, and the provable-pruning and self-play research around each end of that story.\n",{"path":18562,"title":18563,"module":18531,"summary":18564},"\u002Fartificial-intelligence\u002Fsearch\u002Fconstraint-satisfaction","Constraint Satisfaction Problems","A constraint satisfaction problem replaces the black-box state with a factored one: variables, domains, and constraints. That structure supports inference before any search runs. This lesson defines the CSP on map coloring, Sudoku, and scheduling, then develops constraint propagation: node and arc consistency, the AC-3 algorithm that makes a whole network arc-consistent, and the way one deleted value cascades across the graph to prune impossible options ahead of search.\n",{"path":18566,"title":18567,"module":18531,"summary":18568},"\u002Fartificial-intelligence\u002Fsearch\u002Fcsp-search-and-structure","CSP Search and Structure","Propagation prunes a CSP but rarely finishes it, so we search. This lesson builds backtracking search over partial assignments and the general-purpose heuristics that make it fast — MRV, degree, least-constraining-value, forward checking, MAC, and intelligent backtracking. It then shows how the shape of the constraint graph controls difficulty: tree-structured problems fall in linear time, cutset conditioning handles the rest, and min-conflicts local search solves a million queens in a constant number of steps.\n",{"path":18570,"title":18571,"module":18531,"summary":18572},"\u002Fartificial-intelligence\u002Fsearch\u002Fsearch-under-uncertainty","Search Under Uncertainty","Classical search assumes the agent knows the state it is in and exactly what each action does. Drop the second assumption and a plan can no longer be a fixed sequence of actions. This lesson develops the first response: AND-OR search over nondeterministic actions, which returns a branching contingency plan rather than a straight line. We build it on the erratic vacuum world, show how OR nodes (the agent's choices) alternate with AND nodes (nature's outcomes), trace the recursion that finds a plan, and handle the case where the only solution is a cyclic \"try, try again.\"\n",{"path":18574,"title":18575,"module":18531,"summary":18576},"\u002Fartificial-intelligence\u002Fsearch\u002Fbelief-state-and-online-search","Belief-State and Online Search","When the agent cannot see the full state, a plan can no longer test where it actually is — it must reason over the set of states it might be in. This lesson develops belief-state search, from sensorless (conformant) planning that coerces an unknown world into a goal, through the predict-observe-update cycle of contingent planning with percepts, to online search in unknown environments, where the agent must act in order to learn. It closes with LRTA*, which refines its own heuristic as it explores, one step from reinforcement learning.\n",{"path":18578,"title":18579,"module":18580,"summary":18581},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-logic","Logical Agents and Propositional Logic","Logic and Planning","A knowledge-based agent keeps a store of sentences and acts by asking it what to do. To make \"asking\" mean something we need entailment — the relation $KB \\models \\alpha$ that holds when every model of the knowledge base is a model of the query. Propositional logic gives a syntax and a truth-table semantics for which entailment is decidable. This first part builds the foundations: the agent loop, the Wumpus World, models and entailment, the connectives and truth tables, theorem proving by refutation, and the resolution rule with its CNF conversion — a single complete inference procedure for all of propositional logic.\n",{"path":18583,"title":18584,"module":18580,"summary":18585},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fpropositional-inference","Propositional Inference and Logical Agents","Model checking and resolution decide entailment, but both can blow up. This part turns propositional logic into a practical engine and a working agent. Horn clauses give linear-time forward and backward chaining — the basis of logic programming. DPLL and WalkSAT make satisfiability testing fast in the common case. Then we make the agent situated: time-indexed fluents, the frame problem and its solution by successor-state axioms, a hybrid agent that deduces a safe map and plans a route through it, and SATPlan, which finds a plan by asking a SAT solver for a satisfying model.\n",{"path":18587,"title":18588,"module":18580,"summary":18589},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic","First-Order Logic","Propositional logic can only say that facts hold; it cannot talk about the objects a fact is about, or state a rule once and have it cover every object. First-order logic fixes this by committing to a world of objects, relations, and functions. This first part builds the language from the ground up: the ontology it commits to, the model that gives a sentence a truth value, the syntax of terms and sentences, the two quantifiers with their standard mistakes, and equality.\n",{"path":18591,"title":18592,"module":18580,"summary":18593},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-logic-in-use","First-Order Logic in Use","With the language of first-order logic in hand, this part is about using it well. Database semantics trades expressive power for the convenience of a single intended model; higher-order logic shows what first-order logic gives up for decidability. Then we put the language to work: the Tell\u002FAsk interface, the kinship domain axiomatized from scratch, and the seven-step knowledge-engineering process applied to a digital circuit.\n",{"path":18595,"title":18596,"module":18580,"summary":18597},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Finference-and-resolution","Inference in First-Order Logic","Propositional inference lifts to first-order logic once we can make terms match. Unification is that machinery: the algorithm that finds the substitution making two expressions identical, and the basis of generalized modus ponens. This first part builds the lifted inference rules and the two chaining algorithms they drive — forward chaining, the data-driven procedure behind production systems and Datalog, and backward chaining, the goal-driven procedure behind Prolog.\n",{"path":18599,"title":18600,"module":18580,"summary":18601},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Ffirst-order-resolution","First-Order Resolution","Chaining is complete only for Horn knowledge bases. General first-order sentences — with disjunctive conclusions and negations — need a single sound and complete rule: resolution. This part converts arbitrary sentences to CNF by skolemizing away the existentials, lifts the resolution rule with unification, and proves entailment by refuting the negated goal. The result is the proof procedure Gödel's completeness theorem guarantees will find any entailment, together with the search strategies that make it usable.\n",{"path":18603,"title":18604,"module":18580,"summary":18605},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fclassical-planning","Classical Planning","Classical planning represents a problem in a factored language, PDDL: states are sets of ground fluents, and actions are lifted schemas with a precondition and an effect. That structure turns planning into search — forward through states or backward through goals — and lets a program read heuristics straight off the schemas by relaxing the problem. This first part develops the representation, the two search directions, and the domain-independent heuristics that come from ignoring preconditions or delete lists.\n",{"path":18607,"title":18608,"module":18580,"summary":18609},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-graphs-and-graphplan","Planning Heuristics and GraphPlan","Every relaxation heuristic can be inaccurate, and none can tell how far apart subgoals sit. The planning graph is a polynomial-size structure that does better: leveled off the problem, it yields admissible distance estimates and a record of which actions and fluents cannot coexist. This part builds the graph, reads heuristics from it, extracts plans with GraphPlan, and closes with the other classical approaches — SATPlan and partial-order planning — and the representational trade that makes all of it work.\n",{"path":18611,"title":18612,"module":18580,"summary":18613},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-in-the-real-world","Planning and Acting in the Real World","Classical planning's clean theory rests on four assumptions: time is ignored, actions are atomic, the world is deterministic and fully observable, and the agent is alone. This first part drops the first two. We add durations and resource constraints — turning a plan into a schedule, solved by the critical-path method and, once resources contend, by NP-hard job-shop scheduling — and let a planner reason at multiple levels of abstraction through high-level actions and their angelic reachable sets.\n",{"path":18615,"title":18616,"module":18580,"summary":18617},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fplanning-under-uncertainty","Planning Under Uncertainty","Classical planning assumed the world was deterministic, fully observable, and the agent alone. This part drops the last two assumptions. When the agent cannot see or predict the world, planning moves into belief-state space: sensorless plans that coerce the world into the goal without sensing, contingent plans that branch on what is sensed, and online agents that monitor and replan when execution diverges. Then we add other agents — joint plans, the coordination problem, and the conventions that let a team act without constant negotiation.\n",{"path":18619,"title":18620,"module":18580,"summary":18621},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Fknowledge-representation","Knowledge Representation","First-order logic gives you the language; this lesson is about what to say in it. This first part builds the content: a general upper ontology from the top down, categories as first-class objects with taxonomies and inheritance, physical composition and the count-noun\u002Fmass-noun split, events and time reified through the event calculus, and belief modeled with modal logic — the machinery for representing the world an agent reasons about.\n",{"path":18623,"title":18624,"module":18580,"summary":18625},"\u002Fartificial-intelligence\u002Flogic-and-planning\u002Freasoning-systems-and-defaults","Reasoning Systems and Default Logic","Having represented the world, this part is about reasoning with it at scale. Semantic networks give a graphical notation with fast inheritance; description logics keep subsumption and classification tractable by design. Then we confront the fact that most useful rules hold only by default: circumscription and default logic give a logical account of nonmonotonic reasoning, and truth maintenance systems retract conclusions cleanly when the beliefs beneath them change.\n",{"path":18627,"title":18628,"module":18629,"summary":18630},"\u002Fartificial-intelligence\u002Funcertainty\u002Fprobability-and-bayes","Quantifying Uncertainty","Uncertainty","Logic breaks down in any domain where the rules have exceptions you cannot enumerate — the qualification problem. Probability replaces truth values with degrees of belief that obey Kolmogorov's axioms, and the full joint distribution becomes a knowledge base from which any query is answered by summing entries: marginalization, conditioning, and normalization. Independence factors that joint into smaller pieces — the first step toward a calculus of rational belief that an agent can actually compute with.\n",{"path":18632,"title":18633,"module":18629,"summary":18634},"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayes-rule-and-naive-bayes","Bayes' Rule and Naive Bayes","Bayes' rule inverts a causal model into a diagnostic one, turning \"how a cause produces its symptoms\" into \"which cause explains what I observed.\" Ignoring the prior is the base-rate fallacy behind overconfident test results. Conditional independence then lets several pieces of evidence combine by multiplying likelihood ratios instead of building an exponential joint, giving the naive Bayes model and pointing directly at Bayesian networks.\n",{"path":18636,"title":18637,"module":18629,"summary":18638},"\u002Fartificial-intelligence\u002Funcertainty\u002Fbayesian-networks","Bayesian Networks","A Bayesian network is a directed acyclic graph of random variables in which each node carries a conditional probability table for itself given its parents. That structure factors the full joint distribution into a product of local terms, turning an exponential table into a linear one, and it makes the conditional independences of the domain explicit. We build the canonical burglary–alarm network, read compactness and d-separation off the graph, run exact inference by variable elimination, and, where that is intractable, estimate answers by sampling.\n",{"path":18640,"title":18641,"module":18629,"summary":18642},"\u002Fartificial-intelligence\u002Funcertainty\u002Finference-in-bayesian-networks","Bayesian Networks: Inference and Relational Models","When exact inference is intractable, sampling estimates the posterior instead: prior and rejection sampling, likelihood weighting, and Gibbs\u002FMCMC, whose error shrinks as one over the square root of the sample count. The same graphical idea then lifts from a fixed set of variables to whole populations — relational and open-universe probability models write dependencies once and unroll them over objects — and we close by placing probability against the rule-based, Dempster–Shafer, and fuzzy alternatives it displaced.\n",{"path":18644,"title":18645,"module":18629,"summary":18646},"\u002Fartificial-intelligence\u002Funcertainty\u002Freasoning-over-time","Probabilistic Reasoning over Time","A world that changes needs a state variable at every point in time. The Markov assumption cuts the dependence on history down to the previous slice, leaving a transition model and a sensor model that define a temporal Bayesian network. Four recursive tasks fall out — filtering, prediction, smoothing, and the most likely explanation — each a message passed along the sequence. We ground them in hidden Markov models and their matrix form, sketch the Kalman filter for continuous state, and reach dynamic Bayesian networks with particle filtering as the general approximate method.\n",{"path":18648,"title":18649,"module":18629,"summary":18650},"\u002Fartificial-intelligence\u002Funcertainty\u002Ftracking-and-data-association","Reasoning over Time: Tracking and Data Association","Dynamic Bayesian networks generalize HMMs and Kalman filters to arbitrarily many state variables per slice, and when exact inference blows up, particle filtering approximates the belief state with a population of weighted samples that propagate, reweight, and resample. Tracking several objects at once adds the data-association problem — which observation came from which object — whose combinatorics defeat any exact filter, so particle filters and MCMC keep many hypotheses alive. We close with SLAM and learned state-space models.\n",{"path":18652,"title":18653,"module":18629,"summary":18654},"\u002Fartificial-intelligence\u002Funcertainty\u002Fmaking-decisions","Making Decisions: Utility Theory","A rational agent chooses the action that maximizes expected utility — the probability of each outcome weighted by how much the agent wants it. We derive the utility function from six axioms on preferences, so maximizing expected utility is forced by consistency rather than assumed; look at risk aversion in the utility-of-money curve; package one-shot choices into decision networks; and quantify what an observation is worth with the value of information.\n",{"path":18656,"title":18245,"module":18629,"summary":18657},"\u002Fartificial-intelligence\u002Funcertainty\u002Fmarkov-decision-processes","When an agent must act repeatedly in a stochastic world, a fixed plan is useless — it needs a policy, an action for every state. The Markov decision process makes this precise with a transition model, a reward, and a discount factor; the Bellman equation characterizes the optimal state utilities, and value iteration and policy iteration solve it. Partial observability lifts the problem to belief states, and bandits, Monte-Carlo tree search, and scalable POMDP solvers extend it — this is the model-known half of reinforcement learning.\n",{"path":18659,"title":18660,"module":18629,"summary":18661},"\u002Fartificial-intelligence\u002Funcertainty\u002Fdecision-networks-and-game-theory","Decision Analysis: Multi-Attribute Utility and Decision Networks","Decision analysis takes the single-agent utility framework and makes it practical: utility over several attributes, dominance and additive value functions, influence diagrams that fold Bayesian networks together with decision and utility nodes, and the value of information that tells an agent which questions are worth asking. Structure in an agent's preferences — dominance, preferential and utility independence — collapses an exponential utility table into a few one-dimensional functions, the same move that made Bayesian networks compact.\n",{"path":18663,"title":18664,"module":18629,"summary":18665},"\u002Fartificial-intelligence\u002Funcertainty\u002Fgame-theory-and-mechanism-design","Game Theory and Mechanism Design","When outcomes depend on other rational agents, single-agent utility maximization no longer suffices. Game theory studies decisions among agents — normal-form games, dominant strategies, Nash and maximin equilibria, and repeated games — and mechanism design runs the logic backwards, engineering rules (auctions, VCG) so that self-interested play produces a good collective outcome. Algorithmic game theory then asks whether equilibria can be computed, what selfishness costs society, and how the mechanisms deployed at internet scale actually behave.\n",{"path":18667,"title":18668,"module":18669,"summary":18670},"\u002Fartificial-intelligence\u002Flearning\u002Flearning-from-examples","Learning from Examples","Learning","An agent that improves with experience does not need its designer to anticipate every situation. Inductive learning takes that ambition and narrows it to one tractable problem: from labelled input-output pairs, recover a function that predicts the output for inputs never seen. This first part builds the foundation around a single organizing question — generalization — through decision trees and information gain, and the training\u002Fvalidation\u002Ftest discipline for evaluating and choosing hypotheses. A second part takes up the theory of learning and the main model families.\n",{"path":18672,"title":18673,"module":18669,"summary":18674},"\u002Fartificial-intelligence\u002Flearning\u002Ftheory-and-model-families","The Theory of Learning and Model Families","Cross-validation measures generalization but does not explain it. This part supplies the theory — PAC learning, sample complexity, and the VC dimension — that says when a hypothesis consistent with enough data is probably approximately correct, and why an unrestricted hypothesis space can never generalize. It then surveys the model families a practitioner reaches for: linear regression and gradient descent, the perceptron and logistic regression, support vector machines and the kernel trick, and ensembles by bagging and boosting — closing with what deep learning changed about the classical picture.\n",{"path":18676,"title":18677,"module":18669,"summary":18678},"\u002Fartificial-intelligence\u002Flearning\u002Fprobabilistic-learning","Learning Probabilistic Models","A [Bayesian network](\u002Fartificial-intelligence\u002Funcertainty\u002Fbayesian-networks) is useless until its numbers are filled in, and those numbers come from data. This first part casts learning itself as probabilistic inference: hypotheses carry a prior, data update it to a posterior, and predictions average over what remains. From that frame fall the standard estimators — maximum likelihood by counting, MAP with a conjugate prior, full Bayesian updating — for the case where every variable is observed. A second part takes up the harder case of hidden variables and the EM algorithm.\n",{"path":18680,"title":18681,"module":18669,"summary":18682},"\u002Fartificial-intelligence\u002Flearning\u002Fexpectation-maximization","Learning with Hidden Variables: The EM Algorithm","Complete data can be learned by counting; real data usually hide some variables — the disease behind the symptoms, the cluster behind the points. This part develops the expectation-maximization algorithm, which learns those models by alternating an expected completion of the missing data with a re-estimation of the parameters. It works the idea through mixtures of Gaussians, Bayesian networks, and hidden Markov models, proves the monotone-likelihood guarantee from the evidence lower bound, and traces the line from EM to variational inference and the variational autoencoder.\n",{"path":18684,"title":17667,"module":18669,"summary":18685},"\u002Fartificial-intelligence\u002Flearning\u002Freinforcement-learning","Reinforcement learning is an MDP with the model unknown: the agent knows neither how its actions move the world nor which states are rewarded, and must recover good behaviour from experienced transitions and rewards alone. This first part builds the classical tabular theory — passive learning (fix a policy, learn its value, by direct estimation, adaptive dynamic programming, and temporal differences) and active learning (choose actions, trade exploration against exploitation, and learn control with Q-learning and SARSA). A second part lifts it off the lookup table with function approximation and policy search.\n",{"path":18687,"title":18688,"module":18669,"summary":18689},"\u002Fartificial-intelligence\u002Flearning\u002Fgeneralization-and-policy-search","Reinforcement Learning: Generalization and Policy Search","Tabular reinforcement learning stores one number per state, which is hopeless for backgammon or chess. This part lifts RL off the lookup table with function approximation, so that updating one state generalizes to related ones, then turns to policy search — representing and optimizing the policy directly, up to the REINFORCE policy gradient and correlated sampling. It closes with the bridge to deep reinforcement learning (deep Q-networks, actor-critic, PPO), the classic applications, and the hand-off to the dedicated RL subject.\n",{"path":18691,"title":18692,"module":18669,"summary":18693},"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-in-learning","Knowledge in Learning","Pure induction learns a function from labelled examples while knowing almost nothing to begin with. This first part brings prior knowledge into the loop by recasting learning as logical inference — hypotheses, examples, and classifications as sentences. It develops current-best-hypothesis search, the version space and its general\u002Fspecific boundary maintained by candidate elimination, and states the three entailment constraints that fix how background knowledge enters. A second part builds the three knowledge-based methods those constraints define.\n",{"path":18695,"title":18696,"module":18669,"summary":18697},"\u002Fartificial-intelligence\u002Flearning\u002Fknowledge-based-learning-methods","Knowledge-Based Learning: EBL, Relevance, and ILP","Once learning is cast as logical inference, three methods follow from the three ways prior knowledge can enter. Explanation-based learning generalizes a single example by explaining it with the domain theory, gaining speed but nothing new. Relevance-based learning uses determinations to shrink the hypothesis space and converge from fewer examples. Inductive logic programming learns genuinely new first-order rules — top-down with FOIL, bottom-up by inverting resolution, even inventing new predicates — and connects to modern statistical relational and neuro-symbolic learning.\n",{"path":18699,"title":18700,"module":18701,"summary":18702},"\u002Fartificial-intelligence\u002Ffrontiers\u002Fvision-and-perception","Vision and Perception","Frontiers","Perception connects an agent to the physical world. We follow one modality — vision — from the physics of image formation (the pinhole camera, perspective projection, lenses, shading, color) through the early operations that turn a pixel array into edges, texture, and motion, and into recognition by appearance. The recurring problem is inversion: a camera collapses a 3-D world onto a 2-D grid, and an agent that wants to act must build the scene back up. Rebuilding the scene is the subject of the companion lesson.\n",{"path":18704,"title":18705,"module":18701,"summary":18706},"\u002Fartificial-intelligence\u002Ffrontiers\u002Freconstructing-the-3d-world","Vision: Reconstructing the 3D World","A camera collapses a three-dimensional world onto a flat grid; this lesson inverts that collapse. We build the camera projection matrix (intrinsics and extrinsics), triangulate a point from two views, then work through the toolbox of depth cues — motion parallax, binocular stereopsis, multiple views, texture, shading, and contour — that turn an ambiguous image back into a scene. We add structural recognition (pictorial-structure \"cardboard people\"), the task-driven use of vision in cars and robots, and the shift from hand-built pipelines to learned deep-vision networks.\n",{"path":18708,"title":18709,"module":18701,"summary":18710},"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobotics","Robotics","A robot is an agent with a body: sensors that read the physical world and effectors that push back on it. This lesson grounds the abstract AI machinery in that body. We build up the hardware (range finders, proprioception, degrees of freedom), then cast perception as probabilistic filtering — the kinematic motion and sensor models, Monte Carlo localization, the extended Kalman filter, and simultaneous localization and mapping (SLAM). The companion lesson takes the estimated pose forward into planning and control.\n",{"path":18712,"title":18713,"module":18701,"summary":18714},"\u002Fartificial-intelligence\u002Ffrontiers\u002Frobot-planning-and-control","Robotics: Planning and Control","A robot that knows where it is still has to decide how to move, and then make a slipping, sensing-imperfect body actually go there. This lesson takes the pose estimate forward: planning motion in configuration space with cell decomposition and sampling-based roadmaps (PRMs and RRTs), planning under uncertainty with most-likely-state and online replanning, closing the loop with P\u002FPD\u002FPID control and potential fields, and finally the software architectures — subsumption, three-layer, and pipeline — that assemble it all, plus the learning-based turn in modern robotics.\n",{"path":18716,"title":18717,"module":18701,"summary":18718},"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnatural-language-in-ai","Natural Language for AI Agents","Language is how agents acquire the knowledge already written down and how they communicate with the humans they serve. This lesson gives the classical AI account of language as a source of information: n-gram language models and the information-seeking tasks built on them — text classification, information retrieval (BM25, the inverted index, PageRank), and information extraction with finite-state templates and hidden Markov models. Throughout, we point to the dedicated NLP subject for the modern deep-learning treatment; the companion lesson takes up grammar, translation, and speech.\n",{"path":18720,"title":18721,"module":18701,"summary":18722},"\u002Fartificial-intelligence\u002Ffrontiers\u002Fnlp-grammar-translation-and-speech","Language for AI Agents: Grammar, Translation, and Speech","N-gram models see only a local window; they cannot say why \"black dog\" is well-formed English and \"dog black\" is not, because that is a fact about structure. This lesson takes up structure: phrase-structure and probabilistic context-free grammars, syntactic analysis by chart parsing and CYK, augmented grammars and compositional semantics, then the two major statistical successes — machine translation and speech recognition — cast as noisy-channel problems. It closes with the bridge from n-grams to transformers and where the classical account sits relative to modern NLP.\n",{"path":18724,"title":18725,"module":18701,"summary":18726},"\u002Fartificial-intelligence\u002Ffrontiers\u002Fphilosophy-and-future","Philosophy, Ethics, and the Future of AI","Two questions have shadowed the field since its founding: can machines act intelligently (weak AI), and can they really think (strong AI)? We work through Turing's objections and their rebuttals — the arguments from disability, mathematics, and informality — then the strong-AI debate: the mind-body problem, functionalism and the brain prosthesis, Searle's Chinese Room and the systems reply, and consciousness and qualia. The companion lesson turns from what AI can do to what it should, and closes the course.\n",{"path":18728,"title":18729,"module":18701,"summary":18730},"\u002Fartificial-intelligence\u002Ffrontiers\u002Fai-ethics-and-future","The Ethics and Future of AI","Having asked whether machines can act intelligently and really think, we turn to whether we should build them at all. This lesson works through the six ethical risks — lost jobs, autonomous weapons, surveillance and privacy, biased decisions, the safety of superintelligence, and the erosion of accountability — then the value-alignment problem in the LLM era, and where the classical agent components could go next. It closes the course by tying search, logic, probability, and learning into a single picture of intelligence as rational agency.\n",{"path":18732,"title":18733,"module":6,"summary":6},"\u002Fartificial-intelligence","Artificial Intelligence",{"path":18735,"title":18736,"module":18737,"summary":18738},"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-constituents-nuclide-chart","Nuclear Composition and Ground-State Properties","Nuclear Properties","The nucleus is a bound assembly of Z protons and N neutrons packed to a radius R = R0 A^(1\u002F3) at a nearly constant density of about 10^17 kg\u002Fm^3. We fix the vocabulary of nuclides, derive nuclear size from mirror-nuclide and electron-scattering data, read the binding-energy-per-nucleon curve, and model it with the liquid-drop semiempirical mass formula.\n",{"path":18740,"title":18741,"module":18737,"summary":18742},"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-size-charge-distributions","Nuclear Size, Shape, and Charge Distributions","Elastic electron scattering resolves the nucleus by its de Broglie wavelength. The measured cross section is the Mott point-charge cross section modulated by a form factor, and that form factor is the Fourier transform of the charge density. Diffraction minima fix the radius, the small-angle slope fixes the mean-square radius, and the fitted Woods-Saxon profile gives a central density and a skin thickness. Mirror-nucleus Coulomb energies, muonic-atom X-rays, and optical isotope shifts give independent radii that all track R = R0 A^(1\u002F3).\n",{"path":18744,"title":18745,"module":18737,"summary":18746},"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-masses-binding-energy","Nuclear Masses, Mass Excess, and Separation Energies","The atomic mass unit fixes the scale, and the mass excess collects the small binding-driven deviation from the integer mass number. Penning-trap cyclotron frequencies now measure masses to parts in a billion, and every decay and reaction Q-value is a difference of these masses. One- and two-nucleon separation energies read the binding difference between neighbouring nuclides directly, showing the even-odd pairing stagger and the sharp drops at magic numbers, and their vanishing marks the neutron and proton drip lines that bound the chart of the nuclides.\n",{"path":18748,"title":18749,"module":18737,"summary":18750},"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fsemi-empirical-mass-formula","The Semi-Empirical Mass Formula and the Valley of Stability","Five physical terms reproduce nuclear binding across the chart: a volume term from saturation, a surface term from the deficit of edge neighbours, a Coulomb term from the electrostatic self-energy of a charged sphere, an asymmetry term from the Pauli cost of unequal proton and neutron filling, and a pairing term. The formula is quadratic in Z at fixed A, so isobars lie on a mass parabola whose minimum sets the most stable charge and whose slope dictates the direction of beta decay. The same competition between surface and Coulomb energy defines the fissility parameter and the onset of fission.\n",{"path":18752,"title":18753,"module":18737,"summary":18754},"\u002Fnuclear-physics\u002Fnuclear-properties\u002Fnuclear-moments-multipoles","Nuclear Spin, Magnetic Dipole, and Electric Quadrupole Moments","The ground state of a nucleus carries a definite spin and parity, a magnetic dipole moment of order the nuclear magneton, and, when its spin exceeds one-half, an electric quadrupole moment that measures its shape. The single-particle Schmidt lines predict the magnetic moment of an odd-A nucleus from the last unpaired nucleon, and the measured moments fall between them. The quadrupole moment distinguishes prolate from oblate deformation, and hyperfine structure is the experimental handle that fixes the spin and the moments from an atomic spectrum.\n",{"path":18756,"title":18757,"module":18758,"summary":18759},"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnuclear-force-shell-overview","The Nuclear Force and the Shell Model","The Nuclear Force","The strong force between nucleons is short-range, charge-independent, saturated, and repulsive at its core, about a hundred times stronger than Coulomb. Yukawa explained it as an exchange of massive mesons, tying the force's range to the meson mass through the uncertainty principle. Layered on top, an independent-particle shell model with strong spin-orbit coupling reproduces the magic numbers 2, 8, 20, 28, 50, 82, 126.\n",{"path":18761,"title":18762,"module":18758,"summary":18763},"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fthe-deuteron","The Deuteron and the Tensor Force","The deuteron is the only bound two-nucleon state: one shallow level at 2.22 MeV, no excited states. A square-well fit fixes a depth near 35 MeV over a 2 fm range, yet the wavefunction leaks so far past the edge that most of the probability lies outside the force. Its spin-1 ground state, magnetic moment close to the sum of the free-nucleon moments, and small but nonzero electric quadrupole moment together force a D-state admixture and a non-central tensor force.\n",{"path":18765,"title":18766,"module":18758,"summary":18767},"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fnucleon-nucleon-scattering","Nucleon-Nucleon Scattering and the Interaction's Structure","Scattering probes the nuclear force above threshold. Partial-wave analysis reduces low-energy data to a single s-wave phase shift, and the effective-range expansion packages that into a scattering length and an effective range. The triplet channel binds (the deuteron) while the singlet is only virtual, which together explain the anomalously large free neutron-proton cross section. Comparing pp, nn, and np results establishes charge symmetry and charge independence, and polarization experiments expose the spin-orbit and tensor pieces.\n",{"path":18769,"title":18770,"module":18758,"summary":18771},"\u002Fnuclear-physics\u002Fnuclear-force-deuteron\u002Fmeson-theory-isospin","Meson Exchange, the Yukawa Potential, and Isospin","Yukawa's massive-field propagator turns the range of the nuclear force into a meson mass: the exchanged quantum's Compton wavelength is the range. One-pion exchange fixes the long-range tail, complete with the tensor structure the deuteron demanded, while heavier mesons build the intermediate attraction and the repulsive core. Charge independence becomes an isospin symmetry, the force is diagonalized by the total isospin through a tau-dot-tau interaction, and the whole picture sits inside QCD as a residual color force between color-neutral nucleons.\n",{"path":18773,"title":18774,"module":18775,"summary":18776},"\u002Fnuclear-physics\u002Fnuclear-models\u002Ffermi-gas-model","The Fermi Gas Model","Nuclear Models","Treating the nucleus as two degenerate Fermi gases of protons and neutrons confined in a common well fixes the Fermi momentum near 250 MeV\u002Fc and the Fermi energy near 33 MeV from the nuclear density alone. The average kinetic energy per nucleon is about 20 MeV, the well depth is the Fermi energy plus the separation energy, and unequal proton and neutron Fermi levels reproduce the asymmetry term of the mass formula.\n",{"path":18778,"title":18779,"module":18775,"summary":18780},"\u002Fnuclear-physics\u002Fnuclear-models\u002Fliquid-drop-collective-coordinates","The Liquid-Drop Model and Collective Deformation","Deforming a charged liquid drop into a spheroid raises its surface energy and lowers its Coulomb energy; the two effects compete through the deformation parameter to set a stability minimum and a fission barrier. The ratio of Coulomb to twice the surface energy is the fissility Z-squared over A, which crosses one near 49 and marks the point where the sphere is unstable. The same surface tension that restores small deformations quantizes into collective vibrations, carrying the static mass formula into dynamic collective motion.\n",{"path":18782,"title":18783,"module":18775,"summary":18784},"\u002Fnuclear-physics\u002Fnuclear-models\u002Fshell-model-single-particle","The Shell Model: Single-Particle States and Spin-Orbit Coupling","A harmonic-oscillator well reproduces the first three magic numbers but fails above twenty; adding a strong inverted spin-orbit term that drives the stretched j equals l plus one-half level down closes the gaps at 28, 50, 82, and 126. The filled shells couple to zero, so the last unpaired nucleon fixes the ground-state spin and parity, and its single-particle magnetic moment falls on the Schmidt lines. Configuration mixing sets the limits of the extreme single-particle model.\n",{"path":18786,"title":18787,"module":18775,"summary":18788},"\u002Fnuclear-physics\u002Fnuclear-models\u002Fcollective-model-rotations-vibrations","The Collective Model: Rotations, Vibrations, and Deformed Nuclei","Deformed nuclei rotate with energies proportional to I times I plus one, giving the ground-state band its characteristic level ratios, while near-spherical nuclei vibrate in quantized surface phonons that build one- and two-phonon multiplets. The Nilsson model tracks single-particle levels as the well deforms, moments of inertia fall between the rigid and irrotational limits, backbending marks the sudden alignment of a broken pair, and giant resonances are the bulk dipole and quadrupole modes of the whole nucleus.\n",{"path":18790,"title":18791,"module":18792,"summary":18793},"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-law-modes","Radioactivity and Decay Modes","Radioactive Decay","Unstable nuclei decay at a rate proportional to how many remain, giving the exponential law N(t) = N0 e^(-lambda t) with half-life t = 0.693\u002Flambda. We work through the three common modes: alpha decay as Coulomb-barrier tunneling with the Geiger-Nuttall rule, beta decay whose continuous spectrum demands the neutrino, and gamma de-excitation, and follow a decay chain across the chart of nuclides.\n",{"path":18795,"title":18796,"module":18792,"summary":18797},"\u002Fnuclear-physics\u002Fradioactive-decay\u002Fdecay-kinetics-equilibrium","Serial Decay, the Bateman Equations, and Radioactive Equilibrium","A radioactive parent that decays into a radioactive daughter obeys a coupled pair of rate equations whose solution is the Bateman formula. Depending on the half-life ordering the chain settles into secular equilibrium (equal activities), transient equilibrium (a fixed activity ratio), or no equilibrium. Constant production under irradiation drives the activity toward a saturation value equal to the production rate, competing decay modes split the total decay constant into partial constants, and the natural decay series in secular equilibrium underpin radiometric dating.\n",{"path":18799,"title":18800,"module":18801,"summary":18802},"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-decay-gamow-theory","Alpha Decay and the Gamow Theory of Tunneling","Alpha Decay","The alpha Q-value turns positive above mass number 150 because the emitted helium-4 is exceptionally tightly bound. Emission proceeds by quantum tunneling through the Coulomb barrier: a WKB integral from the nuclear surface to the outer turning point gives the Gamow factor, and multiplying its penetrability by the assault frequency yields half-lives spanning more than twenty orders of magnitude. The leading term reproduces the Geiger-Nuttall relation, log t½ proportional to the daughter charge over the square root of Q.\n",{"path":18804,"title":18805,"module":18801,"summary":18806},"\u002Fnuclear-physics\u002Falpha-decay\u002Falpha-fine-structure-hindrance","Fine Structure, Angular Momentum, and Hindrance Factors","A single parent emits several alpha groups of slightly different energy, each feeding a distinct level of the daughter, so the alpha spectrum maps the daughter's low-lying states. Emission with orbital angular momentum L raises the barrier by a centrifugal term and is allowed only when angular-momentum and parity selection rules permit. Comparing the measured partial half-life to the Gamow estimate defines a hindrance factor near unity for even-even ground-state transitions and large for odd-A decays that must rearrange the unpaired nucleon.\n",{"path":18808,"title":18809,"module":18810,"summary":18811},"\u002Fnuclear-physics\u002Fbeta-decay\u002Fbeta-decay-energetics-neutrino","Beta Decay Energetics and the Neutrino","Beta Decay and the Weak Interaction","Beta decay converts a neutron into a proton or the reverse, adjusting Z at fixed A along an isobaric mass parabola. We write the three processes (beta-minus, beta-plus, electron capture), reduce every Q-value to a difference of neutral atomic masses, and read the continuous electron spectrum as the fingerprint of a third, nearly massless particle. Pauli's neutrino, its detection by Reines and Cowan, and the endpoint bound on its mass close the lesson.\n",{"path":18813,"title":18814,"module":18810,"summary":18815},"\u002Fnuclear-physics\u002Fbeta-decay\u002Ffermi-theory-beta-decay","Fermi's Theory: Kurie Plots and ft Values","Fermi treated beta decay as a point-contact weak transition and read its rate from the golden rule. The electron spectrum then follows from phase space and the Coulomb Fermi function; the Kurie plot straightens it to a line whose intercept is the endpoint. Integrating the spectrum gives the comparative half-life ft, whose logarithm sorts transitions into superallowed, allowed, and forbidden classes governed by the Fermi and Gamow-Teller selection rules.\n",{"path":18817,"title":18818,"module":18810,"summary":18819},"\u002Fnuclear-physics\u002Fbeta-decay\u002Fweak-interaction-parity-violation","The Weak Interaction and Parity Violation","Beta decay violates mirror symmetry. The Wu experiment on polarized cobalt-60 showed electrons emitted preferentially against the nuclear spin, a pseudoscalar correlation forbidden if parity were conserved. The result fixes the weak charged current as left-handed V minus A, forces neutrinos to be left-handed and antineutrinos right-handed (measured by Goldhaber), and places beta decay within the electroweak theory as W-boson exchange turning a down quark into an up quark.\n",{"path":18821,"title":18822,"module":18810,"summary":18823},"\u002Fnuclear-physics\u002Fbeta-decay\u002Fdouble-beta-decay-neutrino-mass","Double Beta Decay and Neutrino Mass","For even-A isobars the pairing term splits the mass parabola into two curves, and a handful of even-even nuclides sit below their odd-odd neighbor yet above the next even-even one: single beta decay is forbidden but second-order double beta decay is allowed. The two-neutrino mode is a standard-model process with the longest measured lifetimes in nature; the neutrinoless mode would require the neutrino to be its own antiparticle and its rate measures the effective Majorana mass, the sharpest probe of the absolute neutrino mass scale.\n",{"path":18825,"title":18826,"module":18827,"summary":18828},"\u002Fnuclear-physics\u002Fgamma-decay\u002Fgamma-multipole-radiation","Multipole Radiation and Selection Rules","Gamma Decay","Gamma decay carries a nucleus from an excited state to a lower one by emitting a photon of definite angular momentum and parity. We correct the photon energy for nuclear recoil, expand the radiation field into electric and magnetic multipoles, and read off how the transition rate collapses with each increase in multipole order. The Weisskopf single-particle estimates set the scale, and angular-momentum and parity conservation fix which multipole dominates.\n",{"path":18830,"title":18831,"module":18827,"summary":18832},"\u002Fnuclear-physics\u002Fgamma-decay\u002Finternal-conversion-isomers","Internal Conversion and Isomers","A nucleus can shed excitation energy without emitting a photon by handing it directly to an atomic electron. We define the internal-conversion coefficient, trace its growth with atomic number, multipole order, and decreasing energy, and treat the electron-only E0 transitions and internal pair formation. When the lowest allowed multipole is high and the energy low, the gamma rate falls so far that the excited state survives as a metastable isomer.\n",{"path":18834,"title":18835,"module":18827,"summary":18836},"\u002Fnuclear-physics\u002Fgamma-decay\u002Fangular-correlations-mossbauer","Angular Correlations and the Mössbauer Effect","Two gammas emitted in cascade are not independent in direction: detecting the first selects magnetic substates of the intermediate level and makes the second anisotropic, so the correlation function fixes the intermediate spin. The same nuclear resonance that recoil normally destroys is recovered when the emitter is locked in a lattice, giving the Mössbauer effect and its part-in-a-trillion resolution of isomer shifts and hyperfine fields.\n",{"path":18838,"title":18839,"module":18840,"summary":18841},"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Freaction-kinematics-cross-sections","Nuclear Reactions, Fission, and Fusion","Nuclear Reactions","A nuclear reaction X(x, y)Y is governed by its Q value and its cross section, the effective target area for a given process. Splitting the curve of binding energy near iron in either direction releases energy: fission of heavy nuclei by neutron capture and a chain reaction, and fusion of light nuclei that powers the Sun and needs Lawson's density-confinement criterion to be practical.\n",{"path":18843,"title":18844,"module":18840,"summary":18845},"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fcompound-nucleus-resonances","The Compound Nucleus and Resonance Reactions","Low-energy reactions proceed through a long-lived intermediate state whose decay forgets how it formed. Bohr's independence hypothesis factorizes the cross section into a formation step and a branching ratio, an isolated level gives the single-level Breit-Wigner line shape with total width Γ tied to the lifetime by Γτ = ħ, and at high excitation overlapping levels merge into a statistical continuum described by evaporation spectra and the Hauser-Feshbach average.\n",{"path":18847,"title":18848,"module":18840,"summary":18849},"\u002Fnuclear-physics\u002Fnuclear-reactions\u002Fdirect-reactions-optical-model","Direct Reactions and the Optical Model","A complex optical potential replaces the many-body target by a single particle moving in an average field whose imaginary part removes flux into non-elastic channels, reproducing the diffraction pattern of elastic scattering. Direct reactions bypass the compound nucleus, transferring a nucleon in one step: stripping and pickup deposit or remove a single nucleon, the angle of the first peak in the distorted-wave angular distribution fixes the transferred orbital angular momentum, and its magnitude gives the spectroscopic factor.\n",{"path":18851,"title":18852,"module":18853,"summary":18854},"\u002Fnuclear-physics\u002Ffission\u002Ffission-barrier-dynamics","The Fission Barrier and Fragment Energetics","Nuclear Fission","Fission is the large-amplitude collective deformation of a heavy nucleus into two fragments. The liquid-drop model sets a barrier from the competition between rising surface energy and falling Coulomb energy under quadrupole deformation, with the fissility parameter Z²\u002FA measuring how close a nucleus is to instability. Bohr-Wheeler theory separates spontaneous from neutron-induced fission, the fragment mass yield is double-humped and asymmetric, about 200 MeV is released per event, and shell corrections add a second minimum that produces fission isomers.\n",{"path":18856,"title":18857,"module":18853,"summary":18858},"\u002Fnuclear-physics\u002Ffission\u002Fchain-reactions-reactor-physics","Chain Reactions and Reactor Physics","A self-sustaining chain reaction is a fixed point of neutron bookkeeping: the multiplication factor k counts the neutrons in one generation per neutron in the last, and criticality is k = 1. The four-factor formula tracks a neutron through fast fission, resonance escape, thermal utilization, and reproduction; moderation slows fission neutrons to the thermal energies where the fission cross section is largest; and the small delayed-neutron fraction sets the timescale that makes a reactor controllable. Breeding converts fertile U-238 and Th-232 into new fissile fuel.\n",{"path":18860,"title":18861,"module":18862,"summary":18863},"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Ffusion-reactions-confinement","Fusion Reactions and Confinement","Fusion and Nucleosynthesis","Light nuclei release energy when they fuse because binding per nucleon rises steeply toward the iron peak, but the Coulomb barrier suppresses the rate at reactor temperatures. The thermonuclear rate is a convolution of the Maxwell distribution with the tunneling probability, sharply peaked at the Gamow energy. The deuterium-tritium reaction has the lowest barrier and largest cross section; sustained energy gain requires the Lawson triple product of density, temperature, and confinement time, reached by magnetic or inertial confinement.\n",{"path":18865,"title":18866,"module":18862,"summary":18867},"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fstellar-nucleosynthesis","Stellar Nucleosynthesis","Main-sequence stars burn hydrogen to helium through the proton-proton chain and the CNO cycle, both releasing 26.7 MeV per helium nucleus. Helium burning bridges the mass-5 and mass-8 gaps by the triple-alpha process through the Beryllium-8 and Hoyle resonances, and successive carbon-to-silicon burning stages climb to the iron peak, where fusion stops. The elements beyond iron are built by slow and rapid neutron capture, and the solar neutrino flux confirms the reactions directly.\n",{"path":18869,"title":18870,"module":18862,"summary":18871},"\u002Fnuclear-physics\u002Ffusion-nucleosynthesis\u002Fbig-bang-nucleosynthesis","Big-Bang Nucleosynthesis","In the first three minutes the expanding universe forged the light elements. The weak interaction froze the neutron-to-proton ratio near one in six when the reaction rate fell below the expansion rate, and free-neutron decay lowered it to about one in seven before the deuterium bottleneck broke. Almost every surviving neutron ended in helium-4, fixing the primordial helium mass fraction near 0.25, with trace deuterium, helium-3, and lithium-7. The deuterium abundance measures the cosmic baryon density.\n",{"path":18873,"title":18874,"module":18875,"summary":18876},"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fcharged-particle-stopping-power","Stopping Power and the Range of Charged Particles","Radiation and Applications","A heavy charged particle loses energy in a dense sequence of small Coulomb collisions with atomic electrons, at a rate the Bethe-Bloch formula fixes from the particle's charge and speed and the medium's electron density and mean excitation energy. The rate scales as the inverse square of the speed, so most energy is deposited at the end of the track in the Bragg peak, and integrating the reciprocal rate gives a sharp range. Electrons differ: they also radiate, and above a critical energy bremsstrahlung dominates. Fast particles above the phase velocity of light in the medium emit Cherenkov radiation.\n",{"path":18878,"title":18879,"module":18875,"summary":18880},"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fphoton-neutron-interactions","Interactions of Photons and Neutrons","Photons are removed from a beam in single events, so their intensity falls exponentially with a linear attenuation coefficient built from three processes: the photoelectric effect at low energy, Compton scattering at intermediate energy, and pair production above twice the electron rest energy, each with its own atomic-number and energy dependence. Neutrons carry no charge and interact only with nuclei, moderating by elastic scattering and being captured with a cross section that rises as one over speed away from resonances.\n",{"path":18882,"title":18883,"module":18875,"summary":18884},"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fradiation-detectors","Radiation Detectors and Nuclear Spectroscopy","Every detector converts the energy a radiation deposits into a measurable electrical signal. Gas counters read the ionization directly, in three operating regions set by the applied voltage; scintillators convert the energy to light read out by a photomultiplier; semiconductor detectors collect electron-hole pairs and give the best energy resolution because so many carriers are made per event. The resolution is governed by the number of independent charge carriers, and the pulse-height spectrum of a gamma line shows a full-energy photopeak, a Compton continuum with its edge, and escape peaks.\n",{"path":18886,"title":18887,"module":18875,"summary":18888},"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fdosimetry-radiation-biology","Dosimetry, Radiation Biology, and Protection","Absorbed dose is the energy deposited per unit mass, measured in gray. Equal absorbed doses do unequal biological damage because densely ionizing radiation deposits its energy along short tracks: weighting the dose by a radiation factor gives the equivalent dose, and weighting by tissue sensitivity gives the effective dose, both in sieverts. Deterministic effects have a threshold and a severity that grows with dose; stochastic effects are assumed to follow a linear-no-threshold probability. Natural background dominates the dose to the population, and protection rests on time, distance, and shielding.\n",{"path":18890,"title":18891,"module":18875,"summary":18892},"\u002Fnuclear-physics\u002Fradiation-matter-applications\u002Fnuclear-applications-dating-medicine","Applications — Dating, Analysis, and Nuclear Medicine","Charged particles lose energy continuously and stop at a well-defined range with a Bragg peak, while gamma rays are attenuated exponentially. These interactions define radiation detectors and dosimetry (gray and sievert) and drive the applications: neutron activation analysis, magnetic resonance imaging, PET, and radiometric dating with carbon-14 and long-lived rock clocks.\n",{"path":18894,"title":18895,"module":6,"summary":6},"\u002Fnuclear-physics","Nuclear Physics",{"path":18897,"title":18898,"module":14862,"summary":18899},"\u002Fnatural-language-processing\u002Ffoundations\u002Fwhat-is-nlp","What Is Natural Language Processing?","Natural language processing is the computational treatment of human language: reading it, representing it, and generating it. We set up why the problem is hard — ambiguity at every level, from sound to intent — trace the field from ELIZA's pattern-matching through statistical methods to today's neural models, lay out the linguistic levels and task families the course covers, and fix the vocabulary of tokens, types, and corpora the rest of the notes rely on.\n",{"path":18901,"title":18902,"module":14862,"summary":18903},"\u002Fnatural-language-processing\u002Ffoundations\u002Fregex-and-text-normalization","Regular Expressions and Text Normalization","Before any model touches text, the text has to be found and cleaned. Regular expressions give an algebra for describing string patterns; tokenization, case folding, and stemming turn raw characters into the units a model counts; and byte-pair encoding builds a subword vocabulary that spells out any word. Measuring how far apart two strings are — minimum edit distance — is the next lesson.\n",{"path":18905,"title":18906,"module":14862,"summary":18907},"\u002Fnatural-language-processing\u002Ffoundations\u002Fminimum-edit-distance","Minimum Edit Distance","Much of language processing needs to measure how similar two strings are — a speller ranking corrections, a diff tool, a coreference resolver. Minimum edit distance counts the insertions, deletions, and substitutions that turn one string into another, computed by a dynamic-programming table. We fill the table for intention to execution, backtrace to recover the alignment, and see how the same machinery generalizes to weighted edits, Viterbi, and biological sequence alignment.\n",{"path":18909,"title":18910,"module":14862,"summary":18911},"\u002Fnatural-language-processing\u002Ffoundations\u002Fn-gram-language-models","N-Gram Language Models","A language model assigns a probability to a sequence of words and, equivalently, predicts the next word from its history. The n-gram model makes this tractable by truncating the history to the last few words, estimates the resulting conditional probabilities by counting, and is scored by perplexity. We build the model from the chain rule, work a bigram example on a small corpus, and read perplexity as a branching factor. The next lesson covers the zero counts that break this model and the smoothing that repairs them.\n",{"path":18913,"title":18914,"module":14862,"summary":18915},"\u002Fnatural-language-processing\u002Ffoundations\u002Fsmoothing-and-backoff","Smoothing and Backoff","Every finite corpus is missing good word sequences it simply never saw, so a raw n-gram model assigns them probability zero and breaks. Smoothing repairs the zeros: add-one and add-k shave mass off seen events, backoff and interpolation fall back on shorter contexts, and Kneser-Ney — worked here by hand — replaces raw frequency with how many contexts a word completes. We close on web-scale stupid backoff and the neural models that dissolve the zero problem rather than patch it.\n",{"path":18917,"title":18918,"module":18919,"summary":18920},"\u002Fnatural-language-processing\u002Fclassification\u002Fnaive-bayes-and-sentiment","Naive Bayes and Sentiment Classification","Text Classification","Text classification assigns a category to a document — positive or negative, spam or not, one topic among many. Naive Bayes is a generative solution: apply Bayes' rule, assume the words are conditionally independent given the class, and the winning class is the one maximizing the product of a prior and per-word likelihoods. We train it by counting with add-one smoothing, work a full sentiment example by hand, sharpen it for sentiment (binary counts, negation, lexicons), and place it among the transformer classifiers that came after.\n",{"path":18922,"title":18923,"module":18919,"summary":18924},"\u002Fnatural-language-processing\u002Fclassification\u002Fevaluating-classifiers","Evaluating Classifiers","A trained classifier is only useful once we can measure how good it is. We build the confusion matrix, see why accuracy misleads on unbalanced data, and define precision, recall, and the F-measure that balances them. Multi-class tasks need macro- versus micro-averaging; reliable estimates need cross-validation. We close on statistical significance — the paired bootstrap test for whether one system's lead over another is significant.\n",{"path":18926,"title":18927,"module":18919,"summary":18928},"\u002Fnatural-language-processing\u002Fclassification\u002Flogistic-regression","Logistic Regression","Logistic regression is the discriminative counterpart to naive Bayes: instead of modelling how a document is generated, it learns weights that directly separate the classes. We build it from the sigmoid, derive the cross-entropy loss from maximum likelihood, learn the weights by stochastic gradient descent, regularize to curb overfitting, and generalize to many classes with the softmax. The two-class model is already a one-neuron network, so this is the bridge to neural language models.\n",{"path":18930,"title":18931,"module":18919,"summary":18932},"\u002Fnatural-language-processing\u002Fclassification\u002Fsentiment-and-affect-lexicons","Sentiment and Affect Lexicons","A sentiment lexicon is a list of words annotated with the affective meaning they carry — positive or negative, or scores along valence, arousal, and dominance. We fix what \"emotion\" means (basic-emotion versus dimensional models), survey the standard lexicons, and then build lexicons three ways: by human labeling with best-worst scaling, by semi-supervised induction from seed words over an embedding space, and by supervised learning from starred reviews. We close on connotation frames, which record the sentiment a verb implies about each of its arguments.\n",{"path":18934,"title":18935,"module":18936,"summary":18937},"\u002Fnatural-language-processing\u002Fsemantics\u002Fvector-semantics-and-embeddings","Vector Semantics and Embeddings","Semantics","Vector semantics represents a word's meaning as a point in space, derived from the company the word keeps. This first part builds the count-based side: the distributional hypothesis, co-occurrence matrices in their term-document and word-word forms, cosine as the similarity measure, and the two weightings — tf-idf and PPMI — that fix what raw counts get wrong. The result is a sparse, interpretable vector for every word, and the setup for the dense embeddings of the next lesson.\n",{"path":18939,"title":18940,"module":18936,"summary":18941},"\u002Fnatural-language-processing\u002Fsemantics\u002Fstatic-word-embeddings","Static Word Embeddings: word2vec and After","Count-based vectors are long and sparse; embeddings are the short, dense alternative. This lesson builds them with word2vec's skip-gram and negative sampling — a classifier whose learned weights are the vectors — derives its gradient, and works one update by hand. It then reads relations off the analogy parallelogram, surveys the papers that framed the static-embedding era (word2vec, GloVe, the SGNS-as-PPMI equivalence, fastText, ELMo), and closes on the biases embeddings inherit and the single-vector-per-word ceiling that contextual models break.\n",{"path":18943,"title":18944,"module":18936,"summary":18945},"\u002Fnatural-language-processing\u002Fsemantics\u002Fneural-language-models","Neural Networks and Neural Language Models","A neural network is a stack of units, each a weighted sum passed through a non-linearity — a single unit on its own is logistic regression. We build the network up from that unit: the activation functions that give it power, the XOR problem that forces a hidden layer, the feedforward forward pass in matrix form, and the Bengio-style feedforward neural language model that concatenates word embeddings and predicts the next word with a softmax. Training is cross-entropy minimized by gradient descent, with backpropagation supplying the gradient. Embeddings let the model share statistical strength across similar words, avoiding the sparsity that limits n-gram models.\n",{"path":18947,"title":18948,"module":15319,"summary":18949},"\u002Fnatural-language-processing\u002Fsequences\u002Fsequence-labeling","Sequence Labeling: POS and NER","Sequence labeling assigns one tag to every token in a sentence. This first part sets up the task through its two canonical cases — part-of-speech tagging over the Penn Treebank tagset, and named-entity recognition reframed as token labeling with the BIO scheme — then builds the hidden Markov model, the classic probabilistic tagger. The HMM tags by Bayesian inference: transition and emission probabilities under two Markov assumptions, reducing tagging to an argmax over tag sequences. That argmax is exponential to enumerate, which sets up the Viterbi decoder, the CRF, and neural taggers of the next lesson.\n",{"path":18951,"title":18952,"module":15319,"summary":18953},"\u002Fnatural-language-processing\u002Fsequences\u002Fcrfs-and-neural-taggers","Viterbi Decoding, CRFs, and Neural Taggers","The HMM reduced tagging to an argmax over exponentially many tag sequences. This lesson builds the decoder that makes it tractable — the Viterbi dynamic program, worked through a full numeric trace on real WSJ probabilities — then keeps that same decoder while replacing the HMM's rigid tables. The linear-chain conditional random field is a discriminative log-linear model whose global feature functions can inspect any part of the input, which is why CRFs win for NER. Finally it traces the shift to neural taggers (biLSTM-CRF, character-aware NER, ELMo), where hand-built features become learned representations while the Viterbi decoder carries over unchanged.\n",{"path":18955,"title":18956,"module":15319,"summary":18957},"\u002Fnatural-language-processing\u002Fsequences\u002Frnns-and-lstms","RNNs and LSTMs","A feedforward neural language model sees a fixed window of words and can look no further back. The recurrent neural network removes that limit: it carries a hidden state across time, so each word is read in the context of everything before it. We build the RNN from its one recurrent equation, use it as a language model, train it by backpropagation through time, and diagnose the vanishing-gradient problem that makes plain RNNs forget. The LSTM fixes the forgetting with a cell state and three gates, and the encoder-decoder stacks two RNNs into a sequence-to-sequence model — and its single-vector bottleneck is the problem attention was invented to remove.\n",{"path":18959,"title":18960,"module":15801,"summary":18961},"\u002Fnatural-language-processing\u002Ftransformers\u002Ftransformers-and-attention","Transformers and Self-Attention","Recurrence forced language models to read one word at a time and to squeeze every dependency through a chain of hidden states. Self-attention removes the recurrence: at every layer each position compares itself to every other and reads a weighted mixture of them, in a single parallel step. This first part builds the attention operation from the ground up — the soft lookup, queries and keys and values, the scaled dot-product, the numeric trace, the matrix form, and the causal mask — and sets up the full transformer architecture that follows.\n",{"path":18963,"title":17513,"module":15801,"summary":18964},"\u002Fnatural-language-processing\u002Ftransformers\u002Fthe-transformer-architecture","This part takes the scaled dot-product attention of the previous lesson and assembles the full transformer architecture around it: multi-head attention so several relations can be read at once, the transformer block of residual connections and layer norm that makes deep stacks trainable, positional embeddings that restore word order, the decoder-only language model, and the encoder, decoder, and encoder-decoder shapes — closing with the 2017 paper and the pre-norm, FlashAttention, and RoPE refinements that scaled it up.\n",{"path":18966,"title":17621,"module":15801,"summary":18967},"\u002Fnatural-language-processing\u002Ftransformers\u002Flarge-language-models","A large language model is a decoder-only transformer trained on one objective — predict the next token. This first part assembles the inference side: the language-modeling head that turns a hidden state into a distribution over the vocabulary, autoregressive generation, and the decoding strategies — greedy, beam, and sampling with temperature, top-k, and nucleus — that read text back out of that distribution. Training the distribution at web scale comes next.\n",{"path":18969,"title":18970,"module":15801,"summary":18971},"\u002Fnatural-language-processing\u002Ftransformers\u002Fllm-pretraining-and-scaling","Large Language Models: Pretraining and Scaling","A language model's next-token distribution is only as good as the parameters behind it. This part is where those parameters come from: self-supervised pretraining on web-scale text with teacher forcing and cross-entropy, the scaling laws that make test loss a predictable power law in parameters, data, and compute, the KV cache that keeps long-context inference affordable, and how a finished model is evaluated by perplexity and benchmarks — closing with the Kaplan, Chinchilla, GPT-3, and emergence papers behind the scaling story.\n",{"path":18973,"title":18974,"module":15801,"summary":18975},"\u002Fnatural-language-processing\u002Ftransformers\u002Ffine-tuning-and-prompting","Fine-Tuning and Prompting","A pretrained transformer is a general-purpose knowledge source; a task is what you do with it. There are two ways to adapt one, and this first part covers the one that updates the weights: fine-tuning. A bidirectional encoder like BERT is pretrained by masked language modeling, then a small task head is bolted on and the whole thing is trained on labelled data for classification, sequence labeling, or span-based question answering — with parameter-efficient variants (adapters, LoRA) that touch only a sliver of the weights. Prompting, the family that leaves the weights frozen, comes next.\n",{"path":18977,"title":18978,"module":15801,"summary":18979},"\u002Fnatural-language-processing\u002Ftransformers\u002Fprompting-and-alignment","Prompting and Alignment","Fine-tuning adapts a model by changing its weights. The second family of adaptation changes nothing: a large frozen model performs a task from an instruction and a few examples placed in its context. This part covers prompting and in-context learning, chain-of-thought that elicits reasoning, and the two training stages — instruction tuning and RLHF — that turn a fluent base predictor into an aligned assistant, closing with the BERT, LoRA, chain-of-thought, InstructGPT, and retrieval-augmentation papers behind the modern adaptation pipeline.\n",{"path":18981,"title":18982,"module":18983,"summary":18984},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-parsing","Constituency Parsing","Linguistic Structure","A constituency parse groups a sentence into nested phrases described by a context-free grammar. We build the CFG formalism, read the phrase structure of English off a treebank, confront the structural ambiguity that makes parsing hard, convert to Chomsky normal form, and then solve it with CKY — the dynamic-programming chart that fills a triangular table bottom-up. Probabilistic and neural span parsers, evaluation, and shallow parsing follow in the companion lesson.\n",{"path":18986,"title":18987,"module":18983,"summary":18988},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcky-scoring-and-evaluation","CKY Scoring, Evaluation, and Shallow Parsing","The CKY chart returns every parse but does not say which is correct. Disambiguation needs a score on trees. This lesson attaches probabilities to a grammar (the PCFG and lexicalization), replaces the grammar with a neural span scorer over a pretrained encoder, states the self-attentive results that made it the state of the art, evaluates parsers against a treebank with PARSEVAL, and closes with chunking and shallow parsing for tasks that need only the flat phrases.\n",{"path":18990,"title":18991,"module":18983,"summary":18992},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdependency-parsing","Dependency Parsing","A dependency parse throws away phrases and keeps only directed, labeled arcs from heads to their dependents, so the subject and object of a verb hang off the verb directly. We fix the formalism (rooted trees, typed Universal-Dependency relations, projectivity), then build the first parser family: transition-based arc-standard and arc-eager parsing, a greedy stack-and-buffer machine trained from an oracle. Graph-based and neural dependency parsing follow in the companion lesson.\n",{"path":18994,"title":18995,"module":18983,"summary":18996},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fgraph-based-and-neural-dependency-parsing","Graph-Based and Neural Dependency Parsing","Greedy transition parsing commits locally; the graph-based family scores whole trees instead. This lesson scores every candidate head-dependent edge and extracts the maximum spanning tree with Chu-Liu\u002FEdmonds, develops the biaffine neural scorer that made graph-based parsing the accuracy leader, evaluates parsers with the unlabeled and labeled attachment scores (UAS and LAS), and closes on where the two parser families sit and what they feed downstream.\n",{"path":18998,"title":18999,"module":18983,"summary":19000},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fword-senses-and-wsd","Word Senses and Disambiguation","A word is not an atom of meaning: \"bass\" names a fish, a voice, and an instrument, and one static embedding blurs them into a single point. This lesson pulls those senses apart. We define polysemy and the relations that organize senses — synonymy, antonymy, hyponymy, meronymy — build them into WordNet's synset graph, measure similarity along that graph, and then solve the core of word sense disambiguation: the most-frequent-sense baseline, the Lesk gloss-overlap algorithm, feature-based classifiers, and the nearest-neighbor method over BERT embeddings. WSD variants, embeddings, and evaluation follow in the companion lesson.\n",{"path":19002,"title":19003,"module":18983,"summary":19004},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fwsd-in-practice-and-induction","WSD in Practice and Word Sense Induction","Beyond core word sense disambiguation lie the variants and loose ends: the sense-inventory-free Word-in-Context task, retrofitting static embeddings to a thesaurus, discovering senses without a fixed inventory (word sense induction), the gloss-aware and bi-encoder neural systems that hold the state of the art, and how WSD and its cousins are evaluated. Together they connect one-vector-per-word embeddings to sense-aware contextual representations.\n",{"path":19006,"title":19007,"module":18983,"summary":19008},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-roles-and-information-extraction","Semantic Roles and Information Extraction","Semantic roles answer \"who did what to whom\" for a single event, abstracting away the syntax that expresses it. We show why syntax alone is not enough, generalize over diathesis alternations with thematic roles, number a predicate's arguments with PropBank and group predicates into frames with FrameNet, tag each argument automatically with semantic role labeling, and factor predicates into primitives. Information extraction scales the idea to a corpus in the companion lesson.\n",{"path":19010,"title":19011,"module":18983,"summary":19012},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Frelations-events-and-templates","Relations, Events, and Templates","Semantic roles answer \"who did what\" for one predicate; information extraction scales the idea to a whole corpus. This lesson turns unstructured text into structured data: relation extraction pulls entity-relation-entity triples out of sentences by patterns, supervision, and distant supervision; event and temporal extraction place those facts on a timeline; and template filling and knowledge-base population assemble them into a database a downstream system can query.\n",{"path":19014,"title":19015,"module":18983,"summary":19016},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoreference-and-discourse","Coreference and Discourse","A text is more than a bag of sentences: entities recur under different names. Coreference resolution links every mention to the discourse entity it evokes — the linguistic background of pronouns, definite NPs, and names; mention detection; the mention-pair, mention-ranking, and entity-based architectures; a neural end-to-end span model that scores candidate antecedents; features, evaluation by the CoNLL F1, gender bias, and the neural coreference lineage. Discourse coherence follows in the companion lesson.\n",{"path":19018,"title":19019,"module":18983,"summary":19020},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcoherence-and-discourse-structure","Coherence and Discourse Structure","Coherence is what makes a run of sentences a discourse rather than an arbitrary collection. This lesson develops coherence relations and Rhetorical Structure Theory trees, discourse-structure parsing, Centering and the entity grid for entity-based coherence, and representation-learning models of local coherence, measured in part over the coreference chains recovered in the companion lesson.\n",{"path":19022,"title":19023,"module":18983,"summary":19024},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Flogical-semantics","Logical Representations of Meaning","A meaning representation turns a sentence into a formal structure a machine can check against a world and reason over. We set the desiderata a good representation must meet, ground truth in a model, build up first-order logic for sentences with its connectives, quantifiers, and inference, and reify events with the neo-Davidsonian event variable to escape fixed predicate arity. The compositional lambda calculus, quantifier scope, and description logics follow in the companion lesson.\n",{"path":19026,"title":19027,"module":18983,"summary":19028},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fcompositional-semantics-and-description-logics","Compositional Semantics and Description Logics","How do you compute a logical form from a sentence automatically? This lesson builds the compositional machinery: the lambda calculus that assembles a formula from a parse tree one beta-reduction at a time, the quantifier-scope ambiguity a single syntax tree leaves open, and the decidable description logics — TBox, ABox, subsumption, role restrictions — behind the Web Ontology Language, closing with how the map from string to logical form can be learned.\n",{"path":19030,"title":19031,"module":18983,"summary":19032},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fsemantic-parsing","Semantic Parsing","Turning a sentence into a structured, executable meaning, the grammar-based way. We take the logical forms defined earlier and build them compositionally: a rule-based parser that walks a syntax tree applying lambda terms, then Combinatory Categorial Grammar (CCG), which fuses syntax and semantics so one lexicalized derivation produces both — including supertagging and A* parsing. Learned and neural semantic parsers follow in the companion lesson.\n",{"path":19034,"title":19035,"module":18983,"summary":19036},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fneural-semantic-parsing","Learned and Neural Semantic Parsing","Hand-writing a lexicon of lambda terms does not scale, so this lesson learns the parser instead. We cover the two supervision regimes (from logical forms and from denotations), Abstract Meaning Representation as a rooted concept graph, neural sequence-to-sequence parsing with constrained decoding and copy mechanisms, executable text-to-SQL and knowledge-based question answering, the practical systems that made learned parsers accurate, and how the task is evaluated.\n",{"path":19038,"title":19039,"module":18983,"summary":19040},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Finformation-extraction","Information Extraction","Information extraction turns free text into a database, and the first step is relation extraction: pulling entity-relation-entity triples out of sentences. We cover all five families — hand-built patterns, supervised classifiers, semi-supervised bootstrapping, distant supervision, and unsupervised Open IE — with worked bootstrapping and distant-supervision traces, then the neural and LLM systems that extended them. Times, events, and templates follow in the companion lesson.\n",{"path":19042,"title":19043,"module":18983,"summary":19044},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftimes-events-and-templates","Extracting Times, Events, and Templates","Once relation extraction has produced typed triples, the information-extraction pipeline still has to place facts in time and assemble them into records. This lesson detects and normalizes temporal expressions to ISO 8601 values, detects events and orders them on a timeline with the 13 Allen relations, and fills slot-and-filler templates — flat and hierarchical — for stereotyped situations, closing the loop from text to a queryable database.\n",{"path":19046,"title":19047,"module":18983,"summary":19048},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fdiscourse-coherence","Discourse Coherence","A text is more than a set of sentences. What binds a run of sentences into a discourse is coherence, and one of its sources is structured relations between clauses. This lesson develops relational coherence — RST and the PDTB models of coherence relations — and discourse-structure parsing: EDU segmentation and shift-reduce RST parsing, then PDTB relation classification. Entity-based and global coherence follow in the companion lesson.\n",{"path":19050,"title":19051,"module":18983,"summary":19052},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fentity-based-and-global-coherence","Entity-Based and Global Coherence","A text coheres not only through relations between clauses but by staying about the same entities and the same topic, and by obeying the macro-structure of its genre. This lesson develops Centering Theory and the entity grid for entity-based coherence, representation-learning models of local coherence, and global coherence — topic segmentation, narrative and argumentation structure, and scientific discourse — then the neural models that learn each.\n",{"path":19054,"title":19055,"module":18983,"summary":19056},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Fconstituency-grammars","Constituency Grammars","A constituency grammar is the declarative theory of sentence structure that a parser operates on. We build the context-free grammar formalism from its four parts, show how derivations become parse trees, and work through the phrase structure of English — noun phrases, verb phrases and their subcategorization frames, agreement, coordination, and long-distance dependencies. The treebank, normal-form, and lexicalized views follow in the companion lesson.\n",{"path":19058,"title":19059,"module":18983,"summary":19060},"\u002Fnatural-language-processing\u002Flinguistic-structure\u002Ftreebanks-and-lexicalized-grammars","Treebanks and Lexicalized Grammars","Where does a grammar come from, and how is it prepared for a parser? We read a context-free grammar off the Penn Treebank, normalize it to Chomsky Normal Form for the CKY chart, then invert the phrase-structure emphasis with lexicalized grammars — Combinatory Categorial Grammar and its slash categories — and close with the grammar's fate in the neural era: span scoring, self-attention, and grammar induction.\n",{"path":19062,"title":19063,"module":17609,"summary":19064},"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation","Machine Translation","Machine translation is the task that built the modern toolkit: the encoder-decoder was invented for it, attention was invented to fix its fixed-context bottleneck, and both were later folded into the general transformer. We work through why translation is hard (word order, morphology, lexical and structural divergences), the sequence-to-sequence model and its attention mechanism, transformer-based NMT with cross-attention, subword tokenization with a shared vocabulary, beam-search decoding, and evaluation by BLEU and its successors chrF, BERTScore, and COMET — closing on multilingual and low-resource translation and backtranslation.\n",{"path":19066,"title":19067,"module":17609,"summary":19068},"\u002Fnatural-language-processing\u002Fapplications\u002Fmachine-translation-decoding-and-evaluation","Machine Translation: Decoding, Evaluation, and Scale","Having built the transformer translation model, we now decode from it and measure the output. Beam search turns the decoder's per-step distributions into a single output string; length normalization keeps it from favoring short translations. We then score translations automatically — BLEU with its n-gram precision, clipping, and brevity penalty, worked through by hand, then its successors chrF, BERTScore, and COMET — and close on the parts of MT that scale beyond one language pair: multilingual and low-resource translation, backtranslation, gender bias, and the lineage from the Transformer to massively multilingual models like NLLB-200.\n",{"path":19070,"title":19071,"module":17609,"summary":19072},"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering","Question Answering","A question-answering system takes a natural-language question and returns an answer, not a ranked list of documents. Almost every modern system is built on one pattern: retrieve then read. We start with the information-retrieval machinery that finds candidate text — tf-idf and BM25 term weighting, a worked ranking example, the inverted index, and dense embedding retrieval — then build the retriever-reader pipeline that extracts an answer span with BERT and trace a full retrieve-and-read example end to end.\n",{"path":19074,"title":19075,"module":17609,"summary":19076},"\u002Fnatural-language-processing\u002Fapplications\u002Fquestion-answering-knowledge-and-llms","Question Answering: Knowledge Bases and Language Models","The retrieve-and-read pipeline extracts an answer span from prose, but not all knowledge lives in prose. This part covers the rest of the QA stack: entity linking (Wikification) that grounds a question's entities to a knowledge base, knowledge-based QA by semantic parsing a question into an executable query, and the modern default — closed-book QA and retrieval-augmented generation with a large language model — closing on the DPR\u002FRAG\u002Ffusion-in-decoder lineage and how factoid answers are scored by exact match and F1.\n",{"path":19078,"title":19079,"module":17609,"summary":19080},"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-and-chatbots","Dialogue and Chatbots","Conversation is the most natural interface to a machine and one of the hardest to build. We set up what makes human dialogue work — turns, speech acts, grounding, and the local structure of adjacency pairs — then trace the two traditions that answer it: chatbots built to chat (ELIZA's pattern-matching, corpus retrieval, and seq2seq generation with its blandness problem) and task-oriented systems built to get something done (the GUS frame-and-slot architecture and the modern NLU \u002F state-tracker \u002F policy \u002F NLG pipeline that accumulates a frame across turns).\n",{"path":19082,"title":19083,"module":17609,"summary":19084},"\u002Fnatural-language-processing\u002Fapplications\u002Fdialogue-systems-and-assistants","Dialogue Systems: LLM Assistants, Evaluation, and Design","Two dialogue traditions — chatbots built to chat and task-oriented frame systems built to get something done — met in the aligned LLM assistant. Instruction tuning plus RLHF fold chit-chat and task dialogue into one model; the LaMDA \u002F InstructGPT \u002F ChatGPT lineage fills in how. The lesson then turns to evaluation (human ratings and acute-eval for chatbots, task success and slot error rate for task systems), user-centered design with Wizard-of-Oz prototyping, and the ethical stakes of building agents people talk to.\n",{"path":19086,"title":19087,"module":17609,"summary":19088},"\u002Fnatural-language-processing\u002Fapplications\u002Ftext-summarization","Text Summarization","Summarization compresses a document to its essential meaning, by either selecting sentences to keep (extractive) or writing new ones (abstractive). This part fixes the task and its flavors — single vs. multi-document, generic vs. query-focused, extractive vs. abstractive — then works through extractive summarization in full: scoring by position and centrality, the TextRank\u002FLexRank graph algorithm run as PageRank over a sentence-similarity graph with a worked iteration, and supervised sentence selection.\n",{"path":19090,"title":19091,"module":17609,"summary":19092},"\u002Fnatural-language-processing\u002Fapplications\u002Fabstractive-summarization-and-evaluation","Abstractive Summarization and Evaluation","Extractive methods can only reuse the source's own sentences; to compress within a sentence or paraphrase, a summarizer has to generate. This part covers abstractive summarization: the sequence-to-sequence approach, the pointer-generator's copy switch and coverage mechanism, pretrained summarizers (BART, PEGASUS) and zero-shot LLM prompting, the long-document and factuality problems, and ROUGE evaluation with a worked example and its limits — closing on the abstractive lineage from See 2017 through faithfulness metrics.\n",{"path":19094,"title":19095,"module":19096,"summary":19097},"\u002Fnatural-language-processing\u002Fspeech\u002Fphonetics","Phonetics","Speech","Before a recognizer can read speech it has to know what speech is. This first part covers the linguistic substrate: phones and their transcription in the IPA and ARPAbet; articulatory phonetics — how the vocal tract shapes airflow into consonants and vowels; and prosody — stress, tune, and the F0 contour. The acoustic side — the waveform, its spectrum, formants, and the spectrogram — is the second part.\n",{"path":19099,"title":19100,"module":19096,"summary":19101},"\u002Fnatural-language-processing\u002Fspeech\u002Facoustic-phonetics","Acoustic Phonetics","Articulation is the cause; the acoustic signal is the effect, and the effect is all a microphone ever gets. This part follows the sound out of the mouth: waves, sampling and the Nyquist limit, F0 and the pitch track, the mel scale, the spectrum and Fourier analysis, the source-filter model that explains why each vowel carries its own formants, and the spectrogram the log-mel front end of every ASR system sits directly on top of — closing with neural TTS, wav2vec, HuBERT, and Whisper, where phonetics went in neural speech.\n",{"path":19103,"title":19104,"module":19096,"summary":19105},"\u002Fnatural-language-processing\u002Fspeech\u002Fautomatic-speech-recognition","Automatic Speech Recognition","Speech recognition maps an acoustic waveform to a string of words, and once the waveform is turned into a sequence of log-mel spectrogram frames the problem is the same sequence-to-sequence transduction the rest of the course already solved. This first part builds the feature front end (framing, the DFT, the mel filterbank, the log), then the modern architectures: the attention-based encoder-decoder, the CTC alignment trick that collapses repeated and blank frames, and RNN-T for streaming. Training-data advances, evaluation, TTS, and the other speech tasks come next.\n",{"path":19107,"title":19108,"module":19096,"summary":19109},"\u002Fnatural-language-processing\u002Fspeech\u002Fasr-evaluation-and-applications","ASR Evaluation and Speech Applications","A recognizer turns a waveform into text; this part scores that text and puts the same machinery to other uses. It opens with the self-supervised and weakly- supervised systems (wav2vec 2.0, HuBERT, Whisper) that made ASR error rates fall. Word error rate reuses the edit distance from the first module, run over words. Text-to-speech runs the whole pipeline in reverse — text to mel spectrogram to waveform. And a family of smaller tasks — wake-word detection, speaker recognition and diarization, language identification — reuse the same log-mel front end without the decoder.\n",{"path":19111,"title":19112,"module":6,"summary":6},"\u002Fnatural-language-processing","Natural Language Processing",{"path":19114,"title":19115,"module":14862,"summary":19116},"\u002Fparticle-physics\u002Ffoundations\u002Fhistorical-overview-particle-zoo","From the Electron to the Particle Zoo","A timeline of the subject, from J. J. Thomson's electron in 1897 to the Higgs boson in 2012. The electron, photon, nucleus, proton, and neutron gave a tidy picture that Yukawa's meson prediction and the muon–pion confusion complicated; strange particles in cosmic rays and the accelerator-era flood of hadrons then produced a \"particle zoo\" that only the quark model organized.\n",{"path":19118,"title":19119,"module":14862,"summary":19120},"\u002Fparticle-physics\u002Ffoundations\u002Fparticle-physics-basic-concepts","Basic Concepts and Particle Classification","Every particle has an antiparticle of equal mass and opposite charge, a consequence of the Dirac equation confirmed by the positron. Feynman diagrams track interactions in spacetime; the material particles sort into leptons and the composite hadrons built from quarks, with baryons carrying three quarks and mesons a quark-antiquark pair.\n",{"path":19122,"title":19123,"module":14862,"summary":19124},"\u002Fparticle-physics\u002Ffoundations\u002Ffundamental-interactions-force-carriers","Fundamental Interactions and Force Carriers","Four interactions account for every force in nature: strong, electromagnetic, weak, and gravitational, in decreasing strength. Each is carried by a boson — the gluon, photon, W and Z, and the graviton — with a range fixed by the carrier's mass through the Yukawa relation, and a coupling constant that itself varies with distance.\n",{"path":19126,"title":19127,"module":19128,"summary":19129},"\u002Fparticle-physics\u002Funits-kinematics\u002Fnatural-units-and-scales","Natural Units and Scales","Units and Kinematics","Setting $\\hbar = c = 1$ collapses mass, momentum, and energy into a single unit, the GeV, and turns lengths and times into inverse energies through the conversion $\\hbar c = 197.3$ MeV·fm. This lesson fixes the natural-unit conventions used for the rest of the course, converts cross sections between barns and GeV$^{-2}$, and shows how to restore factors of $\\hbar$ and $c$ by dimensional analysis.\n",{"path":19131,"title":19132,"module":19128,"summary":19133},"\u002Fparticle-physics\u002Funits-kinematics\u002Ffour-vectors-invariant-mass","Four-Vectors and Invariant Mass","The energy and momentum of a particle form a four-vector whose square is the frame-independent quantity $p^2 = m^2$. This lesson develops the metric and four-vector products, the invariant mass of a multiparticle system, the center-of-momentum and laboratory frames, and the description of collinear boosts by rapidity, whose additivity replaces the awkward velocity-addition law.\n",{"path":19135,"title":19136,"module":19128,"summary":19137},"\u002Fparticle-physics\u002Funits-kinematics\u002Fdecay-scattering-kinematics-mandelstam","Decay, Scattering, and Mandelstam Variables","Two-body decay in the rest frame fixes the daughter momenta from the three masses alone; production thresholds follow from the minimum invariant mass. This lesson works both, then introduces the Mandelstam invariants $s$, $t$, $u$ for $2\\to2$ scattering, proves the identity $s+t+u=\\sum m_i^2$, and maps the physical regions and the crossing that relates channels.\n",{"path":19139,"title":19140,"module":19128,"summary":19141},"\u002Fparticle-physics\u002Funits-kinematics\u002Fcross-sections-golden-rule","Cross Sections and the Golden Rule","The cross section measures how often a scattering happens and the decay width how fast a particle disintegrates. This lesson defines both, relates event rate to luminosity through $R=\\mathcal L\\,\\sigma$ and lifetime to width through $\\tau=\\hbar\u002F\\Gamma$, and states Fermi's golden rule with Lorentz-invariant phase space, giving the master formulas that turn an amplitude $\\mathcal M$ into a measurable rate for $1\\to2$ decay and $2\\to2$ scattering.\n",{"path":19143,"title":19144,"module":19145,"summary":19146},"\u002Fparticle-physics\u002Fsymmetries\u002Fconservation-laws-symmetries","Conservation Laws and Symmetries","Symmetries and Conservation Laws","Which decays occur is decided by conservation laws, each tied by Noether's theorem to a symmetry of physical law. Energy, charge, baryon number, and lepton number are conserved universally; strangeness, isospin, and parity hold in the strong and electromagnetic interactions but break in the weak one, whose parity and CP violation distinguish matter from antimatter.\n",{"path":19148,"title":19149,"module":19145,"summary":19150},"\u002Fparticle-physics\u002Fsymmetries\u002Fdiscrete-symmetries-cpt","Discrete Symmetries — C, P, T, and CPT","Parity reflects space, charge conjugation swaps particle for antiparticle, and time reversal runs the clock backward. Each assigns multiplicative quantum numbers that act as selection rules — intrinsic parities, the photon's C = −1, the C-parity argument fixing the pion's two-photon decay. Their product CPT is a theorem of any local relativistic field theory, forcing particle and antiparticle to share mass and lifetime.\n",{"path":19152,"title":19153,"module":19145,"summary":19154},"\u002Fparticle-physics\u002Fsymmetries\u002Fparity-violation-weak","Parity Violation and the Weak Force","The tau–theta puzzle forced a choice: two particles with identical mass but opposite parity, or one particle whose decay violates parity. Lee and Yang proposed the latter, Wu's polarized cobalt-60 confirmed it, and the violation proved maximal. The charged weak force couples only to left-handed chirality — the Goldhaber experiment showed the neutrino is left-handed — which is why the mirror image of a weak decay is something nature never produces.\n",{"path":19156,"title":19157,"module":19145,"summary":19158},"\u002Fparticle-physics\u002Fsymmetries\u002Fsu2-su3-flavor-symmetry","Isospin, SU(2), and Flavor SU(3)","The near-equal masses of the proton and neutron, and of the three pions, signal a continuous internal symmetry of the strong force: isospin, an SU(2) whose ladder operators move between the members of a multiplet. Adding strangeness enlarges it to an approximate SU(3) flavor symmetry, and the Gell-Mann–Nishijima relation Q = I3 + Y\u002F2 places every hadron on a weight diagram in the isospin–hypercharge plane — the language in which the quark model is written.\n",{"path":19160,"title":19161,"module":19162,"summary":19163},"\u002Fparticle-physics\u002Fquark-model\u002Feightfold-way-su3","The Eightfold Way and SU(3) Flavor","The Quark Model","Gell-Mann and Ne'eman's classification of the hadrons into geometric multiplets, read as representations of an approximate flavor SU(3). The fundamental triplet (u, d, s) and its antitriplet combine into the meson nonet from 3⊗3̄ = 8⊕1 and the baryon octet and decuplet from 3⊗3⊗3, and the empty corner of the decuplet forecast the Ω⁻.\n",{"path":19165,"title":19166,"module":19162,"summary":19167},"\u002Fparticle-physics\u002Fquark-model\u002Fmeson-spectroscopy","Meson Multiplets and Quantum Numbers","Mesons as quark–antiquark bound states. The spin singlet and triplet, orbital excitations, and the assignment of J^PC from the quark spins and orbital angular momentum, giving the pseudoscalar and vector nonets. The η–η' and ω–φ mixing problems, and the charmonium and bottomonium spectra read as heavy-quark positronium.\n",{"path":19169,"title":19170,"module":19162,"summary":19171},"\u002Fparticle-physics\u002Fquark-model\u002Fbaryon-spectroscopy","Baryon Multiplets, Spin, and the Color Puzzle","Baryons as three-quark states, with a wavefunction factored into space, spin, flavor, and color. The spin-3\u002F2 Δ⁺⁺ = uuu forces a totally symmetric state that the Pauli principle forbids, and the resolution is an antisymmetric color factor — the first evidence for color. The octet and decuplet spin content, and baryon magnetic moments as a quantitative test of the model.\n",{"path":19173,"title":19174,"module":19162,"summary":19175},"\u002Fparticle-physics\u002Fquark-model\u002Fcolor-confinement-exotics","Color, Confinement, and Exotic Hadrons","Color as the gauged SU(3) charge, and the requirement that every physical hadron be a color singlet — which selects q-qbar mesons and qqq baryons as the simplest states. The R-ratio of e⁺e⁻ annihilation measures three colors directly. Beyond the simplest singlets lie glueballs, tetraquarks, and pentaquarks, and the recent XYZ states, read as either compact multiquarks or loose hadronic molecules.\n",{"path":19177,"title":19178,"module":19179,"summary":19180},"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fklein-gordon-equation","The Klein-Gordon Equation","Relativistic Wave Equations","Quantizing the relativistic energy relation $E^2 = p^2 + m^2$ produces the Klein-Gordon equation for a scalar field. Its plane-wave solutions come in positive- and negative-energy branches, and the conserved density it supplies is not positive-definite — the two difficulties that first drove physicists to seek a first-order equation. The static Klein-Gordon equation with a point source gives the Yukawa potential, and the free equation gives the scalar propagator that later modules attach to exchanged lines.\n",{"path":19182,"title":19183,"module":19179,"summary":19184},"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fdirac-equation-spinors","The Dirac Equation and Spinors","Dirac demanded a wave equation first order in time to fix the Klein-Gordon density problem. Factorizing $E^2 = p^2 + m^2$ into a linear form forces the coefficients to be anticommuting matrices — the gamma matrices of the Clifford algebra — so the wavefunction becomes a four-component spinor. The plane-wave solutions split into two particle and two antiparticle states, spin appears automatically with the correct $g = 2$ magnetic moment, and the chirality projectors that the weak interaction later needs fall straight out of the fifth gamma matrix.\n",{"path":19186,"title":19187,"module":19179,"summary":19188},"\u002Fparticle-physics\u002Frelativistic-wave-equations\u002Fantiparticles-hole-theory","Antiparticles and Hole Theory","The negative-energy solutions of the Dirac equation refuse to go away, so they must mean something. Dirac read them as a filled sea of occupied negative-energy states whose holes are positive-energy antiparticles, predicting the positron before its discovery. The picture works for fermions but not bosons, and the Feynman-Stückelberg interpretation replaces it: an antiparticle is a negative-energy solution propagating backward in time, equivalent to a positive-energy antiparticle going forward. Crossing symmetry ties incoming particles to outgoing antiparticles in a single amplitude.\n",{"path":19190,"title":19191,"module":19192,"summary":19193},"\u002Fparticle-physics\u002Fqed\u002Ffeynman-rules-qed","Feynman Rules for QED","Quantum Electrodynamics","Quantum electrodynamics computes a process by summing diagrams, each a term in a power series in the coupling. Every diagram translates into an amplitude by a fixed dictionary: spinors and polarization vectors for external lines, propagators for internal lines, and the vertex factor $ie\\gamma^\\mu$ for each photon-fermion junction. Squaring the amplitude and feeding it to Fermi's golden rule produces a cross section or decay rate, with each extra vertex costing one power of $\\alpha$.\n",{"path":19195,"title":19196,"module":19192,"summary":19197},"\u002Fparticle-physics\u002Fqed\u002Fqed-tree-processes","Tree-Level QED Processes","The Feynman rules become numbers on the reference reactions of QED. Muon pair production $e^+e^-\\to\\mu^+\\mu^-$ sets the scale with its $1+\\cos^2\\theta$ distribution and $4\\pi\\alpha^2\u002F3s$ total cross section, and its ratio to hadron production counts colors. Compton scattering gives the Klein-Nishina formula and the Thomson limit; Bhabha scattering shows $s$- and $t$-channel interference. Casimir's trick turns every spin-averaged square into a trace of gamma matrices.\n",{"path":19199,"title":19200,"module":19192,"summary":19201},"\u002Fparticle-physics\u002Fqed\u002Frenormalization-running-coupling","Renormalization and the Running Coupling","Beyond tree level, QED loops diverge. The three primitive one-loop diagrams — vacuum polarization, electron self-energy, and vertex correction — carry ultraviolet divergences that regularization exposes as logarithms of a cutoff. Renormalization absorbs them into the measured mass, charge, and field normalization, leaving finite predictions. The surviving physical content is that the coupling runs: vacuum polarization screens charge, so $\\alpha$ grows from $1\u002F137$ at low energy to about $1\u002F128$ at the $Z$ mass.\n",{"path":19203,"title":19204,"module":19192,"summary":19205},"\u002Fparticle-physics\u002Fqed\u002Felectron-g-2","The Anomalous Magnetic Moment","The Dirac equation predicts $g=2$; loops shift it. Schwinger's one-loop vertex correction gives the anomaly $a=(g-2)\u002F2=\\alpha\u002F2\\pi$, and the QED series continues to five loops. The electron $a_e$ agrees with theory to better than a part in a billion, the most precise confrontation of theory and experiment in physics. The muon $a_\\mu$, heavier and so more sensitive to virtual heavy states, is dominated by hadronic uncertainty and sits at the center of a long-running comparison with the Standard Model prediction.\n",{"path":19207,"title":19208,"module":19209,"summary":19210},"\u002Fparticle-physics\u002Fweak-interaction\u002Fva-structure-weak","The V–A Charged Weak Current","The Weak Interaction","Fermi modelled beta decay as a four-fermion contact interaction, but a coupling with dimensions of inverse mass squared makes cross sections grow without bound and the theory fails near 300 GeV. The cure is a heavy mediator: the $W$ boson, whose propagator collapses to Fermi's contact term at low energy and fixes $G_F\u002F\\sqrt2 = g^2\u002F8M_W^2$. Parity violation dictates the current's form — vector minus axial-vector, coupling only to left-chiral fields — and universality of the coupling ties muon decay, beta decay, and pion decay to one constant. Pion decay's helicity suppression of the electron channel is the sharpest test.\n",{"path":19212,"title":19213,"module":19209,"summary":19214},"\u002Fparticle-physics\u002Fweak-interaction\u002Fw-z-bosons-decays","The W and Z Bosons","The contact theory hides a massive mediator. The charged $W^\\pm$ carries the current that changes flavour; the neutral $Z^0$ carries a current that does not. Both were found at CERN's proton–antiproton collider in 1983 at the masses the electroweak theory demanded. Their decay widths partition into leptonic and hadronic channels, and the $Z$ carries a decisive extra: an invisible width from decays to neutrinos that counts the number of light generations at exactly three. Beta decay and muon decay are re-read at the parton level as $W$ exchange.\n",{"path":19216,"title":19217,"module":19209,"summary":19218},"\u002Fparticle-physics\u002Fweak-interaction\u002Fckm-matrix","Quark Mixing and the CKM Matrix","The quark eigenstates the weak force acts on are not the mass eigenstates. Cabibbo captured this with one rotation angle; the GIM mechanism added a fourth quark to cancel dangerous flavour-changing neutral currents and predicted charm before its discovery. Three generations promote the rotation to the unitary Cabibbo–Kobayashi–Maskawa matrix — three angles and one irreducible complex phase, the sole source of Standard-Model CP violation. The Wolfenstein parametrization exposes its steep hierarchy, and unitarity closes into a triangle whose area measures the phase.\n",{"path":19220,"title":19221,"module":19209,"summary":19222},"\u002Fparticle-physics\u002Fweak-interaction\u002Fcp-violation-kaons-b-mesons","CP Violation in Kaons and B Mesons","The neutral kaon is its own laboratory for CP. Weak box diagrams mix $K^0$ and its antiparticle into short- and long-lived states that should be pure CP eigenstates decaying to two and three pions. In 1964 Cronin and Fitch caught the long-lived kaon decaying to two pions — CP is violated, at the two-per-mille level of $\\epsilon$. Direct violation ($\\epsilon'$) followed, and the $B$ factories turned the CKM phase into a large, clean time-dependent asymmetry measuring $\\sin 2\\beta$. The effect is real but far too small to explain why the universe is made of matter.\n",{"path":19224,"title":19225,"module":19226,"summary":19227},"\u002Fparticle-physics\u002Fqcd\u002Fcolor-su3-gluons","Color SU(3), Gluons, and the QCD Lagrangian","Quantum Chromodynamics","Color is the exact gauged SU(3) charge of the strong force. Gauging it forces eight massless gluons in the adjoint representation and, because the gauge group is non-abelian, three- and four-gluon self-couplings absent from QED. This lesson builds the QCD Lagrangian from the covariant derivative and the non-abelian field strength, states the Feynman rules with their color factors, and computes the Casimir invariants that set the strength of quark-gluon and gluon-gluon coupling.\n",{"path":19229,"title":19230,"module":19226,"summary":19231},"\u002Fparticle-physics\u002Fqcd\u002Fasymptotic-freedom-confinement","Asymptotic Freedom and Confinement","The QCD beta function is negative: gluon self-interaction antiscreens color, so the coupling weakens at short distance (asymptotic freedom) and strengthens at long distance (confinement). This lesson computes the one-loop beta coefficient, solves for the running of alpha_s and the emergent scale Lambda_QCD, and reads the strong-coupling regime as the linear quark-antiquark potential of a color flux tube that breaks by pair creation.\n",{"path":19233,"title":19234,"module":19226,"summary":19235},"\u002Fparticle-physics\u002Fqcd\u002Fdeep-inelastic-scattering-partons","Deep Inelastic Scattering and the Parton Model","Scattering electrons hard off a proton resolves pointlike constituents. This lesson sets up the deep-inelastic kinematics, defines the structure functions F1 and F2, and reads Bjorken scaling as the signature of free spin-half partons. The Callan-Gross relation fixes the parton spin, the structure function becomes a charge-weighted sum of parton distributions, and the slow logarithmic scaling violations expose the gluon through DGLAP evolution.\n",{"path":19237,"title":19238,"module":19226,"summary":19239},"\u002Fparticle-physics\u002Fqcd\u002Fjets-hadronization","Jets, Hadronization, and Testing QCD","Quarks and gluons produced in a collision fragment into collimated sprays of hadrons — jets — whose directions track the underlying partons. This lesson reads two-jet events as the quark and antiquark of electron-positron annihilation, three-jet events as direct evidence of the radiated gluon, and the hadronization step as the flux tube breaking into color singlets. Jet algorithms and event-shape variables turn the pattern into precision measurements of alpha_s.\n",{"path":19241,"title":19242,"module":19243,"summary":19244},"\u002Fparticle-physics\u002Felectroweak-higgs\u002Felectroweak-su2-u1","The Electroweak Theory","Electroweak Unification and the Higgs","The electromagnetic and weak interactions are two faces of a single gauge theory built on $SU(2)_L \\times U(1)_Y$. Left-handed fermions sit in weak-isospin doublets and right-handed fermions in singlets, each carrying a hypercharge fixed by the Gell-Mann–Nishijima relation $Q = T_3 + Y\u002F2$. The four gauge fields $W^{1,2,3}$ and $B$ mix: the charged combinations $W^\\pm$ mediate the charged current, while $W^3$ and $B$ rotate through the Weinberg angle into the massless photon and the massive $Z$. The single angle $\\theta_W$ ties the couplings, the boson masses, and the neutral-current strengths together.\n",{"path":19246,"title":19247,"module":19243,"summary":19248},"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fspontaneous-symmetry-breaking","Spontaneous Symmetry Breaking","A symmetry of the Lagrangian need not be a symmetry of the ground state. When the lowest-energy configuration sits away from the symmetric point, the symmetry is spontaneously broken and the vacuum is one of a degenerate family. Breaking a continuous global symmetry produces one massless scalar — a Goldstone boson — for every broken generator, the flat direction along the vacuum manifold. The Mexican-hat potential and the ferromagnet below its Curie point are the working pictures.\n",{"path":19250,"title":19251,"module":19243,"summary":19252},"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-mechanism","The Higgs Mechanism","Gauging a spontaneously broken symmetry converts the would-be Goldstone bosons into the longitudinal polarizations of the gauge fields, which thereby acquire mass. Applied to $SU(2)_L \\times U(1)_Y$ with a single Higgs doublet, three of the four scalar degrees of freedom are eaten by the $W^\\pm$ and $Z$; the fourth survives as the physical Higgs boson, and the photon stays massless. Fermion masses come from Yukawa couplings to the same field, each mass proportional to its coupling times the vacuum expectation value $v \\approx 246$ GeV.\n",{"path":19254,"title":19255,"module":19243,"summary":19256},"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fhiggs-boson-discovery","The Higgs Boson","The Higgs boson is produced at the LHC chiefly through gluon fusion, with vector-boson fusion and associated production as cleaner but rarer channels. It decays most often to $b\\bar b$ and $WW^\\ast$, but the discovery rested on two rare clean modes, $H \\to \\gamma\\gamma$ and $H \\to ZZ^\\ast \\to 4\\ell$, whose narrow invariant-mass peaks emerged over smooth backgrounds. ATLAS and CMS announced a boson near 125 GeV in 2012; its measured spin-parity $0^+$ and its couplings, which scale with particle mass, identify it as the Standard Model Higgs.\n",{"path":19258,"title":19259,"module":19243,"summary":19260},"\u002Fparticle-physics\u002Felectroweak-higgs\u002Fstandard-model","The Standard Model","The Standard Model combines the quark model, quantum chromodynamics, and the electroweak theory. SU(3) symmetry sorts the hadrons and predicted the omega; color explains why only colorless quark combinations exist; QCD gives asymptotic freedom and confinement; and spontaneous symmetry breaking through the Higgs field gives the weak bosons their mass.\n",{"path":19262,"title":19263,"module":19264,"summary":19265},"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-oscillations","Neutrino Oscillations","Neutrino Physics","Neutrinos are produced and detected in flavour states, but they propagate as mass states, and the two bases are misaligned. A flavour therefore evolves coherently into a superposition of other flavours with a probability set by the mass-squared splitting and the ratio L\u002FE. This lesson derives the two-flavour oscillation formula, applies it to the solar and atmospheric neutrino deficits, shows how the SNO neutral-current measurement resolved the solar problem, and works out the MSW resonance that amplifies mixing inside the Sun.\n",{"path":19267,"title":19268,"module":19264,"summary":19269},"\u002Fparticle-physics\u002Fneutrinos\u002Fneutrino-mass-pmns","Neutrino Mass and the PMNS Matrix","Three-flavour mixing promotes the single oscillation angle to the unitary Pontecorvo–Maki–Nakagawa–Sakata matrix, parametrised by three angles and a Dirac CP phase. This lesson decomposes the PMNS matrix into three rotations, records the measured angles and mass-squared splittings, lays out the normal and inverted mass orderings, contrasts the large leptonic mixing with the near-diagonal CKM matrix, and collects the absolute-mass bounds from beta decay and cosmology.\n",{"path":19271,"title":19272,"module":19264,"summary":19273},"\u002Fparticle-physics\u002Fneutrinos\u002Fdirac-majorana-experiments","Dirac, Majorana, and Neutrino Experiments","A neutral fermion can carry a mass term forbidden to every charged particle, so the neutrino may be its own antiparticle. This lesson contrasts the Dirac and Majorana mass terms and their state content, derives the seesaw mechanism that ties a tiny light mass to a heavy right-handed partner, presents neutrinoless double-beta decay as the decisive lepton-number test, surveys the reactor, accelerator, solar, and atmospheric sources on a baseline–energy map, and explains why neutrino mass is physics beyond the original Standard Model.\n",{"path":19275,"title":19276,"module":19277,"summary":19278},"\u002Fparticle-physics\u002Fexperiment\u002Faccelerators-luminosity","Accelerators, Colliders, and Luminosity","Accelerators and Detectors","Fixed-target machines waste energy in the center-of-mass motion of the whole system, so the reachable $\\sqrt s$ grows only as the square root of the beam energy, while colliders put the full beam energy into the collision. Circular electron machines are limited by synchrotron radiation scaling as $E^4\u002Fm^4R$; proton machines are limited by bending fields. Luminosity, set by beam current and focusing, converts a cross section into an event rate through $R=\\mathcal L\\,\\sigma$, and integrated luminosity sets the total event count.\n",{"path":19280,"title":19281,"module":19277,"summary":19282},"\u002Fparticle-physics\u002Fexperiment\u002Fdetectors-subsystems","Particle Detectors and Subsystems","A detector reads a collision by the energy particles deposit as they cross matter. Charged particles ionize at the Bethe-Bloch rate, radiate in the field of nuclei above a critical energy, and emit Cherenkov light above a velocity threshold; electrons and photons build electromagnetic showers over a radiation length, and hadrons build wider showers over a nuclear interaction length. The onion of tracker, electromagnetic and hadronic calorimeters, and outer muon chambers turns these processes into momentum, energy, and identity, with neutrinos inferred from missing transverse momentum.\n",{"path":19284,"title":19285,"module":19277,"summary":19286},"\u002Fparticle-physics\u002Fexperiment\u002Fhow-discoveries-are-made","From Collisions to Discoveries","A discovery is a peak that survives statistics. Events are reconstructed into invariant masses, a signal accumulates as a bump over a smooth background, and its significance is judged by a p-value; the field's threshold is five sigma. The expected yield is a product — luminosity times cross section times branching ratio times acceptance and efficiency — that must be balanced by a trigger and data-reduction chain against an overwhelming rate. Worked reconstructions of $Z\\to\\ell\\ell$, the $J\u002F\\psi$, and the Higgs show the same peak-over-background logic at three scales.\n",{"path":19288,"title":19289,"module":19289,"summary":19290},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fbeyond-standard-model","Beyond the Standard Model","The Standard Model leaves the four interactions ununified and the neutrinos massless, both now known to be wrong. Grand unification predicts the couplings merge near ten-to-the-sixteen GeV and the proton decays; supersymmetry pairs each particle with a superpartner; and the confirmed oscillation of neutrinos proves they carry mass, the first crack in the model.\n",{"path":19292,"title":19293,"module":19289,"summary":19294},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fgrand-unified-theories","Grand Unified Theories and Proton Decay","The Standard Model gauge group is a product of three factors with three independent couplings. A grand unified theory embeds them in a single simple group — SU(5) is the minimal choice — so that one coupling runs into all three and the fractional quark charges follow from a tracelessness condition. The same embedding places quarks and leptons in shared multiplets, mediates baryon-number violation through superheavy gauge bosons, and predicts the proton decays with a lifetime that Super-Kamiokande has pushed past ten-to-the-thirty-four years.\n",{"path":19296,"title":19297,"module":19289,"summary":19298},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fsupersymmetry","Supersymmetry","Supersymmetry relates fermions and bosons, pairing every Standard Model particle with a superpartner whose spin differs by one half. The pairing makes the scalar and fermion loop corrections to the Higgs mass cancel, removing the quadratic sensitivity to high scales; it sharpens the meeting of the three gauge couplings; and, when R-parity is conserved, it leaves the lightest superpartner stable and neutral, a natural dark-matter candidate. The LHC has excluded gluinos and light squarks below roughly two TeV.\n",{"path":19300,"title":19301,"module":19289,"summary":19302},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fhierarchy-problem-naturalness","The Hierarchy Problem and Naturalness","The electroweak scale sits sixteen orders of magnitude below the Planck scale, and nothing in the Standard Model protects that gap. The Higgs mass squared picks up quadratic corrections proportional to the highest scale in the theory, so keeping it at the observed value requires the bare mass and its counterterm to cancel to some thirty significant figures. Naturalness treats that cancellation as a symptom of missing physics. Supersymmetry, compositeness, and extra dimensions each remove the quadratic sensitivity, but the LHC has found none of them at the predicted scale.\n",{"path":19304,"title":19305,"module":19289,"summary":19306},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fdark-matter-candidates","Dark Matter and Particle Candidates","Flat galactic rotation curves, gravitational lensing, the cosmic microwave background, and structure formation all require about five times more matter than the visible baryons, none of it interacting electromagnetically. A stable weakly interacting particle of roughly weak-scale mass freezes out of the early universe with close to the observed abundance — the WIMP miracle — and is the leading candidate, with axions and sterile neutrinos as alternatives. Direct, indirect, and collider searches have so far only tightened the limits.\n",{"path":19308,"title":19309,"module":19289,"summary":19310},"\u002Fparticle-physics\u002Fbeyond-standard-model\u002Fmatter-antimatter-open-questions","Matter-Antimatter Asymmetry and Open Questions","The universe is made of matter, with about one extra baryon for every billion photons and no antimatter regions. Sakharov identified the three conditions any dynamical explanation must meet: baryon-number violation, C and CP violation, and a departure from thermal equilibrium. The Standard Model contains all three in principle, but its CP violation falls short by some ten orders of magnitude, so baryogenesis requires new physics — leptogenesis being the leading route. A closing survey collects the open questions and the experiments aimed at them.\n",{"path":19312,"title":19313,"module":6,"summary":6},"\u002Fparticle-physics","Particle Physics",{"path":19315,"title":19316,"module":19317,"summary":19318},"\u002Fastrophysics-cosmology\u002Forientation\u002Fthe-sun-and-stars","The Sun and the Life of Stars","Orientation","The Sun is the one star close enough to study in detail: its luminosity fixes a surface temperature of 5780 K, and the proton-proton fusion cycle in its 1.5-million-kelvin core supplies its power. Measuring other stars needs the magnitude scale, parallax, and the distance ladder; plotting luminosity against temperature builds the Hertzsprung-Russell diagram, on which a star's mass sets its lifetime and its evolutionary track off the main sequence.\n",{"path":19320,"title":19321,"module":19317,"summary":19322},"\u002Fastrophysics-cosmology\u002Forientation\u002Fstellar-death-final-states","Cataclysmic Events and the Final States of Stars","A star's death is set by its mass. In close binaries, matter poured across the Roche lobe onto a white dwarf produces novae and, at the Chandrasekhar limit of 1.4 solar masses, a Type Ia supernova; a massive star fusing to an iron core collapses into a Type II supernova. The remnant is a white dwarf held by electron degeneracy, a neutron star held by neutron degeneracy, or, above the neutron-star limit, a black hole inside its Schwarzschild radius.\n",{"path":19324,"title":19325,"module":19317,"summary":19326},"\u002Fastrophysics-cosmology\u002Forientation\u002Fgalaxies-and-cosmology","Galaxies, Cosmology, and the Evolving Universe","Galaxies come in elliptical, spiral, and irregular forms, and their redshifts obey Hubble's law, evidence that space itself is expanding. The critical density and the density parameter decide whether the universe is open, flat, or closed; baryons, dark matter, and dark energy each contribute. The cosmic microwave background and primordial helium anchor the Big Bang, whose thermal history runs from inflation through nucleosynthesis to the atoms of today.\n",{"path":19328,"title":19329,"module":19330,"summary":19331},"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fmagnitudes-fluxes-and-the-distance-modulus","Magnitudes, Fluxes, and the Distance Modulus","Observational Foundations","The brightness of a star reaches us as a radiant flux that falls off as the inverse square of distance. The magnitude scale encodes flux logarithmically through the Pogson ratio; the apparent and absolute magnitudes differ by the distance modulus, which converts a measured brightness into a distance. The bolometric correction folds a filtered magnitude into a total luminosity, and the difference of two magnitudes in different bands, the color index, measures surface temperature.\n",{"path":19333,"title":19334,"module":19330,"summary":19335},"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fstellar-spectra-and-spectral-classification","Stellar Spectra and Spectral Classification","A stellar spectrum is a continuum crossed by absorption lines whose strengths are set by the temperature of the atmosphere. The Boltzmann factor governs how atoms populate excited states, and the Saha equation governs how they ionize; their product explains why each line, such as the hydrogen Balmer series, peaks in strength at a characteristic temperature. This behavior orders stars into the OBAFGKM sequence, and the luminosity classes of the MK system add a second dimension for surface gravity.\n",{"path":19337,"title":19338,"module":19330,"summary":19339},"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Ftelescopes-and-detectors-across-the-spectrum","Telescopes and Detectors Across the Spectrum","A telescope collects light in proportion to its collecting area and resolves detail down to the diffraction limit set by its aperture and the observing wavelength. The atmosphere blurs and blocks large parts of the spectrum, which drives the choice between ground and space and between refractors, reflectors, and radio dishes. CCDs record the light with high quantum efficiency, and interferometry synthesizes an aperture as large as the separation of two telescopes.\n",{"path":19341,"title":19342,"module":19330,"summary":19343},"\u002Fastrophysics-cosmology\u002Fobservational-foundations\u002Fthe-cosmic-distance-ladder","The Cosmic Distance Ladder","No single method measures distances from the nearest stars to the far reaches of the universe. Instead a ladder of overlapping techniques, each calibrated by the one below it, extends the scale rung by rung: trigonometric parallax, main-sequence fitting, pulsating variables, the tip of the red-giant branch, the Tully-Fisher relation, and Type Ia supernovae. Each rung inherits the uncertainty of every rung beneath it, so the whole chain sets the accuracy of the Hubble constant.\n",{"path":19345,"title":19346,"module":19347,"summary":19348},"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fblackbody-radiation-and-specific-intensity","Blackbody Radiation and Specific Intensity","Radiation and Matter","Specific intensity is the fundamental measure of a radiation field: energy per unit area, time, frequency, and solid angle. It is conserved along a ray in empty space, and its angular moments give the mean intensity, flux, and radiation pressure. In thermal equilibrium the intensity equals the Planck function, whose limits and integrals reproduce the Rayleigh-Jeans law, the Wien law, Stefan-Boltzmann, and Wien's displacement law.\n",{"path":19350,"title":19351,"module":19347,"summary":19352},"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fradiative-transfer-and-the-transfer-equation","Radiative Transfer and the Transfer Equation","Along a ray, matter adds intensity through emission and removes it through absorption. Measuring path length in optical depth turns this into the transfer equation, whose formal solution superposes an attenuated background on the source function integrated along the line of sight. In local thermodynamic equilibrium the source function is the Planck function, and the Eddington-Barbier relation shows that the emergent intensity samples the source function at optical depth of order unity, explaining absorption lines and solar limb darkening.\n",{"path":19354,"title":19355,"module":19347,"summary":19356},"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fspectral-line-formation-and-broadening","Spectral-Line Formation and Broadening","A spectral line is a bound-bound transition whose strength is set by an oscillator strength and whose shape is set by three broadening mechanisms: the Lorentzian natural and collisional wings, the Gaussian thermal Doppler core, and their Voigt convolution. Equivalent width measures the total absorption, and the curve of growth relates it to the number of absorbers through a linear, saturated, and damping regime, turning line strengths into abundances.\n",{"path":19358,"title":19359,"module":19347,"summary":19360},"\u002Fastrophysics-cosmology\u002Fradiation-and-matter\u002Fopacity-and-the-rosseland-mean","Opacity Sources and the Rosseland Mean","Stellar opacity comes from four processes: bound-bound line absorption, bound-free photoionization, free-free absorption, and electron scattering. The bound-free and free-free terms follow a Kramers law, electron scattering sets a frequency-flat floor, and the negative hydrogen ion dominates cool photospheres. The Rosseland mean averages these harmonically, weighting transparent frequencies because they carry the flux, and its value fixes the radiative temperature gradient and decides where a star becomes convective.\n",{"path":19362,"title":19363,"module":19364,"summary":19365},"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fhydrostatic-equilibrium-and-the-virial-theorem","Hydrostatic Equilibrium and the Virial Theorem","Stellar Structure","A star holds itself up by balancing the inward pull of gravity against an outward pressure gradient. This balance, hydrostatic equilibrium, fixes a lower bound on the central pressure and, combined with the gravitational potential energy, yields the virial theorem. The virial relation gives a star a negative heat capacity, so that losing energy makes it hotter, and sets the Kelvin-Helmholtz timescale over which contraction alone can power the Sun.\n",{"path":19367,"title":19368,"module":19364,"summary":19369},"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equations-of-stellar-structure","The Equations of Stellar Structure","A static star is described by four coupled first-order differential equations in the interior mass or radius: mass conservation, hydrostatic equilibrium, energy generation, and energy transport. Closed with an equation of state, opacity, and reaction rates, and subject to central and surface boundary conditions, they determine the structure uniquely from mass and composition, the Vogt-Russell theorem. Energy moves by radiation until the temperature gradient exceeds the Schwarzschild limit, where convection takes over.\n",{"path":19371,"title":19372,"module":19364,"summary":19373},"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-equation-of-state-and-polytropes","The Equation of State and Polytropes","Stellar pressure comes from gas, radiation, and, at high density, degenerate electrons. When pressure depends on density as a power law, hydrostatic equilibrium reduces to the Lane-Emden equation, whose solutions describe polytropes of index n. The relativistic degenerate case, n equal to three, gives a mass independent of radius, the Chandrasekhar mass. Eddington's standard model treats a radiation-supported star as an n equal to three polytrope and yields the quartic relating radiation fraction to mass.\n",{"path":19375,"title":19376,"module":19364,"summary":19377},"\u002Fastrophysics-cosmology\u002Fstellar-structure\u002Fthe-standard-solar-model","The Standard Solar Model","The standard solar model integrates the structure equations for one solar mass and calibrates the composition and convection parameter to reproduce the Sun's observed luminosity, radius, and age. Helioseismology tests the model's sound speed through the Sun's acoustic p-mode oscillations, and the model predicts a neutrino flux by production channel. The measured deficit, the solar-neutrino problem, is resolved by matter-enhanced flavor oscillation, confirmed when SNO measured the total flux across all flavors.\n",{"path":19379,"title":19380,"module":19381,"summary":19382},"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fthermonuclear-reaction-rates-and-the-gamow-peak","Thermonuclear Reaction Rates and the Gamow Peak","Nuclear Astrophysics","Stellar fusion proceeds only by quantum tunneling through the Coulomb barrier, because thermal energies are a thousand times smaller than the barrier height. The reaction rate is an integral over the Maxwell–Boltzmann distribution and the tunneling probability, whose product is sharply peaked at the Gamow energy. The astrophysical S-factor isolates the nuclear physics from the barrier penetration, and the steep temperature dependence follows from the width and position of the Gamow peak.\n",{"path":19384,"title":19385,"module":19381,"summary":19386},"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhydrogen-burning-pp-chains-and-cno","Hydrogen Burning: pp Chains and the CNO Cycle","Four protons fuse into one helium-4 nucleus, releasing 26.7 MeV, through two competing networks. The pp chain begins with a weak-interaction bottleneck and branches three ways; the CNO cycle uses carbon, nitrogen, and oxygen as catalysts and is limited by nitrogen-14 proton capture. Their steep and gentle temperature dependences cross near 1.8e7 K, which divides pp-powered lower-main-sequence stars from CNO-powered upper-main-sequence stars.\n",{"path":19388,"title":19389,"module":19381,"summary":19390},"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fhelium-burning-and-the-triple-alpha-process","Helium Burning and the Triple-Alpha Process","Helium fuses to carbon in two steps through the unbound beryllium-8 nucleus and a resonant excited state of carbon-12, the Hoyle state, whose existence was predicted from the observed carbon abundance. The rate scales as roughly the fortieth power of temperature, and in a degenerate low-mass core this drives the runaway helium flash. A competing alpha capture on carbon-12 sets the carbon-to-oxygen ratio and the composition of the resulting white dwarf.\n",{"path":19392,"title":19393,"module":19381,"summary":19394},"\u002Fastrophysics-cosmology\u002Fnuclear-astrophysics\u002Fadvanced-burning-and-neutron-capture-nucleosynthesis","Advanced Burning, the Iron Peak, and the s\u002Fr Processes","Massive stars burn carbon, neon, oxygen, and silicon in ever-shorter stages, building an onion-shell interior and reaching nuclear statistical equilibrium at the iron peak, where the binding-energy-per-nucleon curve turns over and fusion can release no more energy. Elements beyond iron form by neutron capture: the slow s-process in AGB stars tracks the valley of stability, while the rapid r-process in supernovae and neutron-star mergers builds the heaviest nuclei far from it.\n",{"path":19396,"title":19397,"module":19398,"summary":19399},"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fphases-of-the-interstellar-medium","The Phases of the Interstellar Medium","The Interstellar Medium","The gas between the stars separates into distinct thermal phases, from cold molecular clouds at 10 K to a diffuse million-degree corona, held near a common pressure by a balance of photoelectric heating and radiative cooling. Neutral hydrogen is traced by the 21-cm hyperfine line, dust reddens and extinguishes starlight along a characteristic wavelength law, and the ultraviolet output of hot stars carves ionized Strömgren spheres out of the surrounding gas.\n",{"path":19401,"title":19402,"module":19398,"summary":19403},"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fmolecular-clouds-and-gravitational-collapse","Molecular Clouds and Gravitational Collapse","Stars form in cold, dense molecular clouds when self-gravity overcomes thermal and magnetic support. The virial theorem fixes the Jeans mass and length at which a clump becomes unstable, the free-fall time sets how fast it collapses, and a fragmentation cascade — cut off at a minimum mass by the onset of opacity — turns one cloud into a whole cluster, imprinting the stellar initial mass function.\n",{"path":19405,"title":19406,"module":19398,"summary":19407},"\u002Fastrophysics-cosmology\u002Fism-and-star-formation\u002Fprotostars-and-the-pre-main-sequence","Protostars and Pre-Main-Sequence Evolution","A collapsing core becomes optically thick and forms a protostar that grows by accretion through a disk while driving bipolar outflows. The newborn star appears on the birthline and contracts down the fully convective Hayashi track, then crosses the radiative Henyey track to the zero-age main sequence, powered by gravitational contraction until hydrogen ignites. Below about 0.08 solar masses degeneracy halts contraction before ignition, dividing stars from brown dwarfs.\n",{"path":19409,"title":19410,"module":19411,"summary":19412},"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-main-sequence-and-its-structure","The Main Sequence and Its Structure","Stellar Evolution","A star settles onto the zero-age main sequence when core hydrogen ignition halts contraction. Homology scaling of the structure equations reproduces the mass–luminosity relation, and the burning mode splits the sequence into an upper branch with a convective core and a lower branch with a convective envelope. The main-sequence lifetime falls steeply with mass, and the turnoff of a coeval cluster serves as a clock.\n",{"path":19414,"title":19415,"module":19411,"summary":19416},"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fpost-main-sequence-low-mass-evolution","Post-Main-Sequence Evolution of Low-Mass Stars","When a low-mass star exhausts core hydrogen, burning moves to a shell, the core contracts, and the envelope swells into a red giant. A degenerate helium core ignites in a flash, settles onto the horizontal branch, and after a second contraction the star climbs the asymptotic giant branch with two burning shells. Thermal pulses and dredge-up enrich the surface, and mass loss ejects a planetary nebula, leaving a carbon–oxygen white dwarf.\n",{"path":19418,"title":19419,"module":19411,"summary":19420},"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fthe-evolution-of-massive-stars","The Evolution of Massive Stars","Stars above about eight solar masses burn through hydrogen, helium, carbon, neon, oxygen, and silicon in stages that grow shorter as neutrino losses accelerate contraction. The interior becomes an onion of concentric burning shells around an inert iron core. Radiation pressure near the Eddington limit drives fierce winds that can strip the hydrogen envelope entirely, and silicon burning builds an iron core toward the threshold of collapse.\n",{"path":19422,"title":19423,"module":19411,"summary":19424},"\u002Fastrophysics-cosmology\u002Fstellar-evolution\u002Fstellar-pulsation-and-the-instability-strip","Stellar Pulsation and the Instability Strip","Radial pulsation is a standing sound wave whose period scales inversely with the square root of the mean density. The kappa mechanism, an opacity valve seated in the helium partial-ionization zone, turns a star into a heat engine that pumps the oscillation. Stars in the instability strip pulsate as Cepheids, RR Lyrae, and Mira variables, and the Cepheid period–luminosity relation calibrates the distance ladder.\n",{"path":19426,"title":17842,"module":19427,"summary":19428},"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fwhite-dwarfs-and-the-chandrasekhar-limit","Stellar Death and Compact Remnants","A white dwarf is held up by the degeneracy pressure of its electrons, a quantum-mechanical stiffness that survives to zero temperature. Filling the Fermi sea sets a pressure that scales as density to the five-thirds power when the electrons are slow and only four-thirds when they are relativistic. The softer relativistic law produces the inverted mass-radius relation and a maximum mass, the Chandrasekhar limit near 1.4 solar masses, above which no cold equilibrium exists. Cooling and crystallization then turn the white-dwarf population into a clock for the Galactic disk.\n",{"path":19430,"title":19431,"module":19427,"summary":19432},"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fcore-collapse-supernovae","Core-Collapse Supernovae","When a massive star builds an iron core past the Chandrasekhar mass, degeneracy fails and the core collapses in less than a second. Photodisintegration and electron capture remove pressure support and neutronize the matter; the collapse halts abruptly at nuclear density, launching a shock that stalls and is revived by neutrino heating. The event is a Type II or stripped-envelope Ib\u002FIc supernova, and the neutrinos from SN 1987A confirmed the picture directly.\n",{"path":19434,"title":19435,"module":19427,"summary":19436},"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fthermonuclear-supernovae-type-ia","Thermonuclear Supernovae","A carbon-oxygen white dwarf driven toward the Chandrasekhar mass ignites its degenerate fuel and unbinds itself in a thermonuclear runaway, the Type Ia supernova. The light curve is powered by the radioactive decay of nickel-56 to cobalt-56 to iron-56, and the Phillips relation between peak brightness and decline rate makes these events standardizable candles. Their near-uniform luminosity turns them into the distance indicators that revealed cosmic acceleration.\n",{"path":19438,"title":19439,"module":19427,"summary":19440},"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fneutron-stars-and-pulsars","Neutron Stars and Pulsars","A neutron star is held up by neutron degeneracy and the repulsive nuclear force, with a maximum mass, the Tolman-Oppenheimer-Volkoff limit, set by an uncertain dense-matter equation of state. Its rotating magnetic dipole sweeps a beam past Earth as a pulsar, and magnetic braking traces a track across the period-period- derivative diagram. Millisecond pulsars, magnetars, glitches, and the orbital decay of the Hulse-Taylor binary follow from the same structure.\n",{"path":19442,"title":19443,"module":19427,"summary":19444},"\u002Fastrophysics-cosmology\u002Fstellar-death-and-compact-remnants\u002Fblack-holes-schwarzschild-and-kerr","Black Holes, Schwarzschild and Kerr","Above the neutron-star mass limit gravity wins completely and the remnant is a black hole. The Schwarzschild solution gives the event horizon, gravitational redshift, and time dilation; the innermost stable circular orbit sets the efficiency of accretion. Rotating Kerr black holes drag spacetime and carry an ergosphere. Stellar-mass black holes are found in X-ray binaries, and the Event Horizon Telescope has imaged the shadow of a supermassive one.\n",{"path":19446,"title":19447,"module":19448,"summary":19449},"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fbinary-systems-and-mass-transfer","Binary Systems and Mass Transfer","Binaries and Gravitational Waves","Most stars are born in pairs, and a binary is the only setting where a stellar mass can be measured directly. Visual, spectroscopic, and eclipsing binaries each expose a different combination of the orbital elements, and together they calibrate the mass-luminosity relation. When one star swells to fill its Roche lobe, gas streams through the inner Lagrange point onto its companion. Conservative transfer widens or shrinks the orbit depending on the mass ratio, and the sign of that response explains the Algol paradox.\n",{"path":19451,"title":19452,"module":19448,"summary":19453},"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Faccreting-compact-objects","Accreting Compact Objects","Gas falling onto a compact object converts gravitational binding energy into radiation with an efficiency set by the depth of the potential well, up to tens of percent of the rest mass for a neutron star or black hole. Angular momentum forces the flow into a disk, and viscous dissipation gives a temperature profile that falls as radius to the minus three-quarters, producing a multicolor blackbody spectrum. Radiation pressure caps the steady luminosity at the Eddington limit. Unstable nuclear burning of the accreted fuel powers classical novae on white dwarfs and Type I X-ray bursts on neutron stars.\n",{"path":19455,"title":19456,"module":19448,"summary":19457},"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fgravitational-waves-from-inspiraling-binaries","Gravitational Waves from Inspiraling Binaries","A time-varying mass quadrupole radiates gravitational waves, ripples in spacetime that stretch and squeeze a ring of free masses along two polarizations. The radiated power drains a binary's orbital energy, shrinking the orbit and sweeping the wave frequency upward in a chirp whose rate fixes the chirp mass. Laser interferometers with kilometre arms measure the resulting strain of order ten to the minus twenty-one. The first detection, GW150914, matched a template for two merging black holes near thirty solar masses each.\n",{"path":19459,"title":19460,"module":19448,"summary":19461},"\u002Fastrophysics-cosmology\u002Fbinaries-and-gravitational-waves\u002Fmultimessenger-astronomy-and-gamma-ray-bursts","Multimessenger Astronomy and Gamma-Ray Bursts","Gamma-ray bursts split into two populations: long bursts from the collapse of massive stars and short bursts from merging compact objects. The compactness problem forces the emitting plasma to move at ultra-relativistic speed, beaming the radiation into a narrow jet. The neutron-star merger GW170817 tied a gravitational chirp to a short gamma-ray burst, a radioactive kilonova, and a broadband afterglow, confirming that mergers forge r-process elements. A merger with a measured redshift is a standard siren that reads the Hubble constant from gravitational data alone.\n",{"path":19463,"title":19464,"module":19465,"summary":19466},"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fthe-milky-way","The Milky Way Galaxy","Galaxies and Dark Matter","The Galaxy resolves into a thin disk of gas and young stars, a central bar and bulge, and a diffuse old halo studded with globular clusters. Star counts and the reddening of distant light map these components, while the differential rotation of the disk — encoded in the Oort constants and the flat rotation curve — measures the enclosed mass and reveals more than the stars can account for. Spiral arms are density waves, not material structures, and the innermost stellar orbits around Sgr A* weigh a four-million-solar-mass black hole.\n",{"path":19468,"title":19469,"module":19465,"summary":19470},"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-morphology-and-classification","Galaxy Morphology and Classification","Galaxies sort along the Hubble tuning fork from smooth ellipticals through lenticulars to grand-design and barred spirals, with irregulars off the end. The light of a spheroid follows the de Vaucouleurs quarter-power law while a disk fades exponentially, and the general Sérsic profile interpolates between them. Virial scaling relations — Tully–Fisher for disks, Faber–Jackson and the fundamental plane for spheroids — tie luminosity to internal motions, and the Schechter function fixes the abundance of galaxies as a function of luminosity.\n",{"path":19472,"title":19473,"module":19465,"summary":19474},"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-rotation-curves-and-dark-matter","Galaxy Rotation Curves and Dark Matter","The rotation curves of disk galaxies stay flat far beyond the light, demanding an extended halo whose density falls as the inverse square of radius. Decomposing the curve into disk, bulge, and halo, and fitting isothermal or NFW profiles, quantifies the missing mass. Gravitational lensing weighs the same mass without dynamics, the mass-to-light ratio climbs from stars to clusters, and the Bullet Cluster separates the collisionless dark matter from the colliding gas — evidence that MOND strains to match.\n",{"path":19476,"title":19477,"module":19465,"summary":19478},"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Factive-galactic-nuclei-and-supermassive-black-holes","Active Galactic Nuclei","A small fraction of galaxies pour out enormous luminosity from a region smaller than the solar system. Accretion onto a supermassive black hole, limited by the Eddington balance of radiation pressure and gravity, powers the Seyferts, quasars, radio galaxies, and blazars — one engine seen from different angles through an obscuring torus. Relativistic jets produce apparent superluminal motion, reverberation mapping and stellar dynamics weigh the central mass, and the M–sigma relation ties that mass to the host bulge.\n",{"path":19480,"title":19481,"module":19465,"summary":19482},"\u002Fastrophysics-cosmology\u002Fgalaxies\u002Fgalaxy-clusters-and-large-scale-structure","Galaxy Clusters and Large-Scale Structure","Galaxies gather into groups and rich clusters bound by a common dark halo and filled with hot X-ray gas. Three independent probes — the virial theorem, the hydrostatic X-ray temperature, and gravitational lensing — agree on a mass that dwarfs the stars. On the largest scales galaxies trace a cosmic web of filaments, walls, and voids, quantified by the two-point correlation function, whose baryon acoustic oscillation bump provides a standard ruler for cosmology.\n",{"path":19484,"title":19485,"module":19486,"summary":19487},"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-expanding-universe-and-hubbles-law","The Expanding Universe and Hubble's Law","Cosmic Expansion and Dynamics","The universe is homogeneous and isotropic on large scales, so its expansion is captured by a single function of time, the scale factor. Comoving coordinates stay fixed while proper distances grow in proportion to the scale factor, producing Hubble's law and a cosmological redshift that measures stretched space rather than a Doppler shift. A Newtonian energy argument reproduces the dynamics, and the same finite, expanding cosmos resolves Olbers' paradox.\n",{"path":19489,"title":19490,"module":19486,"summary":19491},"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-frw-metric-and-cosmological-redshift","The FRW Metric and Cosmological Redshift","The geometry of a homogeneous, isotropic universe is fixed by symmetry to the Robertson-Walker metric, with the entire freedom reduced to a scale factor and a single curvature constant selecting an open, flat, or closed space. From the metric the null geodesic of light gives comoving distance, the exact cosmological redshift, and the distinction between the proper distance we cannot measure and the redshift we can.\n",{"path":19493,"title":16560,"module":19486,"summary":19494},"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fthe-friedmann-equations-and-cosmic-dynamics","The scale factor obeys the Friedmann equation, the acceleration equation, and the fluid equation, only two of which are independent. An equation of state fixes how each component behaves under expansion, so radiation dilutes as the inverse fourth power of the scale factor, matter as the inverse cube, and vacuum energy not at all. The critical density defines the density parameters, and the deceleration parameter encodes whether gravity or dark energy is winning.\n",{"path":19496,"title":19497,"module":19486,"summary":19498},"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fcosmological-models-and-distances","Cosmological Models and Distances","Integrating the Friedmann equation for particular mixtures gives the benchmark models, from the matter-only Einstein-de Sitter universe to the concordance Lambda-CDM, each with its own scale-factor history and age. Because the redshift is the only direct observable, several distance measures diverge at high redshift, and the angular-diameter distance even turns over so that the most distant objects look larger. The horizon and lookback time set what is causally and observationally reachable.\n",{"path":19500,"title":19501,"module":19486,"summary":19502},"\u002Fastrophysics-cosmology\u002Fcosmology-expansion-and-dynamics\u002Fdark-energy-and-the-accelerating-universe","Dark Energy and the Accelerating Universe","In 1998 two teams found that distant Type Ia supernovae are fainter than a decelerating universe predicts, revealing that the expansion is accelerating and that a component with negative pressure dominates the energy budget. The simplest candidate is the cosmological constant, or vacuum energy, with an equation of state near minus one. It works observationally but leaves two deep puzzles: why the vacuum energy is a hundred and twenty orders of magnitude smaller than expected, and why it is comparable to the matter density just now.\n",{"path":19504,"title":19505,"module":19506,"summary":19507},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fthe-thermal-history-of-the-universe","The Thermal History of the Universe","The Hot Big Bang","Running the expansion backward compresses and heats the universe, so its past is a sequence of thermal epochs set by temperature. Temperature scales as the inverse scale factor; species stay in equilibrium while their interaction rate exceeds the expansion rate and freeze out when it drops below. The effective degrees of freedom count the relativistic species and step down through mass thresholds, and neutrino decoupling just before electron-positron annihilation leaves a relic neutrino background slightly cooler than the photons.\n",{"path":19509,"title":19510,"module":19506,"summary":19511},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fbig-bang-nucleosynthesis","Big Bang Nucleosynthesis","In the first three minutes the weak interactions freeze out the neutron-to-proton ratio, and once deuterium survives photodissociation a fast reaction network converts nearly all free neutrons into helium-4. The primordial abundances of deuterium, helium-3, helium-4, and lithium-7 depend on a single free parameter, the baryon-to-photon ratio, so measuring them fixes the baryon density. The predictions match observation across nine decades of abundance, with a persistent discrepancy in lithium-7.\n",{"path":19513,"title":19514,"module":19506,"summary":19515},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Frecombination-and-the-cosmic-microwave-background","Recombination and the Cosmic Microwave Background","As the universe cooled through a few thousand kelvin the free electrons bound to protons, and the Saha equation tracks the falling ionization fraction. Once the plasma neutralized, photons stopped scattering and streamed freely from a spherical surface of last scattering at redshift about 1100. Those photons are the cosmic microwave background, an almost perfect blackbody at 2.725 kelvin with a dipole from our motion through it.\n",{"path":19517,"title":19518,"module":19506,"summary":19519},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcmb-anisotropies-and-cosmological-parameters","CMB Anisotropies and Cosmological Parameters","The cosmic microwave background carries temperature fluctuations at the ten-parts-per-million level, imprinted by sound waves in the photon-baryon plasma before recombination. Decomposed into spherical harmonics, the fluctuations form an angular power spectrum whose acoustic peaks encode the geometry and contents of the universe: the first peak fixes spatial flatness, the odd-even peak ratio the baryon density, and the third peak the dark-matter density. Polarization adds an independent channel, and the Planck measurements pin the concordance parameters.\n",{"path":19521,"title":19522,"module":19506,"summary":19523},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fcosmic-inflation","Cosmic Inflation","The hot Big Bang leaves three initial-condition puzzles unexplained: why causally disconnected patches share a temperature, why the geometry is so nearly flat, and why no magnetic monopoles are seen. A brief epoch of accelerated expansion driven by a slowly rolling scalar field solves all three by stretching a small causal patch across the observable universe. The same accelerated expansion freezes quantum fluctuations into a near-scale-invariant spectrum of density perturbations, seeding all later structure.\n",{"path":19525,"title":19526,"module":19506,"summary":19527},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fstructure-formation-and-the-growth-of-perturbations","Structure Formation and the Growth of Perturbations","The near-uniform early universe grew its galaxies and clusters by gravitational instability acting on the tiny inflationary perturbations. In an expanding background the growth is slowed to a power law rather than the exponential of a static medium; perturbations stall during radiation domination and grow with the scale factor once matter dominates. The transfer function turns the primordial spectrum into the processed matter power spectrum, and cold dark matter builds structure from the bottom up.\n",{"path":19529,"title":19530,"module":19506,"summary":19531},"\u002Fastrophysics-cosmology\u002Fthe-hot-big-bang\u002Fdark-matter-dark-energy-and-open-questions","Dark Matter, Dark Energy, and Open Questions","Five independent lines of evidence converge on a universe whose energy budget is dominated by dark energy and dark matter, with ordinary baryons a small remainder. The candidate particles for dark matter range from WIMPs to axions to sterile neutrinos, each with its own detection strategy. The concordance model fits the data with six parameters but leaves the nature of dark energy, the Hubble tension, small-scale structure, and the matter-antimatter asymmetry unexplained.\n",{"path":19533,"title":19534,"module":6,"summary":6},"\u002Fastrophysics-cosmology","Astrophysics & Cosmology",{"path":19536,"title":19537,"module":6,"summary":6},"\u002Fcolophon","Colophon",{"path":12748,"title":19539,"module":6,"summary":6},"Study Notes",[19541,19558,19573,19586,19620,19642,19677,19691,19717,19729,19747,19758],{"module":14862,"moduleNumber":2235,"slug":19542,"lessons":19543},"foundations",[19544,19547,19549,19551,19553,19556],{"title":14861,"path":14860,"lessonNumber":2235,"topics":19545,"summary":14863},[14862,19546],"Correctness & Induction",{"title":14866,"path":14865,"lessonNumber":2241,"topics":19548,"summary":14867},[14862,19546],{"title":14870,"path":14869,"lessonNumber":2247,"topics":19550,"summary":14871},[14870],{"title":14874,"path":14873,"lessonNumber":2253,"topics":19552,"summary":14875},[14870],{"title":14877,"path":1921,"lessonNumber":2259,"topics":19554,"summary":14878},[19555],"Recurrences",{"title":14881,"path":14880,"lessonNumber":2265,"topics":19557,"summary":14882},[14881],{"module":14886,"moduleNumber":2241,"slug":19559,"lessons":19560},"divide-and-conquer",[19561,19564,19567,19570],{"title":14885,"path":14884,"lessonNumber":2235,"topics":19562,"summary":14887},[14886,19563],"Comparison Sorting",{"title":14890,"path":14889,"lessonNumber":2241,"topics":19565,"summary":14891},[19563,19566],"Probabilistic Analysis",{"title":14893,"path":260,"lessonNumber":2247,"topics":19568,"summary":14894},[19569,14886],"Order Statistics",{"title":14897,"path":14896,"lessonNumber":2253,"topics":19571,"summary":14898},[14886,19572],"Arithmetic",{"module":14902,"moduleNumber":2247,"slug":19574,"lessons":19575},"sorting",[19576,19579,19581,19584],{"title":14901,"path":14900,"lessonNumber":2235,"topics":19577,"summary":14903},[19578,19563],"Heaps",{"title":14906,"path":14905,"lessonNumber":2241,"topics":19580,"summary":14907},[19563],{"title":14910,"path":14909,"lessonNumber":2247,"topics":19582,"summary":14911},[19583],"Linear-Time Sorting",{"title":14914,"path":14913,"lessonNumber":2253,"topics":19585,"summary":14915},[14914,19563],{"module":14919,"moduleNumber":2253,"slug":19587,"lessons":19588},"data-structures",[19589,19592,19595,19597,19600,19602,19605,19608,19610,19613,19615,19618],{"title":14918,"path":14917,"lessonNumber":2235,"topics":19590,"summary":14920},[19591],"Linear Structures",{"title":14923,"path":14922,"lessonNumber":2241,"topics":19593,"summary":14924},[19594],"Hashing",{"title":14927,"path":14926,"lessonNumber":2247,"topics":19596,"summary":14928},[14927],{"title":14931,"path":14930,"lessonNumber":2253,"topics":19598,"summary":14932},[19599],"Balanced Trees",{"title":14935,"path":14934,"lessonNumber":2259,"topics":19601,"summary":14936},[19599],{"title":14939,"path":14938,"lessonNumber":2265,"topics":19603,"summary":14940},[19604,14881],"Disjoint Sets",{"title":14943,"path":14942,"lessonNumber":2271,"topics":19606,"summary":14944},[19607],"Range Queries",{"title":14947,"path":14946,"lessonNumber":2277,"topics":19609,"summary":14948},[14947],{"title":14951,"path":14950,"lessonNumber":2283,"topics":19611,"summary":14952},[19612],"Probabilistic Structures",{"title":14955,"path":14954,"lessonNumber":2289,"topics":19614,"summary":14956},[19599],{"title":14959,"path":14958,"lessonNumber":2295,"topics":19616,"summary":14960},[19617,19594],"Streaming Algorithms",{"title":14963,"path":14962,"lessonNumber":2301,"topics":19619,"summary":14964},[19617,19594],{"module":14968,"moduleNumber":2259,"slug":19621,"lessons":19622},"sequences",[19623,19626,19628,19630,19633,19636,19638,19640],{"title":14967,"path":14966,"lessonNumber":2235,"topics":19624,"summary":14969},[19625],"Array Techniques",{"title":14972,"path":14971,"lessonNumber":2241,"topics":19627,"summary":14973},[19625],{"title":14976,"path":14975,"lessonNumber":2247,"topics":19629,"summary":14977},[19625],{"title":14980,"path":14979,"lessonNumber":2253,"topics":19631,"summary":14981},[19632],"Searching",{"title":14984,"path":14983,"lessonNumber":2259,"topics":19634,"summary":14985},[19635],"Strings",{"title":14988,"path":14987,"lessonNumber":2265,"topics":19637,"summary":14989},[19635],{"title":14992,"path":14991,"lessonNumber":2271,"topics":19639,"summary":14993},[19635],{"title":14996,"path":14995,"lessonNumber":2277,"topics":19641,"summary":14997},[19635],{"module":15001,"moduleNumber":2265,"slug":19643,"lessons":19644},"graphs",[19645,19649,19651,19653,19655,19658,19660,19662,19664,19667,19669,19671,19673,19675],{"title":15000,"path":14999,"lessonNumber":2235,"topics":19646,"summary":15002},[19647,19648],"Graph Representations","Graph Traversal",{"title":15005,"path":15004,"lessonNumber":2241,"topics":19650,"summary":15006},[19648,15005],{"title":15009,"path":15008,"lessonNumber":2247,"topics":19652,"summary":15010},[19648],{"title":15013,"path":15012,"lessonNumber":2253,"topics":19654,"summary":15014},[15013],{"title":15017,"path":15016,"lessonNumber":2259,"topics":19656,"summary":15018},[15013,19657],"Union-Find",{"title":15021,"path":15020,"lessonNumber":2265,"topics":19659,"summary":15022},[15021],{"title":15025,"path":15024,"lessonNumber":2271,"topics":19661,"summary":15026},[15021,15079],{"title":15029,"path":15028,"lessonNumber":2277,"topics":19663,"summary":15030},[15029],{"title":15033,"path":15032,"lessonNumber":2283,"topics":19665,"summary":15034},[15029,19666,15053],"Min Cut",{"title":15037,"path":15036,"lessonNumber":2289,"topics":19668,"summary":15038},[15001],{"title":15041,"path":15040,"lessonNumber":2295,"topics":19670,"summary":15042},[15001],{"title":15045,"path":15044,"lessonNumber":2301,"topics":19672,"summary":15046},[15001],{"title":15049,"path":15048,"lessonNumber":2307,"topics":19674,"summary":15050},[15001],{"title":15053,"path":15052,"lessonNumber":2313,"topics":19676,"summary":15054},[15001],{"module":15058,"moduleNumber":2271,"slug":19678,"lessons":19679},"greedy",[19680,19682,19685,19687,19689],{"title":15057,"path":15056,"lessonNumber":2235,"topics":19681,"summary":15059},[15058],{"title":15062,"path":15061,"lessonNumber":2241,"topics":19683,"summary":15063},[19684],"Greedy",{"title":15066,"path":15065,"lessonNumber":2247,"topics":19686,"summary":15067},[15058],{"title":15070,"path":15069,"lessonNumber":2253,"topics":19688,"summary":15071},[19684],{"title":15074,"path":15073,"lessonNumber":2259,"topics":19690,"summary":15075},[19684],{"module":15079,"moduleNumber":2277,"slug":19692,"lessons":19693},"dynamic-programming",[19694,19696,19699,19701,19703,19705,19707,19709,19711,19713,19715],{"title":15078,"path":15077,"lessonNumber":2235,"topics":19695,"summary":15080},[15079,19555],{"title":15083,"path":15082,"lessonNumber":2241,"topics":19697,"summary":15084},[15079,19698],"String Structures",{"title":15087,"path":15086,"lessonNumber":2247,"topics":19700,"summary":15088},[15079],{"title":15091,"path":15090,"lessonNumber":2253,"topics":19702,"summary":15092},[15079],{"title":15095,"path":15094,"lessonNumber":2259,"topics":19704,"summary":15096},[15079],{"title":15099,"path":15098,"lessonNumber":2265,"topics":19706,"summary":15100},[15079],{"title":15103,"path":15102,"lessonNumber":2271,"topics":19708,"summary":15104},[15079],{"title":15107,"path":15106,"lessonNumber":2277,"topics":19710,"summary":15108},[15079],{"title":15111,"path":15110,"lessonNumber":2283,"topics":19712,"summary":15112},[15079],{"title":15115,"path":15114,"lessonNumber":2289,"topics":19714,"summary":15116},[15079],{"title":15119,"path":15118,"lessonNumber":2295,"topics":19716,"summary":15120},[15079],{"module":15124,"moduleNumber":2283,"slug":19718,"lessons":19719},"backtracking",[19720,19723,19725,19727],{"title":15123,"path":15122,"lessonNumber":2235,"topics":19721,"summary":15125},[19722],"Backtracking",{"title":15128,"path":15127,"lessonNumber":2241,"topics":19724,"summary":15129},[19722],{"title":15132,"path":15131,"lessonNumber":2247,"topics":19726,"summary":15133},[19722],{"title":15136,"path":15135,"lessonNumber":2253,"topics":19728,"summary":15137},[19722],{"module":15141,"moduleNumber":2289,"slug":19730,"lessons":19731},"mathematical-algorithms",[19732,19735,19737,19739,19741,19743,19745],{"title":15140,"path":15139,"lessonNumber":2235,"topics":19733,"summary":15142},[19734],"Number Theory",{"title":15145,"path":15144,"lessonNumber":2241,"topics":19736,"summary":15146},[19734],{"title":15149,"path":15148,"lessonNumber":2247,"topics":19738,"summary":15150},[19734],{"title":15153,"path":15152,"lessonNumber":2253,"topics":19740,"summary":15154},[19734],{"title":15157,"path":15156,"lessonNumber":2259,"topics":19742,"summary":15158},[19734],{"title":15161,"path":15160,"lessonNumber":2265,"topics":19744,"summary":15162},[19734],{"title":15165,"path":15164,"lessonNumber":2271,"topics":19746,"summary":15166},[19734],{"module":13913,"moduleNumber":2295,"slug":19748,"lessons":19749},"computational-geometry",[19750,19752,19754,19756],{"title":15168,"path":17,"lessonNumber":2235,"topics":19751,"summary":15169},[13946],{"title":15171,"path":22,"lessonNumber":2241,"topics":19753,"summary":15172},[13946],{"title":15174,"path":27,"lessonNumber":2247,"topics":19755,"summary":15175},[13946],{"title":5,"path":13914,"lessonNumber":2253,"topics":19757,"summary":13944},[13946],{"module":15180,"moduleNumber":2301,"slug":19759,"lessons":19760},"intractability",[19761,19763,19765,19769],{"title":15179,"path":15178,"lessonNumber":2235,"topics":19762,"summary":15181},[15184],{"title":15184,"path":15183,"lessonNumber":2241,"topics":19764,"summary":15185},[15184],{"title":15188,"path":15187,"lessonNumber":2247,"topics":19766,"summary":15189},[19767,19768],"Approximation","Heuristics",{"title":15192,"path":15191,"lessonNumber":2253,"topics":19770,"summary":15193},[19767,15184],"\u003Csvg style=\"width:100%;max-width:214.162px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 160.621 146.503\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M-65.603 52.698v-102.43H8.374v102.43ZM8.374-49.732\"\u002F>\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M8.374 52.698v-102.43H82.35v102.43ZM82.35-49.732\"\u002F>\u003Cpath fill=\"none\" d=\"M8.374 58.388V-58.268\" style=\"stroke-dasharray:3.0,3.0;stroke-width:.8\"\u002F>\u003Cg stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(-38.014 -107.543)\">\u003Cpath d=\"M10.429 44.240Q9.948 44.240 9.540 43.996Q9.132 43.752 8.894 43.338Q8.655 42.924 8.655 42.435Q8.655 41.943 8.913 41.527Q9.171 41.111 9.603 40.873Q10.034 40.635 10.526 40.635Q11.147 40.635 11.597 41.072L11.597 39.443Q11.597 39.228 11.534 39.133Q11.472 39.037 11.354 39.016Q11.237 38.994 10.991 38.994L10.991 38.697L12.214 38.611L12.214 43.420Q12.214 43.631 12.276 43.726Q12.339 43.822 12.456 43.844Q12.573 43.865 12.823 43.865L12.823 44.162L11.573 44.240L11.573 43.756Q11.108 44.240 10.429 44.240M10.495 43.986Q10.835 43.986 11.128 43.795Q11.421 43.603 11.573 43.307L11.573 41.474Q11.425 41.201 11.163 41.045Q10.901 40.889 10.589 40.889Q9.964 40.889 9.681 41.336Q9.397 41.783 9.397 42.443Q9.397 43.088 9.649 43.537Q9.901 43.986 10.495 43.986M15.190 44.162L13.413 44.162L13.413 43.865Q13.687 43.865 13.854 43.818Q14.022 43.771 14.022 43.603L14.022 41.467Q14.022 41.252 13.966 41.156Q13.909 41.060 13.796 41.039Q13.683 41.017 13.437 41.017L13.437 40.721L14.636 40.635L14.636 43.603Q14.636 43.771 14.782 43.818Q14.929 43.865 15.190 43.865L15.190 44.162M13.749 39.240Q13.749 39.049 13.884 38.918Q14.019 38.787 14.214 38.787Q14.335 38.787 14.438 38.849Q14.542 38.912 14.604 39.016Q14.667 39.119 14.667 39.240Q14.667 39.435 14.536 39.570Q14.405 39.705 14.214 39.705Q14.015 39.705 13.882 39.572Q13.749 39.439 13.749 39.240M17.491 44.131L16.269 41.275Q16.187 41.099 16.042 41.055Q15.897 41.010 15.628 41.010L15.628 40.713L17.339 40.713L17.339 41.010Q16.917 41.010 16.917 41.193Q16.917 41.228 16.933 41.275L17.878 43.467L18.718 41.490Q18.757 41.412 18.757 41.322Q18.757 41.182 18.651 41.096Q18.546 41.010 18.405 41.010L18.405 40.713L19.757 40.713L19.757 41.010Q19.233 41.010 19.019 41.490L17.894 44.131Q17.831 44.240 17.726 44.240L17.659 44.240Q17.546 44.240 17.491 44.131M22.030 44.162L20.253 44.162L20.253 43.865Q20.526 43.865 20.694 43.818Q20.862 43.771 20.862 43.603L20.862 41.467Q20.862 41.252 20.806 41.156Q20.749 41.060 20.636 41.039Q20.522 41.017 20.276 41.017L20.276 40.721L21.476 40.635L21.476 43.603Q21.476 43.771 21.622 43.818Q21.769 43.865 22.030 43.865L22.030 44.162M20.589 39.240Q20.589 39.049 20.724 38.918Q20.858 38.787 21.054 38.787Q21.175 38.787 21.278 38.849Q21.382 38.912 21.444 39.016Q21.507 39.119 21.507 39.240Q21.507 39.435 21.376 39.570Q21.245 39.705 21.054 39.705Q20.854 39.705 20.722 39.572Q20.589 39.439 20.589 39.240M24.347 44.240Q23.866 44.240 23.458 43.996Q23.050 43.752 22.812 43.338Q22.573 42.924 22.573 42.435Q22.573 41.943 22.831 41.527Q23.089 41.111 23.520 40.873Q23.952 40.635 24.444 40.635Q25.065 40.635 25.515 41.072L25.515 39.443Q25.515 39.228 25.452 39.133Q25.390 39.037 25.272 39.016Q25.155 38.994 24.909 38.994L24.909 38.697L26.132 38.611L26.132 43.420Q26.132 43.631 26.194 43.726Q26.257 43.822 26.374 43.844Q26.491 43.865 26.741 43.865L26.741 44.162L25.491 44.240L25.491 43.756Q25.026 44.240 24.347 44.240M24.413 43.986Q24.753 43.986 25.046 43.795Q25.339 43.603 25.491 43.307L25.491 41.474Q25.343 41.201 25.081 41.045Q24.819 40.889 24.507 40.889Q23.882 40.889 23.599 41.336Q23.315 41.783 23.315 42.443Q23.315 43.088 23.567 43.537Q23.819 43.986 24.413 43.986M29.108 44.162L27.331 44.162L27.331 43.865Q27.604 43.865 27.772 43.818Q27.940 43.771 27.940 43.603L27.940 41.467Q27.940 41.252 27.884 41.156Q27.827 41.060 27.714 41.039Q27.601 41.017 27.354 41.017L27.354 40.721L28.554 40.635L28.554 43.603Q28.554 43.771 28.700 43.818Q28.847 43.865 29.108 43.865L29.108 44.162M27.667 39.240Q27.667 39.049 27.802 38.918Q27.937 38.787 28.132 38.787Q28.253 38.787 28.356 38.849Q28.460 38.912 28.522 39.016Q28.585 39.119 28.585 39.240Q28.585 39.435 28.454 39.570Q28.323 39.705 28.132 39.705Q27.933 39.705 27.800 39.572Q27.667 39.439 27.667 39.240M31.538 44.162L29.683 44.162L29.683 43.865Q29.956 43.865 30.124 43.818Q30.292 43.771 30.292 43.603L30.292 41.467Q30.292 41.252 30.229 41.156Q30.167 41.060 30.048 41.039Q29.929 41.017 29.683 41.017L29.683 40.721L30.874 40.635L30.874 41.369Q30.987 41.154 31.181 40.986Q31.374 40.818 31.612 40.726Q31.851 40.635 32.104 40.635Q33.272 40.635 33.272 41.713L33.272 43.603Q33.272 43.771 33.442 43.818Q33.612 43.865 33.882 43.865L33.882 44.162L32.026 44.162L32.026 43.865Q32.300 43.865 32.468 43.818Q32.636 43.771 32.636 43.603L32.636 41.728Q32.636 41.346 32.515 41.117Q32.394 40.889 32.042 40.889Q31.729 40.889 31.476 41.051Q31.222 41.213 31.075 41.482Q30.929 41.752 30.929 42.049L30.929 43.603Q30.929 43.771 31.099 43.818Q31.269 43.865 31.538 43.865L31.538 44.162M34.327 44.771Q34.327 44.490 34.538 44.279Q34.749 44.068 35.034 43.978Q34.878 43.853 34.800 43.664Q34.722 43.474 34.722 43.275Q34.722 42.920 34.952 42.627Q34.585 42.287 34.585 41.818Q34.585 41.467 34.788 41.197Q34.991 40.928 35.312 40.781Q35.632 40.635 35.976 40.635Q36.495 40.635 36.866 40.916Q37.229 40.545 37.776 40.545Q37.956 40.545 38.083 40.672Q38.210 40.799 38.210 40.978Q38.210 41.084 38.132 41.162Q38.054 41.240 37.944 41.240Q37.835 41.240 37.759 41.164Q37.683 41.088 37.683 40.978Q37.683 40.877 37.722 40.826Q37.729 40.818 37.733 40.812Q37.737 40.807 37.737 40.803Q37.362 40.803 37.042 41.057Q37.362 41.396 37.362 41.818Q37.362 42.088 37.245 42.305Q37.128 42.521 36.923 42.680Q36.718 42.838 36.476 42.920Q36.233 43.002 35.976 43.002Q35.757 43.002 35.544 42.943Q35.331 42.885 35.136 42.764Q35.042 42.904 35.042 43.084Q35.042 43.291 35.179 43.443Q35.315 43.596 35.522 43.596L36.218 43.596Q36.706 43.596 37.118 43.680Q37.530 43.764 37.810 44.021Q38.089 44.279 38.089 44.771Q38.089 45.135 37.769 45.367Q37.448 45.599 37.007 45.701Q36.565 45.803 36.210 45.803Q35.854 45.803 35.411 45.701Q34.968 45.599 34.647 45.367Q34.327 45.135 34.327 44.771M34.831 44.771Q34.831 44.967 34.976 45.115Q35.120 45.264 35.333 45.353Q35.546 45.443 35.786 45.490Q36.026 45.537 36.210 45.537Q36.452 45.537 36.782 45.459Q37.112 45.381 37.349 45.207Q37.585 45.033 37.585 44.771Q37.585 44.365 37.175 44.256Q36.765 44.146 36.202 44.146L35.522 44.146Q35.253 44.146 35.042 44.324Q34.831 44.502 34.831 44.771M35.976 42.736Q36.698 42.736 36.698 41.818Q36.698 40.896 35.976 40.896Q35.249 40.896 35.249 41.818Q35.249 42.736 35.976 42.736\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-38.014 -107.543)\">\u003Cpath d=\"M43.346 44.162L41.514 44.162L41.514 43.865Q41.788 43.865 41.956 43.818Q42.124 43.771 42.124 43.603L42.124 39.443Q42.124 39.228 42.061 39.133Q41.999 39.037 41.880 39.016Q41.760 38.994 41.514 38.994L41.514 38.697L42.737 38.611L42.737 43.603Q42.737 43.771 42.905 43.818Q43.073 43.865 43.346 43.865L43.346 44.162M45.651 44.162L43.874 44.162L43.874 43.865Q44.147 43.865 44.315 43.818Q44.483 43.771 44.483 43.603L44.483 41.467Q44.483 41.252 44.426 41.156Q44.370 41.060 44.257 41.039Q44.143 41.017 43.897 41.017L43.897 40.721L45.096 40.635L45.096 43.603Q45.096 43.771 45.243 43.818Q45.389 43.865 45.651 43.865L45.651 44.162M44.210 39.240Q44.210 39.049 44.344 38.918Q44.479 38.787 44.674 38.787Q44.796 38.787 44.899 38.849Q45.003 38.912 45.065 39.016Q45.128 39.119 45.128 39.240Q45.128 39.435 44.997 39.570Q44.866 39.705 44.674 39.705Q44.475 39.705 44.342 39.572Q44.210 39.439 44.210 39.240M48.081 44.162L46.225 44.162L46.225 43.865Q46.499 43.865 46.667 43.818Q46.835 43.771 46.835 43.603L46.835 41.467Q46.835 41.252 46.772 41.156Q46.710 41.060 46.590 41.039Q46.471 41.017 46.225 41.017L46.225 40.721L47.417 40.635L47.417 41.369Q47.530 41.154 47.723 40.986Q47.917 40.818 48.155 40.726Q48.393 40.635 48.647 40.635Q49.815 40.635 49.815 41.713L49.815 43.603Q49.815 43.771 49.985 43.818Q50.155 43.865 50.424 43.865L50.424 44.162L48.569 44.162L48.569 43.865Q48.842 43.865 49.010 43.818Q49.178 43.771 49.178 43.603L49.178 41.728Q49.178 41.346 49.057 41.117Q48.936 40.889 48.585 40.889Q48.272 40.889 48.018 41.051Q47.764 41.213 47.618 41.482Q47.471 41.752 47.471 42.049L47.471 43.603Q47.471 43.771 47.641 43.818Q47.811 43.865 48.081 43.865L48.081 44.162M50.870 42.408Q50.870 41.928 51.102 41.512Q51.335 41.096 51.745 40.846Q52.155 40.596 52.632 40.596Q53.362 40.596 53.760 41.037Q54.159 41.478 54.159 42.209Q54.159 42.314 54.065 42.338L51.616 42.338L51.616 42.408Q51.616 42.818 51.737 43.174Q51.858 43.529 52.130 43.746Q52.401 43.963 52.831 43.963Q53.194 43.963 53.491 43.734Q53.788 43.506 53.889 43.154Q53.897 43.107 53.983 43.092L54.065 43.092Q54.159 43.119 54.159 43.201Q54.159 43.209 54.151 43.240Q54.089 43.467 53.950 43.650Q53.811 43.834 53.620 43.967Q53.428 44.099 53.210 44.170Q52.991 44.240 52.753 44.240Q52.382 44.240 52.044 44.103Q51.706 43.967 51.438 43.715Q51.171 43.463 51.020 43.123Q50.870 42.783 50.870 42.408M51.624 42.099L53.585 42.099Q53.585 41.795 53.483 41.504Q53.382 41.213 53.165 41.031Q52.948 40.849 52.632 40.849Q52.331 40.849 52.100 41.037Q51.870 41.224 51.747 41.516Q51.624 41.807 51.624 42.099M55.128 43.697Q55.128 43.514 55.264 43.377Q55.401 43.240 55.592 43.240Q55.784 43.240 55.917 43.373Q56.049 43.506 56.049 43.697Q56.049 43.896 55.917 44.029Q55.784 44.162 55.592 44.162Q55.401 44.162 55.264 44.025Q55.128 43.889 55.128 43.697M55.128 41.170Q55.128 40.986 55.264 40.849Q55.401 40.713 55.592 40.713Q55.784 40.713 55.917 40.846Q56.049 40.978 56.049 41.170Q56.049 41.369 55.917 41.502Q55.784 41.635 55.592 41.635Q55.401 41.635 55.264 41.498Q55.128 41.361 55.128 41.170\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-38.014 -107.543)\">\u003Cpath d=\"M62.180 44.162L60.684 44.162L60.684 43.865Q61.317 43.865 61.739 43.385L62.508 42.474L61.516 41.275Q61.360 41.096 61.198 41.053Q61.035 41.010 60.731 41.010L60.731 40.713L62.418 40.713L62.418 41.010Q62.325 41.010 62.248 41.053Q62.172 41.096 62.172 41.185Q62.172 41.228 62.203 41.275L62.860 42.064L63.340 41.490Q63.457 41.353 63.457 41.217Q63.457 41.127 63.407 41.068Q63.356 41.010 63.274 41.010L63.274 40.713L64.762 40.713L64.762 41.010Q64.125 41.010 63.715 41.490L63.035 42.291L64.121 43.603Q64.282 43.779 64.442 43.822Q64.602 43.865 64.907 43.865L64.907 44.162L63.219 44.162L63.219 43.865Q63.309 43.865 63.387 43.822Q63.465 43.779 63.465 43.689Q63.465 43.666 63.434 43.603L62.692 42.697L62.106 43.385Q61.989 43.521 61.989 43.658Q61.989 43.744 62.039 43.805Q62.090 43.865 62.180 43.865\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-38.014 -107.543)\">\u003Cpath d=\"M73.836 43.185L68.523 43.185Q68.445 43.178 68.396 43.129Q68.348 43.080 68.348 43.002Q68.348 42.932 68.395 42.881Q68.441 42.830 68.523 42.818L73.836 42.818Q73.910 42.830 73.957 42.881Q74.004 42.932 74.004 43.002Q74.004 43.080 73.955 43.129Q73.906 43.178 73.836 43.185M73.836 41.498L68.523 41.498Q68.445 41.490 68.396 41.441Q68.348 41.392 68.348 41.314Q68.348 41.244 68.395 41.193Q68.441 41.142 68.523 41.131L73.836 41.131Q73.910 41.142 73.957 41.193Q74.004 41.244 74.004 41.314Q74.004 41.392 73.955 41.441Q73.906 41.490 73.836 41.498\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-38.014 -107.543)\">\u003Cpath d=\"M79.487 44.162L77.632 44.162L77.632 43.865Q77.905 43.865 78.073 43.818Q78.241 43.771 78.241 43.603L78.241 41.467Q78.241 41.252 78.178 41.156Q78.116 41.060 77.997 41.039Q77.878 41.017 77.632 41.017L77.632 40.721L78.823 40.635L78.823 41.369Q78.936 41.154 79.130 40.986Q79.323 40.818 79.561 40.726Q79.799 40.635 80.053 40.635Q81.014 40.635 81.190 41.346Q81.374 41.017 81.702 40.826Q82.030 40.635 82.409 40.635Q83.585 40.635 83.585 41.713L83.585 43.603Q83.585 43.771 83.753 43.818Q83.921 43.865 84.190 43.865L84.190 44.162L82.335 44.162L82.335 43.865Q82.608 43.865 82.776 43.820Q82.944 43.775 82.944 43.603L82.944 41.728Q82.944 41.342 82.819 41.115Q82.694 40.889 82.342 40.889Q82.038 40.889 81.782 41.051Q81.526 41.213 81.378 41.482Q81.229 41.752 81.229 42.049L81.229 43.603Q81.229 43.771 81.399 43.818Q81.569 43.865 81.839 43.865L81.839 44.162L79.983 44.162L79.983 43.865Q80.257 43.865 80.424 43.818Q80.592 43.771 80.592 43.603L80.592 41.728Q80.592 41.342 80.467 41.115Q80.342 40.889 79.991 40.889Q79.686 40.889 79.430 41.051Q79.174 41.213 79.026 41.482Q78.878 41.752 78.878 42.049L78.878 43.603Q78.878 43.771 79.048 43.818Q79.217 43.865 79.487 43.865\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M-49.777 27.09a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M-29.86-24.125a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M-9.943 7.173a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M-44.086-9.898a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0m-1.6 0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(-67.08 19.85)\">\u003Cpath d=\"M10.526 44.162L8.694 44.162L8.694 43.865Q8.968 43.865 9.136 43.818Q9.304 43.771 9.304 43.603L9.304 39.443Q9.304 39.228 9.241 39.133Q9.179 39.037 9.060 39.016Q8.940 38.994 8.694 38.994L8.694 38.697L9.917 38.611L9.917 43.603Q9.917 43.771 10.085 43.818Q10.253 43.865 10.526 43.865L10.526 44.162M10.972 42.408Q10.972 41.928 11.204 41.512Q11.437 41.096 11.847 40.846Q12.257 40.596 12.733 40.596Q13.464 40.596 13.862 41.037Q14.261 41.478 14.261 42.209Q14.261 42.314 14.167 42.338L11.718 42.338L11.718 42.408Q11.718 42.818 11.839 43.174Q11.960 43.529 12.231 43.746Q12.503 43.963 12.933 43.963Q13.296 43.963 13.593 43.734Q13.890 43.506 13.991 43.154Q13.999 43.107 14.085 43.092L14.167 43.092Q14.261 43.119 14.261 43.201Q14.261 43.209 14.253 43.240Q14.190 43.467 14.052 43.650Q13.913 43.834 13.722 43.967Q13.530 44.099 13.312 44.170Q13.093 44.240 12.854 44.240Q12.483 44.240 12.145 44.103Q11.808 43.967 11.540 43.715Q11.272 43.463 11.122 43.123Q10.972 42.783 10.972 42.408M11.726 42.099L13.687 42.099Q13.687 41.795 13.585 41.504Q13.483 41.213 13.267 41.031Q13.050 40.849 12.733 40.849Q12.433 40.849 12.202 41.037Q11.972 41.224 11.849 41.516Q11.726 41.807 11.726 42.099M16.815 44.162L14.831 44.162L14.831 43.865Q15.104 43.865 15.272 43.818Q15.440 43.771 15.440 43.603L15.440 41.010L14.800 41.010L14.800 40.713L15.440 40.713L15.440 39.779Q15.440 39.514 15.558 39.277Q15.675 39.041 15.868 38.877Q16.062 38.713 16.310 38.621Q16.558 38.529 16.823 38.529Q17.108 38.529 17.333 38.687Q17.558 38.846 17.558 39.123Q17.558 39.279 17.452 39.389Q17.347 39.498 17.183 39.498Q17.026 39.498 16.917 39.389Q16.808 39.279 16.808 39.123Q16.808 38.916 16.968 38.810Q16.870 38.787 16.776 38.787Q16.546 38.787 16.374 38.943Q16.202 39.099 16.116 39.336Q16.030 39.572 16.030 39.795L16.030 40.713L16.999 40.713L16.999 41.010L16.054 41.010L16.054 43.603Q16.054 43.771 16.280 43.818Q16.507 43.865 16.815 43.865L16.815 44.162M17.968 43.201L17.968 41.010L17.265 41.010L17.265 40.756Q17.620 40.756 17.862 40.523Q18.104 40.291 18.216 39.943Q18.327 39.596 18.327 39.240L18.608 39.240L18.608 40.713L19.784 40.713L19.784 41.010L18.608 41.010L18.608 43.185Q18.608 43.506 18.728 43.734Q18.847 43.963 19.128 43.963Q19.308 43.963 19.425 43.840Q19.542 43.717 19.595 43.537Q19.647 43.357 19.647 43.185L19.647 42.713L19.929 42.713L19.929 43.201Q19.929 43.455 19.823 43.695Q19.718 43.935 19.520 44.088Q19.323 44.240 19.065 44.240Q18.749 44.240 18.497 44.117Q18.245 43.994 18.106 43.760Q17.968 43.525 17.968 43.201\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-67.08 19.85)\">\u003Cpath d=\"M25.417 44.162L23.561 44.162L23.561 43.865Q23.835 43.865 24.003 43.818Q24.171 43.771 24.171 43.603L24.171 39.443Q24.171 39.228 24.108 39.133Q24.046 39.037 23.927 39.016Q23.808 38.994 23.561 38.994L23.561 38.697L24.784 38.611L24.784 41.314Q24.909 41.103 25.097 40.953Q25.284 40.803 25.511 40.719Q25.737 40.635 25.983 40.635Q27.151 40.635 27.151 41.713L27.151 43.603Q27.151 43.771 27.321 43.818Q27.491 43.865 27.761 43.865L27.761 44.162L25.905 44.162L25.905 43.865Q26.179 43.865 26.347 43.818Q26.515 43.771 26.515 43.603L26.515 41.728Q26.515 41.346 26.394 41.117Q26.272 40.889 25.921 40.889Q25.608 40.889 25.354 41.051Q25.101 41.213 24.954 41.482Q24.808 41.752 24.808 42.049L24.808 43.603Q24.808 43.771 24.978 43.818Q25.147 43.865 25.417 43.865L25.417 44.162M28.304 43.330Q28.304 42.846 28.706 42.551Q29.108 42.256 29.659 42.137Q30.210 42.017 30.702 42.017L30.702 41.728Q30.702 41.502 30.587 41.295Q30.472 41.088 30.274 40.969Q30.077 40.849 29.847 40.849Q29.421 40.849 29.136 40.955Q29.206 40.982 29.253 41.037Q29.300 41.092 29.325 41.162Q29.351 41.232 29.351 41.307Q29.351 41.412 29.300 41.504Q29.249 41.596 29.157 41.646Q29.065 41.697 28.960 41.697Q28.854 41.697 28.763 41.646Q28.671 41.596 28.620 41.504Q28.569 41.412 28.569 41.307Q28.569 40.889 28.958 40.742Q29.347 40.596 29.847 40.596Q30.179 40.596 30.532 40.726Q30.886 40.857 31.114 41.111Q31.343 41.365 31.343 41.713L31.343 43.514Q31.343 43.646 31.415 43.756Q31.487 43.865 31.616 43.865Q31.741 43.865 31.810 43.760Q31.878 43.654 31.878 43.514L31.878 43.002L32.159 43.002L32.159 43.514Q32.159 43.717 32.042 43.875Q31.925 44.033 31.743 44.117Q31.561 44.201 31.358 44.201Q31.128 44.201 30.976 44.029Q30.823 43.857 30.792 43.627Q30.632 43.908 30.323 44.074Q30.015 44.240 29.663 44.240Q29.151 44.240 28.728 44.017Q28.304 43.795 28.304 43.330M28.991 43.330Q28.991 43.615 29.218 43.801Q29.444 43.986 29.737 43.986Q29.983 43.986 30.208 43.869Q30.433 43.752 30.567 43.549Q30.702 43.346 30.702 43.092L30.702 42.260Q30.436 42.260 30.151 42.314Q29.866 42.369 29.595 42.498Q29.323 42.627 29.157 42.834Q28.991 43.041 28.991 43.330M34.366 44.162L32.534 44.162L32.534 43.865Q32.808 43.865 32.976 43.818Q33.144 43.771 33.144 43.603L33.144 39.443Q33.144 39.228 33.081 39.133Q33.019 39.037 32.899 39.016Q32.780 38.994 32.534 38.994L32.534 38.697L33.757 38.611L33.757 43.603Q33.757 43.771 33.925 43.818Q34.093 43.865 34.366 43.865L34.366 44.162M36.878 44.162L34.894 44.162L34.894 43.865Q35.167 43.865 35.335 43.818Q35.503 43.771 35.503 43.603L35.503 41.010L34.862 41.010L34.862 40.713L35.503 40.713L35.503 39.779Q35.503 39.514 35.620 39.277Q35.737 39.041 35.931 38.877Q36.124 38.713 36.372 38.621Q36.620 38.529 36.886 38.529Q37.171 38.529 37.395 38.687Q37.620 38.846 37.620 39.123Q37.620 39.279 37.515 39.389Q37.409 39.498 37.245 39.498Q37.089 39.498 36.979 39.389Q36.870 39.279 36.870 39.123Q36.870 38.916 37.030 38.810Q36.933 38.787 36.839 38.787Q36.608 38.787 36.436 38.943Q36.265 39.099 36.179 39.336Q36.093 39.572 36.093 39.795L36.093 40.713L37.061 40.713L37.061 41.010L36.116 41.010L36.116 43.603Q36.116 43.771 36.343 43.818Q36.569 43.865 36.878 43.865\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-67.08 19.85)\">\u003Cpath d=\"M44.661 44.162L40.493 44.162Q40.396 44.131 40.396 44.033L40.419 43.932Q40.454 43.877 40.517 43.865Q40.958 43.865 41.117 43.826Q41.275 43.787 41.318 43.560L42.396 39.240Q42.419 39.170 42.419 39.107Q42.419 39.045 42.357 39.025Q42.212 38.994 41.790 38.994Q41.685 38.967 41.685 38.865L41.716 38.764Q41.747 38.705 41.806 38.697L44.165 38.697Q44.204 38.697 44.232 38.734Q44.259 38.771 44.259 38.818L44.236 38.924Q44.204 38.982 44.142 38.994Q43.556 38.994 43.357 39.033Q43.189 39.084 43.134 39.299L42.052 43.619Q42.021 43.744 42.021 43.818Q42.021 43.865 42.271 43.865L43.091 43.865Q43.552 43.865 43.888 43.750Q44.224 43.635 44.458 43.412Q44.693 43.189 44.859 42.881Q45.025 42.572 45.189 42.123Q45.236 42.064 45.286 42.049L45.365 42.049Q45.462 42.076 45.462 42.162Q45.462 42.170 45.454 42.209L44.755 44.092Q44.716 44.154 44.661 44.162\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M27.046000000000003-9.898a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M49.808 21.4a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M69.725-26.97a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0M38.427-38.351a1.6 1.6 0 1 0-3.2 0 1.6 1.6 0 0 0 3.2 0m-1.6 0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(16.184 18.96)\">\u003Cpath d=\"M8.597 43.924L8.597 43.834Q8.655 43.627 8.847 43.603L9.558 43.603L9.558 41.275L8.847 41.275Q8.651 41.252 8.597 41.033L8.597 40.947Q8.655 40.736 8.847 40.713L9.948 40.713Q10.147 40.732 10.198 40.947L10.198 41.275Q10.460 40.990 10.815 40.832Q11.171 40.674 11.558 40.674Q11.851 40.674 12.085 40.808Q12.319 40.943 12.319 41.209Q12.319 41.377 12.210 41.494Q12.101 41.611 11.933 41.611Q11.780 41.611 11.665 41.500Q11.550 41.389 11.550 41.232Q11.175 41.232 10.860 41.433Q10.546 41.635 10.372 41.969Q10.198 42.303 10.198 42.682L10.198 43.603L11.144 43.603Q11.351 43.627 11.390 43.834L11.390 43.924Q11.351 44.139 11.144 44.162L8.847 44.162Q8.655 44.139 8.597 43.924M13.237 43.924L13.237 43.834Q13.288 43.627 13.483 43.603L14.522 43.603L14.522 41.275L13.550 41.275Q13.351 41.252 13.300 41.033L13.300 40.947Q13.351 40.736 13.550 40.713L14.917 40.713Q15.112 40.732 15.163 40.947L15.163 43.603L16.077 43.603Q16.272 43.627 16.323 43.834L16.323 43.924Q16.272 44.139 16.077 44.162L13.483 44.162Q13.288 44.139 13.237 43.924M14.269 39.736L14.269 39.682Q14.269 39.510 14.405 39.389Q14.542 39.267 14.718 39.267Q14.890 39.267 15.026 39.389Q15.163 39.510 15.163 39.682L15.163 39.736Q15.163 39.912 15.026 40.033Q14.890 40.154 14.718 40.154Q14.542 40.154 14.405 40.033Q14.269 39.912 14.269 39.736M17.104 44.810Q17.104 44.510 17.253 44.248Q17.401 43.986 17.651 43.826Q17.468 43.572 17.468 43.252Q17.468 42.967 17.620 42.705Q17.370 42.381 17.370 41.963Q17.370 41.603 17.562 41.307Q17.753 41.010 18.071 40.842Q18.390 40.674 18.753 40.674Q18.960 40.674 19.163 40.734Q19.366 40.795 19.530 40.896Q19.913 40.635 20.386 40.635Q20.624 40.635 20.806 40.766Q20.987 40.896 20.987 41.123Q20.987 41.271 20.886 41.377Q20.784 41.482 20.628 41.482Q20.495 41.482 20.399 41.404Q20.304 41.326 20.272 41.201Q20.128 41.209 19.929 41.299Q20.132 41.611 20.132 41.963Q20.132 42.244 20.020 42.476Q19.909 42.709 19.714 42.887Q19.519 43.064 19.267 43.162Q19.015 43.260 18.753 43.260Q18.366 43.260 18.034 43.072Q18.022 43.072 18.013 43.144Q18.003 43.217 18.003 43.252Q18.003 43.373 18.069 43.480Q18.136 43.588 18.257 43.627Q18.272 43.623 18.286 43.621Q18.300 43.619 18.323 43.619Q18.339 43.619 18.370 43.627Q18.401 43.635 18.409 43.635L19.003 43.635Q19.784 43.635 20.325 43.877Q20.866 44.119 20.866 44.810Q20.866 45.111 20.687 45.338Q20.507 45.564 20.210 45.709Q19.913 45.853 19.593 45.920Q19.272 45.986 18.987 45.986Q18.597 45.986 18.155 45.863Q17.714 45.740 17.409 45.473Q17.104 45.205 17.104 44.810M17.644 44.803Q17.644 45.021 17.884 45.162Q18.124 45.303 18.448 45.369Q18.772 45.435 18.987 45.435Q19.202 45.435 19.526 45.369Q19.851 45.303 20.091 45.162Q20.331 45.021 20.331 44.803Q20.331 44.514 20.106 44.375Q19.882 44.236 19.601 44.203Q19.319 44.170 18.972 44.170L18.354 44.170Q18.171 44.170 18.009 44.250Q17.847 44.330 17.745 44.476Q17.644 44.623 17.644 44.803M18.753 42.705Q19.054 42.705 19.272 42.486Q19.491 42.267 19.491 41.963Q19.491 41.807 19.437 41.676Q19.382 41.545 19.276 41.439Q19.171 41.334 19.040 41.279Q18.909 41.224 18.753 41.224Q18.448 41.224 18.229 41.443Q18.011 41.662 18.011 41.963Q18.011 42.260 18.233 42.482Q18.456 42.705 18.753 42.705M21.183 43.924L21.183 43.834Q21.226 43.627 21.433 43.603L21.854 43.603L21.854 39.834L21.433 39.834Q21.226 39.810 21.183 39.596L21.183 39.506Q21.226 39.299 21.433 39.275L22.249 39.275Q22.444 39.299 22.495 39.506L22.495 41.057Q22.956 40.674 23.554 40.674Q23.901 40.674 24.140 40.814Q24.378 40.955 24.493 41.213Q24.608 41.471 24.608 41.826L24.608 43.603L25.034 43.603Q25.241 43.627 25.280 43.834L25.280 43.924Q25.241 44.139 25.034 44.162L23.640 44.162Q23.444 44.139 23.394 43.924L23.394 43.834Q23.444 43.623 23.640 43.603L23.968 43.603L23.968 41.857Q23.968 41.549 23.878 41.391Q23.788 41.232 23.495 41.232Q23.226 41.232 22.997 41.363Q22.769 41.494 22.632 41.723Q22.495 41.951 22.495 42.217L22.495 43.603L22.921 43.603Q23.128 43.627 23.167 43.834L23.167 43.924Q23.128 44.139 22.921 44.162L21.433 44.162Q21.226 44.139 21.183 43.924M26.558 43.057L26.558 41.275L25.808 41.275Q25.608 41.252 25.558 41.033L25.558 40.947Q25.608 40.736 25.808 40.713L26.558 40.713L26.558 39.963Q26.608 39.756 26.808 39.728L26.952 39.728Q27.147 39.756 27.198 39.963L27.198 40.713L28.558 40.713Q28.749 40.732 28.808 40.947L28.808 41.033Q28.753 41.252 28.558 41.275L27.198 41.275L27.198 43.025Q27.198 43.642 27.772 43.642Q28.022 43.642 28.187 43.457Q28.351 43.271 28.351 43.025Q28.351 42.932 28.423 42.861Q28.495 42.791 28.597 42.779L28.741 42.779Q28.940 42.803 28.991 43.010L28.991 43.057Q28.991 43.381 28.808 43.644Q28.624 43.908 28.331 44.055Q28.038 44.201 27.718 44.201Q27.206 44.201 26.882 43.891Q26.558 43.580 26.558 43.057\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(16.184 18.96)\">\u003Cpath d=\"M34.626 44.162L32.770 44.162L32.770 43.865Q33.044 43.865 33.212 43.818Q33.380 43.771 33.380 43.603L33.380 39.443Q33.380 39.228 33.317 39.133Q33.255 39.037 33.136 39.016Q33.017 38.994 32.770 38.994L32.770 38.697L33.993 38.611L33.993 41.314Q34.118 41.103 34.306 40.953Q34.493 40.803 34.720 40.719Q34.946 40.635 35.192 40.635Q36.360 40.635 36.360 41.713L36.360 43.603Q36.360 43.771 36.530 43.818Q36.700 43.865 36.970 43.865L36.970 44.162L35.114 44.162L35.114 43.865Q35.388 43.865 35.556 43.818Q35.724 43.771 35.724 43.603L35.724 41.728Q35.724 41.346 35.603 41.117Q35.481 40.889 35.130 40.889Q34.817 40.889 34.563 41.051Q34.310 41.213 34.163 41.482Q34.017 41.752 34.017 42.049L34.017 43.603Q34.017 43.771 34.187 43.818Q34.356 43.865 34.626 43.865L34.626 44.162M37.513 43.330Q37.513 42.846 37.915 42.551Q38.317 42.256 38.868 42.137Q39.419 42.017 39.911 42.017L39.911 41.728Q39.911 41.502 39.796 41.295Q39.681 41.088 39.483 40.969Q39.286 40.849 39.056 40.849Q38.630 40.849 38.345 40.955Q38.415 40.982 38.462 41.037Q38.509 41.092 38.534 41.162Q38.560 41.232 38.560 41.307Q38.560 41.412 38.509 41.504Q38.458 41.596 38.366 41.646Q38.274 41.697 38.169 41.697Q38.063 41.697 37.972 41.646Q37.880 41.596 37.829 41.504Q37.778 41.412 37.778 41.307Q37.778 40.889 38.167 40.742Q38.556 40.596 39.056 40.596Q39.388 40.596 39.741 40.726Q40.095 40.857 40.323 41.111Q40.552 41.365 40.552 41.713L40.552 43.514Q40.552 43.646 40.624 43.756Q40.696 43.865 40.825 43.865Q40.950 43.865 41.019 43.760Q41.087 43.654 41.087 43.514L41.087 43.002L41.368 43.002L41.368 43.514Q41.368 43.717 41.251 43.875Q41.134 44.033 40.952 44.117Q40.770 44.201 40.567 44.201Q40.337 44.201 40.185 44.029Q40.032 43.857 40.001 43.627Q39.841 43.908 39.532 44.074Q39.224 44.240 38.872 44.240Q38.360 44.240 37.937 44.017Q37.513 43.795 37.513 43.330M38.200 43.330Q38.200 43.615 38.427 43.801Q38.653 43.986 38.946 43.986Q39.192 43.986 39.417 43.869Q39.642 43.752 39.776 43.549Q39.911 43.346 39.911 43.092L39.911 42.260Q39.645 42.260 39.360 42.314Q39.075 42.369 38.804 42.498Q38.532 42.627 38.366 42.834Q38.200 43.041 38.200 43.330M43.575 44.162L41.743 44.162L41.743 43.865Q42.017 43.865 42.185 43.818Q42.353 43.771 42.353 43.603L42.353 39.443Q42.353 39.228 42.290 39.133Q42.228 39.037 42.108 39.016Q41.989 38.994 41.743 38.994L41.743 38.697L42.966 38.611L42.966 43.603Q42.966 43.771 43.134 43.818Q43.302 43.865 43.575 43.865L43.575 44.162M46.087 44.162L44.103 44.162L44.103 43.865Q44.376 43.865 44.544 43.818Q44.712 43.771 44.712 43.603L44.712 41.010L44.071 41.010L44.071 40.713L44.712 40.713L44.712 39.779Q44.712 39.514 44.829 39.277Q44.946 39.041 45.140 38.877Q45.333 38.713 45.581 38.621Q45.829 38.529 46.095 38.529Q46.380 38.529 46.604 38.687Q46.829 38.846 46.829 39.123Q46.829 39.279 46.724 39.389Q46.618 39.498 46.454 39.498Q46.298 39.498 46.188 39.389Q46.079 39.279 46.079 39.123Q46.079 38.916 46.239 38.810Q46.142 38.787 46.048 38.787Q45.817 38.787 45.645 38.943Q45.474 39.099 45.388 39.336Q45.302 39.572 45.302 39.795L45.302 40.713L46.270 40.713L46.270 41.010L45.325 41.010L45.325 43.603Q45.325 43.771 45.552 43.818Q45.778 43.865 46.087 43.865\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(16.184 18.96)\">\u003Cpath d=\"M51.847 44.162L49.710 44.162Q49.675 44.162 49.644 44.121Q49.613 44.080 49.613 44.033L49.636 43.932Q49.648 43.881 49.734 43.865Q50.175 43.865 50.333 43.826Q50.492 43.787 50.535 43.560L51.613 39.240Q51.636 39.170 51.636 39.107Q51.636 39.045 51.574 39.025Q51.429 38.994 51.007 38.994Q50.902 38.967 50.902 38.865L50.933 38.764Q50.941 38.717 51.023 38.697L53.535 38.697Q53.941 38.697 54.384 38.820Q54.827 38.943 55.132 39.219Q55.437 39.494 55.437 39.916Q55.437 40.303 55.167 40.619Q54.898 40.935 54.499 41.144Q54.101 41.353 53.726 41.443Q54.035 41.568 54.232 41.807Q54.429 42.045 54.429 42.361Q54.429 42.404 54.427 42.432Q54.425 42.459 54.421 42.490L54.343 43.185Q54.312 43.474 54.312 43.596Q54.312 43.810 54.380 43.941Q54.449 44.072 54.656 44.072Q54.910 44.072 55.105 43.848Q55.300 43.623 55.367 43.346Q55.374 43.299 55.460 43.283L55.542 43.283Q55.636 43.310 55.636 43.392Q55.636 43.400 55.628 43.435Q55.577 43.650 55.433 43.861Q55.288 44.072 55.081 44.201Q54.874 44.330 54.648 44.330Q54.343 44.330 54.074 44.244Q53.804 44.158 53.632 43.959Q53.460 43.760 53.460 43.451Q53.460 43.342 53.503 43.162L53.679 42.467Q53.702 42.346 53.702 42.252Q53.702 41.916 53.441 41.734Q53.179 41.553 52.816 41.553L51.765 41.553L51.245 43.619Q51.230 43.713 51.230 43.756Q51.230 43.795 51.243 43.808Q51.257 43.822 51.292 43.834Q51.437 43.865 51.863 43.865Q51.956 43.892 51.956 43.986L51.933 44.092Q51.925 44.142 51.847 44.162M52.327 39.299L51.831 41.299L52.773 41.299Q53.117 41.299 53.433 41.230Q53.749 41.162 54.023 40.994Q54.210 40.869 54.347 40.668Q54.484 40.467 54.552 40.234Q54.620 40.002 54.620 39.779Q54.620 39.322 54.253 39.158Q53.886 38.994 53.351 38.994L52.734 38.994Q52.562 38.994 52.499 39.008Q52.437 39.021 52.404 39.080Q52.370 39.139 52.327 39.299\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Divide at the median \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.4306em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">x\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2778em;\">\u003C\u002Fspan>\u003Cspan class=\"mrel\">=\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2778em;\">\u003C\u002Fspan>\u003C\u002Fspan>\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.4306em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">m\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> into left half \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">L\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> and right half \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0077em;\">R\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>; recurse on each, then check pairs straddling the line\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:227.793px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 170.845 194.761\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M-40.232 89.686v-145.11h56.905v145.11Zm56.905-145.11\"\u002F>\u003Cpath fill=\"none\" d=\"M-11.78 89.686v-145.11\" style=\"stroke-dasharray:3.0,3.0\"\u002F>\u003Cg stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(-23.021 -138.841)\">\u003Cpath d=\"M-9.725 75.538Q-10.206 75.538-10.614 75.294Q-11.022 75.050-11.260 74.636Q-11.499 74.222-11.499 73.733Q-11.499 73.241-11.241 72.825Q-10.983 72.409-10.551 72.171Q-10.120 71.933-9.628 71.933Q-9.007 71.933-8.557 72.370L-8.557 70.741Q-8.557 70.526-8.620 70.431Q-8.682 70.335-8.800 70.314Q-8.917 70.292-9.163 70.292L-9.163 69.995L-7.940 69.909L-7.940 74.718Q-7.940 74.929-7.878 75.024Q-7.815 75.120-7.698 75.142Q-7.581 75.163-7.331 75.163L-7.331 75.460L-8.581 75.538L-8.581 75.054Q-9.046 75.538-9.725 75.538M-9.659 75.284Q-9.319 75.284-9.026 75.093Q-8.733 74.901-8.581 74.605L-8.581 72.772Q-8.729 72.499-8.991 72.343Q-9.253 72.187-9.565 72.187Q-10.190 72.187-10.473 72.634Q-10.757 73.081-10.757 73.741Q-10.757 74.386-10.505 74.835Q-10.253 75.284-9.659 75.284M-4.964 75.460L-6.741 75.460L-6.741 75.163Q-6.467 75.163-6.300 75.116Q-6.132 75.069-6.132 74.901L-6.132 72.765Q-6.132 72.550-6.188 72.454Q-6.245 72.358-6.358 72.337Q-6.471 72.315-6.717 72.315L-6.717 72.019L-5.518 71.933L-5.518 74.901Q-5.518 75.069-5.372 75.116Q-5.225 75.163-4.964 75.163L-4.964 75.460M-6.405 70.538Q-6.405 70.347-6.270 70.216Q-6.135 70.085-5.940 70.085Q-5.819 70.085-5.716 70.147Q-5.612 70.210-5.550 70.314Q-5.487 70.417-5.487 70.538Q-5.487 70.733-5.618 70.868Q-5.749 71.003-5.940 71.003Q-6.139 71.003-6.272 70.870Q-6.405 70.737-6.405 70.538M-2.663 75.429L-3.885 72.573Q-3.967 72.397-4.112 72.353Q-4.257 72.308-4.526 72.308L-4.526 72.011L-2.815 72.011L-2.815 72.308Q-3.237 72.308-3.237 72.491Q-3.237 72.526-3.221 72.573L-2.276 74.765L-1.436 72.788Q-1.397 72.710-1.397 72.620Q-1.397 72.480-1.503 72.394Q-1.608 72.308-1.749 72.308L-1.749 72.011L-0.397 72.011L-0.397 72.308Q-0.921 72.308-1.135 72.788L-2.260 75.429Q-2.323 75.538-2.428 75.538L-2.495 75.538Q-2.608 75.538-2.663 75.429M1.876 75.460L0.099 75.460L0.099 75.163Q0.372 75.163 0.540 75.116Q0.708 75.069 0.708 74.901L0.708 72.765Q0.708 72.550 0.652 72.454Q0.595 72.358 0.482 72.337Q0.368 72.315 0.122 72.315L0.122 72.019L1.322 71.933L1.322 74.901Q1.322 75.069 1.468 75.116Q1.615 75.163 1.876 75.163L1.876 75.460M0.435 70.538Q0.435 70.347 0.570 70.216Q0.704 70.085 0.900 70.085Q1.021 70.085 1.124 70.147Q1.228 70.210 1.290 70.314Q1.353 70.417 1.353 70.538Q1.353 70.733 1.222 70.868Q1.091 71.003 0.900 71.003Q0.700 71.003 0.568 70.870Q0.435 70.737 0.435 70.538M4.193 75.538Q3.712 75.538 3.304 75.294Q2.896 75.050 2.658 74.636Q2.419 74.222 2.419 73.733Q2.419 73.241 2.677 72.825Q2.935 72.409 3.366 72.171Q3.798 71.933 4.290 71.933Q4.911 71.933 5.361 72.370L5.361 70.741Q5.361 70.526 5.298 70.431Q5.236 70.335 5.118 70.314Q5.001 70.292 4.755 70.292L4.755 69.995L5.978 69.909L5.978 74.718Q5.978 74.929 6.040 75.024Q6.103 75.120 6.220 75.142Q6.337 75.163 6.587 75.163L6.587 75.460L5.337 75.538L5.337 75.054Q4.872 75.538 4.193 75.538M4.259 75.284Q4.599 75.284 4.892 75.093Q5.185 74.901 5.337 74.605L5.337 72.772Q5.189 72.499 4.927 72.343Q4.665 72.187 4.353 72.187Q3.728 72.187 3.445 72.634Q3.161 73.081 3.161 73.741Q3.161 74.386 3.413 74.835Q3.665 75.284 4.259 75.284M8.954 75.460L7.177 75.460L7.177 75.163Q7.450 75.163 7.618 75.116Q7.786 75.069 7.786 74.901L7.786 72.765Q7.786 72.550 7.730 72.454Q7.673 72.358 7.560 72.337Q7.447 72.315 7.200 72.315L7.200 72.019L8.400 71.933L8.400 74.901Q8.400 75.069 8.546 75.116Q8.693 75.163 8.954 75.163L8.954 75.460M7.513 70.538Q7.513 70.347 7.648 70.216Q7.783 70.085 7.978 70.085Q8.099 70.085 8.202 70.147Q8.306 70.210 8.368 70.314Q8.431 70.417 8.431 70.538Q8.431 70.733 8.300 70.868Q8.169 71.003 7.978 71.003Q7.779 71.003 7.646 70.870Q7.513 70.737 7.513 70.538M11.384 75.460L9.529 75.460L9.529 75.163Q9.802 75.163 9.970 75.116Q10.138 75.069 10.138 74.901L10.138 72.765Q10.138 72.550 10.075 72.454Q10.013 72.358 9.894 72.337Q9.775 72.315 9.529 72.315L9.529 72.019L10.720 71.933L10.720 72.667Q10.833 72.452 11.027 72.284Q11.220 72.116 11.458 72.024Q11.697 71.933 11.950 71.933Q13.118 71.933 13.118 73.011L13.118 74.901Q13.118 75.069 13.288 75.116Q13.458 75.163 13.728 75.163L13.728 75.460L11.872 75.460L11.872 75.163Q12.146 75.163 12.314 75.116Q12.482 75.069 12.482 74.901L12.482 73.026Q12.482 72.644 12.361 72.415Q12.240 72.187 11.888 72.187Q11.575 72.187 11.322 72.349Q11.068 72.511 10.921 72.780Q10.775 73.050 10.775 73.347L10.775 74.901Q10.775 75.069 10.945 75.116Q11.115 75.163 11.384 75.163L11.384 75.460M14.173 76.069Q14.173 75.788 14.384 75.577Q14.595 75.366 14.880 75.276Q14.724 75.151 14.646 74.962Q14.568 74.772 14.568 74.573Q14.568 74.218 14.798 73.925Q14.431 73.585 14.431 73.116Q14.431 72.765 14.634 72.495Q14.837 72.226 15.158 72.079Q15.478 71.933 15.822 71.933Q16.341 71.933 16.712 72.214Q17.075 71.843 17.622 71.843Q17.802 71.843 17.929 71.970Q18.056 72.097 18.056 72.276Q18.056 72.382 17.978 72.460Q17.900 72.538 17.790 72.538Q17.681 72.538 17.605 72.462Q17.529 72.386 17.529 72.276Q17.529 72.175 17.568 72.124Q17.575 72.116 17.579 72.110Q17.583 72.105 17.583 72.101Q17.208 72.101 16.888 72.355Q17.208 72.694 17.208 73.116Q17.208 73.386 17.091 73.603Q16.974 73.819 16.769 73.978Q16.564 74.136 16.322 74.218Q16.079 74.300 15.822 74.300Q15.603 74.300 15.390 74.241Q15.177 74.183 14.982 74.062Q14.888 74.202 14.888 74.382Q14.888 74.589 15.025 74.741Q15.161 74.894 15.368 74.894L16.064 74.894Q16.552 74.894 16.964 74.978Q17.376 75.062 17.656 75.319Q17.935 75.577 17.935 76.069Q17.935 76.433 17.615 76.665Q17.294 76.897 16.853 76.999Q16.411 77.101 16.056 77.101Q15.700 77.101 15.257 76.999Q14.814 76.897 14.493 76.665Q14.173 76.433 14.173 76.069M14.677 76.069Q14.677 76.265 14.822 76.413Q14.966 76.562 15.179 76.651Q15.392 76.741 15.632 76.788Q15.872 76.835 16.056 76.835Q16.298 76.835 16.628 76.757Q16.958 76.679 17.195 76.505Q17.431 76.331 17.431 76.069Q17.431 75.663 17.021 75.554Q16.611 75.444 16.048 75.444L15.368 75.444Q15.099 75.444 14.888 75.622Q14.677 75.800 14.677 76.069M15.822 74.034Q16.544 74.034 16.544 73.116Q16.544 72.194 15.822 72.194Q15.095 72.194 15.095 73.116Q15.095 74.034 15.822 74.034\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-23.021 -138.841)\">\u003Cpath d=\"M23.192 75.460L21.360 75.460L21.360 75.163Q21.634 75.163 21.802 75.116Q21.970 75.069 21.970 74.901L21.970 70.741Q21.970 70.526 21.907 70.431Q21.845 70.335 21.726 70.314Q21.606 70.292 21.360 70.292L21.360 69.995L22.583 69.909L22.583 74.901Q22.583 75.069 22.751 75.116Q22.919 75.163 23.192 75.163L23.192 75.460M25.497 75.460L23.720 75.460L23.720 75.163Q23.993 75.163 24.161 75.116Q24.329 75.069 24.329 74.901L24.329 72.765Q24.329 72.550 24.272 72.454Q24.216 72.358 24.102 72.337Q23.989 72.315 23.743 72.315L23.743 72.019L24.942 71.933L24.942 74.901Q24.942 75.069 25.089 75.116Q25.235 75.163 25.497 75.163L25.497 75.460M24.056 70.538Q24.056 70.347 24.190 70.216Q24.325 70.085 24.520 70.085Q24.642 70.085 24.745 70.147Q24.849 70.210 24.911 70.314Q24.974 70.417 24.974 70.538Q24.974 70.733 24.843 70.868Q24.712 71.003 24.520 71.003Q24.321 71.003 24.188 70.870Q24.056 70.737 24.056 70.538M27.927 75.460L26.071 75.460L26.071 75.163Q26.345 75.163 26.513 75.116Q26.681 75.069 26.681 74.901L26.681 72.765Q26.681 72.550 26.618 72.454Q26.556 72.358 26.436 72.337Q26.317 72.315 26.071 72.315L26.071 72.019L27.263 71.933L27.263 72.667Q27.376 72.452 27.569 72.284Q27.763 72.116 28.001 72.024Q28.239 71.933 28.493 71.933Q29.661 71.933 29.661 73.011L29.661 74.901Q29.661 75.069 29.831 75.116Q30.001 75.163 30.270 75.163L30.270 75.460L28.415 75.460L28.415 75.163Q28.688 75.163 28.856 75.116Q29.024 75.069 29.024 74.901L29.024 73.026Q29.024 72.644 28.903 72.415Q28.782 72.187 28.431 72.187Q28.118 72.187 27.864 72.349Q27.610 72.511 27.464 72.780Q27.317 73.050 27.317 73.347L27.317 74.901Q27.317 75.069 27.487 75.116Q27.657 75.163 27.927 75.163L27.927 75.460M30.716 73.706Q30.716 73.226 30.948 72.810Q31.181 72.394 31.591 72.144Q32.001 71.894 32.477 71.894Q33.208 71.894 33.606 72.335Q34.005 72.776 34.005 73.507Q34.005 73.612 33.911 73.636L31.462 73.636L31.462 73.706Q31.462 74.116 31.583 74.472Q31.704 74.827 31.976 75.044Q32.247 75.261 32.677 75.261Q33.040 75.261 33.337 75.032Q33.634 74.804 33.735 74.452Q33.743 74.405 33.829 74.390L33.911 74.390Q34.005 74.417 34.005 74.499Q34.005 74.507 33.997 74.538Q33.935 74.765 33.796 74.948Q33.657 75.132 33.466 75.265Q33.274 75.397 33.056 75.468Q32.837 75.538 32.599 75.538Q32.227 75.538 31.890 75.401Q31.552 75.265 31.284 75.013Q31.017 74.761 30.866 74.421Q30.716 74.081 30.716 73.706M31.470 73.397L33.431 73.397Q33.431 73.093 33.329 72.802Q33.227 72.511 33.011 72.329Q32.794 72.147 32.477 72.147Q32.177 72.147 31.946 72.335Q31.716 72.522 31.593 72.814Q31.470 73.105 31.470 73.397\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"none\" stroke=\"gray\" d=\"M-40.232 89.686v-145.11M16.673 89.686v-145.11\"\u002F>\u003Cpath fill=\"none\" d=\"M-38.232 99.645h52.905\"\u002F>\u003Cpath stroke=\"none\" d=\"m-40.232 99.645 3.2 1.6-1.2-1.6 1.2-1.6M16.673 99.645l-3.2-1.6 1.2 1.6-1.2 1.6\"\u002F>\u003Cg stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(-20.569 36.143)\">\u003Cpath d=\"M-11.499 75.452L-11.499 74.230Q-11.499 74.202-11.467 74.171Q-11.436 74.140-11.413 74.140L-11.307 74.140Q-11.237 74.140-11.221 74.202Q-11.159 74.522-11.020 74.763Q-10.882 75.003-10.649 75.144Q-10.417 75.284-10.108 75.284Q-9.870 75.284-9.661 75.224Q-9.452 75.163-9.315 75.015Q-9.178 74.866-9.178 74.620Q-9.178 74.366-9.389 74.200Q-9.600 74.034-9.870 73.980L-10.491 73.866Q-10.897 73.788-11.198 73.532Q-11.499 73.276-11.499 72.901Q-11.499 72.534-11.298 72.312Q-11.096 72.089-10.772 71.991Q-10.448 71.894-10.108 71.894Q-9.643 71.894-9.346 72.101L-9.124 71.917Q-9.100 71.894-9.069 71.894L-9.018 71.894Q-8.987 71.894-8.960 71.921Q-8.932 71.948-8.932 71.980L-8.932 72.964Q-8.932 72.995-8.958 73.024Q-8.983 73.054-9.018 73.054L-9.124 73.054Q-9.159 73.054-9.186 73.026Q-9.214 72.999-9.214 72.964Q-9.214 72.565-9.466 72.345Q-9.717 72.124-10.116 72.124Q-10.471 72.124-10.755 72.247Q-11.038 72.370-11.038 72.675Q-11.038 72.894-10.837 73.026Q-10.635 73.159-10.389 73.202L-9.764 73.315Q-9.335 73.405-9.026 73.702Q-8.717 73.999-8.717 74.413Q-8.717 74.983-9.116 75.261Q-9.514 75.538-10.108 75.538Q-10.659 75.538-11.010 75.202L-11.307 75.515Q-11.331 75.538-11.366 75.538L-11.413 75.538Q-11.436 75.538-11.467 75.507Q-11.499 75.476-11.499 75.452M-7.565 74.499L-7.565 72.308L-8.268 72.308L-8.268 72.054Q-7.913 72.054-7.671 71.821Q-7.428 71.589-7.317 71.241Q-7.206 70.894-7.206 70.538L-6.925 70.538L-6.925 72.011L-5.749 72.011L-5.749 72.308L-6.925 72.308L-6.925 74.483Q-6.925 74.804-6.805 75.032Q-6.686 75.261-6.405 75.261Q-6.225 75.261-6.108 75.138Q-5.991 75.015-5.938 74.835Q-5.885 74.655-5.885 74.483L-5.885 74.011L-5.604 74.011L-5.604 74.499Q-5.604 74.753-5.710 74.993Q-5.815 75.233-6.012 75.386Q-6.210 75.538-6.467 75.538Q-6.784 75.538-7.036 75.415Q-7.288 75.292-7.426 75.058Q-7.565 74.823-7.565 74.499M-2.878 75.460L-4.858 75.460L-4.858 75.163Q-4.589 75.163-4.421 75.118Q-4.253 75.073-4.253 74.901L-4.253 72.765Q-4.253 72.550-4.315 72.454Q-4.378 72.358-4.495 72.337Q-4.612 72.315-4.858 72.315L-4.858 72.019L-3.690 71.933L-3.690 72.718Q-3.612 72.507-3.460 72.321Q-3.307 72.136-3.108 72.034Q-2.909 71.933-2.682 71.933Q-2.436 71.933-2.245 72.077Q-2.053 72.222-2.053 72.452Q-2.053 72.608-2.159 72.718Q-2.264 72.827-2.421 72.827Q-2.577 72.827-2.686 72.718Q-2.796 72.608-2.796 72.452Q-2.796 72.292-2.690 72.187Q-3.014 72.187-3.229 72.415Q-3.444 72.644-3.540 72.983Q-3.635 73.323-3.635 73.628L-3.635 74.901Q-3.635 75.069-3.409 75.116Q-3.182 75.163-2.878 75.163L-2.878 75.460M0.286 75.460L-1.491 75.460L-1.491 75.163Q-1.217 75.163-1.050 75.116Q-0.882 75.069-0.882 74.901L-0.882 72.765Q-0.882 72.550-0.938 72.454Q-0.995 72.358-1.108 72.337Q-1.221 72.315-1.467 72.315L-1.467 72.019L-0.268 71.933L-0.268 74.901Q-0.268 75.069-0.122 75.116Q0.025 75.163 0.286 75.163L0.286 75.460M-1.155 70.538Q-1.155 70.347-1.020 70.216Q-0.885 70.085-0.690 70.085Q-0.569 70.085-0.466 70.147Q-0.362 70.210-0.300 70.314Q-0.237 70.417-0.237 70.538Q-0.237 70.733-0.368 70.868Q-0.499 71.003-0.690 71.003Q-0.889 71.003-1.022 70.870Q-1.155 70.737-1.155 70.538M2.669 77.011L0.814 77.011L0.814 76.718Q1.083 76.718 1.251 76.673Q1.419 76.628 1.419 76.452L1.419 72.628Q1.419 72.421 1.263 72.368Q1.107 72.315 0.814 72.315L0.814 72.019L2.036 71.933L2.036 72.397Q2.267 72.175 2.581 72.054Q2.896 71.933 3.236 71.933Q3.708 71.933 4.113 72.179Q4.517 72.425 4.749 72.841Q4.982 73.257 4.982 73.733Q4.982 74.108 4.833 74.437Q4.685 74.765 4.415 75.017Q4.146 75.269 3.802 75.403Q3.458 75.538 3.099 75.538Q2.810 75.538 2.538 75.417Q2.267 75.296 2.060 75.085L2.060 76.452Q2.060 76.628 2.228 76.673Q2.396 76.718 2.669 76.718L2.669 77.011M2.060 72.796L2.060 74.636Q2.212 74.925 2.474 75.105Q2.736 75.284 3.044 75.284Q3.329 75.284 3.552 75.146Q3.775 75.007 3.927 74.776Q4.079 74.546 4.158 74.274Q4.236 74.003 4.236 73.733Q4.236 73.401 4.111 73.044Q3.986 72.687 3.738 72.450Q3.490 72.214 3.142 72.214Q2.818 72.214 2.523 72.370Q2.228 72.526 2.060 72.796\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(-20.569 36.143)\">\u003Cpath d=\"M9.932 75.429L8.862 72.573Q8.796 72.394 8.665 72.351Q8.534 72.308 8.276 72.308L8.276 72.011L9.956 72.011L9.956 72.308Q9.506 72.308 9.506 72.507Q9.510 72.522 9.512 72.540Q9.514 72.558 9.514 72.573L10.307 74.667L11.018 72.757Q10.983 72.663 10.983 72.618Q10.983 72.573 10.948 72.573Q10.881 72.394 10.751 72.351Q10.620 72.308 10.366 72.308L10.366 72.011L11.956 72.011L11.956 72.308Q11.506 72.308 11.506 72.507Q11.510 72.526 11.512 72.544Q11.514 72.562 11.514 72.573L12.346 74.788L13.100 72.788Q13.124 72.730 13.124 72.659Q13.124 72.499 12.987 72.403Q12.850 72.308 12.682 72.308L12.682 72.011L14.069 72.011L14.069 72.308Q13.835 72.308 13.657 72.435Q13.479 72.562 13.397 72.788L12.413 75.429Q12.358 75.538 12.245 75.538L12.186 75.538Q12.073 75.538 12.030 75.429L11.171 73.155L10.315 75.429Q10.276 75.538 10.155 75.538L10.100 75.538Q9.987 75.538 9.932 75.429M16.342 75.460L14.565 75.460L14.565 75.163Q14.838 75.163 15.006 75.116Q15.174 75.069 15.174 74.901L15.174 72.765Q15.174 72.550 15.118 72.454Q15.061 72.358 14.948 72.337Q14.835 72.315 14.588 72.315L14.588 72.019L15.788 71.933L15.788 74.901Q15.788 75.069 15.934 75.116Q16.081 75.163 16.342 75.163L16.342 75.460M14.901 70.538Q14.901 70.347 15.036 70.216Q15.171 70.085 15.366 70.085Q15.487 70.085 15.590 70.147Q15.694 70.210 15.756 70.314Q15.819 70.417 15.819 70.538Q15.819 70.733 15.688 70.868Q15.557 71.003 15.366 71.003Q15.167 71.003 15.034 70.870Q14.901 70.737 14.901 70.538M18.659 75.538Q18.178 75.538 17.770 75.294Q17.362 75.050 17.124 74.636Q16.885 74.222 16.885 73.733Q16.885 73.241 17.143 72.825Q17.401 72.409 17.833 72.171Q18.264 71.933 18.756 71.933Q19.378 71.933 19.827 72.370L19.827 70.741Q19.827 70.526 19.764 70.431Q19.702 70.335 19.585 70.314Q19.467 70.292 19.221 70.292L19.221 69.995L20.444 69.909L20.444 74.718Q20.444 74.929 20.506 75.024Q20.569 75.120 20.686 75.142Q20.803 75.163 21.053 75.163L21.053 75.460L19.803 75.538L19.803 75.054Q19.338 75.538 18.659 75.538M18.725 75.284Q19.065 75.284 19.358 75.093Q19.651 74.901 19.803 74.605L19.803 72.772Q19.655 72.499 19.393 72.343Q19.131 72.187 18.819 72.187Q18.194 72.187 17.911 72.634Q17.628 73.081 17.628 73.741Q17.628 74.386 17.879 74.835Q18.131 75.284 18.725 75.284M22.186 74.499L22.186 72.308L21.483 72.308L21.483 72.054Q21.838 72.054 22.081 71.821Q22.323 71.589 22.434 71.241Q22.546 70.894 22.546 70.538L22.827 70.538L22.827 72.011L24.003 72.011L24.003 72.308L22.827 72.308L22.827 74.483Q22.827 74.804 22.946 75.032Q23.065 75.261 23.346 75.261Q23.526 75.261 23.643 75.138Q23.760 75.015 23.813 74.835Q23.866 74.655 23.866 74.483L23.866 74.011L24.147 74.011L24.147 74.499Q24.147 74.753 24.042 74.993Q23.936 75.233 23.739 75.386Q23.542 75.538 23.284 75.538Q22.967 75.538 22.715 75.415Q22.463 75.292 22.325 75.058Q22.186 74.823 22.186 74.499M26.796 75.460L24.940 75.460L24.940 75.163Q25.213 75.163 25.381 75.116Q25.549 75.069 25.549 74.901L25.549 70.741Q25.549 70.526 25.487 70.431Q25.424 70.335 25.305 70.314Q25.186 70.292 24.940 70.292L24.940 69.995L26.163 69.909L26.163 72.612Q26.288 72.401 26.475 72.251Q26.663 72.101 26.889 72.017Q27.116 71.933 27.362 71.933Q28.530 71.933 28.530 73.011L28.530 74.901Q28.530 75.069 28.700 75.116Q28.870 75.163 29.139 75.163L29.139 75.460L27.284 75.460L27.284 75.163Q27.557 75.163 27.725 75.116Q27.893 75.069 27.893 74.901L27.893 73.026Q27.893 72.644 27.772 72.415Q27.651 72.187 27.299 72.187Q26.987 72.187 26.733 72.349Q26.479 72.511 26.333 72.780Q26.186 73.050 26.186 73.347L26.186 74.901Q26.186 75.069 26.356 75.116Q26.526 75.163 26.796 75.163\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M-21.36 52.697a1.8 1.8 0 1 0-3.6 0 1.8 1.8 0 0 0 3.6 0m-1.8 0\"\u002F>\u003Cg transform=\"translate(-50.49 -10.436)\">\u003Cpath d=\"M-10.292 77.011L-11.893 77.011Q-11.928 77.011-11.962 76.970Q-11.995 76.929-11.995 76.894L-11.964 76.788Q-11.932 76.726-11.878 76.718Q-11.686 76.718-11.602 76.702Q-11.518 76.687-11.466 76.620Q-11.413 76.554-11.374 76.413L-10.483 72.843Q-10.444 72.687-10.444 72.550Q-10.444 72.401-10.497 72.294Q-10.550 72.187-10.682 72.187Q-10.862 72.187-10.981 72.356Q-11.100 72.526-11.157 72.712Q-11.214 72.897-11.284 73.187Q-11.296 73.261-11.366 73.261L-11.467 73.261Q-11.503 73.261-11.530 73.226Q-11.557 73.190-11.557 73.163L-11.557 73.132Q-11.471 72.800-11.378 72.558Q-11.284 72.315-11.108 72.124Q-10.932 71.933-10.667 71.933Q-10.385 71.933-10.155 72.077Q-9.925 72.222-9.858 72.476Q-9.339 71.933-8.780 71.933Q-8.245 71.933-7.925 72.317Q-7.604 72.702-7.604 73.245Q-7.604 73.769-7.885 74.308Q-8.167 74.847-8.634 75.192Q-9.100 75.538-9.635 75.538Q-9.874 75.538-10.075 75.421Q-10.276 75.304-10.405 75.093L-10.749 76.468Q-10.760 76.507-10.780 76.628Q-10.780 76.718-10.276 76.718Q-10.171 76.749-10.171 76.843L-10.206 76.948Q-10.237 77.003-10.292 77.011M-9.850 72.894L-10.284 74.620Q-10.225 74.894-10.055 75.089Q-9.885 75.284-9.620 75.284Q-9.284 75.284-9.005 74.993Q-8.725 74.702-8.589 74.347Q-8.464 74.054-8.362 73.620Q-8.260 73.187-8.260 72.909Q-8.260 72.624-8.393 72.405Q-8.526 72.187-8.796 72.187Q-9.007 72.187-9.202 72.288Q-9.397 72.390-9.557 72.546Q-9.717 72.702-9.850 72.894\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"none\" d=\"m-53.036 62.656 26.537-7.961\"\u002F>\u003Cpath stroke=\"none\" d=\"m-24.583 54.12-3.525-.613 1.61 1.188-.69 1.877\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M-40.232 52.697V24.245h56.905v28.452Zm56.905-28.452\" style=\"stroke-width:1.2\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-soft-accent)\" d=\"M-26.006 52.697V24.245M-11.78 52.697V24.245M2.447 52.697V24.245M-40.232 38.47h56.905\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(51.903 -34.21)\">\u003Cpath d=\"M-11.428 74.237Q-11.428 73.741-11.102 73.376Q-10.776 73.011-10.253 72.765L-10.522 72.605Q-10.819 72.421-11.003 72.126Q-11.186 71.831-11.186 71.491Q-11.186 71.097-10.967 70.786Q-10.749 70.476-10.395 70.308Q-10.042 70.140-9.659 70.140Q-9.385 70.140-9.112 70.218Q-8.839 70.296-8.622 70.444Q-8.405 70.593-8.268 70.819Q-8.132 71.046-8.132 71.339Q-8.132 71.745-8.401 72.052Q-8.671 72.358-9.092 72.573L-8.643 72.843Q-8.425 72.980-8.257 73.173Q-8.089 73.366-7.991 73.605Q-7.893 73.843-7.893 74.101Q-7.893 74.440-8.044 74.728Q-8.194 75.015-8.440 75.212Q-8.686 75.409-9.010 75.519Q-9.335 75.628-9.659 75.628Q-10.089 75.628-10.495 75.466Q-10.901 75.304-11.165 74.985Q-11.428 74.667-11.428 74.237M-10.940 74.237Q-10.940 74.722-10.550 75.038Q-10.159 75.355-9.659 75.355Q-9.366 75.355-9.067 75.243Q-8.768 75.132-8.575 74.913Q-8.382 74.694-8.382 74.382Q-8.382 74.151-8.522 73.940Q-8.663 73.730-8.870 73.612L-9.979 72.933Q-10.397 73.136-10.669 73.472Q-10.940 73.808-10.940 74.237M-10.354 71.804L-9.366 72.405Q-9.018 72.222-8.792 71.952Q-8.565 71.683-8.565 71.339Q-8.565 71.120-8.657 70.944Q-8.749 70.769-8.903 70.646Q-9.057 70.522-9.259 70.452Q-9.460 70.382-9.659 70.382Q-10.065 70.382-10.411 70.593Q-10.757 70.804-10.757 71.187Q-10.757 71.370-10.645 71.532Q-10.534 71.694-10.354 71.804\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(51.903 -34.21)\">\u003Cpath d=\"M-4.415 73.733Q-4.415 73.237-4.165 72.812Q-3.915 72.386-3.495 72.140Q-3.075 71.894-2.575 71.894Q-2.036 71.894-1.645 72.019Q-1.255 72.144-1.255 72.558Q-1.255 72.663-1.305 72.755Q-1.356 72.847-1.448 72.897Q-1.540 72.948-1.649 72.948Q-1.755 72.948-1.846 72.897Q-1.938 72.847-1.989 72.755Q-2.040 72.663-2.040 72.558Q-2.040 72.335-1.872 72.230Q-2.094 72.171-2.567 72.171Q-2.864 72.171-3.079 72.310Q-3.294 72.448-3.425 72.679Q-3.555 72.909-3.614 73.179Q-3.673 73.448-3.673 73.733Q-3.673 74.128-3.540 74.478Q-3.407 74.827-3.135 75.044Q-2.864 75.261-2.466 75.261Q-2.091 75.261-1.815 75.044Q-1.540 74.827-1.438 74.468Q-1.423 74.405-1.360 74.405L-1.255 74.405Q-1.219 74.405-1.194 74.433Q-1.169 74.460-1.169 74.499L-1.169 74.522Q-1.301 75.003-1.686 75.271Q-2.071 75.538-2.575 75.538Q-2.938 75.538-3.272 75.401Q-3.606 75.265-3.866 75.015Q-4.126 74.765-4.270 74.429Q-4.415 74.093-4.415 73.733M-0.680 73.706Q-0.680 73.226-0.448 72.810Q-0.216 72.394 0.195 72.144Q0.605 71.894 1.081 71.894Q1.812 71.894 2.210 72.335Q2.609 72.776 2.609 73.507Q2.609 73.612 2.515 73.636L0.066 73.636L0.066 73.706Q0.066 74.116 0.187 74.472Q0.308 74.827 0.579 75.044Q0.851 75.261 1.281 75.261Q1.644 75.261 1.941 75.032Q2.238 74.804 2.339 74.452Q2.347 74.405 2.433 74.390L2.515 74.390Q2.609 74.417 2.609 74.499Q2.609 74.507 2.601 74.538Q2.538 74.765 2.400 74.948Q2.261 75.132 2.070 75.265Q1.878 75.397 1.659 75.468Q1.441 75.538 1.202 75.538Q0.831 75.538 0.493 75.401Q0.156 75.265-0.112 75.013Q-0.380 74.761-0.530 74.421Q-0.680 74.081-0.680 73.706M0.074 73.397L2.034 73.397Q2.034 73.093 1.933 72.802Q1.831 72.511 1.615 72.329Q1.398 72.147 1.081 72.147Q0.781 72.147 0.550 72.335Q0.320 72.522 0.197 72.814Q0.074 73.105 0.074 73.397M5.011 75.460L3.179 75.460L3.179 75.163Q3.452 75.163 3.620 75.116Q3.788 75.069 3.788 74.901L3.788 70.741Q3.788 70.526 3.726 70.431Q3.663 70.335 3.544 70.314Q3.425 70.292 3.179 70.292L3.179 69.995L4.402 69.909L4.402 74.901Q4.402 75.069 4.570 75.116Q4.738 75.163 5.011 75.163L5.011 75.460M7.370 75.460L5.538 75.460L5.538 75.163Q5.812 75.163 5.980 75.116Q6.148 75.069 6.148 74.901L6.148 70.741Q6.148 70.526 6.085 70.431Q6.023 70.335 5.904 70.314Q5.784 70.292 5.538 70.292L5.538 69.995L6.761 69.909L6.761 74.901Q6.761 75.069 6.929 75.116Q7.097 75.163 7.370 75.163L7.370 75.460M7.859 75.452L7.859 74.230Q7.859 74.202 7.890 74.171Q7.921 74.140 7.945 74.140L8.050 74.140Q8.120 74.140 8.136 74.202Q8.199 74.522 8.337 74.763Q8.476 75.003 8.708 75.144Q8.941 75.284 9.249 75.284Q9.488 75.284 9.697 75.224Q9.906 75.163 10.042 75.015Q10.179 74.866 10.179 74.620Q10.179 74.366 9.968 74.200Q9.757 74.034 9.488 73.980L8.867 73.866Q8.460 73.788 8.159 73.532Q7.859 73.276 7.859 72.901Q7.859 72.534 8.060 72.312Q8.261 72.089 8.585 71.991Q8.909 71.894 9.249 71.894Q9.714 71.894 10.011 72.101L10.234 71.917Q10.257 71.894 10.288 71.894L10.339 71.894Q10.370 71.894 10.398 71.921Q10.425 71.948 10.425 71.980L10.425 72.964Q10.425 72.995 10.400 73.024Q10.374 73.054 10.339 73.054L10.234 73.054Q10.199 73.054 10.171 73.026Q10.144 72.999 10.144 72.964Q10.144 72.565 9.892 72.345Q9.640 72.124 9.242 72.124Q8.886 72.124 8.603 72.247Q8.320 72.370 8.320 72.675Q8.320 72.894 8.521 73.026Q8.722 73.159 8.968 73.202L9.593 73.315Q10.023 73.405 10.331 73.702Q10.640 73.999 10.640 74.413Q10.640 74.983 10.242 75.261Q9.843 75.538 9.249 75.538Q8.699 75.538 8.347 75.202L8.050 75.515Q8.027 75.538 7.992 75.538L7.945 75.538Q7.921 75.538 7.890 75.507Q7.859 75.476 7.859 75.452\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cpath fill=\"none\" d=\"M33.745 38.47h-13.65\"\u002F>\u003Cpath stroke=\"none\" d=\"m18.096 38.47 3.2 1.6-1.2-1.6 1.2-1.6\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-warn)\" stroke=\"none\" d=\"M2.824-26.97a1.8 1.8 0 1 0-3.6 0 1.8 1.8 0 0 0 3.6 0m-1.8 0\"\u002F>\u003Cg fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\">\u003Cg fill=\"var(--tk-warn)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(51.903 -100.43)\">\u003Cpath d=\"M-10.628 75.460L-10.909 75.460L-10.909 70.741Q-10.909 70.526-10.971 70.431Q-11.034 70.335-11.151 70.314Q-11.268 70.292-11.514 70.292L-11.514 69.995L-10.292 69.909L-10.292 72.397Q-9.815 71.933-9.116 71.933Q-8.635 71.933-8.227 72.177Q-7.819 72.421-7.583 72.835Q-7.346 73.249-7.346 73.733Q-7.346 74.108-7.495 74.437Q-7.643 74.765-7.913 75.017Q-8.182 75.269-8.526 75.403Q-8.870 75.538-9.229 75.538Q-9.550 75.538-9.848 75.390Q-10.147 75.241-10.354 74.980L-10.628 75.460M-10.268 72.788L-10.268 74.628Q-10.116 74.925-9.856 75.105Q-9.596 75.284-9.284 75.284Q-8.858 75.284-8.591 75.065Q-8.323 74.847-8.208 74.501Q-8.092 74.155-8.092 73.733Q-8.092 73.085-8.341 72.636Q-8.589 72.187-9.186 72.187Q-9.522 72.187-9.811 72.345Q-10.100 72.503-10.268 72.788\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(51.903 -100.43)\">\u003Cpath d=\"M-6.583 73.706Q-6.583 73.226-6.350 72.810Q-6.118 72.394-5.708 72.144Q-5.298 71.894-4.821 71.894Q-4.091 71.894-3.692 72.335Q-3.294 72.776-3.294 73.507Q-3.294 73.612-3.387 73.636L-5.837 73.636L-5.837 73.706Q-5.837 74.116-5.716 74.472Q-5.594 74.827-5.323 75.044Q-5.051 75.261-4.622 75.261Q-4.258 75.261-3.962 75.032Q-3.665 74.804-3.563 74.452Q-3.555 74.405-3.469 74.390L-3.387 74.390Q-3.294 74.417-3.294 74.499Q-3.294 74.507-3.301 74.538Q-3.364 74.765-3.503 74.948Q-3.641 75.132-3.833 75.265Q-4.024 75.397-4.243 75.468Q-4.462 75.538-4.700 75.538Q-5.071 75.538-5.409 75.401Q-5.747 75.265-6.014 75.013Q-6.282 74.761-6.432 74.421Q-6.583 74.081-6.583 73.706M-5.829 73.397L-3.868 73.397Q-3.868 73.093-3.969 72.802Q-4.071 72.511-4.288 72.329Q-4.505 72.147-4.821 72.147Q-5.122 72.147-5.352 72.335Q-5.583 72.522-5.706 72.814Q-5.829 73.105-5.829 73.397M-2.387 76.757Q-2.274 76.835-2.098 76.835Q-1.809 76.835-1.589 76.622Q-1.368 76.409-1.243 76.108L-0.954 75.460L-2.227 72.573Q-2.309 72.397-2.454 72.353Q-2.598 72.308-2.868 72.308L-2.868 72.011L-1.149 72.011L-1.149 72.308Q-1.571 72.308-1.571 72.491Q-1.571 72.503-1.555 72.573L-0.618 74.698L0.214 72.788Q0.253 72.698 0.253 72.620Q0.253 72.480 0.152 72.394Q0.050 72.308-0.091 72.308L-0.091 72.011L1.261 72.011L1.261 72.308Q1.007 72.308 0.814 72.433Q0.620 72.558 0.515 72.788L-0.930 76.108Q-1.044 76.362-1.210 76.585Q-1.376 76.808-1.604 76.950Q-1.833 77.093-2.098 77.093Q-2.395 77.093-2.635 76.901Q-2.876 76.710-2.876 76.421Q-2.876 76.265-2.770 76.163Q-2.665 76.062-2.516 76.062Q-2.411 76.062-2.331 76.108Q-2.251 76.155-2.204 76.233Q-2.157 76.312-2.157 76.421Q-2.157 76.542-2.217 76.630Q-2.278 76.718-2.387 76.757\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(51.903 -100.43)\">\u003Cpath d=\"M1.445 73.765Q1.445 73.261 1.701 72.829Q1.957 72.397 2.393 72.146Q2.828 71.894 3.328 71.894Q3.715 71.894 4.057 72.038Q4.398 72.183 4.660 72.444Q4.922 72.706 5.064 73.042Q5.207 73.378 5.207 73.765Q5.207 74.257 4.943 74.667Q4.680 75.077 4.250 75.308Q3.820 75.538 3.328 75.538Q2.836 75.538 2.402 75.306Q1.969 75.073 1.707 74.665Q1.445 74.257 1.445 73.765M3.328 75.261Q3.785 75.261 4.037 75.038Q4.289 74.815 4.377 74.464Q4.465 74.112 4.465 73.667Q4.465 73.237 4.371 72.899Q4.277 72.562 4.023 72.355Q3.769 72.147 3.328 72.147Q2.680 72.147 2.436 72.564Q2.191 72.980 2.191 73.667Q2.191 74.112 2.279 74.464Q2.367 74.815 2.619 75.038Q2.871 75.261 3.328 75.261M7.621 75.460L5.766 75.460L5.766 75.163Q6.039 75.163 6.207 75.116Q6.375 75.069 6.375 74.901L6.375 72.765Q6.375 72.550 6.312 72.454Q6.250 72.358 6.131 72.337Q6.012 72.315 5.766 72.315L5.766 72.019L6.957 71.933L6.957 72.667Q7.070 72.452 7.264 72.284Q7.457 72.116 7.695 72.024Q7.934 71.933 8.187 71.933Q9.355 71.933 9.355 73.011L9.355 74.901Q9.355 75.069 9.525 75.116Q9.695 75.163 9.965 75.163L9.965 75.460L8.109 75.460L8.109 75.163Q8.383 75.163 8.551 75.116Q8.719 75.069 8.719 74.901L8.719 73.026Q8.719 72.644 8.598 72.415Q8.477 72.187 8.125 72.187Q7.812 72.187 7.559 72.349Q7.305 72.511 7.158 72.780Q7.012 73.050 7.012 73.347L7.012 74.901Q7.012 75.069 7.182 75.116Q7.352 75.163 7.621 75.163L7.621 75.460M12.227 75.538Q11.746 75.538 11.338 75.294Q10.930 75.050 10.691 74.636Q10.453 74.222 10.453 73.733Q10.453 73.241 10.711 72.825Q10.969 72.409 11.400 72.171Q11.832 71.933 12.324 71.933Q12.945 71.933 13.395 72.370L13.395 70.741Q13.395 70.526 13.332 70.431Q13.270 70.335 13.152 70.314Q13.035 70.292 12.789 70.292L12.789 69.995L14.012 69.909L14.012 74.718Q14.012 74.929 14.074 75.024Q14.137 75.120 14.254 75.142Q14.371 75.163 14.621 75.163L14.621 75.460L13.371 75.538L13.371 75.054Q12.906 75.538 12.227 75.538M12.293 75.284Q12.633 75.284 12.926 75.093Q13.219 74.901 13.371 74.605L13.371 72.772Q13.223 72.499 12.961 72.343Q12.699 72.187 12.387 72.187Q11.762 72.187 11.478 72.634Q11.195 73.081 11.195 73.741Q11.195 74.386 11.447 74.835Q11.699 75.284 12.293 75.284\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(51.903 -100.43)\">\u003Cpath d=\"M19.981 75.460L18.001 75.460L18.001 75.163Q18.270 75.163 18.438 75.118Q18.606 75.073 18.606 74.901L18.606 72.765Q18.606 72.550 18.544 72.454Q18.481 72.358 18.364 72.337Q18.247 72.315 18.001 72.315L18.001 72.019L19.169 71.933L19.169 72.718Q19.247 72.507 19.399 72.321Q19.551 72.136 19.751 72.034Q19.950 71.933 20.176 71.933Q20.422 71.933 20.614 72.077Q20.805 72.222 20.805 72.452Q20.805 72.608 20.700 72.718Q20.594 72.827 20.438 72.827Q20.282 72.827 20.172 72.718Q20.063 72.608 20.063 72.452Q20.063 72.292 20.169 72.187Q19.844 72.187 19.630 72.415Q19.415 72.644 19.319 72.983Q19.223 73.323 19.223 73.628L19.223 74.901Q19.223 75.069 19.450 75.116Q19.676 75.163 19.981 75.163L19.981 75.460M21.286 73.706Q21.286 73.226 21.518 72.810Q21.751 72.394 22.161 72.144Q22.571 71.894 23.047 71.894Q23.778 71.894 24.176 72.335Q24.575 72.776 24.575 73.507Q24.575 73.612 24.481 73.636L22.032 73.636L22.032 73.706Q22.032 74.116 22.153 74.472Q22.274 74.827 22.546 75.044Q22.817 75.261 23.247 75.261Q23.610 75.261 23.907 75.032Q24.204 74.804 24.305 74.452Q24.313 74.405 24.399 74.390L24.481 74.390Q24.575 74.417 24.575 74.499Q24.575 74.507 24.567 74.538Q24.505 74.765 24.366 74.948Q24.227 75.132 24.036 75.265Q23.844 75.397 23.626 75.468Q23.407 75.538 23.169 75.538Q22.797 75.538 22.460 75.401Q22.122 75.265 21.854 75.013Q21.587 74.761 21.436 74.421Q21.286 74.081 21.286 73.706M22.040 73.397L24.001 73.397Q24.001 73.093 23.899 72.802Q23.797 72.511 23.581 72.329Q23.364 72.147 23.047 72.147Q22.747 72.147 22.516 72.335Q22.286 72.522 22.163 72.814Q22.040 73.105 22.040 73.397M25.161 74.628Q25.161 74.144 25.563 73.849Q25.965 73.554 26.516 73.435Q27.067 73.315 27.559 73.315L27.559 73.026Q27.559 72.800 27.444 72.593Q27.329 72.386 27.131 72.267Q26.934 72.147 26.704 72.147Q26.278 72.147 25.993 72.253Q26.063 72.280 26.110 72.335Q26.157 72.390 26.182 72.460Q26.208 72.530 26.208 72.605Q26.208 72.710 26.157 72.802Q26.106 72.894 26.014 72.944Q25.922 72.995 25.817 72.995Q25.712 72.995 25.620 72.944Q25.528 72.894 25.477 72.802Q25.426 72.710 25.426 72.605Q25.426 72.187 25.815 72.040Q26.204 71.894 26.704 71.894Q27.036 71.894 27.389 72.024Q27.743 72.155 27.971 72.409Q28.200 72.663 28.200 73.011L28.200 74.812Q28.200 74.944 28.272 75.054Q28.344 75.163 28.473 75.163Q28.598 75.163 28.667 75.058Q28.735 74.952 28.735 74.812L28.735 74.300L29.016 74.300L29.016 74.812Q29.016 75.015 28.899 75.173Q28.782 75.331 28.600 75.415Q28.419 75.499 28.215 75.499Q27.985 75.499 27.833 75.327Q27.680 75.155 27.649 74.925Q27.489 75.206 27.180 75.372Q26.872 75.538 26.520 75.538Q26.008 75.538 25.585 75.315Q25.161 75.093 25.161 74.628M25.848 74.628Q25.848 74.913 26.075 75.099Q26.301 75.284 26.594 75.284Q26.840 75.284 27.065 75.167Q27.290 75.050 27.424 74.847Q27.559 74.644 27.559 74.390L27.559 73.558Q27.294 73.558 27.008 73.612Q26.723 73.667 26.452 73.796Q26.180 73.925 26.014 74.132Q25.848 74.339 25.848 74.628M29.352 73.733Q29.352 73.237 29.602 72.812Q29.852 72.386 30.272 72.140Q30.692 71.894 31.192 71.894Q31.731 71.894 32.122 72.019Q32.512 72.144 32.512 72.558Q32.512 72.663 32.462 72.755Q32.411 72.847 32.319 72.897Q32.227 72.948 32.118 72.948Q32.012 72.948 31.921 72.897Q31.829 72.847 31.778 72.755Q31.727 72.663 31.727 72.558Q31.727 72.335 31.895 72.230Q31.672 72.171 31.200 72.171Q30.903 72.171 30.688 72.310Q30.473 72.448 30.342 72.679Q30.212 72.909 30.153 73.179Q30.094 73.448 30.094 73.733Q30.094 74.128 30.227 74.478Q30.360 74.827 30.631 75.044Q30.903 75.261 31.301 75.261Q31.676 75.261 31.952 75.044Q32.227 74.827 32.329 74.468Q32.344 74.405 32.407 74.405L32.512 74.405Q32.547 74.405 32.573 74.433Q32.598 74.460 32.598 74.499L32.598 74.522Q32.465 75.003 32.081 75.271Q31.696 75.538 31.192 75.538Q30.829 75.538 30.495 75.401Q30.161 75.265 29.901 75.015Q29.641 74.765 29.497 74.429Q29.352 74.093 29.352 73.733\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(51.903 -100.43)\">\u003Cpath d=\"M34.785 75.460L32.929 75.460L32.929 75.163Q33.203 75.163 33.371 75.116Q33.539 75.069 33.539 74.901L33.539 70.741Q33.539 70.526 33.476 70.431Q33.414 70.335 33.295 70.314Q33.176 70.292 32.929 70.292L32.929 69.995L34.152 69.909L34.152 72.612Q34.277 72.401 34.465 72.251Q34.652 72.101 34.879 72.017Q35.105 71.933 35.351 71.933Q36.519 71.933 36.519 73.011L36.519 74.901Q36.519 75.069 36.689 75.116Q36.859 75.163 37.129 75.163L37.129 75.460L35.273 75.460L35.273 75.163Q35.547 75.163 35.715 75.116Q35.883 75.069 35.883 74.901L35.883 73.026Q35.883 72.644 35.762 72.415Q35.640 72.187 35.289 72.187Q34.976 72.187 34.722 72.349Q34.469 72.511 34.322 72.780Q34.176 73.050 34.176 73.347L34.176 74.901Q34.176 75.069 34.346 75.116Q34.515 75.163 34.785 75.163\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\">\u003Cpath fill=\"none\" d=\"M33.745-26.97H7.292\"\u002F>\u003Cpath stroke=\"none\" d=\"m5.292-26.97 3.2 1.6-1.2-1.6 1.2-1.6\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Strip of width \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">2\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0379em;\">δ\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>; the box above \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.625em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">p\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> tiles into 8 cells of side \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:1em;vertical-align:-0.25em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0379em;\">δ\u003C\u002Fspan>\u003Cspan class=\"mord\">\u002F2\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>, so at most 7 later points can beat \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0379em;\">δ\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:189.663px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 142.247 168.952\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M-27.485 84.85a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485 65.501a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485 49.568a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485 32.496a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485 17.7a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485.63a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485-15.304a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485-31.238a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485-48.31a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-27.485-65.381a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0m-1.7 0\"\u002F>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M-26.985 84.85a2.2 2.2 0 1 0-4.4 0 2.2 2.2 0 0 0 4.4 0m-2.2 0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg transform=\"translate(-18.766 .944)\">\u003Cpath d=\"M-27.697 86.400L-29.298 86.400Q-29.333 86.400-29.367 86.359Q-29.400 86.318-29.400 86.283L-29.369 86.177Q-29.337 86.115-29.283 86.107Q-29.091 86.107-29.007 86.091Q-28.923 86.076-28.871 86.009Q-28.818 85.943-28.779 85.802L-27.888 82.232Q-27.849 82.076-27.849 81.939Q-27.849 81.790-27.902 81.683Q-27.955 81.576-28.087 81.576Q-28.267 81.576-28.386 81.745Q-28.505 81.915-28.562 82.101Q-28.619 82.287-28.689 82.576Q-28.701 82.650-28.771 82.650L-28.872 82.650Q-28.908 82.650-28.935 82.615Q-28.962 82.579-28.962 82.552L-28.962 82.521Q-28.876 82.189-28.783 81.947Q-28.689 81.704-28.513 81.513Q-28.337 81.322-28.072 81.322Q-27.790 81.322-27.560 81.466Q-27.330 81.611-27.263 81.865Q-26.744 81.322-26.185 81.322Q-25.650 81.322-25.330 81.706Q-25.009 82.091-25.009 82.634Q-25.009 83.158-25.290 83.697Q-25.572 84.236-26.039 84.581Q-26.505 84.927-27.040 84.927Q-27.279 84.927-27.480 84.810Q-27.681 84.693-27.810 84.482L-28.154 85.857Q-28.165 85.896-28.185 86.017Q-28.185 86.107-27.681 86.107Q-27.576 86.138-27.576 86.232L-27.611 86.337Q-27.642 86.392-27.697 86.400M-27.255 82.283L-27.689 84.009Q-27.630 84.283-27.460 84.478Q-27.290 84.673-27.025 84.673Q-26.689 84.673-26.410 84.382Q-26.130 84.091-25.994 83.736Q-25.869 83.443-25.767 83.009Q-25.665 82.576-25.665 82.298Q-25.665 82.013-25.798 81.794Q-25.931 81.576-26.201 81.576Q-26.412 81.576-26.607 81.677Q-26.802 81.779-26.962 81.935Q-27.122 82.091-27.255 82.283\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M-46.4 73.468V-39.205h34.429V73.468ZM-11.97-39.205\" style=\"stroke-width:1.2\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(27.006 -66.287)\">\u003Cpath d=\"M-27.017 84.849L-28.872 84.849L-28.872 84.552Q-28.599 84.552-28.431 84.505Q-28.263 84.458-28.263 84.290L-28.263 82.154Q-28.263 81.939-28.326 81.843Q-28.388 81.747-28.507 81.726Q-28.626 81.704-28.872 81.704L-28.872 81.408L-27.681 81.322L-27.681 82.056Q-27.568 81.841-27.374 81.673Q-27.181 81.505-26.943 81.413Q-26.705 81.322-26.451 81.322Q-25.283 81.322-25.283 82.400L-25.283 84.290Q-25.283 84.458-25.113 84.505Q-24.943 84.552-24.673 84.552L-24.673 84.849L-26.529 84.849L-26.529 84.552Q-26.255 84.552-26.087 84.505Q-25.919 84.458-25.919 84.290L-25.919 82.415Q-25.919 82.033-26.040 81.804Q-26.162 81.576-26.513 81.576Q-26.826 81.576-27.080 81.738Q-27.333 81.900-27.480 82.169Q-27.626 82.439-27.626 82.736L-27.626 84.290Q-27.626 84.458-27.456 84.505Q-27.287 84.552-27.017 84.552L-27.017 84.849M-24.228 83.095Q-24.228 82.615-23.996 82.199Q-23.763 81.783-23.353 81.533Q-22.943 81.283-22.466 81.283Q-21.736 81.283-21.337 81.724Q-20.939 82.165-20.939 82.896Q-20.939 83.001-21.033 83.025L-23.482 83.025L-23.482 83.095Q-23.482 83.505-23.361 83.861Q-23.240 84.216-22.968 84.433Q-22.697 84.650-22.267 84.650Q-21.904 84.650-21.607 84.421Q-21.310 84.193-21.208 83.841Q-21.201 83.794-21.115 83.779L-21.033 83.779Q-20.939 83.806-20.939 83.888Q-20.939 83.896-20.947 83.927Q-21.009 84.154-21.148 84.337Q-21.287 84.521-21.478 84.654Q-21.669 84.787-21.888 84.857Q-22.107 84.927-22.345 84.927Q-22.716 84.927-23.054 84.790Q-23.392 84.654-23.660 84.402Q-23.927 84.150-24.078 83.810Q-24.228 83.470-24.228 83.095M-23.474 82.787L-21.513 82.787Q-21.513 82.482-21.615 82.191Q-21.716 81.900-21.933 81.718Q-22.150 81.537-22.466 81.537Q-22.767 81.537-22.997 81.724Q-23.228 81.912-23.351 82.203Q-23.474 82.494-23.474 82.787M-19.064 84.849L-20.560 84.849L-20.560 84.552Q-19.927 84.552-19.505 84.072L-18.736 83.162L-19.728 81.962Q-19.884 81.783-20.046 81.740Q-20.208 81.697-20.513 81.697L-20.513 81.400L-18.826 81.400L-18.826 81.697Q-18.919 81.697-18.996 81.740Q-19.072 81.783-19.072 81.872Q-19.072 81.915-19.040 81.962L-18.384 82.751L-17.904 82.177Q-17.787 82.040-17.787 81.904Q-17.787 81.814-17.837 81.755Q-17.888 81.697-17.970 81.697L-17.970 81.400L-16.482 81.400L-16.482 81.697Q-17.119 81.697-17.529 82.177L-18.208 82.978L-17.122 84.290Q-16.962 84.466-16.802 84.509Q-16.642 84.552-16.337 84.552L-16.337 84.849L-18.025 84.849L-18.025 84.552Q-17.935 84.552-17.857 84.509Q-17.779 84.466-17.779 84.376Q-17.779 84.353-17.810 84.290L-18.552 83.384L-19.138 84.072Q-19.255 84.208-19.255 84.345Q-19.255 84.431-19.205 84.492Q-19.154 84.552-19.064 84.552L-19.064 84.849M-15.345 83.888L-15.345 81.697L-16.048 81.697L-16.048 81.443Q-15.693 81.443-15.451 81.210Q-15.208 80.978-15.097 80.630Q-14.986 80.283-14.986 79.927L-14.705 79.927L-14.705 81.400L-13.529 81.400L-13.529 81.697L-14.705 81.697L-14.705 83.872Q-14.705 84.193-14.585 84.421Q-14.466 84.650-14.185 84.650Q-14.005 84.650-13.888 84.527Q-13.771 84.404-13.718 84.224Q-13.665 84.044-13.665 83.872L-13.665 83.400L-13.384 83.400L-13.384 83.888Q-13.384 84.142-13.490 84.382Q-13.595 84.622-13.792 84.775Q-13.990 84.927-14.247 84.927Q-14.564 84.927-14.816 84.804Q-15.068 84.681-15.206 84.447Q-15.345 84.212-15.345 83.888\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(27.006 -66.287)\">\u003Cpath d=\"M-8.564 84.626Q-8.564 84.201-8.480 83.751Q-8.396 83.302-8.240 82.884Q-8.083 82.466-7.869 82.079Q-7.654 81.693-7.380 81.337L-6.654 80.384L-7.564 80.384Q-9.060 80.384-9.099 80.423Q-9.169 80.505-9.216 80.695Q-9.263 80.884-9.306 81.162L-9.587 81.162L-9.318 79.443L-9.037 79.443L-9.037 79.466Q-9.037 79.611-8.519 79.654Q-8.001 79.697-7.509 79.697L-5.939 79.697L-5.939 79.888Q-5.947 79.927-5.962 79.954L-7.138 81.490Q-7.439 81.908-7.578 82.415Q-7.716 82.923-7.748 83.417Q-7.779 83.912-7.779 84.626Q-7.779 84.732-7.830 84.824Q-7.880 84.915-7.972 84.966Q-8.064 85.017-8.173 85.017Q-8.279 85.017-8.371 84.966Q-8.462 84.915-8.513 84.824Q-8.564 84.732-8.564 84.626\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(27.006 -66.287)\">\u003Cpath d=\"M-0.878 84.849L-2.656 84.849L-2.656 84.552Q-2.382 84.552-2.214 84.505Q-2.046 84.458-2.046 84.290L-2.046 82.154Q-2.046 81.939-2.103 81.843Q-2.160 81.747-2.273 81.726Q-2.386 81.704-2.632 81.704L-2.632 81.408L-1.433 81.322L-1.433 84.290Q-1.433 84.458-1.287 84.505Q-1.140 84.552-0.878 84.552L-0.878 84.849M-2.320 79.927Q-2.320 79.736-2.185 79.605Q-2.050 79.474-1.855 79.474Q-1.734 79.474-1.630 79.537Q-1.527 79.599-1.464 79.703Q-1.402 79.806-1.402 79.927Q-1.402 80.122-1.533 80.257Q-1.663 80.392-1.855 80.392Q-2.054 80.392-2.187 80.259Q-2.320 80.126-2.320 79.927M1.551 84.849L-0.304 84.849L-0.304 84.552Q-0.031 84.552 0.137 84.505Q0.305 84.458 0.305 84.290L0.305 82.154Q0.305 81.939 0.243 81.843Q0.180 81.747 0.061 81.726Q-0.058 81.704-0.304 81.704L-0.304 81.408L0.887 81.322L0.887 82.056Q1.001 81.841 1.194 81.673Q1.387 81.505 1.626 81.413Q1.864 81.322 2.118 81.322Q3.286 81.322 3.286 82.400L3.286 84.290Q3.286 84.458 3.456 84.505Q3.626 84.552 3.895 84.552L3.895 84.849L2.040 84.849L2.040 84.552Q2.313 84.552 2.481 84.505Q2.649 84.458 2.649 84.290L2.649 82.415Q2.649 82.033 2.528 81.804Q2.407 81.576 2.055 81.576Q1.743 81.576 1.489 81.738Q1.235 81.900 1.088 82.169Q0.942 82.439 0.942 82.736L0.942 84.290Q0.942 84.458 1.112 84.505Q1.282 84.552 1.551 84.552\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(27.006 -66.287)\">\u003Cpath d=\"M7.420 85.787Q7.420 85.568 7.553 85.404Q7.686 85.240 7.901 85.240Q8.034 85.240 8.128 85.324Q8.221 85.408 8.221 85.544Q8.221 85.724 8.094 85.867Q7.967 86.009 7.788 86.009Q7.971 86.224 8.354 86.224Q8.905 86.224 9.256 85.732Q9.608 85.240 9.764 84.603Q9.413 84.927 8.971 84.927Q8.647 84.927 8.397 84.818Q8.147 84.708 8.008 84.484Q7.870 84.259 7.870 83.927Q7.870 83.677 7.944 83.390Q8.018 83.103 8.155 82.751Q8.292 82.400 8.354 82.232Q8.444 82.009 8.444 81.826Q8.444 81.576 8.276 81.576Q7.960 81.576 7.751 81.882Q7.542 82.189 7.436 82.576Q7.424 82.650 7.354 82.650L7.253 82.650Q7.217 82.650 7.190 82.615Q7.163 82.579 7.163 82.552L7.163 82.521Q7.288 82.060 7.585 81.691Q7.881 81.322 8.292 81.322Q8.487 81.322 8.661 81.406Q8.835 81.490 8.936 81.642Q9.038 81.794 9.038 82.001Q9.038 82.154 8.979 82.290Q8.889 82.521 8.788 82.787Q8.686 83.052 8.629 83.234Q8.573 83.415 8.528 83.630Q8.483 83.845 8.483 84.040Q8.483 84.314 8.606 84.494Q8.729 84.673 8.987 84.673Q9.506 84.673 9.909 84.033L10.491 81.689Q10.530 81.564 10.633 81.482Q10.737 81.400 10.862 81.400Q10.971 81.400 11.051 81.474Q11.131 81.548 11.131 81.658Q11.131 81.704 11.124 81.728L10.338 84.880Q10.229 85.302 9.928 85.673Q9.628 86.044 9.208 86.263Q8.788 86.482 8.346 86.482Q7.987 86.482 7.704 86.304Q7.420 86.126 7.420 85.787\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(27.006 -66.287)\">\u003Cpath d=\"M13.781 83.400L11.527 83.400L11.527 82.849L13.781 82.849L13.781 83.400M14.499 83.154Q14.499 82.650 14.755 82.218Q15.011 81.787 15.447 81.535Q15.882 81.283 16.382 81.283Q16.769 81.283 17.111 81.427Q17.452 81.572 17.714 81.833Q17.976 82.095 18.118 82.431Q18.261 82.767 18.261 83.154Q18.261 83.646 17.997 84.056Q17.734 84.466 17.304 84.697Q16.874 84.927 16.382 84.927Q15.890 84.927 15.456 84.695Q15.023 84.462 14.761 84.054Q14.499 83.646 14.499 83.154M16.382 84.650Q16.839 84.650 17.091 84.427Q17.343 84.204 17.431 83.853Q17.519 83.501 17.519 83.056Q17.519 82.626 17.425 82.288Q17.331 81.951 17.077 81.744Q16.824 81.537 16.382 81.537Q15.734 81.537 15.490 81.953Q15.245 82.369 15.245 83.056Q15.245 83.501 15.333 83.853Q15.421 84.204 15.673 84.427Q15.925 84.650 16.382 84.650M20.753 84.849L18.773 84.849L18.773 84.552Q19.042 84.552 19.210 84.507Q19.378 84.462 19.378 84.290L19.378 82.154Q19.378 81.939 19.316 81.843Q19.253 81.747 19.136 81.726Q19.019 81.704 18.773 81.704L18.773 81.408L19.941 81.322L19.941 82.107Q20.019 81.896 20.171 81.710Q20.324 81.525 20.523 81.423Q20.722 81.322 20.949 81.322Q21.195 81.322 21.386 81.466Q21.577 81.611 21.577 81.841Q21.577 81.997 21.472 82.107Q21.367 82.216 21.210 82.216Q21.054 82.216 20.945 82.107Q20.835 81.997 20.835 81.841Q20.835 81.681 20.941 81.576Q20.617 81.576 20.402 81.804Q20.187 82.033 20.091 82.372Q19.995 82.712 19.995 83.017L19.995 84.290Q19.995 84.458 20.222 84.505Q20.449 84.552 20.753 84.552L20.753 84.849M23.874 84.927Q23.394 84.927 22.986 84.683Q22.577 84.439 22.339 84.025Q22.101 83.611 22.101 83.122Q22.101 82.630 22.359 82.214Q22.617 81.798 23.048 81.560Q23.480 81.322 23.972 81.322Q24.593 81.322 25.042 81.759L25.042 80.130Q25.042 79.915 24.980 79.820Q24.917 79.724 24.800 79.703Q24.683 79.681 24.437 79.681L24.437 79.384L25.659 79.298L25.659 84.107Q25.659 84.318 25.722 84.413Q25.784 84.509 25.902 84.531Q26.019 84.552 26.269 84.552L26.269 84.849L25.019 84.927L25.019 84.443Q24.554 84.927 23.874 84.927M23.941 84.673Q24.281 84.673 24.574 84.482Q24.867 84.290 25.019 83.994L25.019 82.162Q24.870 81.888 24.609 81.732Q24.347 81.576 24.034 81.576Q23.409 81.576 23.126 82.023Q22.843 82.470 22.843 83.130Q22.843 83.775 23.095 84.224Q23.347 84.673 23.941 84.673M26.777 83.095Q26.777 82.615 27.009 82.199Q27.242 81.783 27.652 81.533Q28.062 81.283 28.538 81.283Q29.269 81.283 29.667 81.724Q30.066 82.165 30.066 82.896Q30.066 83.001 29.972 83.025L27.523 83.025L27.523 83.095Q27.523 83.505 27.644 83.861Q27.765 84.216 28.036 84.433Q28.308 84.650 28.738 84.650Q29.101 84.650 29.398 84.421Q29.695 84.193 29.796 83.841Q29.804 83.794 29.890 83.779L29.972 83.779Q30.066 83.806 30.066 83.888Q30.066 83.896 30.058 83.927Q29.995 84.154 29.857 84.337Q29.718 84.521 29.527 84.654Q29.335 84.787 29.117 84.857Q28.898 84.927 28.659 84.927Q28.288 84.927 27.950 84.790Q27.613 84.654 27.345 84.402Q27.077 84.150 26.927 83.810Q26.777 83.470 26.777 83.095M27.531 82.787L29.492 82.787Q29.492 82.482 29.390 82.191Q29.288 81.900 29.072 81.718Q28.855 81.537 28.538 81.537Q28.238 81.537 28.007 81.724Q27.777 81.912 27.654 82.203Q27.531 82.494 27.531 82.787M32.562 84.849L30.581 84.849L30.581 84.552Q30.851 84.552 31.019 84.507Q31.187 84.462 31.187 84.290L31.187 82.154Q31.187 81.939 31.124 81.843Q31.062 81.747 30.945 81.726Q30.827 81.704 30.581 81.704L30.581 81.408L31.749 81.322L31.749 82.107Q31.827 81.896 31.980 81.710Q32.132 81.525 32.331 81.423Q32.531 81.322 32.757 81.322Q33.003 81.322 33.195 81.466Q33.386 81.611 33.386 81.841Q33.386 81.997 33.281 82.107Q33.175 82.216 33.019 82.216Q32.863 82.216 32.753 82.107Q32.644 81.997 32.644 81.841Q32.644 81.681 32.749 81.576Q32.425 81.576 32.210 81.804Q31.995 82.033 31.900 82.372Q31.804 82.712 31.804 83.017L31.804 84.290Q31.804 84.458 32.031 84.505Q32.257 84.552 32.562 84.552\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cpath fill=\"none\" d=\"M-7.277 16.563h-1.13\"\u002F>\u003Cpath stroke=\"none\" d=\"m-10.406 16.563 3.2 1.6-1.2-1.6 1.2-1.6\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-warn)\" stroke=\"none\" d=\"M-27.185-65.381a2 2 0 1 0-4 0 2 2 0 0 0 4 0m-2 0\"\u002F>\u003Cg fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\">\u003Cg fill=\"var(--tk-warn)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(14.487 -148.23)\">\u003Cpath d=\"M-28.033 84.849L-28.314 84.849L-28.314 80.130Q-28.314 79.915-28.376 79.820Q-28.439 79.724-28.556 79.703Q-28.673 79.681-28.919 79.681L-28.919 79.384L-27.697 79.298L-27.697 81.787Q-27.220 81.322-26.521 81.322Q-26.040 81.322-25.632 81.566Q-25.224 81.810-24.988 82.224Q-24.751 82.638-24.751 83.122Q-24.751 83.497-24.900 83.826Q-25.048 84.154-25.318 84.406Q-25.587 84.658-25.931 84.792Q-26.275 84.927-26.634 84.927Q-26.955 84.927-27.253 84.779Q-27.552 84.630-27.759 84.369L-28.033 84.849M-27.673 82.177L-27.673 84.017Q-27.521 84.314-27.261 84.494Q-27.001 84.673-26.689 84.673Q-26.263 84.673-25.996 84.454Q-25.728 84.236-25.613 83.890Q-25.497 83.544-25.497 83.122Q-25.497 82.474-25.746 82.025Q-25.994 81.576-26.591 81.576Q-26.927 81.576-27.216 81.734Q-27.505 81.892-27.673 82.177\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(14.487 -148.23)\">\u003Cpath d=\"M-23.989 83.095Q-23.989 82.615-23.756 82.199Q-23.524 81.783-23.114 81.533Q-22.704 81.283-22.227 81.283Q-21.497 81.283-21.098 81.724Q-20.700 82.165-20.700 82.896Q-20.700 83.001-20.793 83.025L-23.243 83.025L-23.243 83.095Q-23.243 83.505-23.122 83.861Q-23 84.216-22.729 84.433Q-22.457 84.650-22.028 84.650Q-21.665 84.650-21.368 84.421Q-21.071 84.193-20.969 83.841Q-20.961 83.794-20.875 83.779L-20.793 83.779Q-20.700 83.806-20.700 83.888Q-20.700 83.896-20.707 83.927Q-20.770 84.154-20.909 84.337Q-21.047 84.521-21.239 84.654Q-21.430 84.787-21.649 84.857Q-21.868 84.927-22.106 84.927Q-22.477 84.927-22.815 84.790Q-23.153 84.654-23.420 84.402Q-23.688 84.150-23.838 83.810Q-23.989 83.470-23.989 83.095M-23.235 82.787L-21.274 82.787Q-21.274 82.482-21.375 82.191Q-21.477 81.900-21.694 81.718Q-21.911 81.537-22.227 81.537Q-22.528 81.537-22.758 81.724Q-22.989 81.912-23.112 82.203Q-23.235 82.494-23.235 82.787M-19.793 86.146Q-19.680 86.224-19.504 86.224Q-19.215 86.224-18.995 86.011Q-18.774 85.798-18.649 85.497L-18.360 84.849L-19.633 81.962Q-19.715 81.787-19.860 81.742Q-20.004 81.697-20.274 81.697L-20.274 81.400L-18.555 81.400L-18.555 81.697Q-18.977 81.697-18.977 81.880Q-18.977 81.892-18.961 81.962L-18.024 84.087L-17.192 82.177Q-17.153 82.087-17.153 82.009Q-17.153 81.869-17.254 81.783Q-17.356 81.697-17.497 81.697L-17.497 81.400L-16.145 81.400L-16.145 81.697Q-16.399 81.697-16.592 81.822Q-16.786 81.947-16.891 82.177L-18.336 85.497Q-18.450 85.751-18.616 85.974Q-18.782 86.197-19.010 86.339Q-19.239 86.482-19.504 86.482Q-19.801 86.482-20.041 86.290Q-20.282 86.099-20.282 85.810Q-20.282 85.654-20.176 85.552Q-20.071 85.451-19.922 85.451Q-19.817 85.451-19.737 85.497Q-19.657 85.544-19.610 85.622Q-19.563 85.701-19.563 85.810Q-19.563 85.931-19.623 86.019Q-19.684 86.107-19.793 86.146\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(14.487 -148.23)\">\u003Cpath d=\"M-15.961 83.154Q-15.961 82.650-15.705 82.218Q-15.449 81.787-15.013 81.535Q-14.578 81.283-14.078 81.283Q-13.691 81.283-13.349 81.427Q-13.008 81.572-12.746 81.833Q-12.484 82.095-12.342 82.431Q-12.199 82.767-12.199 83.154Q-12.199 83.646-12.463 84.056Q-12.726 84.466-13.156 84.697Q-13.586 84.927-14.078 84.927Q-14.570 84.927-15.004 84.695Q-15.437 84.462-15.699 84.054Q-15.961 83.646-15.961 83.154M-14.078 84.650Q-13.621 84.650-13.369 84.427Q-13.117 84.204-13.029 83.853Q-12.941 83.501-12.941 83.056Q-12.941 82.626-13.035 82.288Q-13.129 81.951-13.383 81.744Q-13.637 81.537-14.078 81.537Q-14.726 81.537-14.970 81.953Q-15.215 82.369-15.215 83.056Q-15.215 83.501-15.127 83.853Q-15.039 84.204-14.787 84.427Q-14.535 84.650-14.078 84.650M-9.785 84.849L-11.640 84.849L-11.640 84.552Q-11.367 84.552-11.199 84.505Q-11.031 84.458-11.031 84.290L-11.031 82.154Q-11.031 81.939-11.094 81.843Q-11.156 81.747-11.275 81.726Q-11.394 81.704-11.640 81.704L-11.640 81.408L-10.449 81.322L-10.449 82.056Q-10.336 81.841-10.142 81.673Q-9.949 81.505-9.711 81.413Q-9.472 81.322-9.219 81.322Q-8.051 81.322-8.051 82.400L-8.051 84.290Q-8.051 84.458-7.881 84.505Q-7.711 84.552-7.441 84.552L-7.441 84.849L-9.297 84.849L-9.297 84.552Q-9.023 84.552-8.855 84.505Q-8.687 84.458-8.687 84.290L-8.687 82.415Q-8.687 82.033-8.808 81.804Q-8.929 81.576-9.281 81.576Q-9.594 81.576-9.847 81.738Q-10.101 81.900-10.248 82.169Q-10.394 82.439-10.394 82.736L-10.394 84.290Q-10.394 84.458-10.224 84.505Q-10.054 84.552-9.785 84.552L-9.785 84.849M-5.179 84.927Q-5.660 84.927-6.068 84.683Q-6.476 84.439-6.715 84.025Q-6.953 83.611-6.953 83.122Q-6.953 82.630-6.695 82.214Q-6.437 81.798-6.006 81.560Q-5.574 81.322-5.082 81.322Q-4.461 81.322-4.012 81.759L-4.012 80.130Q-4.012 79.915-4.074 79.820Q-4.137 79.724-4.254 79.703Q-4.371 79.681-4.617 79.681L-4.617 79.384L-3.394 79.298L-3.394 84.107Q-3.394 84.318-3.332 84.413Q-3.269 84.509-3.152 84.531Q-3.035 84.552-2.785 84.552L-2.785 84.849L-4.035 84.927L-4.035 84.443Q-4.500 84.927-5.179 84.927M-5.113 84.673Q-4.773 84.673-4.480 84.482Q-4.187 84.290-4.035 83.994L-4.035 82.162Q-4.183 81.888-4.445 81.732Q-4.707 81.576-5.019 81.576Q-5.644 81.576-5.928 82.023Q-6.211 82.470-6.211 83.130Q-6.211 83.775-5.959 84.224Q-5.707 84.673-5.113 84.673\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(14.487 -148.23)\">\u003Cpath d=\"M2.575 84.849L0.595 84.849L0.595 84.552Q0.864 84.552 1.032 84.507Q1.200 84.462 1.200 84.290L1.200 82.154Q1.200 81.939 1.138 81.843Q1.075 81.747 0.958 81.726Q0.841 81.704 0.595 81.704L0.595 81.408L1.763 81.322L1.763 82.107Q1.841 81.896 1.993 81.710Q2.145 81.525 2.345 81.423Q2.544 81.322 2.770 81.322Q3.017 81.322 3.208 81.466Q3.399 81.611 3.399 81.841Q3.399 81.997 3.294 82.107Q3.188 82.216 3.032 82.216Q2.876 82.216 2.767 82.107Q2.657 81.997 2.657 81.841Q2.657 81.681 2.763 81.576Q2.438 81.576 2.224 81.804Q2.009 82.033 1.913 82.372Q1.817 82.712 1.817 83.017L1.817 84.290Q1.817 84.458 2.044 84.505Q2.270 84.552 2.575 84.552L2.575 84.849M3.880 83.095Q3.880 82.615 4.112 82.199Q4.345 81.783 4.755 81.533Q5.165 81.283 5.642 81.283Q6.372 81.283 6.770 81.724Q7.169 82.165 7.169 82.896Q7.169 83.001 7.075 83.025L4.626 83.025L4.626 83.095Q4.626 83.505 4.747 83.861Q4.868 84.216 5.140 84.433Q5.411 84.650 5.841 84.650Q6.204 84.650 6.501 84.421Q6.798 84.193 6.899 83.841Q6.907 83.794 6.993 83.779L7.075 83.779Q7.169 83.806 7.169 83.888Q7.169 83.896 7.161 83.927Q7.099 84.154 6.960 84.337Q6.821 84.521 6.630 84.654Q6.438 84.787 6.220 84.857Q6.001 84.927 5.763 84.927Q5.392 84.927 5.054 84.790Q4.716 84.654 4.448 84.402Q4.181 84.150 4.030 83.810Q3.880 83.470 3.880 83.095M4.634 82.787L6.595 82.787Q6.595 82.482 6.493 82.191Q6.392 81.900 6.175 81.718Q5.958 81.537 5.642 81.537Q5.341 81.537 5.110 81.724Q4.880 81.912 4.757 82.203Q4.634 82.494 4.634 82.787M7.755 84.017Q7.755 83.533 8.157 83.238Q8.559 82.943 9.110 82.824Q9.661 82.704 10.153 82.704L10.153 82.415Q10.153 82.189 10.038 81.982Q9.923 81.775 9.725 81.656Q9.528 81.537 9.298 81.537Q8.872 81.537 8.587 81.642Q8.657 81.669 8.704 81.724Q8.751 81.779 8.776 81.849Q8.802 81.919 8.802 81.994Q8.802 82.099 8.751 82.191Q8.700 82.283 8.608 82.333Q8.517 82.384 8.411 82.384Q8.306 82.384 8.214 82.333Q8.122 82.283 8.071 82.191Q8.020 82.099 8.020 81.994Q8.020 81.576 8.409 81.429Q8.798 81.283 9.298 81.283Q9.630 81.283 9.983 81.413Q10.337 81.544 10.565 81.798Q10.794 82.052 10.794 82.400L10.794 84.201Q10.794 84.333 10.866 84.443Q10.938 84.552 11.067 84.552Q11.192 84.552 11.261 84.447Q11.329 84.341 11.329 84.201L11.329 83.689L11.610 83.689L11.610 84.201Q11.610 84.404 11.493 84.562Q11.376 84.720 11.194 84.804Q11.013 84.888 10.809 84.888Q10.579 84.888 10.427 84.716Q10.274 84.544 10.243 84.314Q10.083 84.595 9.774 84.761Q9.466 84.927 9.114 84.927Q8.602 84.927 8.179 84.704Q7.755 84.482 7.755 84.017M8.442 84.017Q8.442 84.302 8.669 84.488Q8.895 84.673 9.188 84.673Q9.434 84.673 9.659 84.556Q9.884 84.439 10.018 84.236Q10.153 84.033 10.153 83.779L10.153 82.947Q9.888 82.947 9.602 83.001Q9.317 83.056 9.046 83.185Q8.774 83.314 8.608 83.521Q8.442 83.728 8.442 84.017M11.946 83.122Q11.946 82.626 12.196 82.201Q12.446 81.775 12.866 81.529Q13.286 81.283 13.786 81.283Q14.325 81.283 14.716 81.408Q15.106 81.533 15.106 81.947Q15.106 82.052 15.056 82.144Q15.005 82.236 14.913 82.287Q14.821 82.337 14.712 82.337Q14.606 82.337 14.515 82.287Q14.423 82.236 14.372 82.144Q14.321 82.052 14.321 81.947Q14.321 81.724 14.489 81.619Q14.267 81.560 13.794 81.560Q13.497 81.560 13.282 81.699Q13.067 81.837 12.936 82.068Q12.806 82.298 12.747 82.568Q12.688 82.837 12.688 83.122Q12.688 83.517 12.821 83.867Q12.954 84.216 13.225 84.433Q13.497 84.650 13.895 84.650Q14.270 84.650 14.546 84.433Q14.821 84.216 14.923 83.857Q14.938 83.794 15.001 83.794L15.106 83.794Q15.142 83.794 15.167 83.822Q15.192 83.849 15.192 83.888L15.192 83.912Q15.059 84.392 14.675 84.660Q14.290 84.927 13.786 84.927Q13.423 84.927 13.089 84.790Q12.755 84.654 12.495 84.404Q12.235 84.154 12.091 83.818Q11.946 83.482 11.946 83.122\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(14.487 -148.23)\">\u003Cpath d=\"M17.379 84.849L15.524 84.849L15.524 84.552Q15.797 84.552 15.965 84.505Q16.133 84.458 16.133 84.290L16.133 80.130Q16.133 79.915 16.070 79.820Q16.008 79.724 15.889 79.703Q15.770 79.681 15.524 79.681L15.524 79.384L16.746 79.298L16.746 82.001Q16.871 81.790 17.059 81.640Q17.246 81.490 17.473 81.406Q17.699 81.322 17.945 81.322Q19.113 81.322 19.113 82.400L19.113 84.290Q19.113 84.458 19.283 84.505Q19.453 84.552 19.723 84.552L19.723 84.849L17.867 84.849L17.867 84.552Q18.141 84.552 18.309 84.505Q18.477 84.458 18.477 84.290L18.477 82.415Q18.477 82.033 18.356 81.804Q18.234 81.576 17.883 81.576Q17.570 81.576 17.316 81.738Q17.063 81.900 16.916 82.169Q16.770 82.439 16.770 82.736L16.770 84.290Q16.770 84.458 16.940 84.505Q17.109 84.552 17.379 84.552\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cpath fill=\"none\" d=\"M-58.918 84.85V-33.79\"\u002F>\u003Cpath stroke=\"none\" d=\"m-58.918-35.79-1.6 3.2 1.6-1.2 1.6 1.2\"\u002F>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"rotate(-90 -49.275 95.623)\">\u003Cpath d=\"M-28.904 84.841L-28.904 83.619Q-28.904 83.591-28.872 83.560Q-28.841 83.529-28.818 83.529L-28.712 83.529Q-28.642 83.529-28.626 83.591Q-28.564 83.912-28.425 84.152Q-28.287 84.392-28.054 84.533Q-27.822 84.673-27.513 84.673Q-27.275 84.673-27.066 84.613Q-26.857 84.552-26.720 84.404Q-26.583 84.255-26.583 84.009Q-26.583 83.755-26.794 83.589Q-27.005 83.423-27.275 83.369L-27.896 83.255Q-28.302 83.177-28.603 82.921Q-28.904 82.665-28.904 82.290Q-28.904 81.923-28.703 81.701Q-28.501 81.478-28.177 81.380Q-27.853 81.283-27.513 81.283Q-27.048 81.283-26.751 81.490L-26.529 81.306Q-26.505 81.283-26.474 81.283L-26.423 81.283Q-26.392 81.283-26.365 81.310Q-26.337 81.337-26.337 81.369L-26.337 82.353Q-26.337 82.384-26.363 82.413Q-26.388 82.443-26.423 82.443L-26.529 82.443Q-26.564 82.443-26.591 82.415Q-26.619 82.388-26.619 82.353Q-26.619 81.954-26.871 81.734Q-27.122 81.513-27.521 81.513Q-27.876 81.513-28.160 81.636Q-28.443 81.759-28.443 82.064Q-28.443 82.283-28.242 82.415Q-28.040 82.548-27.794 82.591L-27.169 82.704Q-26.740 82.794-26.431 83.091Q-26.122 83.388-26.122 83.802Q-26.122 84.372-26.521 84.650Q-26.919 84.927-27.513 84.927Q-28.064 84.927-28.415 84.591L-28.712 84.904Q-28.736 84.927-28.771 84.927L-28.818 84.927Q-28.841 84.927-28.872 84.896Q-28.904 84.865-28.904 84.841M-25.552 83.122Q-25.552 82.626-25.302 82.201Q-25.052 81.775-24.632 81.529Q-24.212 81.283-23.712 81.283Q-23.173 81.283-22.783 81.408Q-22.392 81.533-22.392 81.947Q-22.392 82.052-22.443 82.144Q-22.494 82.236-22.585 82.287Q-22.677 82.337-22.787 82.337Q-22.892 82.337-22.984 82.287Q-23.076 82.236-23.126 82.144Q-23.177 82.052-23.177 81.947Q-23.177 81.724-23.009 81.619Q-23.232 81.560-23.705 81.560Q-24.001 81.560-24.216 81.699Q-24.431 81.837-24.562 82.068Q-24.693 82.298-24.751 82.568Q-24.810 82.837-24.810 83.122Q-24.810 83.517-24.677 83.867Q-24.544 84.216-24.273 84.433Q-24.001 84.650-23.603 84.650Q-23.228 84.650-22.953 84.433Q-22.677 84.216-22.576 83.857Q-22.560 83.794-22.497 83.794L-22.392 83.794Q-22.357 83.794-22.331 83.822Q-22.306 83.849-22.306 83.888L-22.306 83.912Q-22.439 84.392-22.824 84.660Q-23.208 84.927-23.712 84.927Q-24.076 84.927-24.410 84.790Q-24.744 84.654-25.003 84.404Q-25.263 84.154-25.408 83.818Q-25.552 83.482-25.552 83.122M-21.720 84.017Q-21.720 83.533-21.318 83.238Q-20.915 82.943-20.365 82.824Q-19.814 82.704-19.322 82.704L-19.322 82.415Q-19.322 82.189-19.437 81.982Q-19.552 81.775-19.749 81.656Q-19.947 81.537-20.177 81.537Q-20.603 81.537-20.888 81.642Q-20.818 81.669-20.771 81.724Q-20.724 81.779-20.699 81.849Q-20.673 81.919-20.673 81.994Q-20.673 82.099-20.724 82.191Q-20.775 82.283-20.867 82.333Q-20.958 82.384-21.064 82.384Q-21.169 82.384-21.261 82.333Q-21.353 82.283-21.404 82.191Q-21.455 82.099-21.455 81.994Q-21.455 81.576-21.066 81.429Q-20.677 81.283-20.177 81.283Q-19.845 81.283-19.492 81.413Q-19.138 81.544-18.910 81.798Q-18.681 82.052-18.681 82.400L-18.681 84.201Q-18.681 84.333-18.609 84.443Q-18.537 84.552-18.408 84.552Q-18.283 84.552-18.214 84.447Q-18.146 84.341-18.146 84.201L-18.146 83.689L-17.865 83.689L-17.865 84.201Q-17.865 84.404-17.982 84.562Q-18.099 84.720-18.281 84.804Q-18.462 84.888-18.665 84.888Q-18.896 84.888-19.048 84.716Q-19.201 84.544-19.232 84.314Q-19.392 84.595-19.701 84.761Q-20.009 84.927-20.361 84.927Q-20.872 84.927-21.296 84.704Q-21.720 84.482-21.720 84.017M-21.033 84.017Q-21.033 84.302-20.806 84.488Q-20.580 84.673-20.287 84.673Q-20.040 84.673-19.816 84.556Q-19.591 84.439-19.456 84.236Q-19.322 84.033-19.322 83.779L-19.322 82.947Q-19.587 82.947-19.872 83.001Q-20.158 83.056-20.429 83.185Q-20.701 83.314-20.867 83.521Q-21.033 83.728-21.033 84.017M-15.642 84.849L-17.497 84.849L-17.497 84.552Q-17.224 84.552-17.056 84.505Q-16.888 84.458-16.888 84.290L-16.888 82.154Q-16.888 81.939-16.951 81.843Q-17.013 81.747-17.132 81.726Q-17.251 81.704-17.497 81.704L-17.497 81.408L-16.306 81.322L-16.306 82.056Q-16.193 81.841-15.999 81.673Q-15.806 81.505-15.568 81.413Q-15.330 81.322-15.076 81.322Q-13.908 81.322-13.908 82.400L-13.908 84.290Q-13.908 84.458-13.738 84.505Q-13.568 84.552-13.298 84.552L-13.298 84.849L-15.154 84.849L-15.154 84.552Q-14.880 84.552-14.712 84.505Q-14.544 84.458-14.544 84.290L-14.544 82.415Q-14.544 82.033-14.665 81.804Q-14.787 81.576-15.138 81.576Q-15.451 81.576-15.705 81.738Q-15.958 81.900-16.105 82.169Q-16.251 82.439-16.251 82.736L-16.251 84.290Q-16.251 84.458-16.081 84.505Q-15.912 84.552-15.642 84.552\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"rotate(-90 -49.275 95.623)\">\u003Cpath d=\"M-9.327 83.896L-9.327 82.154Q-9.327 81.939-9.390 81.843Q-9.452 81.747-9.571 81.726Q-9.690 81.704-9.937 81.704L-9.937 81.408L-8.690 81.322L-8.690 83.872L-8.690 83.896Q-8.690 84.208-8.636 84.370Q-8.581 84.533-8.431 84.603Q-8.280 84.673-7.960 84.673Q-7.530 84.673-7.257 84.335Q-6.983 83.997-6.983 83.552L-6.983 82.154Q-6.983 81.939-7.046 81.843Q-7.108 81.747-7.228 81.726Q-7.347 81.704-7.593 81.704L-7.593 81.408L-6.347 81.322L-6.347 84.107Q-6.347 84.318-6.284 84.413Q-6.222 84.509-6.103 84.531Q-5.983 84.552-5.737 84.552L-5.737 84.849L-6.960 84.927L-6.960 84.306Q-7.128 84.595-7.409 84.761Q-7.690 84.927-8.011 84.927Q-9.327 84.927-9.327 83.896M-3.409 86.400L-5.265 86.400L-5.265 86.107Q-4.995 86.107-4.827 86.062Q-4.659 86.017-4.659 85.841L-4.659 82.017Q-4.659 81.810-4.815 81.757Q-4.972 81.704-5.265 81.704L-5.265 81.408L-4.042 81.322L-4.042 81.787Q-3.812 81.564-3.497 81.443Q-3.183 81.322-2.843 81.322Q-2.370 81.322-1.966 81.568Q-1.562 81.814-1.329 82.230Q-1.097 82.646-1.097 83.122Q-1.097 83.497-1.245 83.826Q-1.394 84.154-1.663 84.406Q-1.933 84.658-2.276 84.792Q-2.620 84.927-2.979 84.927Q-3.269 84.927-3.540 84.806Q-3.812 84.685-4.019 84.474L-4.019 85.841Q-4.019 86.017-3.851 86.062Q-3.683 86.107-3.409 86.107L-3.409 86.400M-4.019 82.185L-4.019 84.025Q-3.866 84.314-3.604 84.494Q-3.343 84.673-3.034 84.673Q-2.749 84.673-2.526 84.535Q-2.304 84.396-2.151 84.165Q-1.999 83.935-1.921 83.663Q-1.843 83.392-1.843 83.122Q-1.843 82.790-1.968 82.433Q-2.093 82.076-2.341 81.839Q-2.589 81.603-2.937 81.603Q-3.261 81.603-3.556 81.759Q-3.851 81.915-4.019 82.185\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"rotate(-90 -49.275 95.623)\">\u003Cpath d=\"M0.784 84.818L-0.286 81.962Q-0.352 81.783-0.483 81.740Q-0.614 81.697-0.872 81.697L-0.872 81.400L0.808 81.400L0.808 81.697Q0.358 81.697 0.358 81.896Q0.362 81.912 0.364 81.929Q0.366 81.947 0.366 81.962L1.159 84.056L1.870 82.146Q1.835 82.052 1.835 82.007Q1.835 81.962 1.800 81.962Q1.733 81.783 1.603 81.740Q1.472 81.697 1.218 81.697L1.218 81.400L2.808 81.400L2.808 81.697Q2.358 81.697 2.358 81.896Q2.362 81.915 2.364 81.933Q2.366 81.951 2.366 81.962L3.198 84.177L3.952 82.177Q3.976 82.119 3.976 82.048Q3.976 81.888 3.839 81.792Q3.702 81.697 3.534 81.697L3.534 81.400L4.921 81.400L4.921 81.697Q4.687 81.697 4.509 81.824Q4.331 81.951 4.249 82.177L3.265 84.818Q3.210 84.927 3.097 84.927L3.038 84.927Q2.925 84.927 2.882 84.818L2.022 82.544L1.167 84.818Q1.128 84.927 1.007 84.927L0.952 84.927Q0.839 84.927 0.784 84.818\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"rotate(-90 -49.275 95.623)\">\u003Cpath d=\"M5.199 84.017Q5.199 83.533 5.601 83.238Q6.004 82.943 6.554 82.824Q7.105 82.704 7.597 82.704L7.597 82.415Q7.597 82.189 7.482 81.982Q7.367 81.775 7.170 81.656Q6.972 81.537 6.742 81.537Q6.316 81.537 6.031 81.642Q6.101 81.669 6.148 81.724Q6.195 81.779 6.220 81.849Q6.246 81.919 6.246 81.994Q6.246 82.099 6.195 82.191Q6.144 82.283 6.052 82.333Q5.961 82.384 5.855 82.384Q5.750 82.384 5.658 82.333Q5.566 82.283 5.515 82.191Q5.465 82.099 5.465 81.994Q5.465 81.576 5.853 81.429Q6.242 81.283 6.742 81.283Q7.074 81.283 7.427 81.413Q7.781 81.544 8.009 81.798Q8.238 82.052 8.238 82.400L8.238 84.201Q8.238 84.333 8.310 84.443Q8.383 84.552 8.511 84.552Q8.636 84.552 8.705 84.447Q8.773 84.341 8.773 84.201L8.773 83.689L9.054 83.689L9.054 84.201Q9.054 84.404 8.937 84.562Q8.820 84.720 8.638 84.804Q8.457 84.888 8.254 84.888Q8.023 84.888 7.871 84.716Q7.718 84.544 7.687 84.314Q7.527 84.595 7.218 84.761Q6.910 84.927 6.558 84.927Q6.047 84.927 5.623 84.704Q5.199 84.482 5.199 84.017M5.886 84.017Q5.886 84.302 6.113 84.488Q6.340 84.673 6.633 84.673Q6.879 84.673 7.103 84.556Q7.328 84.439 7.463 84.236Q7.597 84.033 7.597 83.779L7.597 82.947Q7.332 82.947 7.047 83.001Q6.761 83.056 6.490 83.185Q6.218 83.314 6.052 83.521Q5.886 83.728 5.886 84.017M11.355 84.849L9.375 84.849L9.375 84.552Q9.644 84.552 9.812 84.507Q9.980 84.462 9.980 84.290L9.980 82.154Q9.980 81.939 9.918 81.843Q9.855 81.747 9.738 81.726Q9.621 81.704 9.375 81.704L9.375 81.408L10.543 81.322L10.543 82.107Q10.621 81.896 10.773 81.710Q10.925 81.525 11.125 81.423Q11.324 81.322 11.550 81.322Q11.797 81.322 11.988 81.466Q12.179 81.611 12.179 81.841Q12.179 81.997 12.074 82.107Q11.968 82.216 11.812 82.216Q11.656 82.216 11.547 82.107Q11.437 81.997 11.437 81.841Q11.437 81.681 11.543 81.576Q11.218 81.576 11.004 81.804Q10.789 82.033 10.693 82.372Q10.597 82.712 10.597 83.017L10.597 84.290Q10.597 84.458 10.824 84.505Q11.050 84.552 11.355 84.552L11.355 84.849M14.476 84.927Q13.996 84.927 13.588 84.683Q13.179 84.439 12.941 84.025Q12.703 83.611 12.703 83.122Q12.703 82.630 12.961 82.214Q13.218 81.798 13.650 81.560Q14.082 81.322 14.574 81.322Q15.195 81.322 15.644 81.759L15.644 80.130Q15.644 79.915 15.582 79.820Q15.519 79.724 15.402 79.703Q15.285 79.681 15.039 79.681L15.039 79.384L16.261 79.298L16.261 84.107Q16.261 84.318 16.324 84.413Q16.386 84.509 16.504 84.531Q16.621 84.552 16.871 84.552L16.871 84.849L15.621 84.927L15.621 84.443Q15.156 84.927 14.476 84.927M14.543 84.673Q14.883 84.673 15.175 84.482Q15.468 84.290 15.621 83.994L15.621 82.162Q15.472 81.888 15.211 81.732Q14.949 81.576 14.636 81.576Q14.011 81.576 13.728 82.023Q13.445 82.470 13.445 83.130Q13.445 83.775 13.697 84.224Q13.949 84.673 14.543 84.673\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Strip points in \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.625em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0359em;\">y\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>-order; from \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.625em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">p\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> only the next 7 successors can lie within \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0379em;\">δ\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>, so each point makes a constant number of checks\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:352.354px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 264.266 109.229\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"none\" d=\"M-65.203 30.56H62.833V-71.87L1.376-23.216l-66.58-48.654Z\" style=\"stroke-width:.8\"\u002F>\u003Cg fill=\"var(--tk-accent)\">\u003Cpath stroke=\"none\" d=\"M-45.298-2.73a1.98 1.98 0 1 0-3.96 0 1.98 1.98 0 0 0 3.96 0m-1.98 0\"\u002F>\u003C\u002Fg>\u003Cg fill=\"var(--tk-bg)\">\u003Cpath stroke=\"none\" d=\"M-55.476-4.472h6.456v-7.625h-6.456Z\"\u002F>\u003Cg transform=\"translate(10.728 -37.78)\">\u003Cpath d=\"M-63.801 32.198Q-63.801 32.128-63.768 32.060Q-63.735 31.992-63.674 31.992Q-63.313 31.992-63.160 31.961Q-63.076 31.943-63.032 31.904Q-62.988 31.864-62.966 31.816Q-62.944 31.767-62.918 31.658L-62.549 30.172Q-63.072 30.660-63.581 30.660Q-63.977 30.660-64.263 30.456Q-64.548 30.251-64.695 29.917Q-64.843 29.583-64.843 29.192Q-64.843 28.757-64.669 28.296Q-64.495 27.834-64.183 27.443Q-63.871 27.052-63.461 26.817Q-63.050 26.582-62.610 26.582Q-62.333 26.582-62.100 26.745Q-61.868 26.907-61.749 27.166Q-61.657 27.021-61.435 26.802Q-61.213 26.582-61.107 26.582Q-61.063 26.582-61.033 26.613Q-61.002 26.643-61.002 26.687L-61.002 26.727L-62.250 31.719Q-62.259 31.772-62.267 31.814Q-62.276 31.855-62.276 31.882Q-62.276 31.992-61.701 31.992Q-61.657 31.992-61.630 32.022Q-61.604 32.053-61.604 32.106Q-61.604 32.304-61.766 32.304L-63.700 32.304Q-63.735 32.304-63.768 32.266Q-63.801 32.229-63.801 32.198M-63.564 30.396Q-63.230 30.396-62.924 30.159Q-62.619 29.922-62.404 29.597L-61.898 27.606Q-61.955 27.289-62.147 27.065Q-62.338 26.841-62.628 26.841Q-62.997 26.841-63.296 27.160Q-63.595 27.478-63.762 27.887Q-63.898 28.234-64.023 28.744Q-64.148 29.254-64.148 29.579Q-64.148 29.904-64.010 30.150Q-63.871 30.396-63.564 30.396\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" style=\"stroke-width:1.2\">\u003Cpath fill=\"none\" d=\"M-45.098-2.73h132.9\"\u002F>\u003Cpath stroke=\"none\" d=\"m91.001-2.73-5.12-2.56 1.92 2.56-1.92 2.56\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M64.183-2.73a1.35 1.35 0 1 0-2.7 0 1.35 1.35 0 0 0 2.7 0m-1.35 0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(162.298 -31.29)\">\u003Cpath d=\"M-64.965 28.864Q-64.965 28.360-64.709 27.928Q-64.453 27.497-64.017 27.245Q-63.582 26.993-63.082 26.993Q-62.695 26.993-62.353 27.137Q-62.012 27.282-61.750 27.543Q-61.488 27.805-61.346 28.141Q-61.203 28.477-61.203 28.864Q-61.203 29.356-61.467 29.766Q-61.730 30.176-62.160 30.407Q-62.590 30.637-63.082 30.637Q-63.574 30.637-64.008 30.405Q-64.441 30.172-64.703 29.764Q-64.965 29.356-64.965 28.864M-63.082 30.360Q-62.625 30.360-62.373 30.137Q-62.121 29.914-62.033 29.563Q-61.945 29.211-61.945 28.766Q-61.945 28.336-62.039 27.998Q-62.133 27.661-62.387 27.454Q-62.641 27.247-63.082 27.247Q-63.730 27.247-63.974 27.663Q-64.219 28.079-64.219 28.766Q-64.219 29.211-64.131 29.563Q-64.043 29.914-63.791 30.137Q-63.539 30.360-63.082 30.360\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -31.29)\">\u003Cpath d=\"M-58.662 30.637Q-59.143 30.637-59.551 30.393Q-59.959 30.149-60.197 29.735Q-60.436 29.321-60.436 28.832Q-60.436 28.340-60.178 27.924Q-59.920 27.508-59.488 27.270Q-59.057 27.032-58.565 27.032Q-57.944 27.032-57.494 27.469L-57.494 25.840Q-57.494 25.625-57.557 25.530Q-57.619 25.434-57.737 25.413Q-57.854 25.391-58.100 25.391L-58.100 25.094L-56.877 25.008L-56.877 29.817Q-56.877 30.028-56.815 30.123Q-56.752 30.219-56.635 30.241Q-56.518 30.262-56.268 30.262L-56.268 30.559L-57.518 30.637L-57.518 30.153Q-57.983 30.637-58.662 30.637M-58.596 30.383Q-58.256 30.383-57.963 30.192Q-57.670 30-57.518 29.704L-57.518 27.872Q-57.666 27.598-57.928 27.442Q-58.190 27.286-58.502 27.286Q-59.127 27.286-59.410 27.733Q-59.694 28.180-59.694 28.840Q-59.694 29.485-59.442 29.934Q-59.190 30.383-58.596 30.383M-53.944 30.637Q-54.424 30.637-54.832 30.393Q-55.240 30.149-55.479 29.735Q-55.717 29.321-55.717 28.832Q-55.717 28.340-55.459 27.924Q-55.201 27.508-54.770 27.270Q-54.338 27.032-53.846 27.032Q-53.225 27.032-52.776 27.469L-52.776 25.840Q-52.776 25.625-52.838 25.530Q-52.901 25.434-53.018 25.413Q-53.135 25.391-53.381 25.391L-53.381 25.094L-52.158 25.008L-52.158 29.817Q-52.158 30.028-52.096 30.123Q-52.033 30.219-51.916 30.241Q-51.799 30.262-51.549 30.262L-51.549 30.559L-52.799 30.637L-52.799 30.153Q-53.264 30.637-53.944 30.637M-53.877 30.383Q-53.537 30.383-53.244 30.192Q-52.951 30-52.799 29.704L-52.799 27.872Q-52.947 27.598-53.209 27.442Q-53.471 27.286-53.783 27.286Q-54.408 27.286-54.692 27.733Q-54.975 28.180-54.975 28.840Q-54.975 29.485-54.723 29.934Q-54.471 30.383-53.877 30.383\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -31.29)\">\u003Cpath d=\"M-45.822 32.551Q-46.435 32.094-46.837 31.459Q-47.240 30.825-47.435 30.079Q-47.630 29.332-47.630 28.559Q-47.630 27.786-47.435 27.039Q-47.240 26.293-46.837 25.659Q-46.435 25.024-45.822 24.567Q-45.810 24.563-45.802 24.561Q-45.794 24.559-45.783 24.559L-45.705 24.559Q-45.666 24.559-45.640 24.586Q-45.615 24.614-45.615 24.657Q-45.615 24.707-45.646 24.727Q-46.154 25.180-46.476 25.803Q-46.798 26.426-46.939 27.122Q-47.080 27.817-47.080 28.559Q-47.080 29.293-46.941 29.993Q-46.802 30.692-46.478 31.317Q-46.154 31.942-45.646 32.391Q-45.615 32.411-45.615 32.461Q-45.615 32.504-45.640 32.532Q-45.666 32.559-45.705 32.559L-45.783 32.559Q-45.791 32.555-45.800 32.553Q-45.810 32.551-45.822 32.551M-41.541 30.559L-44.334 30.559L-44.334 30.262Q-43.271 30.262-43.271 30L-43.271 25.832Q-43.701 26.047-44.380 26.047L-44.380 25.750Q-43.361 25.750-42.845 25.239L-42.701 25.239Q-42.627 25.258-42.607 25.336L-42.607 30Q-42.607 30.262-41.541 30.262L-41.541 30.559M-40.248 32.559L-40.330 32.559Q-40.365 32.559-40.390 32.530Q-40.416 32.500-40.416 32.461Q-40.416 32.411-40.384 32.391Q-39.998 32.055-39.714 31.606Q-39.431 31.157-39.265 30.657Q-39.099 30.157-39.025 29.639Q-38.951 29.122-38.951 28.559Q-38.951 27.989-39.025 27.473Q-39.099 26.957-39.265 26.461Q-39.431 25.965-39.710 25.518Q-39.990 25.071-40.384 24.727Q-40.416 24.707-40.416 24.657Q-40.416 24.618-40.390 24.588Q-40.365 24.559-40.330 24.559L-40.248 24.559Q-40.236 24.559-40.226 24.561Q-40.216 24.563-40.209 24.567Q-39.595 25.024-39.193 25.659Q-38.791 26.293-38.595 27.039Q-38.400 27.786-38.400 28.559Q-38.400 29.332-38.595 30.079Q-38.791 30.825-39.193 31.459Q-39.595 32.094-40.209 32.551Q-40.220 32.551-40.228 32.553Q-40.236 32.555-40.248 32.559\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -31.29)\">\u003Cpath d=\"M-32.577 30.559L-34.432 30.559L-34.432 30.262Q-34.159 30.262-33.991 30.215Q-33.823 30.168-33.823 30L-33.823 27.864Q-33.823 27.649-33.886 27.553Q-33.948 27.457-34.067 27.436Q-34.186 27.414-34.432 27.414L-34.432 27.118L-33.241 27.032L-33.241 27.766Q-33.128 27.551-32.934 27.383Q-32.741 27.215-32.503 27.123Q-32.265 27.032-32.011 27.032Q-31.050 27.032-30.874 27.743Q-30.690 27.414-30.362 27.223Q-30.034 27.032-29.655 27.032Q-28.479 27.032-28.479 28.110L-28.479 30Q-28.479 30.168-28.311 30.215Q-28.143 30.262-27.874 30.262L-27.874 30.559L-29.729 30.559L-29.729 30.262Q-29.456 30.262-29.288 30.217Q-29.120 30.172-29.120 30L-29.120 28.125Q-29.120 27.739-29.245 27.512Q-29.370 27.286-29.722 27.286Q-30.026 27.286-30.282 27.448Q-30.538 27.610-30.686 27.879Q-30.835 28.149-30.835 28.446L-30.835 30Q-30.835 30.168-30.665 30.215Q-30.495 30.262-30.225 30.262L-30.225 30.559L-32.081 30.559L-32.081 30.262Q-31.807 30.262-31.640 30.215Q-31.472 30.168-31.472 30L-31.472 28.125Q-31.472 27.739-31.597 27.512Q-31.722 27.286-32.073 27.286Q-32.378 27.286-32.634 27.448Q-32.890 27.610-33.038 27.879Q-33.186 28.149-33.186 28.446L-33.186 30Q-33.186 30.168-33.016 30.215Q-32.847 30.262-32.577 30.262L-32.577 30.559M-27.429 28.805Q-27.429 28.325-27.196 27.909Q-26.964 27.493-26.554 27.243Q-26.143 26.993-25.667 26.993Q-24.936 26.993-24.538 27.434Q-24.140 27.875-24.140 28.606Q-24.140 28.711-24.233 28.735L-26.682 28.735L-26.682 28.805Q-26.682 29.215-26.561 29.571Q-26.440 29.926-26.169 30.143Q-25.897 30.360-25.468 30.360Q-25.104 30.360-24.807 30.131Q-24.511 29.903-24.409 29.551Q-24.401 29.504-24.315 29.489L-24.233 29.489Q-24.140 29.516-24.140 29.598Q-24.140 29.606-24.147 29.637Q-24.210 29.864-24.349 30.047Q-24.487 30.231-24.679 30.364Q-24.870 30.497-25.089 30.567Q-25.307 30.637-25.546 30.637Q-25.917 30.637-26.255 30.500Q-26.593 30.364-26.860 30.112Q-27.128 29.860-27.278 29.520Q-27.429 29.180-27.429 28.805M-26.675 28.497L-24.714 28.497Q-24.714 28.192-24.815 27.901Q-24.917 27.610-25.134 27.428Q-25.350 27.247-25.667 27.247Q-25.968 27.247-26.198 27.434Q-26.429 27.622-26.552 27.913Q-26.675 28.204-26.675 28.497M-23.554 29.727Q-23.554 29.243-23.151 28.948Q-22.749 28.653-22.198 28.534Q-21.647 28.414-21.155 28.414L-21.155 28.125Q-21.155 27.899-21.270 27.692Q-21.386 27.485-21.583 27.366Q-21.780 27.247-22.011 27.247Q-22.436 27.247-22.722 27.352Q-22.651 27.379-22.604 27.434Q-22.557 27.489-22.532 27.559Q-22.507 27.629-22.507 27.704Q-22.507 27.809-22.557 27.901Q-22.608 27.993-22.700 28.043Q-22.792 28.094-22.897 28.094Q-23.003 28.094-23.095 28.043Q-23.186 27.993-23.237 27.901Q-23.288 27.809-23.288 27.704Q-23.288 27.286-22.899 27.139Q-22.511 26.993-22.011 26.993Q-21.679 26.993-21.325 27.123Q-20.972 27.254-20.743 27.508Q-20.515 27.762-20.515 28.110L-20.515 29.911Q-20.515 30.043-20.442 30.153Q-20.370 30.262-20.241 30.262Q-20.116 30.262-20.048 30.157Q-19.979 30.051-19.979 29.911L-19.979 29.399L-19.698 29.399L-19.698 29.911Q-19.698 30.114-19.815 30.272Q-19.932 30.430-20.114 30.514Q-20.296 30.598-20.499 30.598Q-20.729 30.598-20.882 30.426Q-21.034 30.254-21.065 30.024Q-21.225 30.305-21.534 30.471Q-21.843 30.637-22.194 30.637Q-22.706 30.637-23.130 30.414Q-23.554 30.192-23.554 29.727M-22.866 29.727Q-22.866 30.012-22.640 30.198Q-22.413 30.383-22.120 30.383Q-21.874 30.383-21.649 30.266Q-21.425 30.149-21.290 29.946Q-21.155 29.743-21.155 29.489L-21.155 28.657Q-21.421 28.657-21.706 28.711Q-21.991 28.766-22.263 28.895Q-22.534 29.024-22.700 29.231Q-22.866 29.438-22.866 29.727M-17.475 30.559L-19.331 30.559L-19.331 30.262Q-19.057 30.262-18.890 30.215Q-18.722 30.168-18.722 30L-18.722 27.864Q-18.722 27.649-18.784 27.553Q-18.847 27.457-18.966 27.436Q-19.085 27.414-19.331 27.414L-19.331 27.118L-18.140 27.032L-18.140 27.766Q-18.026 27.551-17.833 27.383Q-17.640 27.215-17.401 27.123Q-17.163 27.032-16.909 27.032Q-15.741 27.032-15.741 28.110L-15.741 30Q-15.741 30.168-15.571 30.215Q-15.401 30.262-15.132 30.262L-15.132 30.559L-16.987 30.559L-16.987 30.262Q-16.714 30.262-16.546 30.215Q-16.378 30.168-16.378 30L-16.378 28.125Q-16.378 27.743-16.499 27.514Q-16.620 27.286-16.972 27.286Q-17.284 27.286-17.538 27.448Q-17.792 27.610-17.938 27.879Q-18.085 28.149-18.085 28.446L-18.085 30Q-18.085 30.168-17.915 30.215Q-17.745 30.262-17.475 30.262L-17.475 30.559M-14.643 30.551L-14.643 29.329Q-14.643 29.301-14.612 29.270Q-14.581 29.239-14.557 29.239L-14.452 29.239Q-14.382 29.239-14.366 29.301Q-14.304 29.622-14.165 29.862Q-14.026 30.102-13.794 30.243Q-13.561 30.383-13.253 30.383Q-13.015 30.383-12.806 30.323Q-12.597 30.262-12.460 30.114Q-12.323 29.965-12.323 29.719Q-12.323 29.465-12.534 29.299Q-12.745 29.133-13.015 29.079L-13.636 28.965Q-14.042 28.887-14.343 28.631Q-14.643 28.375-14.643 28Q-14.643 27.633-14.442 27.411Q-14.241 27.188-13.917 27.090Q-13.593 26.993-13.253 26.993Q-12.788 26.993-12.491 27.200L-12.268 27.016Q-12.245 26.993-12.214 26.993L-12.163 26.993Q-12.132 26.993-12.104 27.020Q-12.077 27.047-12.077 27.079L-12.077 28.063Q-12.077 28.094-12.102 28.123Q-12.128 28.153-12.163 28.153L-12.268 28.153Q-12.304 28.153-12.331 28.125Q-12.358 28.098-12.358 28.063Q-12.358 27.664-12.610 27.444Q-12.862 27.223-13.261 27.223Q-13.616 27.223-13.899 27.346Q-14.182 27.469-14.182 27.774Q-14.182 27.993-13.981 28.125Q-13.780 28.258-13.534 28.301L-12.909 28.414Q-12.479 28.504-12.171 28.801Q-11.862 29.098-11.862 29.512Q-11.862 30.082-12.261 30.360Q-12.659 30.637-13.253 30.637Q-13.804 30.637-14.155 30.301L-14.452 30.614Q-14.475 30.637-14.511 30.637L-14.557 30.637Q-14.581 30.637-14.612 30.606Q-14.643 30.575-14.643 30.551\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -31.29)\">\u003Cpath d=\"M-6.627 30.559L-8.405 30.559L-8.405 30.262Q-8.131 30.262-7.963 30.215Q-7.795 30.168-7.795 30L-7.795 27.864Q-7.795 27.649-7.852 27.553Q-7.909 27.457-8.022 27.436Q-8.135 27.414-8.381 27.414L-8.381 27.118L-7.182 27.032L-7.182 30Q-7.182 30.168-7.036 30.215Q-6.889 30.262-6.627 30.262L-6.627 30.559M-8.069 25.637Q-8.069 25.446-7.934 25.315Q-7.799 25.184-7.604 25.184Q-7.483 25.184-7.379 25.247Q-7.276 25.309-7.213 25.413Q-7.151 25.516-7.151 25.637Q-7.151 25.832-7.282 25.967Q-7.412 26.102-7.604 26.102Q-7.803 26.102-7.936 25.969Q-8.069 25.836-8.069 25.637M-4.198 30.559L-6.053 30.559L-6.053 30.262Q-5.780 30.262-5.612 30.215Q-5.444 30.168-5.444 30L-5.444 27.864Q-5.444 27.649-5.506 27.553Q-5.569 27.457-5.688 27.436Q-5.807 27.414-6.053 27.414L-6.053 27.118L-4.862 27.032L-4.862 27.766Q-4.748 27.551-4.555 27.383Q-4.362 27.215-4.123 27.123Q-3.885 27.032-3.631 27.032Q-2.463 27.032-2.463 28.110L-2.463 30Q-2.463 30.168-2.293 30.215Q-2.123 30.262-1.854 30.262L-1.854 30.559L-3.709 30.559L-3.709 30.262Q-3.436 30.262-3.268 30.215Q-3.100 30.168-3.100 30L-3.100 28.125Q-3.100 27.743-3.221 27.514Q-3.342 27.286-3.694 27.286Q-4.006 27.286-4.260 27.448Q-4.514 27.610-4.661 27.879Q-4.807 28.149-4.807 28.446L-4.807 30Q-4.807 30.168-4.637 30.215Q-4.467 30.262-4.198 30.262L-4.198 30.559M-1.366 30.551L-1.366 29.329Q-1.366 29.301-1.334 29.270Q-1.303 29.239-1.280 29.239L-1.174 29.239Q-1.104 29.239-1.088 29.301Q-1.026 29.622-0.887 29.862Q-0.748 30.102-0.516 30.243Q-0.284 30.383 0.025 30.383Q0.263 30.383 0.472 30.323Q0.681 30.262 0.818 30.114Q0.955 29.965 0.955 29.719Q0.955 29.465 0.744 29.299Q0.533 29.133 0.263 29.079L-0.358 28.965Q-0.764 28.887-1.065 28.631Q-1.366 28.375-1.366 28Q-1.366 27.633-1.164 27.411Q-0.963 27.188-0.639 27.090Q-0.315 26.993 0.025 26.993Q0.490 26.993 0.787 27.200L1.009 27.016Q1.033 26.993 1.064 26.993L1.115 26.993Q1.146 26.993 1.173 27.020Q1.201 27.047 1.201 27.079L1.201 28.063Q1.201 28.094 1.175 28.123Q1.150 28.153 1.115 28.153L1.009 28.153Q0.974 28.153 0.947 28.125Q0.920 28.098 0.920 28.063Q0.920 27.664 0.668 27.444Q0.416 27.223 0.017 27.223Q-0.338 27.223-0.621 27.346Q-0.905 27.469-0.905 27.774Q-0.905 27.993-0.704 28.125Q-0.502 28.258-0.256 28.301L0.369 28.414Q0.798 28.504 1.107 28.801Q1.416 29.098 1.416 29.512Q1.416 30.082 1.017 30.360Q0.619 30.637 0.025 30.637Q-0.526 30.637-0.877 30.301L-1.174 30.614Q-1.198 30.637-1.233 30.637L-1.280 30.637Q-1.303 30.637-1.334 30.606Q-1.366 30.575-1.366 30.551M3.802 30.559L2.025 30.559L2.025 30.262Q2.298 30.262 2.466 30.215Q2.634 30.168 2.634 30L2.634 27.864Q2.634 27.649 2.578 27.553Q2.521 27.457 2.408 27.436Q2.295 27.414 2.048 27.414L2.048 27.118L3.248 27.032L3.248 30Q3.248 30.168 3.394 30.215Q3.541 30.262 3.802 30.262L3.802 30.559M2.361 25.637Q2.361 25.446 2.496 25.315Q2.630 25.184 2.826 25.184Q2.947 25.184 3.050 25.247Q3.154 25.309 3.216 25.413Q3.279 25.516 3.279 25.637Q3.279 25.832 3.148 25.967Q3.017 26.102 2.826 26.102Q2.627 26.102 2.494 25.969Q2.361 25.836 2.361 25.637M6.119 30.637Q5.638 30.637 5.230 30.393Q4.822 30.149 4.584 29.735Q4.345 29.321 4.345 28.832Q4.345 28.340 4.603 27.924Q4.861 27.508 5.293 27.270Q5.724 27.032 6.216 27.032Q6.838 27.032 7.287 27.469L7.287 25.840Q7.287 25.625 7.224 25.530Q7.162 25.434 7.045 25.413Q6.927 25.391 6.681 25.391L6.681 25.094L7.904 25.008L7.904 29.817Q7.904 30.028 7.966 30.123Q8.029 30.219 8.146 30.241Q8.263 30.262 8.513 30.262L8.513 30.559L7.263 30.637L7.263 30.153Q6.798 30.637 6.119 30.637M6.185 30.383Q6.525 30.383 6.818 30.192Q7.111 30 7.263 29.704L7.263 27.872Q7.115 27.598 6.853 27.442Q6.591 27.286 6.279 27.286Q5.654 27.286 5.371 27.733Q5.088 28.180 5.088 28.840Q5.088 29.485 5.339 29.934Q5.591 30.383 6.185 30.383M9.021 28.805Q9.021 28.325 9.254 27.909Q9.486 27.493 9.896 27.243Q10.306 26.993 10.783 26.993Q11.513 26.993 11.912 27.434Q12.310 27.875 12.310 28.606Q12.310 28.711 12.216 28.735L9.767 28.735L9.767 28.805Q9.767 29.215 9.888 29.571Q10.009 29.926 10.281 30.143Q10.552 30.360 10.982 30.360Q11.345 30.360 11.642 30.131Q11.939 29.903 12.041 29.551Q12.048 29.504 12.134 29.489L12.216 29.489Q12.310 29.516 12.310 29.598Q12.310 29.606 12.302 29.637Q12.240 29.864 12.101 30.047Q11.963 30.231 11.771 30.364Q11.580 30.497 11.361 30.567Q11.142 30.637 10.904 30.637Q10.533 30.637 10.195 30.500Q9.857 30.364 9.589 30.112Q9.322 29.860 9.171 29.520Q9.021 29.180 9.021 28.805M9.775 28.497L11.736 28.497Q11.736 28.192 11.634 27.901Q11.533 27.610 11.316 27.428Q11.099 27.247 10.783 27.247Q10.482 27.247 10.252 27.434Q10.021 27.622 9.898 27.913Q9.775 28.204 9.775 28.497\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath stroke=\"none\" d=\"M2.075-46.263a1.98 1.98 0 1 0-3.96 0 1.98 1.98 0 0 0 3.96 0m-1.98 0\"\u002F>\u003Cg transform=\"translate(54.12 -83.847)\">\u003Cpath d=\"M-64.465 30.388Q-64.465 30.335-64.456 30.300L-63.788 27.632Q-63.735 27.434-63.735 27.237Q-63.735 26.841-63.999 26.841Q-64.285 26.841-64.419 27.164Q-64.553 27.487-64.671 27.993Q-64.689 28.076-64.764 28.076L-64.869 28.076Q-64.917 28.076-64.939 28.037Q-64.961 27.997-64.961 27.957Q-64.799 27.338-64.599 26.960Q-64.399 26.582-63.977 26.582Q-63.669 26.582-63.423 26.756Q-63.177 26.929-63.107 27.219Q-62.606 26.582-61.938 26.582Q-61.639 26.582-61.419 26.758Q-61.200 26.934-61.200 27.228Q-61.200 27.461-61.347 27.632Q-61.494 27.804-61.718 27.804Q-61.859 27.804-61.964 27.711Q-62.070 27.619-62.070 27.474Q-62.070 27.276-61.936 27.129Q-61.802 26.982-61.604 26.960Q-61.740 26.841-61.955 26.841Q-62.632 26.841-63.151 27.786L-63.779 30.335Q-63.810 30.471-63.926 30.566Q-64.043 30.660-64.179 30.660Q-64.298 30.660-64.381 30.585Q-64.465 30.511-64.465 30.388\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003Cg style=\"stroke-dasharray:3.0,3.0\">\u003Cpath fill=\"none\" d=\"M2.275-46.262h86.726\"\u002F>\u003Cpath stroke=\"none\" d=\"m91.001-46.263-3.2-1.6 1.2 1.6-1.2 1.6\"\u002F>\u003C\u002Fg>\u003Cpath stroke=\"none\" d=\"M31.918000000000003-46.263a1.35 1.35 0 1 0-2.7 0 1.35 1.35 0 0 0 2.7 0M64.18299999999999-46.263a1.35 1.35 0 1 0-2.7 0 1.35 1.35 0 0 0 2.7 0m-1.35 0\"\u002F>\u003Cg stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(162.298 -74.822)\">\u003Cpath d=\"M-64.965 28.805Q-64.965 28.325-64.732 27.909Q-64.500 27.493-64.090 27.243Q-63.680 26.993-63.203 26.993Q-62.473 26.993-62.074 27.434Q-61.676 27.875-61.676 28.606Q-61.676 28.711-61.769 28.735L-64.219 28.735L-64.219 28.805Q-64.219 29.215-64.098 29.571Q-63.976 29.926-63.705 30.143Q-63.433 30.360-63.004 30.360Q-62.641 30.360-62.344 30.131Q-62.047 29.903-61.945 29.551Q-61.937 29.504-61.851 29.489L-61.769 29.489Q-61.676 29.516-61.676 29.598Q-61.676 29.606-61.683 29.637Q-61.746 29.864-61.885 30.047Q-62.023 30.231-62.215 30.364Q-62.406 30.497-62.625 30.567Q-62.844 30.637-63.082 30.637Q-63.453 30.637-63.791 30.500Q-64.129 30.364-64.396 30.112Q-64.664 29.860-64.814 29.520Q-64.965 29.180-64.965 28.805M-64.211 28.497L-62.250 28.497Q-62.250 28.192-62.351 27.901Q-62.453 27.610-62.670 27.428Q-62.887 27.247-63.203 27.247Q-63.504 27.247-63.734 27.434Q-63.965 27.622-64.088 27.913Q-64.211 28.204-64.211 28.497M-59.387 30.528L-60.609 27.672Q-60.691 27.497-60.836 27.452Q-60.980 27.407-61.250 27.407L-61.250 27.110L-59.539 27.110L-59.539 27.407Q-59.961 27.407-59.961 27.590Q-59.961 27.625-59.945 27.672L-59 29.864L-58.160 27.887Q-58.121 27.809-58.121 27.719Q-58.121 27.579-58.226 27.493Q-58.332 27.407-58.473 27.407L-58.473 27.110L-57.121 27.110L-57.121 27.407Q-57.644 27.407-57.859 27.887L-58.984 30.528Q-59.047 30.637-59.152 30.637L-59.219 30.637Q-59.332 30.637-59.387 30.528\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -74.822)\">\u003Cpath d=\"M-56.937 28.805Q-56.937 28.325-56.704 27.909Q-56.472 27.493-56.062 27.243Q-55.652 26.993-55.175 26.993Q-54.445 26.993-54.046 27.434Q-53.648 27.875-53.648 28.606Q-53.648 28.711-53.741 28.735L-56.191 28.735L-56.191 28.805Q-56.191 29.215-56.070 29.571Q-55.948 29.926-55.677 30.143Q-55.405 30.360-54.976 30.360Q-54.612 30.360-54.316 30.131Q-54.019 29.903-53.917 29.551Q-53.909 29.504-53.823 29.489L-53.741 29.489Q-53.648 29.516-53.648 29.598Q-53.648 29.606-53.655 29.637Q-53.718 29.864-53.857 30.047Q-53.995 30.231-54.187 30.364Q-54.378 30.497-54.597 30.567Q-54.816 30.637-55.054 30.637Q-55.425 30.637-55.763 30.500Q-56.101 30.364-56.368 30.112Q-56.636 29.860-56.786 29.520Q-56.937 29.180-56.937 28.805M-56.183 28.497L-54.222 28.497Q-54.222 28.192-54.323 27.901Q-54.425 27.610-54.642 27.428Q-54.859 27.247-55.175 27.247Q-55.476 27.247-55.706 27.434Q-55.937 27.622-56.060 27.913Q-56.183 28.204-56.183 28.497M-51.230 30.559L-53.085 30.559L-53.085 30.262Q-52.812 30.262-52.644 30.215Q-52.476 30.168-52.476 30L-52.476 27.864Q-52.476 27.649-52.538 27.553Q-52.601 27.457-52.720 27.436Q-52.839 27.414-53.085 27.414L-53.085 27.118L-51.894 27.032L-51.894 27.766Q-51.780 27.551-51.587 27.383Q-51.394 27.215-51.155 27.123Q-50.917 27.032-50.663 27.032Q-49.495 27.032-49.495 28.110L-49.495 30Q-49.495 30.168-49.325 30.215Q-49.155 30.262-48.886 30.262L-48.886 30.559L-50.741 30.559L-50.741 30.262Q-50.468 30.262-50.300 30.215Q-50.132 30.168-50.132 30L-50.132 28.125Q-50.132 27.743-50.253 27.514Q-50.374 27.286-50.726 27.286Q-51.038 27.286-51.292 27.448Q-51.546 27.610-51.693 27.879Q-51.839 28.149-51.839 28.446L-51.839 30Q-51.839 30.168-51.669 30.215Q-51.499 30.262-51.230 30.262\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -74.822)\">\u003Cpath d=\"M-43.225 32.551Q-43.838 32.094-44.240 31.459Q-44.643 30.825-44.838 30.079Q-45.033 29.332-45.033 28.559Q-45.033 27.786-44.838 27.039Q-44.643 26.293-44.240 25.659Q-43.838 25.024-43.225 24.567Q-43.213 24.563-43.205 24.561Q-43.197 24.559-43.186 24.559L-43.108 24.559Q-43.069 24.559-43.043 24.586Q-43.018 24.614-43.018 24.657Q-43.018 24.707-43.049 24.727Q-43.557 25.180-43.879 25.803Q-44.201 26.426-44.342 27.122Q-44.483 27.817-44.483 28.559Q-44.483 29.293-44.344 29.993Q-44.205 30.692-43.881 31.317Q-43.557 31.942-43.049 32.391Q-43.018 32.411-43.018 32.461Q-43.018 32.504-43.043 32.532Q-43.069 32.559-43.108 32.559L-43.186 32.559Q-43.194 32.555-43.203 32.553Q-43.213 32.551-43.225 32.551M-38.951 30.559L-42.112 30.559L-42.112 30.352Q-42.112 30.325-42.088 30.293L-40.737 28.895Q-40.358 28.508-40.110 28.219Q-39.862 27.930-39.688 27.573Q-39.514 27.215-39.514 26.825Q-39.514 26.477-39.647 26.184Q-39.779 25.891-40.033 25.713Q-40.287 25.536-40.643 25.536Q-41.002 25.536-41.293 25.731Q-41.584 25.926-41.729 26.254L-41.674 26.254Q-41.490 26.254-41.365 26.375Q-41.240 26.497-41.240 26.688Q-41.240 26.868-41.365 26.997Q-41.490 27.125-41.674 27.125Q-41.854 27.125-41.983 26.997Q-42.112 26.868-42.112 26.688Q-42.112 26.286-41.891 25.950Q-41.670 25.614-41.305 25.426Q-40.940 25.239-40.537 25.239Q-40.057 25.239-39.641 25.426Q-39.225 25.614-38.973 25.975Q-38.721 26.336-38.721 26.825Q-38.721 27.184-38.875 27.487Q-39.029 27.789-39.281 28.049Q-39.533 28.309-39.883 28.594Q-40.233 28.879-40.401 29.032L-41.330 29.872L-40.615 29.872Q-39.240 29.872-39.201 29.832Q-39.131 29.754-39.088 29.569Q-39.045 29.383-39.002 29.094L-38.721 29.094L-38.951 30.559M-37.651 32.559L-37.733 32.559Q-37.768 32.559-37.793 32.530Q-37.819 32.500-37.819 32.461Q-37.819 32.411-37.787 32.391Q-37.401 32.055-37.117 31.606Q-36.834 31.157-36.668 30.657Q-36.502 30.157-36.428 29.639Q-36.354 29.122-36.354 28.559Q-36.354 27.989-36.428 27.473Q-36.502 26.957-36.668 26.461Q-36.834 25.965-37.113 25.518Q-37.393 25.071-37.787 24.727Q-37.819 24.707-37.819 24.657Q-37.819 24.618-37.793 24.588Q-37.768 24.559-37.733 24.559L-37.651 24.559Q-37.639 24.559-37.629 24.561Q-37.619 24.563-37.612 24.567Q-36.998 25.024-36.596 25.659Q-36.194 26.293-35.998 27.039Q-35.803 27.786-35.803 28.559Q-35.803 29.332-35.998 30.079Q-36.194 30.825-36.596 31.459Q-36.998 32.094-37.612 32.551Q-37.623 32.551-37.631 32.553Q-37.639 32.555-37.651 32.559\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -74.822)\">\u003Cpath d=\"M-29.979 30.559L-31.834 30.559L-31.834 30.262Q-31.561 30.262-31.393 30.215Q-31.225 30.168-31.225 30L-31.225 27.864Q-31.225 27.649-31.288 27.553Q-31.350 27.457-31.469 27.436Q-31.588 27.414-31.834 27.414L-31.834 27.118L-30.643 27.032L-30.643 27.766Q-30.530 27.551-30.336 27.383Q-30.143 27.215-29.905 27.123Q-29.667 27.032-29.413 27.032Q-28.452 27.032-28.276 27.743Q-28.092 27.414-27.764 27.223Q-27.436 27.032-27.057 27.032Q-25.881 27.032-25.881 28.110L-25.881 30Q-25.881 30.168-25.713 30.215Q-25.545 30.262-25.276 30.262L-25.276 30.559L-27.131 30.559L-27.131 30.262Q-26.858 30.262-26.690 30.217Q-26.522 30.172-26.522 30L-26.522 28.125Q-26.522 27.739-26.647 27.512Q-26.772 27.286-27.124 27.286Q-27.428 27.286-27.684 27.448Q-27.940 27.610-28.088 27.879Q-28.237 28.149-28.237 28.446L-28.237 30Q-28.237 30.168-28.067 30.215Q-27.897 30.262-27.627 30.262L-27.627 30.559L-29.483 30.559L-29.483 30.262Q-29.209 30.262-29.042 30.215Q-28.874 30.168-28.874 30L-28.874 28.125Q-28.874 27.739-28.999 27.512Q-29.124 27.286-29.475 27.286Q-29.780 27.286-30.036 27.448Q-30.292 27.610-30.440 27.879Q-30.588 28.149-30.588 28.446L-30.588 30Q-30.588 30.168-30.418 30.215Q-30.249 30.262-29.979 30.262L-29.979 30.559M-24.831 28.805Q-24.831 28.325-24.598 27.909Q-24.366 27.493-23.956 27.243Q-23.545 26.993-23.069 26.993Q-22.338 26.993-21.940 27.434Q-21.542 27.875-21.542 28.606Q-21.542 28.711-21.635 28.735L-24.084 28.735L-24.084 28.805Q-24.084 29.215-23.963 29.571Q-23.842 29.926-23.571 30.143Q-23.299 30.360-22.870 30.360Q-22.506 30.360-22.209 30.131Q-21.913 29.903-21.811 29.551Q-21.803 29.504-21.717 29.489L-21.635 29.489Q-21.542 29.516-21.542 29.598Q-21.542 29.606-21.549 29.637Q-21.612 29.864-21.751 30.047Q-21.889 30.231-22.081 30.364Q-22.272 30.497-22.491 30.567Q-22.709 30.637-22.948 30.637Q-23.319 30.637-23.657 30.500Q-23.995 30.364-24.262 30.112Q-24.530 29.860-24.680 29.520Q-24.831 29.180-24.831 28.805M-24.077 28.497L-22.116 28.497Q-22.116 28.192-22.217 27.901Q-22.319 27.610-22.536 27.428Q-22.752 27.247-23.069 27.247Q-23.370 27.247-23.600 27.434Q-23.831 27.622-23.954 27.913Q-24.077 28.204-24.077 28.497M-20.956 29.727Q-20.956 29.243-20.553 28.948Q-20.151 28.653-19.600 28.534Q-19.049 28.414-18.557 28.414L-18.557 28.125Q-18.557 27.899-18.672 27.692Q-18.788 27.485-18.985 27.366Q-19.182 27.247-19.413 27.247Q-19.838 27.247-20.124 27.352Q-20.053 27.379-20.006 27.434Q-19.959 27.489-19.934 27.559Q-19.909 27.629-19.909 27.704Q-19.909 27.809-19.959 27.901Q-20.010 27.993-20.102 28.043Q-20.194 28.094-20.299 28.094Q-20.405 28.094-20.497 28.043Q-20.588 27.993-20.639 27.901Q-20.690 27.809-20.690 27.704Q-20.690 27.286-20.301 27.139Q-19.913 26.993-19.413 26.993Q-19.081 26.993-18.727 27.123Q-18.374 27.254-18.145 27.508Q-17.917 27.762-17.917 28.110L-17.917 29.911Q-17.917 30.043-17.844 30.153Q-17.772 30.262-17.643 30.262Q-17.518 30.262-17.450 30.157Q-17.381 30.051-17.381 29.911L-17.381 29.399L-17.100 29.399L-17.100 29.911Q-17.100 30.114-17.217 30.272Q-17.334 30.430-17.516 30.514Q-17.698 30.598-17.901 30.598Q-18.131 30.598-18.284 30.426Q-18.436 30.254-18.467 30.024Q-18.627 30.305-18.936 30.471Q-19.245 30.637-19.596 30.637Q-20.108 30.637-20.532 30.414Q-20.956 30.192-20.956 29.727M-20.268 29.727Q-20.268 30.012-20.042 30.198Q-19.815 30.383-19.522 30.383Q-19.276 30.383-19.051 30.266Q-18.827 30.149-18.692 29.946Q-18.557 29.743-18.557 29.489L-18.557 28.657Q-18.823 28.657-19.108 28.711Q-19.393 28.766-19.665 28.895Q-19.936 29.024-20.102 29.231Q-20.268 29.438-20.268 29.727M-14.877 30.559L-16.733 30.559L-16.733 30.262Q-16.459 30.262-16.292 30.215Q-16.124 30.168-16.124 30L-16.124 27.864Q-16.124 27.649-16.186 27.553Q-16.249 27.457-16.368 27.436Q-16.487 27.414-16.733 27.414L-16.733 27.118L-15.542 27.032L-15.542 27.766Q-15.428 27.551-15.235 27.383Q-15.042 27.215-14.803 27.123Q-14.565 27.032-14.311 27.032Q-13.143 27.032-13.143 28.110L-13.143 30Q-13.143 30.168-12.973 30.215Q-12.803 30.262-12.534 30.262L-12.534 30.559L-14.389 30.559L-14.389 30.262Q-14.116 30.262-13.948 30.215Q-13.780 30.168-13.780 30L-13.780 28.125Q-13.780 27.743-13.901 27.514Q-14.022 27.286-14.374 27.286Q-14.686 27.286-14.940 27.448Q-15.194 27.610-15.340 27.879Q-15.487 28.149-15.487 28.446L-15.487 30Q-15.487 30.168-15.317 30.215Q-15.147 30.262-14.877 30.262L-14.877 30.559M-12.045 30.551L-12.045 29.329Q-12.045 29.301-12.014 29.270Q-11.983 29.239-11.959 29.239L-11.854 29.239Q-11.784 29.239-11.768 29.301Q-11.706 29.622-11.567 29.862Q-11.428 30.102-11.196 30.243Q-10.963 30.383-10.655 30.383Q-10.417 30.383-10.208 30.323Q-9.999 30.262-9.862 30.114Q-9.725 29.965-9.725 29.719Q-9.725 29.465-9.936 29.299Q-10.147 29.133-10.417 29.079L-11.038 28.965Q-11.444 28.887-11.745 28.631Q-12.045 28.375-12.045 28Q-12.045 27.633-11.844 27.411Q-11.643 27.188-11.319 27.090Q-10.995 26.993-10.655 26.993Q-10.190 26.993-9.893 27.200L-9.670 27.016Q-9.647 26.993-9.616 26.993L-9.565 26.993Q-9.534 26.993-9.506 27.020Q-9.479 27.047-9.479 27.079L-9.479 28.063Q-9.479 28.094-9.504 28.123Q-9.530 28.153-9.565 28.153L-9.670 28.153Q-9.706 28.153-9.733 28.125Q-9.760 28.098-9.760 28.063Q-9.760 27.664-10.012 27.444Q-10.264 27.223-10.663 27.223Q-11.018 27.223-11.301 27.346Q-11.584 27.469-11.584 27.774Q-11.584 27.993-11.383 28.125Q-11.182 28.258-10.936 28.301L-10.311 28.414Q-9.881 28.504-9.573 28.801Q-9.264 29.098-9.264 29.512Q-9.264 30.082-9.663 30.360Q-10.061 30.637-10.655 30.637Q-11.206 30.637-11.557 30.301L-11.854 30.614Q-11.877 30.637-11.913 30.637L-11.959 30.637Q-11.983 30.637-12.014 30.606Q-12.045 30.575-12.045 30.551\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(162.298 -74.822)\">\u003Cpath d=\"M-5.890 28.864Q-5.890 28.360-5.634 27.928Q-5.378 27.497-4.942 27.245Q-4.507 26.993-4.007 26.993Q-3.620 26.993-3.278 27.137Q-2.937 27.282-2.675 27.543Q-2.413 27.805-2.271 28.141Q-2.128 28.477-2.128 28.864Q-2.128 29.356-2.392 29.766Q-2.655 30.176-3.085 30.407Q-3.515 30.637-4.007 30.637Q-4.499 30.637-4.933 30.405Q-5.366 30.172-5.628 29.764Q-5.890 29.356-5.890 28.864M-4.007 30.360Q-3.550 30.360-3.298 30.137Q-3.046 29.914-2.958 29.563Q-2.870 29.211-2.870 28.766Q-2.870 28.336-2.964 27.998Q-3.058 27.661-3.312 27.454Q-3.566 27.247-4.007 27.247Q-4.655 27.247-4.899 27.663Q-5.144 28.079-5.144 28.766Q-5.144 29.211-5.056 29.563Q-4.968 29.914-4.716 30.137Q-4.464 30.360-4.007 30.360M-0.960 29.606L-0.960 27.864Q-0.960 27.649-1.023 27.553Q-1.085 27.457-1.204 27.436Q-1.323 27.414-1.569 27.414L-1.569 27.118L-0.323 27.032L-0.323 29.582L-0.323 29.606Q-0.323 29.918-0.269 30.080Q-0.214 30.243-0.064 30.313Q0.087 30.383 0.407 30.383Q0.837 30.383 1.110 30.045Q1.384 29.707 1.384 29.262L1.384 27.864Q1.384 27.649 1.321 27.553Q1.259 27.457 1.140 27.436Q1.020 27.414 0.774 27.414L0.774 27.118L2.020 27.032L2.020 29.817Q2.020 30.028 2.083 30.123Q2.145 30.219 2.265 30.241Q2.384 30.262 2.630 30.262L2.630 30.559L1.407 30.637L1.407 30.016Q1.239 30.305 0.958 30.471Q0.677 30.637 0.356 30.637Q-0.960 30.637-0.960 29.606M3.700 29.598L3.700 27.407L2.997 27.407L2.997 27.153Q3.352 27.153 3.595 26.920Q3.837 26.688 3.948 26.340Q4.059 25.993 4.059 25.637L4.341 25.637L4.341 27.110L5.517 27.110L5.517 27.407L4.341 27.407L4.341 29.582Q4.341 29.903 4.460 30.131Q4.579 30.360 4.860 30.360Q5.040 30.360 5.157 30.237Q5.274 30.114 5.327 29.934Q5.380 29.754 5.380 29.582L5.380 29.110L5.661 29.110L5.661 29.598Q5.661 29.852 5.556 30.092Q5.450 30.332 5.253 30.485Q5.056 30.637 4.798 30.637Q4.481 30.637 4.229 30.514Q3.977 30.391 3.839 30.157Q3.700 29.922 3.700 29.598M6.423 30.551L6.423 29.329Q6.423 29.301 6.454 29.270Q6.485 29.239 6.509 29.239L6.614 29.239Q6.684 29.239 6.700 29.301Q6.763 29.622 6.901 29.862Q7.040 30.102 7.272 30.243Q7.505 30.383 7.813 30.383Q8.052 30.383 8.261 30.323Q8.470 30.262 8.606 30.114Q8.743 29.965 8.743 29.719Q8.743 29.465 8.532 29.299Q8.321 29.133 8.052 29.079L7.431 28.965Q7.024 28.887 6.724 28.631Q6.423 28.375 6.423 28Q6.423 27.633 6.624 27.411Q6.825 27.188 7.149 27.090Q7.474 26.993 7.813 26.993Q8.278 26.993 8.575 27.200L8.798 27.016Q8.821 26.993 8.852 26.993L8.903 26.993Q8.934 26.993 8.962 27.020Q8.989 27.047 8.989 27.079L8.989 28.063Q8.989 28.094 8.964 28.123Q8.938 28.153 8.903 28.153L8.798 28.153Q8.763 28.153 8.735 28.125Q8.708 28.098 8.708 28.063Q8.708 27.664 8.456 27.444Q8.204 27.223 7.806 27.223Q7.450 27.223 7.167 27.346Q6.884 27.469 6.884 27.774Q6.884 27.993 7.085 28.125Q7.286 28.258 7.532 28.301L8.157 28.414Q8.587 28.504 8.895 28.801Q9.204 29.098 9.204 29.512Q9.204 30.082 8.806 30.360Q8.407 30.637 7.813 30.637Q7.263 30.637 6.911 30.301L6.614 30.614Q6.591 30.637 6.556 30.637L6.509 30.637Q6.485 30.637 6.454 30.606Q6.423 30.575 6.423 30.551M11.591 30.559L9.813 30.559L9.813 30.262Q10.087 30.262 10.255 30.215Q10.423 30.168 10.423 30L10.423 27.864Q10.423 27.649 10.366 27.553Q10.309 27.457 10.196 27.436Q10.083 27.414 9.837 27.414L9.837 27.118L11.036 27.032L11.036 30Q11.036 30.168 11.183 30.215Q11.329 30.262 11.591 30.262L11.591 30.559M10.149 25.637Q10.149 25.446 10.284 25.315Q10.419 25.184 10.614 25.184Q10.735 25.184 10.839 25.247Q10.942 25.309 11.005 25.413Q11.067 25.516 11.067 25.637Q11.067 25.832 10.936 25.967Q10.806 26.102 10.614 26.102Q10.415 26.102 10.282 25.969Q10.149 25.836 10.149 25.637M13.907 30.637Q13.427 30.637 13.018 30.393Q12.610 30.149 12.372 29.735Q12.134 29.321 12.134 28.832Q12.134 28.340 12.392 27.924Q12.649 27.508 13.081 27.270Q13.513 27.032 14.005 27.032Q14.626 27.032 15.075 27.469L15.075 25.840Q15.075 25.625 15.013 25.530Q14.950 25.434 14.833 25.413Q14.716 25.391 14.470 25.391L14.470 25.094L15.692 25.008L15.692 29.817Q15.692 30.028 15.755 30.123Q15.817 30.219 15.934 30.241Q16.052 30.262 16.302 30.262L16.302 30.559L15.052 30.637L15.052 30.153Q14.587 30.637 13.907 30.637M13.974 30.383Q14.313 30.383 14.606 30.192Q14.899 30 15.052 29.704L15.052 27.872Q14.903 27.598 14.642 27.442Q14.380 27.286 14.067 27.286Q13.442 27.286 13.159 27.733Q12.876 28.180 12.876 28.840Q12.876 29.485 13.128 29.934Q13.380 30.383 13.974 30.383M16.809 28.805Q16.809 28.325 17.042 27.909Q17.274 27.493 17.684 27.243Q18.095 26.993 18.571 26.993Q19.302 26.993 19.700 27.434Q20.099 27.875 20.099 28.606Q20.099 28.711 20.005 28.735L17.556 28.735L17.556 28.805Q17.556 29.215 17.677 29.571Q17.798 29.926 18.069 30.143Q18.341 30.360 18.770 30.360Q19.134 30.360 19.431 30.131Q19.727 29.903 19.829 29.551Q19.837 29.504 19.923 29.489L20.005 29.489Q20.099 29.516 20.099 29.598Q20.099 29.606 20.091 29.637Q20.028 29.864 19.890 30.047Q19.751 30.231 19.559 30.364Q19.368 30.497 19.149 30.567Q18.931 30.637 18.692 30.637Q18.321 30.637 17.983 30.500Q17.645 30.364 17.378 30.112Q17.110 29.860 16.960 29.520Q16.809 29.180 16.809 28.805M17.563 28.497L19.524 28.497Q19.524 28.192 19.423 27.901Q19.321 27.610 19.104 27.428Q18.888 27.247 18.571 27.247Q18.270 27.247 18.040 27.434Q17.809 27.622 17.686 27.913Q17.563 28.204 17.563 28.497\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">A \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6667em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">+\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">x\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> ray from \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.625em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0359em;\">q\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> crosses an odd count (inside); from \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.4306em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0278em;\">r\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> an even count (outside)\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:320.148px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 240.111 98.986\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"none\" d=\"M-65.203 20.316 62.833 4.952l-15.364-71.7L-8.867-36.02-49.84-71.87Z\" style=\"stroke-width:.8\"\u002F>\u003Cg fill=\"var(--tk-accent)\">\u003Cpath stroke=\"none\" d=\"M-22.252-15.534a1.98 1.98 0 1 0-3.96 0 1.98 1.98 0 0 0 3.96 0m-1.98 0\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(38.93 -25.693)\">\u003Cpath d=\"M-63.867 21.750L-63.844 21.644Q-63.836 21.593-63.754 21.574Q-63.148 21.574-63.148 21.453Q-63.094 21.316-63.082 21.269L-62.762 19.980Q-63.226 20.394-63.699 20.394Q-64.055 20.394-64.324 20.214Q-64.594 20.035-64.734 19.740Q-64.875 19.445-64.875 19.086Q-64.875 18.699-64.713 18.285Q-64.551 17.871-64.267 17.533Q-63.984 17.195-63.615 16.992Q-63.246 16.789-62.844 16.789Q-62.594 16.789-62.377 16.927Q-62.160 17.066-62.043 17.293Q-61.980 17.183-61.773 16.986Q-61.566 16.789-61.469 16.789Q-61.422 16.789-61.389 16.824Q-61.355 16.859-61.355 16.910L-62.461 21.324Q-62.473 21.363-62.492 21.484Q-62.492 21.574-61.988 21.574Q-61.883 21.601-61.883 21.699L-61.914 21.804Q-61.922 21.847-62.004 21.867L-63.769 21.867Q-63.812 21.867-63.840 21.826Q-63.867 21.785-63.867 21.750M-63.683 20.140Q-63.383 20.140-63.103 19.933Q-62.824 19.726-62.629 19.437L-62.195 17.707Q-62.234 17.527-62.320 17.377Q-62.406 17.226-62.543 17.134Q-62.680 17.043-62.859 17.043Q-63.195 17.043-63.467 17.324Q-63.738 17.605-63.898 17.980Q-64.023 18.300-64.121 18.720Q-64.219 19.140-64.219 19.421Q-64.219 19.711-64.086 19.925Q-63.953 20.140-63.683 20.140\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" style=\"stroke-width:1.2\">\u003Cpath fill=\"none\" d=\"M-22.052-15.534H85.24\"\u002F>\u003Cpath stroke=\"none\" d=\"m88.44-15.534-5.12-2.56 1.92 2.56-1.92 2.56\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M59.83-15.534a1.35 1.35 0 1 0-2.7 0 1.35 1.35 0 0 0 2.7 0m-1.35 0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(118.766 -46.854)\">\u003Cpath d=\"M-64.281 19.363L-64.281 17.621Q-64.281 17.406-64.344 17.310Q-64.406 17.214-64.525 17.193Q-64.644 17.171-64.891 17.171L-64.891 16.875L-63.644 16.789L-63.644 19.339L-63.644 19.363Q-63.644 19.675-63.590 19.837Q-63.535 20-63.385 20.070Q-63.234 20.140-62.914 20.140Q-62.484 20.140-62.211 19.802Q-61.937 19.464-61.937 19.019L-61.937 17.621Q-61.937 17.406-62 17.310Q-62.062 17.214-62.182 17.193Q-62.301 17.171-62.547 17.171L-62.547 16.875L-61.301 16.789L-61.301 19.574Q-61.301 19.785-61.238 19.880Q-61.176 19.976-61.057 19.998Q-60.937 20.019-60.691 20.019L-60.691 20.316L-61.914 20.394L-61.914 19.773Q-62.082 20.062-62.363 20.228Q-62.644 20.394-62.965 20.394Q-64.281 20.394-64.281 19.363M-58.363 21.867L-60.219 21.867L-60.219 21.574Q-59.949 21.574-59.781 21.529Q-59.613 21.484-59.613 21.308L-59.613 17.484Q-59.613 17.277-59.769 17.224Q-59.926 17.171-60.219 17.171L-60.219 16.875L-58.996 16.789L-58.996 17.253Q-58.766 17.031-58.451 16.910Q-58.137 16.789-57.797 16.789Q-57.324 16.789-56.920 17.035Q-56.516 17.281-56.283 17.697Q-56.051 18.113-56.051 18.589Q-56.051 18.964-56.199 19.293Q-56.348 19.621-56.617 19.873Q-56.887 20.125-57.230 20.259Q-57.574 20.394-57.933 20.394Q-58.223 20.394-58.494 20.273Q-58.766 20.152-58.973 19.941L-58.973 21.308Q-58.973 21.484-58.805 21.529Q-58.637 21.574-58.363 21.574L-58.363 21.867M-58.973 17.652L-58.973 19.492Q-58.820 19.781-58.558 19.961Q-58.297 20.140-57.988 20.140Q-57.703 20.140-57.480 20.002Q-57.258 19.863-57.105 19.632Q-56.953 19.402-56.875 19.130Q-56.797 18.859-56.797 18.589Q-56.797 18.257-56.922 17.900Q-57.047 17.543-57.295 17.306Q-57.543 17.070-57.891 17.070Q-58.215 17.070-58.510 17.226Q-58.805 17.382-58.973 17.652M-55.047 19.851Q-55.047 19.668-54.910 19.531Q-54.773 19.394-54.582 19.394Q-54.391 19.394-54.258 19.527Q-54.125 19.660-54.125 19.851Q-54.125 20.050-54.258 20.183Q-54.391 20.316-54.582 20.316Q-54.773 20.316-54.910 20.179Q-55.047 20.043-55.047 19.851M-55.047 17.324Q-55.047 17.140-54.910 17.003Q-54.773 16.867-54.582 16.867Q-54.391 16.867-54.258 17Q-54.125 17.132-54.125 17.324Q-54.125 17.523-54.258 17.656Q-54.391 17.789-54.582 17.789Q-54.773 17.789-54.910 17.652Q-55.047 17.515-55.047 17.324\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(118.766 -46.854)\">\u003Cpath d=\"M-46.499 18.500L-48.972 18.500Q-49.050 18.488-49.099 18.439Q-49.147 18.390-49.147 18.316Q-49.147 18.242-49.099 18.193Q-49.050 18.144-48.972 18.132L-46.499 18.132L-46.499 15.652Q-46.472 15.484-46.315 15.484Q-46.241 15.484-46.192 15.533Q-46.143 15.582-46.132 15.652L-46.132 18.132L-43.659 18.132Q-43.491 18.164-43.491 18.316Q-43.491 18.468-43.659 18.500L-46.132 18.500L-46.132 20.980Q-46.143 21.050-46.192 21.099Q-46.241 21.148-46.315 21.148Q-46.472 21.148-46.499 20.980L-46.499 18.500M-39.417 20.316L-42.210 20.316L-42.210 20.019Q-41.147 20.019-41.147 19.757L-41.147 15.589Q-41.577 15.804-42.257 15.804L-42.257 15.507Q-41.237 15.507-40.722 14.996L-40.577 14.996Q-40.503 15.015-40.483 15.093L-40.483 19.757Q-40.483 20.019-39.417 20.019\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(159.738 -33.072)\">\u003Cpath d=\"M-63.035 20.316L-64.891 20.316L-64.891 20.019Q-64.617 20.019-64.449 19.972Q-64.281 19.925-64.281 19.757L-64.281 17.621Q-64.281 17.406-64.344 17.310Q-64.406 17.214-64.525 17.193Q-64.644 17.171-64.891 17.171L-64.891 16.875L-63.699 16.789L-63.699 17.523Q-63.586 17.308-63.392 17.140Q-63.199 16.972-62.961 16.880Q-62.723 16.789-62.469 16.789Q-61.301 16.789-61.301 17.867L-61.301 19.757Q-61.301 19.925-61.131 19.972Q-60.961 20.019-60.691 20.019L-60.691 20.316L-62.547 20.316L-62.547 20.019Q-62.273 20.019-62.105 19.972Q-61.937 19.925-61.937 19.757L-61.937 17.882Q-61.937 17.500-62.058 17.271Q-62.180 17.043-62.531 17.043Q-62.844 17.043-63.098 17.205Q-63.351 17.367-63.498 17.636Q-63.644 17.906-63.644 18.203L-63.644 19.757Q-63.644 19.925-63.474 19.972Q-63.305 20.019-63.035 20.019L-63.035 20.316M-60.246 18.562Q-60.246 18.082-60.014 17.666Q-59.781 17.250-59.371 17Q-58.961 16.750-58.484 16.750Q-57.754 16.750-57.355 17.191Q-56.957 17.632-56.957 18.363Q-56.957 18.468-57.051 18.492L-59.500 18.492L-59.500 18.562Q-59.500 18.972-59.379 19.328Q-59.258 19.683-58.986 19.900Q-58.715 20.117-58.285 20.117Q-57.922 20.117-57.625 19.888Q-57.328 19.660-57.226 19.308Q-57.219 19.261-57.133 19.246L-57.051 19.246Q-56.957 19.273-56.957 19.355Q-56.957 19.363-56.965 19.394Q-57.027 19.621-57.166 19.804Q-57.305 19.988-57.496 20.121Q-57.687 20.253-57.906 20.324Q-58.125 20.394-58.363 20.394Q-58.734 20.394-59.072 20.257Q-59.410 20.121-59.678 19.869Q-59.945 19.617-60.096 19.277Q-60.246 18.937-60.246 18.562M-59.492 18.253L-57.531 18.253Q-57.531 17.949-57.633 17.658Q-57.734 17.367-57.951 17.185Q-58.168 17.003-58.484 17.003Q-58.785 17.003-59.016 17.191Q-59.246 17.378-59.369 17.670Q-59.492 17.961-59.492 18.253M-55.844 19.355L-55.844 17.164L-56.547 17.164L-56.547 16.910Q-56.191 16.910-55.949 16.677Q-55.707 16.445-55.596 16.097Q-55.484 15.750-55.484 15.394L-55.203 15.394L-55.203 16.867L-54.027 16.867L-54.027 17.164L-55.203 17.164L-55.203 19.339Q-55.203 19.660-55.084 19.888Q-54.965 20.117-54.683 20.117Q-54.504 20.117-54.387 19.994Q-54.269 19.871-54.217 19.691Q-54.164 19.511-54.164 19.339L-54.164 18.867L-53.883 18.867L-53.883 19.355Q-53.883 19.609-53.988 19.849Q-54.094 20.089-54.291 20.242Q-54.488 20.394-54.746 20.394Q-55.062 20.394-55.314 20.271Q-55.566 20.148-55.705 19.914Q-55.844 19.679-55.844 19.355\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(159.738 -33.072)\">\u003Cpath d=\"M-49.619 19.347Q-49.619 19.105-49.546 18.830Q-49.474 18.554-49.353 18.232Q-49.232 17.910-49.150 17.699Q-49.060 17.476-49.060 17.293Q-49.060 17.043-49.228 17.043Q-49.544 17.043-49.753 17.349Q-49.962 17.656-50.068 18.043Q-50.080 18.117-50.150 18.117L-50.252 18.117Q-50.287 18.117-50.314 18.082Q-50.341 18.046-50.341 18.019L-50.341 17.988Q-50.216 17.527-49.919 17.158Q-49.623 16.789-49.212 16.789Q-49.017 16.789-48.843 16.873Q-48.669 16.957-48.568 17.109Q-48.466 17.261-48.466 17.468Q-48.466 17.621-48.525 17.757Q-48.603 17.957-48.687 18.170Q-48.771 18.382-48.845 18.607Q-48.919 18.832-48.966 19.045Q-49.013 19.257-49.013 19.445Q-49.013 19.761-48.834 19.951Q-48.654 20.140-48.334 20.140Q-47.912 20.140-47.619 19.523Q-47.627 19.468-47.627 19.363Q-47.627 19.140-47.564 18.902L-47.130 17.156Q-47.095 17.031-46.992 16.949Q-46.888 16.867-46.763 16.867Q-46.650 16.867-46.572 16.937Q-46.494 17.007-46.494 17.125Q-46.494 17.148-46.509 17.211L-46.939 18.957Q-47.013 19.277-47.013 19.468Q-47.013 19.777-46.859 19.959Q-46.705 20.140-46.404 20.140Q-46.048 20.140-45.814 19.865Q-45.580 19.589-45.412 19.179Q-45.353 19.039-45.285 18.834Q-45.216 18.628-45.169 18.427Q-45.123 18.226-45.123 18.093Q-45.123 17.867-45.191 17.755Q-45.259 17.644-45.404 17.482Q-45.548 17.320-45.548 17.218Q-45.548 17.046-45.408 16.914Q-45.267 16.781-45.107 16.781Q-44.892 16.781-44.800 16.968Q-44.709 17.156-44.709 17.394Q-44.709 17.718-44.851 18.285Q-44.994 18.851-45.138 19.203Q-45.337 19.707-45.648 20.050Q-45.959 20.394-46.412 20.394Q-46.767 20.394-47.064 20.275Q-47.361 20.156-47.509 19.882Q-47.849 20.394-48.349 20.394Q-48.908 20.394-49.263 20.140Q-49.619 19.886-49.619 19.347\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(159.738 -33.072)\">\u003Cpath d=\"M-35.927 19.339L-41.240 19.339Q-41.318 19.332-41.367 19.283Q-41.415 19.234-41.415 19.156Q-41.415 19.086-41.368 19.035Q-41.322 18.984-41.240 18.972L-35.927 18.972Q-35.853 18.984-35.806 19.035Q-35.759 19.086-35.759 19.156Q-35.759 19.234-35.808 19.283Q-35.857 19.332-35.927 19.339M-35.927 17.652L-41.240 17.652Q-41.318 17.644-41.367 17.595Q-41.415 17.546-41.415 17.468Q-41.415 17.398-41.368 17.347Q-41.322 17.296-41.240 17.285L-35.927 17.285Q-35.853 17.296-35.806 17.347Q-35.759 17.398-35.759 17.468Q-35.759 17.546-35.808 17.595Q-35.857 17.644-35.927 17.652\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(159.738 -33.072)\">\u003Cpath d=\"M-29.322 20.316L-32.115 20.316L-32.115 20.019Q-31.053 20.019-31.053 19.757L-31.053 15.589Q-31.482 15.804-32.162 15.804L-32.162 15.507Q-31.143 15.507-30.627 14.996L-30.482 14.996Q-30.408 15.015-30.389 15.093L-30.389 19.757Q-30.389 20.019-29.322 20.019L-29.322 20.316M-27.951 19.851Q-27.951 19.668-27.814 19.531Q-27.678 19.394-27.486 19.394Q-27.295 19.394-27.162 19.527Q-27.029 19.660-27.029 19.851Q-27.029 20.050-27.162 20.183Q-27.295 20.316-27.486 20.316Q-27.678 20.316-27.814 20.179Q-27.951 20.043-27.951 19.851M-27.951 17.324Q-27.951 17.140-27.814 17.003Q-27.678 16.867-27.486 16.867Q-27.295 16.867-27.162 17Q-27.029 17.132-27.029 17.324Q-27.029 17.523-27.162 17.656Q-27.295 17.789-27.486 17.789Q-27.678 17.789-27.814 17.652Q-27.951 17.515-27.951 17.324\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(159.738 -33.072)\">\u003Cpath d=\"M-20.429 20.316L-22.207 20.316L-22.207 20.019Q-21.933 20.019-21.765 19.972Q-21.597 19.925-21.597 19.757L-21.597 17.621Q-21.597 17.406-21.654 17.310Q-21.711 17.214-21.824 17.193Q-21.937 17.171-22.183 17.171L-22.183 16.875L-20.984 16.789L-20.984 19.757Q-20.984 19.925-20.838 19.972Q-20.691 20.019-20.429 20.019L-20.429 20.316M-21.871 15.394Q-21.871 15.203-21.736 15.072Q-21.601 14.941-21.406 14.941Q-21.285 14.941-21.181 15.003Q-21.078 15.066-21.015 15.170Q-20.953 15.273-20.953 15.394Q-20.953 15.589-21.084 15.724Q-21.215 15.859-21.406 15.859Q-21.605 15.859-21.738 15.726Q-21.871 15.593-21.871 15.394M-18 20.316L-19.855 20.316L-19.855 20.019Q-19.582 20.019-19.414 19.972Q-19.246 19.925-19.246 19.757L-19.246 17.621Q-19.246 17.406-19.308 17.310Q-19.371 17.214-19.490 17.193Q-19.609 17.171-19.855 17.171L-19.855 16.875L-18.664 16.789L-18.664 17.523Q-18.550 17.308-18.357 17.140Q-18.164 16.972-17.925 16.880Q-17.687 16.789-17.433 16.789Q-16.265 16.789-16.265 17.867L-16.265 19.757Q-16.265 19.925-16.095 19.972Q-15.925 20.019-15.656 20.019L-15.656 20.316L-17.511 20.316L-17.511 20.019Q-17.238 20.019-17.070 19.972Q-16.902 19.925-16.902 19.757L-16.902 17.882Q-16.902 17.500-17.023 17.271Q-17.144 17.043-17.496 17.043Q-17.808 17.043-18.062 17.205Q-18.316 17.367-18.463 17.636Q-18.609 17.906-18.609 18.203L-18.609 19.757Q-18.609 19.925-18.439 19.972Q-18.269 20.019-18 20.019L-18 20.316M-15.168 20.308L-15.168 19.086Q-15.168 19.058-15.136 19.027Q-15.105 18.996-15.082 18.996L-14.976 18.996Q-14.906 18.996-14.890 19.058Q-14.828 19.378-14.689 19.619Q-14.550 19.859-14.318 20Q-14.086 20.140-13.777 20.140Q-13.539 20.140-13.330 20.080Q-13.121 20.019-12.984 19.871Q-12.847 19.722-12.847 19.476Q-12.847 19.222-13.058 19.056Q-13.269 18.890-13.539 18.836L-14.160 18.722Q-14.566 18.644-14.867 18.388Q-15.168 18.132-15.168 17.757Q-15.168 17.390-14.966 17.168Q-14.765 16.945-14.441 16.847Q-14.117 16.750-13.777 16.750Q-13.312 16.750-13.015 16.957L-12.793 16.773Q-12.769 16.750-12.738 16.750L-12.687 16.750Q-12.656 16.750-12.629 16.777Q-12.601 16.804-12.601 16.836L-12.601 17.820Q-12.601 17.851-12.627 17.880Q-12.652 17.910-12.687 17.910L-12.793 17.910Q-12.828 17.910-12.855 17.882Q-12.882 17.855-12.882 17.820Q-12.882 17.421-13.134 17.201Q-13.386 16.980-13.785 16.980Q-14.140 16.980-14.423 17.103Q-14.707 17.226-14.707 17.531Q-14.707 17.750-14.506 17.882Q-14.304 18.015-14.058 18.058L-13.433 18.171Q-13.004 18.261-12.695 18.558Q-12.386 18.855-12.386 19.269Q-12.386 19.839-12.785 20.117Q-13.183 20.394-13.777 20.394Q-14.328 20.394-14.679 20.058L-14.976 20.371Q-15 20.394-15.035 20.394L-15.082 20.394Q-15.105 20.394-15.136 20.363Q-15.168 20.332-15.168 20.308M-10 20.316L-11.777 20.316L-11.777 20.019Q-11.504 20.019-11.336 19.972Q-11.168 19.925-11.168 19.757L-11.168 17.621Q-11.168 17.406-11.224 17.310Q-11.281 17.214-11.394 17.193Q-11.507 17.171-11.754 17.171L-11.754 16.875L-10.554 16.789L-10.554 19.757Q-10.554 19.925-10.408 19.972Q-10.261 20.019-10 20.019L-10 20.316M-11.441 15.394Q-11.441 15.203-11.306 15.072Q-11.172 14.941-10.976 14.941Q-10.855 14.941-10.752 15.003Q-10.648 15.066-10.586 15.170Q-10.523 15.273-10.523 15.394Q-10.523 15.589-10.654 15.724Q-10.785 15.859-10.976 15.859Q-11.175 15.859-11.308 15.726Q-11.441 15.593-11.441 15.394M-7.683 20.394Q-8.164 20.394-8.572 20.150Q-8.980 19.906-9.218 19.492Q-9.457 19.078-9.457 18.589Q-9.457 18.097-9.199 17.681Q-8.941 17.265-8.509 17.027Q-8.078 16.789-7.586 16.789Q-6.965 16.789-6.515 17.226L-6.515 15.597Q-6.515 15.382-6.578 15.287Q-6.640 15.191-6.757 15.170Q-6.875 15.148-7.121 15.148L-7.121 14.851L-5.898 14.765L-5.898 19.574Q-5.898 19.785-5.836 19.880Q-5.773 19.976-5.656 19.998Q-5.539 20.019-5.289 20.019L-5.289 20.316L-6.539 20.394L-6.539 19.910Q-7.004 20.394-7.683 20.394M-7.617 20.140Q-7.277 20.140-6.984 19.949Q-6.691 19.757-6.539 19.461L-6.539 17.628Q-6.687 17.355-6.949 17.199Q-7.211 17.043-7.523 17.043Q-8.148 17.043-8.431 17.490Q-8.715 17.937-8.715 18.597Q-8.715 19.242-8.463 19.691Q-8.211 20.140-7.617 20.140M-4.781 18.562Q-4.781 18.082-4.548 17.666Q-4.316 17.250-3.906 17Q-3.496 16.750-3.019 16.750Q-2.289 16.750-1.890 17.191Q-1.492 17.632-1.492 18.363Q-1.492 18.468-1.586 18.492L-4.035 18.492L-4.035 18.562Q-4.035 18.972-3.914 19.328Q-3.793 19.683-3.521 19.900Q-3.250 20.117-2.820 20.117Q-2.457 20.117-2.160 19.888Q-1.863 19.660-1.761 19.308Q-1.754 19.261-1.668 19.246L-1.586 19.246Q-1.492 19.273-1.492 19.355Q-1.492 19.363-1.500 19.394Q-1.562 19.621-1.701 19.804Q-1.840 19.988-2.031 20.121Q-2.222 20.253-2.441 20.324Q-2.660 20.394-2.898 20.394Q-3.269 20.394-3.607 20.257Q-3.945 20.121-4.213 19.869Q-4.480 19.617-4.631 19.277Q-4.781 18.937-4.781 18.562M-4.027 18.253L-2.066 18.253Q-2.066 17.949-2.168 17.658Q-2.269 17.367-2.486 17.185Q-2.703 17.003-3.019 17.003Q-3.320 17.003-3.550 17.191Q-3.781 17.378-3.904 17.670Q-4.027 17.961-4.027 18.253\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Winding by signed ray crossings: the \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6667em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">+\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">x\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> ray from \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.625em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0359em;\">q\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> meets one upward edge \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:1em;vertical-align:-0.25em;\">\u003C\u002Fspan>\u003Cspan class=\"mopen\">(\u003C\u002Fspan>\u003Cspan class=\"mord\">+\u003C\u002Fspan>\u003Cspan class=\"mord\">1\u003C\u002Fspan>\u003Cspan class=\"mclose\">)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> and one downward edge \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:1em;vertical-align:-0.25em;\">\u003C\u002Fspan>\u003Cspan class=\"mopen\">(\u003C\u002Fspan>\u003Cspan class=\"mord\">−\u003C\u002Fspan>\u003Cspan class=\"mord\">1\u003C\u002Fspan>\u003Cspan class=\"mclose\">)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>; for this simple polygon \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:1em;vertical-align:-0.25em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0269em;\">w\u003C\u002Fspan>\u003Cspan class=\"mopen\">(\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0359em;\">q\u003C\u002Fspan>\u003Cspan class=\"mclose\">)\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2778em;\">\u003C\u002Fspan>\u003Cspan class=\"mrel\">=\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2778em;\">\u003C\u002Fspan>\u003C\u002Fspan>\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.7278em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">1\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2222em;\">\u003C\u002Fspan>\u003Cspan class=\"mbin\">−\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2222em;\">\u003C\u002Fspan>\u003C\u002Fspan>\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6444em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">0\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>, inside.\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:263.957px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 197.968 111.780\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"none\" d=\"M-65.403 28.24h170.992\"\u002F>\u003Cpath stroke=\"none\" d=\"m107.589 28.24-3.2-1.6 1.2 1.6-1.2 1.6\"\u002F>\u003Cg transform=\"translate(171.119 1.937)\">\u003Cpath d=\"M-59.268 27.950Q-59.092 28.077-58.819 28.077Q-58.529 28.077-58.316 27.823Q-58.103 27.568-58.024 27.251L-57.620 25.638Q-57.532 25.261-57.532 25.072Q-57.532 24.847-57.659 24.685Q-57.787 24.522-58.006 24.522Q-58.424 24.522-58.756 24.872Q-59.087 25.221-59.206 25.674Q-59.224 25.757-59.294 25.757L-59.404 25.757Q-59.492 25.757-59.492 25.638Q-59.360 25.098-58.938 24.680Q-58.516 24.263-57.989 24.263Q-57.655 24.263-57.380 24.434Q-57.105 24.606-56.991 24.900Q-56.833 24.628-56.587 24.445Q-56.341 24.263-56.055 24.263Q-55.717 24.263-55.444 24.430Q-55.172 24.597-55.172 24.918Q-55.172 25.146-55.315 25.315Q-55.457 25.485-55.695 25.485Q-55.835 25.485-55.941 25.392Q-56.046 25.300-56.046 25.155Q-56.046 24.970-55.923 24.828Q-55.800 24.685-55.616 24.650Q-55.796 24.522-56.073 24.522Q-56.363 24.522-56.574 24.779Q-56.785 25.036-56.864 25.353L-57.268 26.961Q-57.360 27.322-57.360 27.519Q-57.360 27.752-57.231 27.915Q-57.101 28.077-56.872 28.077Q-56.587 28.077-56.339 27.908Q-56.090 27.739-55.917 27.467Q-55.743 27.194-55.677 26.926Q-55.668 26.895-55.644 26.871Q-55.620 26.847-55.585 26.847L-55.479 26.847Q-55.440 26.847-55.414 26.884Q-55.387 26.922-55.387 26.961Q-55.475 27.308-55.695 27.627Q-55.914 27.946-56.231 28.143Q-56.547 28.341-56.890 28.341Q-57.228 28.341-57.503 28.172Q-57.778 28.003-57.901 27.699Q-58.050 27.968-58.299 28.154Q-58.547 28.341-58.828 28.341Q-59.171 28.341-59.445 28.174Q-59.720 28.007-59.720 27.682Q-59.720 27.458-59.571 27.286Q-59.421 27.115-59.188 27.115Q-59.043 27.115-58.940 27.207Q-58.837 27.300-58.837 27.449Q-58.837 27.625-58.960 27.772Q-59.083 27.919-59.268 27.950\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M31.904 28.24v-86.496l-64.871 54.06V28.24Z\"\u002F>\u003Cpath fill=\"var(--tk-soft-good)\" stroke=\"none\" d=\"M75.153 28.24V12.022L31.904-58.256V28.24Z\"\u002F>\u003Cpath fill=\"var(--tk-soft-warn)\" stroke=\"none\" d=\"M-32.967 28.24V-4.196l108.12 16.218V28.24Z\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M-32.968-4.195 75.15 12.022 31.902-58.254Z\" style=\"stroke-width:1.2\"\u002F>\u003Cpath fill=\"none\" d=\"M-32.968-4.195V28.24M75.15 12.022l.003 16.218M31.902-58.254l.002 86.494\" style=\"stroke-dasharray:3.0,3.0\"\u002F>\u003Cpath stroke=\"none\" d=\"M-30.847-4.195a2.121 2.121 0 1 0-4.242 0 2.121 2.121 0 0 0 4.242 0m-2.121 0\"\u002F>\u003Cg stroke=\"none\">\u003Cg transform=\"translate(13.935 -29.86)\">\u003Cpath d=\"M-57.918 28.328L-58.727 22.589Q-58.793 22.408-59.377 22.408Q-59.483 22.408-59.483 22.290Q-59.483 22.092-59.320 22.092L-57.136 22.092Q-57.092 22.092-57.064 22.127Q-57.035 22.162-57.035 22.202Q-57.035 22.281-57.066 22.345Q-57.097 22.408-57.163 22.408Q-57.883 22.408-57.883 22.650L-57.215 27.365L-54.381 22.940Q-54.372 22.896-54.332 22.813Q-54.293 22.729-54.293 22.677Q-54.293 22.527-54.423 22.468Q-54.552 22.408-54.732 22.408Q-54.838 22.408-54.838 22.290Q-54.838 22.092-54.680 22.092L-52.988 22.092Q-52.948 22.092-52.917 22.127Q-52.887 22.162-52.887 22.202Q-52.887 22.272-52.920 22.340Q-52.953 22.408-53.014 22.408Q-53.678 22.408-54.082 23.019Q-54.095 23.032-54.100 23.035Q-54.104 23.037-54.113 23.046L-57.497 28.328Q-57.554 28.438-57.685 28.438L-57.782 28.438Q-57.830 28.438-57.870 28.409Q-57.910 28.381-57.918 28.328\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(13.935 -29.86)\">\u003Cpath d=\"M-52.772 29.366Q-53.334 29.366-53.664 29.079Q-53.994 28.792-54.121 28.342Q-54.249 27.892-54.249 27.327Q-54.249 26.923-54.183 26.558Q-54.117 26.193-53.954 25.897Q-53.791 25.601-53.500 25.426Q-53.208 25.250-52.772 25.250Q-52.335 25.250-52.045 25.426Q-51.755 25.601-51.591 25.896Q-51.427 26.190-51.363 26.548Q-51.298 26.905-51.298 27.327Q-51.298 27.892-51.426 28.342Q-51.553 28.792-51.880 29.079Q-52.207 29.366-52.772 29.366M-52.772 29.149Q-52.368 29.149-52.173 28.839Q-51.978 28.528-51.934 28.136Q-51.890 27.743-51.890 27.230Q-51.890 26.735-51.934 26.376Q-51.978 26.017-52.173 25.742Q-52.368 25.467-52.772 25.467Q-53.176 25.467-53.371 25.742Q-53.566 26.017-53.610 26.376Q-53.654 26.735-53.654 27.230Q-53.654 27.743-53.610 28.136Q-53.566 28.528-53.371 28.839Q-53.176 29.149-52.772 29.149\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.180\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath stroke=\"none\" d=\"M77.271 12.022a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0m-2.121 0\"\u002F>\u003Cg stroke=\"none\">\u003Cg transform=\"translate(138.68 -13.643)\">\u003Cpath d=\"M-57.918 28.328L-58.727 22.589Q-58.793 22.408-59.377 22.408Q-59.483 22.408-59.483 22.290Q-59.483 22.092-59.320 22.092L-57.136 22.092Q-57.092 22.092-57.064 22.127Q-57.035 22.162-57.035 22.202Q-57.035 22.281-57.066 22.345Q-57.097 22.408-57.163 22.408Q-57.883 22.408-57.883 22.650L-57.215 27.365L-54.381 22.940Q-54.372 22.896-54.332 22.813Q-54.293 22.729-54.293 22.677Q-54.293 22.527-54.423 22.468Q-54.552 22.408-54.732 22.408Q-54.838 22.408-54.838 22.290Q-54.838 22.092-54.680 22.092L-52.988 22.092Q-52.948 22.092-52.917 22.127Q-52.887 22.162-52.887 22.202Q-52.887 22.272-52.920 22.340Q-52.953 22.408-53.014 22.408Q-53.678 22.408-54.082 23.019Q-54.095 23.032-54.100 23.035Q-54.104 23.037-54.113 23.046L-57.497 28.328Q-57.554 28.438-57.685 28.438L-57.782 28.438Q-57.830 28.438-57.870 28.409Q-57.910 28.381-57.918 28.328\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(138.68 -13.643)\">\u003Cpath d=\"M-51.562 29.240L-53.853 29.240L-53.853 28.982Q-52.977 28.982-52.977 28.809L-52.977 25.730Q-53.170 25.818-53.402 25.855Q-53.633 25.891-53.888 25.891L-53.888 25.634Q-53.510 25.634-53.189 25.549Q-52.869 25.464-52.640 25.250L-52.520 25.250Q-52.488 25.250-52.463 25.273Q-52.438 25.297-52.438 25.335L-52.438 28.809Q-52.438 28.982-51.562 28.982\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.180\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath stroke=\"none\" d=\"M34.024-58.254a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0m-2.122 0\"\u002F>\u003Cg stroke=\"none\">\u003Cg transform=\"translate(87.12 -91.027)\">\u003Cpath d=\"M-57.918 28.328L-58.727 22.589Q-58.793 22.408-59.377 22.408Q-59.483 22.408-59.483 22.290Q-59.483 22.092-59.320 22.092L-57.136 22.092Q-57.092 22.092-57.064 22.127Q-57.035 22.162-57.035 22.202Q-57.035 22.281-57.066 22.345Q-57.097 22.408-57.163 22.408Q-57.883 22.408-57.883 22.650L-57.215 27.365L-54.381 22.940Q-54.372 22.896-54.332 22.813Q-54.293 22.729-54.293 22.677Q-54.293 22.527-54.423 22.468Q-54.552 22.408-54.732 22.408Q-54.838 22.408-54.838 22.290Q-54.838 22.092-54.680 22.092L-52.988 22.092Q-52.948 22.092-52.917 22.127Q-52.887 22.162-52.887 22.202Q-52.887 22.272-52.920 22.340Q-52.953 22.408-53.014 22.408Q-53.678 22.408-54.082 23.019Q-54.095 23.032-54.100 23.035Q-54.104 23.037-54.113 23.046L-57.497 28.328Q-57.554 28.438-57.685 28.438L-57.782 28.438Q-57.830 28.438-57.870 28.409Q-57.910 28.381-57.918 28.328\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.270\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(87.12 -91.027)\">\u003Cpath d=\"M-51.562 29.240L-54.172 29.240L-54.172 29.055Q-54.166 29.032-54.146 29.006L-52.995 27.951Q-52.655 27.640-52.475 27.454Q-52.294 27.268-52.149 27.008Q-52.004 26.747-52.004 26.451Q-52.004 26.178-52.130 25.963Q-52.256 25.748-52.476 25.628Q-52.696 25.508-52.971 25.508Q-53.147 25.508-53.317 25.565Q-53.487 25.622-53.619 25.729Q-53.750 25.836-53.830 25.994Q-53.742 25.994-53.664 26.038Q-53.586 26.082-53.542 26.158Q-53.499 26.234-53.499 26.331Q-53.499 26.471-53.595 26.568Q-53.692 26.665-53.835 26.665Q-53.973 26.665-54.073 26.565Q-54.172 26.466-54.172 26.331Q-54.172 26.006-53.982 25.758Q-53.791 25.511-53.488 25.380Q-53.185 25.250-52.869 25.250Q-52.488 25.250-52.145 25.385Q-51.802 25.519-51.588 25.792Q-51.374 26.064-51.374 26.451Q-51.374 26.726-51.499 26.953Q-51.624 27.180-51.804 27.352Q-51.984 27.523-52.309 27.763Q-52.634 28.004-52.719 28.071L-53.475 28.675L-52.942 28.675Q-52.453 28.675-52.122 28.667Q-51.791 28.660-51.776 28.645Q-51.717 28.575-51.685 28.440Q-51.653 28.305-51.621 28.094L-51.374 28.094\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.180\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg transform=\"translate(44.51 -43.173)\">\u003Cpath d=\"M-59.661 27.408Q-59.661 26.924-59.259 26.629Q-58.856 26.334-58.306 26.215Q-57.755 26.095-57.263 26.095L-57.263 25.806Q-57.263 25.580-57.378 25.373Q-57.493 25.166-57.690 25.047Q-57.888 24.927-58.118 24.927Q-58.544 24.927-58.829 25.033Q-58.759 25.060-58.712 25.115Q-58.665 25.170-58.640 25.240Q-58.614 25.310-58.614 25.385Q-58.614 25.490-58.665 25.582Q-58.716 25.674-58.808 25.724Q-58.899 25.775-59.005 25.775Q-59.110 25.775-59.202 25.724Q-59.294 25.674-59.345 25.582Q-59.395 25.490-59.395 25.385Q-59.395 24.967-59.007 24.820Q-58.618 24.674-58.118 24.674Q-57.786 24.674-57.433 24.804Q-57.079 24.935-56.851 25.189Q-56.622 25.443-56.622 25.791L-56.622 27.592Q-56.622 27.724-56.550 27.834Q-56.477 27.943-56.349 27.943Q-56.224 27.943-56.155 27.838Q-56.087 27.732-56.087 27.592L-56.087 27.080L-55.806 27.080L-55.806 27.592Q-55.806 27.795-55.923 27.953Q-56.040 28.111-56.222 28.195Q-56.403 28.279-56.606 28.279Q-56.837 28.279-56.989 28.107Q-57.142 27.935-57.173 27.705Q-57.333 27.986-57.642 28.152Q-57.950 28.318-58.302 28.318Q-58.813 28.318-59.237 28.095Q-59.661 27.873-59.661 27.408M-58.974 27.408Q-58.974 27.693-58.747 27.879Q-58.520 28.064-58.227 28.064Q-57.981 28.064-57.757 27.947Q-57.532 27.830-57.397 27.627Q-57.263 27.424-57.263 27.170L-57.263 26.338Q-57.528 26.338-57.813 26.392Q-58.099 26.447-58.370 26.576Q-58.642 26.705-58.808 26.912Q-58.974 27.119-58.974 27.408M-53.696 28.318Q-54.177 28.318-54.585 28.074Q-54.993 27.830-55.231 27.416Q-55.470 27.002-55.470 26.513Q-55.470 26.021-55.212 25.605Q-54.954 25.189-54.522 24.951Q-54.091 24.713-53.599 24.713Q-52.977 24.713-52.528 25.150L-52.528 23.521Q-52.528 23.306-52.591 23.211Q-52.653 23.115-52.770 23.094Q-52.888 23.072-53.134 23.072L-53.134 22.775L-51.911 22.689L-51.911 27.498Q-51.911 27.709-51.849 27.804Q-51.786 27.900-51.669 27.922Q-51.552 27.943-51.302 27.943L-51.302 28.240L-52.552 28.318L-52.552 27.834Q-53.017 28.318-53.696 28.318M-53.630 28.064Q-53.290 28.064-52.997 27.873Q-52.704 27.681-52.552 27.385L-52.552 25.552Q-52.700 25.279-52.962 25.123Q-53.224 24.967-53.536 24.967Q-54.161 24.967-54.444 25.414Q-54.727 25.861-54.727 26.521Q-54.727 27.166-54.476 27.615Q-54.224 28.064-53.630 28.064M-48.977 28.318Q-49.458 28.318-49.866 28.074Q-50.274 27.830-50.513 27.416Q-50.751 27.002-50.751 26.513Q-50.751 26.021-50.493 25.605Q-50.235 25.189-49.804 24.951Q-49.372 24.713-48.880 24.713Q-48.259 24.713-47.809 25.150L-47.809 23.521Q-47.809 23.306-47.872 23.211Q-47.934 23.115-48.052 23.094Q-48.169 23.072-48.415 23.072L-48.415 22.775L-47.192 22.689L-47.192 27.498Q-47.192 27.709-47.130 27.804Q-47.067 27.900-46.950 27.922Q-46.833 27.943-46.583 27.943L-46.583 28.240L-47.833 28.318L-47.833 27.834Q-48.298 28.318-48.977 28.318M-48.911 28.064Q-48.571 28.064-48.278 27.873Q-47.985 27.681-47.833 27.385L-47.833 25.552Q-47.981 25.279-48.243 25.123Q-48.505 24.967-48.817 24.967Q-49.442 24.967-49.726 25.414Q-50.009 25.861-50.009 26.521Q-50.009 27.166-49.757 27.615Q-49.505 28.064-48.911 28.064\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\">\u003Cg transform=\"translate(108.03 -35.064)\">\u003Cpath d=\"M-59.661 27.408Q-59.661 26.924-59.259 26.629Q-58.856 26.334-58.306 26.215Q-57.755 26.095-57.263 26.095L-57.263 25.806Q-57.263 25.580-57.378 25.373Q-57.493 25.166-57.690 25.047Q-57.888 24.927-58.118 24.927Q-58.544 24.927-58.829 25.033Q-58.759 25.060-58.712 25.115Q-58.665 25.170-58.640 25.240Q-58.614 25.310-58.614 25.385Q-58.614 25.490-58.665 25.582Q-58.716 25.674-58.808 25.724Q-58.899 25.775-59.005 25.775Q-59.110 25.775-59.202 25.724Q-59.294 25.674-59.345 25.582Q-59.395 25.490-59.395 25.385Q-59.395 24.967-59.007 24.820Q-58.618 24.674-58.118 24.674Q-57.786 24.674-57.433 24.804Q-57.079 24.935-56.851 25.189Q-56.622 25.443-56.622 25.791L-56.622 27.592Q-56.622 27.724-56.550 27.834Q-56.477 27.943-56.349 27.943Q-56.224 27.943-56.155 27.838Q-56.087 27.732-56.087 27.592L-56.087 27.080L-55.806 27.080L-55.806 27.592Q-55.806 27.795-55.923 27.953Q-56.040 28.111-56.222 28.195Q-56.403 28.279-56.606 28.279Q-56.837 28.279-56.989 28.107Q-57.142 27.935-57.173 27.705Q-57.333 27.986-57.642 28.152Q-57.950 28.318-58.302 28.318Q-58.813 28.318-59.237 28.095Q-59.661 27.873-59.661 27.408M-58.974 27.408Q-58.974 27.693-58.747 27.879Q-58.520 28.064-58.227 28.064Q-57.981 28.064-57.757 27.947Q-57.532 27.830-57.397 27.627Q-57.263 27.424-57.263 27.170L-57.263 26.338Q-57.528 26.338-57.813 26.392Q-58.099 26.447-58.370 26.576Q-58.642 26.705-58.808 26.912Q-58.974 27.119-58.974 27.408M-53.696 28.318Q-54.177 28.318-54.585 28.074Q-54.993 27.830-55.231 27.416Q-55.470 27.002-55.470 26.513Q-55.470 26.021-55.212 25.605Q-54.954 25.189-54.522 24.951Q-54.091 24.713-53.599 24.713Q-52.977 24.713-52.528 25.150L-52.528 23.521Q-52.528 23.306-52.591 23.211Q-52.653 23.115-52.770 23.094Q-52.888 23.072-53.134 23.072L-53.134 22.775L-51.911 22.689L-51.911 27.498Q-51.911 27.709-51.849 27.804Q-51.786 27.900-51.669 27.922Q-51.552 27.943-51.302 27.943L-51.302 28.240L-52.552 28.318L-52.552 27.834Q-53.017 28.318-53.696 28.318M-53.630 28.064Q-53.290 28.064-52.997 27.873Q-52.704 27.681-52.552 27.385L-52.552 25.552Q-52.700 25.279-52.962 25.123Q-53.224 24.967-53.536 24.967Q-54.161 24.967-54.444 25.414Q-54.727 25.861-54.727 26.521Q-54.727 27.166-54.476 27.615Q-54.224 28.064-53.630 28.064M-48.977 28.318Q-49.458 28.318-49.866 28.074Q-50.274 27.830-50.513 27.416Q-50.751 27.002-50.751 26.513Q-50.751 26.021-50.493 25.605Q-50.235 25.189-49.804 24.951Q-49.372 24.713-48.880 24.713Q-48.259 24.713-47.809 25.150L-47.809 23.521Q-47.809 23.306-47.872 23.211Q-47.934 23.115-48.052 23.094Q-48.169 23.072-48.415 23.072L-48.415 22.775L-47.192 22.689L-47.192 27.498Q-47.192 27.709-47.130 27.804Q-47.067 27.900-46.950 27.922Q-46.833 27.943-46.583 27.943L-46.583 28.240L-47.833 28.318L-47.833 27.834Q-48.298 28.318-48.977 28.318M-48.911 28.064Q-48.571 28.064-48.278 27.873Q-47.985 27.681-47.833 27.385L-47.833 25.552Q-47.981 25.279-48.243 25.123Q-48.505 24.967-48.817 24.967Q-49.442 24.967-49.726 25.414Q-50.009 25.861-50.009 26.521Q-50.009 27.166-49.757 27.615Q-49.505 28.064-48.911 28.064\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\">\u003Cg transform=\"translate(54.904 -5.331)\">\u003Cpath d=\"M-59.716 28.232L-59.716 27.010Q-59.716 26.982-59.684 26.951Q-59.653 26.920-59.630 26.920L-59.524 26.920Q-59.454 26.920-59.438 26.982Q-59.376 27.302-59.237 27.543Q-59.099 27.783-58.866 27.924Q-58.634 28.064-58.325 28.064Q-58.087 28.064-57.878 28.004Q-57.669 27.943-57.532 27.795Q-57.395 27.646-57.395 27.400Q-57.395 27.146-57.606 26.980Q-57.817 26.814-58.087 26.760L-58.708 26.646Q-59.114 26.568-59.415 26.312Q-59.716 26.056-59.716 25.681Q-59.716 25.314-59.515 25.092Q-59.313 24.869-58.989 24.771Q-58.665 24.674-58.325 24.674Q-57.860 24.674-57.563 24.881L-57.341 24.697Q-57.317 24.674-57.286 24.674L-57.235 24.674Q-57.204 24.674-57.177 24.701Q-57.149 24.728-57.149 24.760L-57.149 25.744Q-57.149 25.775-57.175 25.804Q-57.200 25.834-57.235 25.834L-57.341 25.834Q-57.376 25.834-57.403 25.806Q-57.431 25.779-57.431 25.744Q-57.431 25.345-57.683 25.125Q-57.934 24.904-58.333 24.904Q-58.688 24.904-58.972 25.027Q-59.255 25.150-59.255 25.455Q-59.255 25.674-59.054 25.806Q-58.852 25.939-58.606 25.982L-57.981 26.095Q-57.552 26.185-57.243 26.482Q-56.934 26.779-56.934 27.193Q-56.934 27.763-57.333 28.041Q-57.731 28.318-58.325 28.318Q-58.876 28.318-59.227 27.982L-59.524 28.295Q-59.548 28.318-59.583 28.318L-59.630 28.318Q-59.653 28.318-59.684 28.287Q-59.716 28.256-59.716 28.232M-55.724 27.287L-55.724 25.545Q-55.724 25.330-55.786 25.234Q-55.849 25.138-55.968 25.117Q-56.087 25.095-56.333 25.095L-56.333 24.799L-55.087 24.713L-55.087 27.263L-55.087 27.287Q-55.087 27.599-55.032 27.761Q-54.977 27.924-54.827 27.994Q-54.677 28.064-54.356 28.064Q-53.927 28.064-53.653 27.726Q-53.380 27.388-53.380 26.943L-53.380 25.545Q-53.380 25.330-53.442 25.234Q-53.505 25.138-53.624 25.117Q-53.743 25.095-53.989 25.095L-53.989 24.799L-52.743 24.713L-52.743 27.498Q-52.743 27.709-52.681 27.804Q-52.618 27.900-52.499 27.922Q-52.380 27.943-52.134 27.943L-52.134 28.240L-53.356 28.318L-53.356 27.697Q-53.524 27.986-53.806 28.152Q-54.087 28.318-54.407 28.318Q-55.724 28.318-55.724 27.287M-50.774 28.240L-51.056 28.240L-51.056 23.521Q-51.056 23.306-51.118 23.211Q-51.181 23.115-51.298 23.094Q-51.415 23.072-51.661 23.072L-51.661 22.775L-50.438 22.689L-50.438 25.177Q-49.962 24.713-49.263 24.713Q-48.782 24.713-48.374 24.957Q-47.966 25.201-47.729 25.615Q-47.493 26.029-47.493 26.513Q-47.493 26.888-47.642 27.217Q-47.790 27.545-48.059 27.797Q-48.329 28.049-48.673 28.183Q-49.017 28.318-49.376 28.318Q-49.696 28.318-49.995 28.170Q-50.294 28.021-50.501 27.760L-50.774 28.240M-50.415 25.568L-50.415 27.408Q-50.263 27.705-50.003 27.885Q-49.743 28.064-49.431 28.064Q-49.005 28.064-48.737 27.845Q-48.470 27.627-48.354 27.281Q-48.239 26.935-48.239 26.513Q-48.239 25.865-48.487 25.416Q-48.735 24.967-49.333 24.967Q-49.669 24.967-49.958 25.125Q-50.247 25.283-50.415 25.568M-46.345 27.279L-46.345 25.088L-47.048 25.088L-47.048 24.834Q-46.692 24.834-46.450 24.601Q-46.208 24.369-46.097 24.021Q-45.985 23.674-45.985 23.318L-45.704 23.318L-45.704 24.791L-44.528 24.791L-44.528 25.088L-45.704 25.088L-45.704 27.263Q-45.704 27.584-45.585 27.812Q-45.466 28.041-45.184 28.041Q-45.005 28.041-44.888 27.918Q-44.770 27.795-44.718 27.615Q-44.665 27.435-44.665 27.263L-44.665 26.791L-44.384 26.791L-44.384 27.279Q-44.384 27.533-44.489 27.773Q-44.595 28.013-44.792 28.166Q-44.989 28.318-45.247 28.318Q-45.563 28.318-45.815 28.195Q-46.067 28.072-46.206 27.838Q-46.345 27.603-46.345 27.279M-41.657 28.240L-43.638 28.240L-43.638 27.943Q-43.368 27.943-43.200 27.898Q-43.032 27.853-43.032 27.681L-43.032 25.545Q-43.032 25.330-43.095 25.234Q-43.157 25.138-43.274 25.117Q-43.392 25.095-43.638 25.095L-43.638 24.799L-42.470 24.713L-42.470 25.498Q-42.392 25.287-42.239 25.101Q-42.087 24.916-41.888 24.814Q-41.688 24.713-41.462 24.713Q-41.216 24.713-41.024 24.857Q-40.833 25.002-40.833 25.232Q-40.833 25.388-40.938 25.498Q-41.044 25.607-41.200 25.607Q-41.356 25.607-41.466 25.498Q-41.575 25.388-41.575 25.232Q-41.575 25.072-41.470 24.967Q-41.794 24.967-42.009 25.195Q-42.224 25.424-42.319 25.763Q-42.415 26.103-42.415 26.408L-42.415 27.681Q-42.415 27.849-42.188 27.896Q-41.962 27.943-41.657 27.943L-41.657 28.240M-40.255 27.408Q-40.255 26.924-39.852 26.629Q-39.450 26.334-38.899 26.215Q-38.349 26.095-37.856 26.095L-37.856 25.806Q-37.856 25.580-37.972 25.373Q-38.087 25.166-38.284 25.047Q-38.481 24.927-38.712 24.927Q-39.138 24.927-39.423 25.033Q-39.352 25.060-39.306 25.115Q-39.259 25.170-39.233 25.240Q-39.208 25.310-39.208 25.385Q-39.208 25.490-39.259 25.582Q-39.309 25.674-39.401 25.724Q-39.493 25.775-39.599 25.775Q-39.704 25.775-39.796 25.724Q-39.888 25.674-39.938 25.582Q-39.989 25.490-39.989 25.385Q-39.989 24.967-39.601 24.820Q-39.212 24.674-38.712 24.674Q-38.380 24.674-38.026 24.804Q-37.673 24.935-37.444 25.189Q-37.216 25.443-37.216 25.791L-37.216 27.592Q-37.216 27.724-37.143 27.834Q-37.071 27.943-36.942 27.943Q-36.817 27.943-36.749 27.838Q-36.681 27.732-36.681 27.592L-36.681 27.080L-36.399 27.080L-36.399 27.592Q-36.399 27.795-36.517 27.953Q-36.634 28.111-36.815 28.195Q-36.997 28.279-37.200 28.279Q-37.431 28.279-37.583 28.107Q-37.735 27.935-37.767 27.705Q-37.927 27.986-38.235 28.152Q-38.544 28.318-38.895 28.318Q-39.407 28.318-39.831 28.095Q-40.255 27.873-40.255 27.408M-39.567 27.408Q-39.567 27.693-39.341 27.879Q-39.114 28.064-38.821 28.064Q-38.575 28.064-38.351 27.947Q-38.126 27.830-37.991 27.627Q-37.856 27.424-37.856 27.170L-37.856 26.338Q-38.122 26.338-38.407 26.392Q-38.692 26.447-38.964 26.576Q-39.235 26.705-39.401 26.912Q-39.567 27.119-39.567 27.408M-36.063 26.513Q-36.063 26.017-35.813 25.592Q-35.563 25.166-35.143 24.920Q-34.724 24.674-34.224 24.674Q-33.684 24.674-33.294 24.799Q-32.903 24.924-32.903 25.338Q-32.903 25.443-32.954 25.535Q-33.005 25.627-33.097 25.677Q-33.188 25.728-33.298 25.728Q-33.403 25.728-33.495 25.677Q-33.587 25.627-33.638 25.535Q-33.688 25.443-33.688 25.338Q-33.688 25.115-33.520 25.010Q-33.743 24.951-34.216 24.951Q-34.513 24.951-34.727 25.090Q-34.942 25.228-35.073 25.459Q-35.204 25.689-35.263 25.959Q-35.321 26.228-35.321 26.513Q-35.321 26.908-35.188 27.258Q-35.056 27.607-34.784 27.824Q-34.513 28.041-34.114 28.041Q-33.739 28.041-33.464 27.824Q-33.188 27.607-33.087 27.248Q-33.071 27.185-33.009 27.185L-32.903 27.185Q-32.868 27.185-32.843 27.213Q-32.817 27.240-32.817 27.279L-32.817 27.302Q-32.950 27.783-33.335 28.051Q-33.720 28.318-34.224 28.318Q-34.587 28.318-34.921 28.181Q-35.255 28.045-35.515 27.795Q-35.774 27.545-35.919 27.209Q-36.063 26.873-36.063 26.513M-31.704 27.279L-31.704 25.088L-32.407 25.088L-32.407 24.834Q-32.052 24.834-31.809 24.601Q-31.567 24.369-31.456 24.021Q-31.345 23.674-31.345 23.318L-31.063 23.318L-31.063 24.791L-29.888 24.791L-29.888 25.088L-31.063 25.088L-31.063 27.263Q-31.063 27.584-30.944 27.812Q-30.825 28.041-30.544 28.041Q-30.364 28.041-30.247 27.918Q-30.130 27.795-30.077 27.615Q-30.024 27.435-30.024 27.263L-30.024 26.791L-29.743 26.791L-29.743 27.279Q-29.743 27.533-29.849 27.773Q-29.954 28.013-30.151 28.166Q-30.349 28.318-30.606 28.318Q-30.923 28.318-31.175 28.195Q-31.427 28.072-31.565 27.838Q-31.704 27.603-31.704 27.279\" fill=\"var(--tk-warn)\" stroke=\"var(--tk-warn)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Each edge with the \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.4306em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">x\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>-axis bounds a signed trapezoid; top edges add area, bottom edges subtract, leaving the polygon\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:190.114px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 142.585 146.707\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath stroke=\"none\" d=\"M-54.486 33.39a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M4.98 52.31a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M59.04 22.577a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M61.743-26.077a2.121 2.121 0 1 0-4.242 0 2.121 2.121 0 0 0 4.242 0M7.683-50.404a2.121 2.121 0 1 0-4.242 0 2.121 2.121 0 0 0 4.242 0M-46.377-17.968a2.121 2.121 0 1 0-4.242 0 2.121 2.121 0 0 0 4.242 0m-2.121 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M-56.607 33.39 2.857 52.31l54.06-29.732 2.702-48.653L5.56-50.402l-54.059 32.436Z\" style=\"stroke-width:.8\"\u002F>\u003Cg fill=\"var(--tk-accent)\">\u003Cpath stroke=\"none\" d=\"M4.979 52.31a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0m-2.122 0\"\u002F>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\">\u003Cpath stroke=\"none\" d=\"M7.682-50.402a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0m-2.122 0\"\u002F>\u003C\u002Fg>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M2.857 52.31 5.56-50.402\" style=\"stroke-width:1.2\"\u002F>\u003Cg fill=\"var(--tk-bg)\" stroke=\"var(--tk-accent)\">\u003Cpath fill=\"var(--tk-bg)\" stroke=\"none\" d=\"M-43.318 5.231h35.59v-8.555h-35.59Z\"\u002F>\u003Cg transform=\"translate(22.898 -48.58)\">\u003Cpath d=\"M-62.661 52.388Q-63.142 52.388-63.550 52.144Q-63.958 51.900-64.196 51.486Q-64.435 51.072-64.435 50.583Q-64.435 50.091-64.177 49.675Q-63.919 49.259-63.487 49.021Q-63.056 48.783-62.564 48.783Q-61.943 48.783-61.493 49.220L-61.493 47.591Q-61.493 47.376-61.556 47.281Q-61.618 47.185-61.736 47.164Q-61.853 47.142-62.099 47.142L-62.099 46.845L-60.876 46.759L-60.876 51.568Q-60.876 51.779-60.814 51.874Q-60.751 51.970-60.634 51.992Q-60.517 52.013-60.267 52.013L-60.267 52.310L-61.517 52.388L-61.517 51.904Q-61.982 52.388-62.661 52.388M-62.595 52.134Q-62.255 52.134-61.962 51.943Q-61.669 51.751-61.517 51.455L-61.517 49.623Q-61.665 49.349-61.927 49.193Q-62.189 49.037-62.501 49.037Q-63.126 49.037-63.409 49.484Q-63.693 49.931-63.693 50.591Q-63.693 51.236-63.441 51.685Q-63.189 52.134-62.595 52.134M-57.900 52.310L-59.677 52.310L-59.677 52.013Q-59.403 52.013-59.236 51.966Q-59.068 51.919-59.068 51.751L-59.068 49.615Q-59.068 49.400-59.124 49.304Q-59.181 49.208-59.294 49.187Q-59.407 49.165-59.653 49.165L-59.653 48.869L-58.454 48.783L-58.454 51.751Q-58.454 51.919-58.308 51.966Q-58.161 52.013-57.900 52.013L-57.900 52.310M-59.341 47.388Q-59.341 47.197-59.206 47.066Q-59.071 46.935-58.876 46.935Q-58.755 46.935-58.652 46.998Q-58.548 47.060-58.486 47.164Q-58.423 47.267-58.423 47.388Q-58.423 47.583-58.554 47.718Q-58.685 47.853-58.876 47.853Q-59.075 47.853-59.208 47.720Q-59.341 47.587-59.341 47.388M-57.302 51.478Q-57.302 50.994-56.900 50.699Q-56.497 50.404-55.946 50.285Q-55.396 50.165-54.903 50.165L-54.903 49.876Q-54.903 49.650-55.019 49.443Q-55.134 49.236-55.331 49.117Q-55.528 48.998-55.759 48.998Q-56.185 48.998-56.470 49.103Q-56.400 49.130-56.353 49.185Q-56.306 49.240-56.280 49.310Q-56.255 49.380-56.255 49.455Q-56.255 49.560-56.306 49.652Q-56.357 49.744-56.448 49.794Q-56.540 49.845-56.646 49.845Q-56.751 49.845-56.843 49.794Q-56.935 49.744-56.986 49.652Q-57.036 49.560-57.036 49.455Q-57.036 49.037-56.648 48.890Q-56.259 48.744-55.759 48.744Q-55.427 48.744-55.073 48.874Q-54.720 49.005-54.491 49.259Q-54.263 49.513-54.263 49.861L-54.263 51.662Q-54.263 51.794-54.191 51.904Q-54.118 52.013-53.989 52.013Q-53.864 52.013-53.796 51.908Q-53.728 51.802-53.728 51.662L-53.728 51.150L-53.446 51.150L-53.446 51.662Q-53.446 51.865-53.564 52.023Q-53.681 52.181-53.862 52.265Q-54.044 52.349-54.247 52.349Q-54.478 52.349-54.630 52.177Q-54.782 52.005-54.814 51.775Q-54.974 52.056-55.282 52.222Q-55.591 52.388-55.943 52.388Q-56.454 52.388-56.878 52.165Q-57.302 51.943-57.302 51.478M-56.614 51.478Q-56.614 51.763-56.388 51.949Q-56.161 52.134-55.868 52.134Q-55.622 52.134-55.398 52.017Q-55.173 51.900-55.038 51.697Q-54.903 51.494-54.903 51.240L-54.903 50.408Q-55.169 50.408-55.454 50.462Q-55.739 50.517-56.011 50.646Q-56.282 50.775-56.448 50.982Q-56.614 51.189-56.614 51.478M-51.224 52.310L-53.079 52.310L-53.079 52.013Q-52.806 52.013-52.638 51.966Q-52.470 51.919-52.470 51.751L-52.470 49.615Q-52.470 49.400-52.532 49.304Q-52.595 49.208-52.714 49.187Q-52.833 49.165-53.079 49.165L-53.079 48.869L-51.888 48.783L-51.888 49.517Q-51.775 49.302-51.581 49.134Q-51.388 48.966-51.150 48.874Q-50.911 48.783-50.657 48.783Q-49.696 48.783-49.521 49.494Q-49.337 49.165-49.009 48.974Q-48.681 48.783-48.302 48.783Q-47.126 48.783-47.126 49.861L-47.126 51.751Q-47.126 51.919-46.958 51.966Q-46.790 52.013-46.521 52.013L-46.521 52.310L-48.376 52.310L-48.376 52.013Q-48.103 52.013-47.935 51.968Q-47.767 51.923-47.767 51.751L-47.767 49.876Q-47.767 49.490-47.892 49.263Q-48.017 49.037-48.368 49.037Q-48.673 49.037-48.929 49.199Q-49.185 49.361-49.333 49.630Q-49.482 49.900-49.482 50.197L-49.482 51.751Q-49.482 51.919-49.312 51.966Q-49.142 52.013-48.872 52.013L-48.872 52.310L-50.728 52.310L-50.728 52.013Q-50.454 52.013-50.286 51.966Q-50.118 51.919-50.118 51.751L-50.118 49.876Q-50.118 49.490-50.243 49.263Q-50.368 49.037-50.720 49.037Q-51.025 49.037-51.280 49.199Q-51.536 49.361-51.685 49.630Q-51.833 49.900-51.833 50.197L-51.833 51.751Q-51.833 51.919-51.663 51.966Q-51.493 52.013-51.224 52.013L-51.224 52.310M-46.075 50.556Q-46.075 50.076-45.843 49.660Q-45.611 49.244-45.200 48.994Q-44.790 48.744-44.314 48.744Q-43.583 48.744-43.185 49.185Q-42.786 49.626-42.786 50.357Q-42.786 50.462-42.880 50.486L-45.329 50.486L-45.329 50.556Q-45.329 50.966-45.208 51.322Q-45.087 51.677-44.816 51.894Q-44.544 52.111-44.114 52.111Q-43.751 52.111-43.454 51.882Q-43.157 51.654-43.056 51.302Q-43.048 51.255-42.962 51.240L-42.880 51.240Q-42.786 51.267-42.786 51.349Q-42.786 51.357-42.794 51.388Q-42.857 51.615-42.995 51.798Q-43.134 51.982-43.325 52.115Q-43.517 52.248-43.736 52.318Q-43.954 52.388-44.193 52.388Q-44.564 52.388-44.902 52.251Q-45.239 52.115-45.507 51.863Q-45.775 51.611-45.925 51.271Q-46.075 50.931-46.075 50.556M-45.321 50.248L-43.361 50.248Q-43.361 49.943-43.462 49.652Q-43.564 49.361-43.780 49.179Q-43.997 48.998-44.314 48.998Q-44.614 48.998-44.845 49.185Q-45.075 49.373-45.198 49.664Q-45.321 49.955-45.321 50.248M-41.673 51.349L-41.673 49.158L-42.376 49.158L-42.376 48.904Q-42.021 48.904-41.778 48.671Q-41.536 48.439-41.425 48.091Q-41.314 47.744-41.314 47.388L-41.032 47.388L-41.032 48.861L-39.857 48.861L-39.857 49.158L-41.032 49.158L-41.032 51.333Q-41.032 51.654-40.913 51.882Q-40.794 52.111-40.513 52.111Q-40.333 52.111-40.216 51.988Q-40.099 51.865-40.046 51.685Q-39.993 51.505-39.993 51.333L-39.993 50.861L-39.712 50.861L-39.712 51.349Q-39.712 51.603-39.818 51.843Q-39.923 52.083-40.120 52.236Q-40.318 52.388-40.575 52.388Q-40.892 52.388-41.144 52.265Q-41.396 52.142-41.534 51.908Q-41.673 51.673-41.673 51.349M-38.993 50.556Q-38.993 50.076-38.761 49.660Q-38.528 49.244-38.118 48.994Q-37.708 48.744-37.232 48.744Q-36.501 48.744-36.103 49.185Q-35.704 49.626-35.704 50.357Q-35.704 50.462-35.798 50.486L-38.247 50.486L-38.247 50.556Q-38.247 50.966-38.126 51.322Q-38.005 51.677-37.734 51.894Q-37.462 52.111-37.032 52.111Q-36.669 52.111-36.372 51.882Q-36.075 51.654-35.974 51.302Q-35.966 51.255-35.880 51.240L-35.798 51.240Q-35.704 51.267-35.704 51.349Q-35.704 51.357-35.712 51.388Q-35.775 51.615-35.913 51.798Q-36.052 51.982-36.243 52.115Q-36.435 52.248-36.653 52.318Q-36.872 52.388-37.111 52.388Q-37.482 52.388-37.820 52.251Q-38.157 52.115-38.425 51.863Q-38.693 51.611-38.843 51.271Q-38.993 50.931-38.993 50.556M-38.239 50.248L-36.278 50.248Q-36.278 49.943-36.380 49.652Q-36.482 49.361-36.698 49.179Q-36.915 48.998-37.232 48.998Q-37.532 48.998-37.763 49.185Q-37.993 49.373-38.116 49.664Q-38.239 49.955-38.239 50.248M-33.208 52.310L-35.189 52.310L-35.189 52.013Q-34.919 52.013-34.751 51.968Q-34.583 51.923-34.583 51.751L-34.583 49.615Q-34.583 49.400-34.646 49.304Q-34.708 49.208-34.825 49.187Q-34.943 49.165-35.189 49.165L-35.189 48.869L-34.021 48.783L-34.021 49.568Q-33.943 49.357-33.790 49.171Q-33.638 48.986-33.439 48.884Q-33.239 48.783-33.013 48.783Q-32.767 48.783-32.575 48.927Q-32.384 49.072-32.384 49.302Q-32.384 49.458-32.489 49.568Q-32.595 49.677-32.751 49.677Q-32.907 49.677-33.017 49.568Q-33.126 49.458-33.126 49.302Q-33.126 49.142-33.021 49.037Q-33.345 49.037-33.560 49.265Q-33.775 49.494-33.870 49.833Q-33.966 50.173-33.966 50.478L-33.966 51.751Q-33.966 51.919-33.739 51.966Q-33.513 52.013-33.208 52.013\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m-26.876 64.474 70.278-28.382M-34.985-34.183l70.279-28.382\" style=\"stroke-dasharray:3.0,3.0;stroke-width:.8\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg transform=\"translate(95.948 11.016)\">\u003Cpath d=\"M-64.157 50.583Q-64.157 50.103-63.913 49.689Q-63.669 49.275-63.253 49.037Q-62.837 48.798-62.357 48.798Q-61.802 48.798-61.423 48.908Q-61.044 49.017-61.044 49.423Q-61.044 49.591-61.157 49.714Q-61.271 49.837-61.443 49.837Q-61.614 49.837-61.734 49.722Q-61.853 49.607-61.853 49.439L-61.853 49.380Q-62.013 49.357-62.349 49.357Q-62.677 49.357-62.945 49.527Q-63.212 49.697-63.364 49.980Q-63.517 50.263-63.517 50.583Q-63.517 50.904-63.345 51.185Q-63.173 51.466-62.888 51.628Q-62.603 51.790-62.275 51.790Q-61.962 51.790-61.835 51.687Q-61.708 51.583-61.591 51.394Q-61.474 51.205-61.357 51.189L-61.189 51.189Q-61.083 51.201-61.019 51.269Q-60.954 51.337-60.954 51.439Q-60.954 51.486-60.974 51.525Q-61.083 51.818-61.286 51.998Q-61.489 52.177-61.765 52.263Q-62.040 52.349-62.357 52.349Q-62.841 52.349-63.257 52.111Q-63.673 51.873-63.915 51.470Q-64.157 51.068-64.157 50.583M-60.064 51.197Q-60.064 50.751-59.650 50.494Q-59.236 50.236-58.695 50.136Q-58.153 50.037-57.646 50.029Q-57.646 49.814-57.780 49.662Q-57.915 49.509-58.122 49.433Q-58.329 49.357-58.540 49.357Q-58.884 49.357-59.044 49.380L-59.044 49.439Q-59.044 49.607-59.163 49.722Q-59.282 49.837-59.446 49.837Q-59.622 49.837-59.737 49.714Q-59.853 49.591-59.853 49.423Q-59.853 49.017-59.472 48.908Q-59.091 48.798-58.532 48.798Q-58.263 48.798-57.995 48.876Q-57.728 48.955-57.503 49.105Q-57.278 49.255-57.142 49.476Q-57.005 49.697-57.005 49.974L-57.005 51.693Q-57.005 51.751-56.478 51.751Q-56.282 51.771-56.232 51.982L-56.232 52.072Q-56.282 52.287-56.478 52.310L-56.622 52.310Q-56.966 52.310-57.195 52.263Q-57.423 52.216-57.568 52.029Q-58.028 52.349-58.736 52.349Q-59.071 52.349-59.376 52.208Q-59.681 52.068-59.872 51.806Q-60.064 51.544-60.064 51.197M-59.423 51.205Q-59.423 51.478-59.181 51.634Q-58.939 51.790-58.653 51.790Q-58.435 51.790-58.202 51.732Q-57.970 51.673-57.808 51.535Q-57.646 51.396-57.646 51.173L-57.646 50.583Q-57.927 50.583-58.343 50.640Q-58.759 50.697-59.091 50.835Q-59.423 50.974-59.423 51.205M-55.775 52.072L-55.775 51.982Q-55.724 51.775-55.528 51.751L-54.423 51.751L-54.423 47.982L-55.528 47.982Q-55.724 47.958-55.775 47.744L-55.775 47.654Q-55.724 47.447-55.528 47.423L-54.032 47.423Q-53.841 47.447-53.782 47.654L-53.782 51.751L-52.681 51.751Q-52.482 51.775-52.431 51.982L-52.431 52.072Q-52.482 52.287-52.681 52.310L-55.528 52.310Q-55.724 52.287-55.775 52.072M-51.361 52.072L-51.361 51.982Q-51.310 51.775-51.114 51.751L-50.075 51.751L-50.075 49.423L-51.048 49.423Q-51.247 49.400-51.298 49.181L-51.298 49.095Q-51.247 48.884-51.048 48.861L-49.681 48.861Q-49.486 48.880-49.435 49.095L-49.435 51.751L-48.521 51.751Q-48.325 51.775-48.275 51.982L-48.275 52.072Q-48.325 52.287-48.521 52.310L-51.114 52.310Q-51.310 52.287-51.361 52.072M-50.329 47.884L-50.329 47.830Q-50.329 47.658-50.193 47.537Q-50.056 47.415-49.880 47.415Q-49.708 47.415-49.571 47.537Q-49.435 47.658-49.435 47.830L-49.435 47.884Q-49.435 48.060-49.571 48.181Q-49.708 48.302-49.880 48.302Q-50.056 48.302-50.193 48.181Q-50.329 48.060-50.329 47.884M-47.661 53.853L-47.661 53.767Q-47.618 53.548-47.411 53.525L-46.989 53.525L-46.989 49.423L-47.411 49.423Q-47.618 49.400-47.661 49.181L-47.661 49.095Q-47.614 48.884-47.411 48.861L-46.595 48.861Q-46.400 48.880-46.349 49.095L-46.349 49.165Q-46.138 48.998-45.874 48.910Q-45.611 48.822-45.341 48.822Q-45.001 48.822-44.704 48.966Q-44.407 49.111-44.193 49.363Q-43.978 49.615-43.862 49.927Q-43.747 50.240-43.747 50.583Q-43.747 51.048-43.974 51.458Q-44.200 51.869-44.587 52.109Q-44.974 52.349-45.443 52.349Q-45.962 52.349-46.349 51.982L-46.349 53.525L-45.923 53.525Q-45.716 53.548-45.677 53.767L-45.677 53.853Q-45.716 54.064-45.923 54.087L-47.411 54.087Q-47.614 54.064-47.661 53.853M-45.486 51.790Q-45.177 51.790-44.927 51.621Q-44.677 51.451-44.532 51.169Q-44.388 50.888-44.388 50.583Q-44.388 50.294-44.513 50.015Q-44.638 49.736-44.870 49.558Q-45.103 49.380-45.403 49.380Q-45.724 49.380-45.986 49.566Q-46.247 49.751-46.349 50.052L-46.349 50.904Q-46.259 51.271-46.038 51.531Q-45.818 51.790-45.486 51.790M-39.974 50.822L-42.415 50.822Q-42.361 51.099-42.163 51.322Q-41.966 51.544-41.689 51.667Q-41.411 51.790-41.126 51.790Q-40.653 51.790-40.431 51.501Q-40.423 51.490-40.366 51.384Q-40.310 51.279-40.261 51.236Q-40.212 51.193-40.118 51.181L-39.974 51.181Q-39.782 51.201-39.724 51.415L-39.724 51.470Q-39.790 51.771-40.021 51.968Q-40.251 52.165-40.564 52.257Q-40.876 52.349-41.181 52.349Q-41.665 52.349-42.105 52.121Q-42.544 51.892-42.812 51.492Q-43.079 51.091-43.079 50.599L-43.079 50.540Q-43.079 50.072-42.833 49.669Q-42.587 49.267-42.179 49.033Q-41.771 48.798-41.302 48.798Q-40.798 48.798-40.445 49.021Q-40.091 49.244-39.907 49.632Q-39.724 50.021-39.724 50.525L-39.724 50.583Q-39.782 50.798-39.974 50.822M-42.407 50.271L-40.380 50.271Q-40.427 49.861-40.665 49.609Q-40.903 49.357-41.302 49.357Q-41.696 49.357-42.003 49.619Q-42.310 49.880-42.407 50.271M-39.017 52.072L-39.017 51.982Q-38.958 51.775-38.767 51.751L-38.056 51.751L-38.056 49.423L-38.767 49.423Q-38.962 49.400-39.017 49.181L-39.017 49.095Q-38.958 48.884-38.767 48.861L-37.665 48.861Q-37.466 48.880-37.415 49.095L-37.415 49.423Q-37.153 49.138-36.798 48.980Q-36.443 48.822-36.056 48.822Q-35.763 48.822-35.528 48.956Q-35.294 49.091-35.294 49.357Q-35.294 49.525-35.403 49.642Q-35.513 49.759-35.681 49.759Q-35.833 49.759-35.948 49.648Q-36.064 49.537-36.064 49.380Q-36.439 49.380-36.753 49.581Q-37.068 49.783-37.241 50.117Q-37.415 50.451-37.415 50.830L-37.415 51.751L-36.470 51.751Q-36.263 51.775-36.224 51.982L-36.224 52.072Q-36.263 52.287-36.470 52.310L-38.767 52.310Q-38.958 52.287-39.017 52.072\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(2.446 -115.692)\">\u003Cpath d=\"M-62.595 53.861L-64.450 53.861L-64.450 53.568Q-64.181 53.568-64.013 53.523Q-63.845 53.478-63.845 53.302L-63.845 49.478Q-63.845 49.271-64.001 49.218Q-64.157 49.165-64.450 49.165L-64.450 48.869L-63.228 48.783L-63.228 49.248Q-62.997 49.025-62.683 48.904Q-62.368 48.783-62.028 48.783Q-61.556 48.783-61.152 49.029Q-60.747 49.275-60.515 49.691Q-60.282 50.107-60.282 50.583Q-60.282 50.958-60.431 51.287Q-60.579 51.615-60.849 51.867Q-61.118 52.119-61.462 52.253Q-61.806 52.388-62.165 52.388Q-62.454 52.388-62.726 52.267Q-62.997 52.146-63.204 51.935L-63.204 53.302Q-63.204 53.478-63.036 53.523Q-62.868 53.568-62.595 53.568L-62.595 53.861M-63.204 49.646L-63.204 51.486Q-63.052 51.775-62.790 51.955Q-62.528 52.134-62.220 52.134Q-61.935 52.134-61.712 51.996Q-61.489 51.857-61.337 51.626Q-61.185 51.396-61.107 51.124Q-61.028 50.853-61.028 50.583Q-61.028 50.251-61.153 49.894Q-61.278 49.537-61.527 49.300Q-61.775 49.064-62.122 49.064Q-62.446 49.064-62.741 49.220Q-63.036 49.376-63.204 49.646M-59.661 51.478Q-59.661 50.994-59.259 50.699Q-58.857 50.404-58.306 50.285Q-57.755 50.165-57.263 50.165L-57.263 49.876Q-57.263 49.650-57.378 49.443Q-57.493 49.236-57.691 49.117Q-57.888 48.998-58.118 48.998Q-58.544 48.998-58.829 49.103Q-58.759 49.130-58.712 49.185Q-58.665 49.240-58.640 49.310Q-58.614 49.380-58.614 49.455Q-58.614 49.560-58.665 49.652Q-58.716 49.744-58.808 49.794Q-58.900 49.845-59.005 49.845Q-59.111 49.845-59.202 49.794Q-59.294 49.744-59.345 49.652Q-59.396 49.560-59.396 49.455Q-59.396 49.037-59.007 48.890Q-58.618 48.744-58.118 48.744Q-57.786 48.744-57.433 48.874Q-57.079 49.005-56.851 49.259Q-56.622 49.513-56.622 49.861L-56.622 51.662Q-56.622 51.794-56.550 51.904Q-56.478 52.013-56.349 52.013Q-56.224 52.013-56.155 51.908Q-56.087 51.802-56.087 51.662L-56.087 51.150L-55.806 51.150L-55.806 51.662Q-55.806 51.865-55.923 52.023Q-56.040 52.181-56.222 52.265Q-56.403 52.349-56.607 52.349Q-56.837 52.349-56.989 52.177Q-57.142 52.005-57.173 51.775Q-57.333 52.056-57.642 52.222Q-57.950 52.388-58.302 52.388Q-58.814 52.388-59.237 52.165Q-59.661 51.943-59.661 51.478M-58.974 51.478Q-58.974 51.763-58.747 51.949Q-58.521 52.134-58.228 52.134Q-57.982 52.134-57.757 52.017Q-57.532 51.900-57.398 51.697Q-57.263 51.494-57.263 51.240L-57.263 50.408Q-57.528 50.408-57.814 50.462Q-58.099 50.517-58.370 50.646Q-58.642 50.775-58.808 50.982Q-58.974 51.189-58.974 51.478M-53.505 52.310L-55.486 52.310L-55.486 52.013Q-55.216 52.013-55.048 51.968Q-54.880 51.923-54.880 51.751L-54.880 49.615Q-54.880 49.400-54.943 49.304Q-55.005 49.208-55.122 49.187Q-55.239 49.165-55.486 49.165L-55.486 48.869L-54.318 48.783L-54.318 49.568Q-54.239 49.357-54.087 49.171Q-53.935 48.986-53.736 48.884Q-53.536 48.783-53.310 48.783Q-53.064 48.783-52.872 48.927Q-52.681 49.072-52.681 49.302Q-52.681 49.458-52.786 49.568Q-52.892 49.677-53.048 49.677Q-53.204 49.677-53.314 49.568Q-53.423 49.458-53.423 49.302Q-53.423 49.142-53.318 49.037Q-53.642 49.037-53.857 49.265Q-54.071 49.494-54.167 49.833Q-54.263 50.173-54.263 50.478L-54.263 51.751Q-54.263 51.919-54.036 51.966Q-53.810 52.013-53.505 52.013L-53.505 52.310M-52.103 51.478Q-52.103 50.994-51.700 50.699Q-51.298 50.404-50.747 50.285Q-50.196 50.165-49.704 50.165L-49.704 49.876Q-49.704 49.650-49.820 49.443Q-49.935 49.236-50.132 49.117Q-50.329 48.998-50.560 48.998Q-50.986 48.998-51.271 49.103Q-51.200 49.130-51.153 49.185Q-51.107 49.240-51.081 49.310Q-51.056 49.380-51.056 49.455Q-51.056 49.560-51.107 49.652Q-51.157 49.744-51.249 49.794Q-51.341 49.845-51.446 49.845Q-51.552 49.845-51.644 49.794Q-51.736 49.744-51.786 49.652Q-51.837 49.560-51.837 49.455Q-51.837 49.037-51.448 48.890Q-51.060 48.744-50.560 48.744Q-50.228 48.744-49.874 48.874Q-49.521 49.005-49.292 49.259Q-49.064 49.513-49.064 49.861L-49.064 51.662Q-49.064 51.794-48.991 51.904Q-48.919 52.013-48.790 52.013Q-48.665 52.013-48.597 51.908Q-48.528 51.802-48.528 51.662L-48.528 51.150L-48.247 51.150L-48.247 51.662Q-48.247 51.865-48.364 52.023Q-48.482 52.181-48.663 52.265Q-48.845 52.349-49.048 52.349Q-49.278 52.349-49.431 52.177Q-49.583 52.005-49.614 51.775Q-49.775 52.056-50.083 52.222Q-50.392 52.388-50.743 52.388Q-51.255 52.388-51.679 52.165Q-52.103 51.943-52.103 51.478M-51.415 51.478Q-51.415 51.763-51.189 51.949Q-50.962 52.134-50.669 52.134Q-50.423 52.134-50.198 52.017Q-49.974 51.900-49.839 51.697Q-49.704 51.494-49.704 51.240L-49.704 50.408Q-49.970 50.408-50.255 50.462Q-50.540 50.517-50.812 50.646Q-51.083 50.775-51.249 50.982Q-51.415 51.189-51.415 51.478M-46.040 52.310L-47.872 52.310L-47.872 52.013Q-47.599 52.013-47.431 51.966Q-47.263 51.919-47.263 51.751L-47.263 47.591Q-47.263 47.376-47.325 47.281Q-47.388 47.185-47.507 47.164Q-47.626 47.142-47.872 47.142L-47.872 46.845L-46.650 46.759L-46.650 51.751Q-46.650 51.919-46.482 51.966Q-46.314 52.013-46.040 52.013L-46.040 52.310M-43.681 52.310L-45.513 52.310L-45.513 52.013Q-45.239 52.013-45.071 51.966Q-44.903 51.919-44.903 51.751L-44.903 47.591Q-44.903 47.376-44.966 47.281Q-45.028 47.185-45.148 47.164Q-45.267 47.142-45.513 47.142L-45.513 46.845L-44.290 46.759L-44.290 51.751Q-44.290 51.919-44.122 51.966Q-43.954 52.013-43.681 52.013L-43.681 52.310M-43.236 50.556Q-43.236 50.076-43.003 49.660Q-42.771 49.244-42.361 48.994Q-41.950 48.744-41.474 48.744Q-40.743 48.744-40.345 49.185Q-39.946 49.626-39.946 50.357Q-39.946 50.462-40.040 50.486L-42.489 50.486L-42.489 50.556Q-42.489 50.966-42.368 51.322Q-42.247 51.677-41.976 51.894Q-41.704 52.111-41.275 52.111Q-40.911 52.111-40.614 51.882Q-40.318 51.654-40.216 51.302Q-40.208 51.255-40.122 51.240L-40.040 51.240Q-39.946 51.267-39.946 51.349Q-39.946 51.357-39.954 51.388Q-40.017 51.615-40.155 51.798Q-40.294 51.982-40.486 52.115Q-40.677 52.248-40.896 52.318Q-41.114 52.388-41.353 52.388Q-41.724 52.388-42.062 52.251Q-42.400 52.115-42.667 51.863Q-42.935 51.611-43.085 51.271Q-43.236 50.931-43.236 50.556M-42.482 50.248L-40.521 50.248Q-40.521 49.943-40.622 49.652Q-40.724 49.361-40.941 49.179Q-41.157 48.998-41.474 48.998Q-41.775 48.998-42.005 49.185Q-42.236 49.373-42.359 49.664Q-42.482 49.955-42.482 50.248M-37.544 52.310L-39.376 52.310L-39.376 52.013Q-39.103 52.013-38.935 51.966Q-38.767 51.919-38.767 51.751L-38.767 47.591Q-38.767 47.376-38.829 47.281Q-38.892 47.185-39.011 47.164Q-39.130 47.142-39.376 47.142L-39.376 46.845L-38.153 46.759L-38.153 51.751Q-38.153 51.919-37.986 51.966Q-37.818 52.013-37.544 52.013\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(2.446 -115.692)\">\u003Cpath d=\"M-33.928 50.583Q-33.928 50.103-33.684 49.689Q-33.440 49.275-33.024 49.037Q-32.608 48.798-32.128 48.798Q-31.573 48.798-31.194 48.908Q-30.815 49.017-30.815 49.423Q-30.815 49.591-30.928 49.714Q-31.042 49.837-31.214 49.837Q-31.385 49.837-31.505 49.722Q-31.624 49.607-31.624 49.439L-31.624 49.380Q-31.784 49.357-32.120 49.357Q-32.448 49.357-32.716 49.527Q-32.983 49.697-33.135 49.980Q-33.288 50.263-33.288 50.583Q-33.288 50.904-33.116 51.185Q-32.944 51.466-32.659 51.628Q-32.374 51.790-32.046 51.790Q-31.733 51.790-31.606 51.687Q-31.479 51.583-31.362 51.394Q-31.245 51.205-31.128 51.189L-30.960 51.189Q-30.854 51.201-30.790 51.269Q-30.725 51.337-30.725 51.439Q-30.725 51.486-30.745 51.525Q-30.854 51.818-31.057 51.998Q-31.260 52.177-31.536 52.263Q-31.811 52.349-32.128 52.349Q-32.612 52.349-33.028 52.111Q-33.444 51.873-33.686 51.470Q-33.928 51.068-33.928 50.583M-29.835 51.197Q-29.835 50.751-29.421 50.494Q-29.007 50.236-28.466 50.136Q-27.925 50.037-27.417 50.029Q-27.417 49.814-27.551 49.662Q-27.686 49.509-27.893 49.433Q-28.100 49.357-28.311 49.357Q-28.655 49.357-28.815 49.380L-28.815 49.439Q-28.815 49.607-28.934 49.722Q-29.053 49.837-29.217 49.837Q-29.393 49.837-29.508 49.714Q-29.624 49.591-29.624 49.423Q-29.624 49.017-29.243 48.908Q-28.862 48.798-28.303 48.798Q-28.034 48.798-27.766 48.876Q-27.499 48.955-27.274 49.105Q-27.050 49.255-26.913 49.476Q-26.776 49.697-26.776 49.974L-26.776 51.693Q-26.776 51.751-26.249 51.751Q-26.053 51.771-26.003 51.982L-26.003 52.072Q-26.053 52.287-26.249 52.310L-26.393 52.310Q-26.737 52.310-26.966 52.263Q-27.194 52.216-27.339 52.029Q-27.800 52.349-28.507 52.349Q-28.842 52.349-29.147 52.208Q-29.452 52.068-29.643 51.806Q-29.835 51.544-29.835 51.197M-29.194 51.205Q-29.194 51.478-28.952 51.634Q-28.710 51.790-28.425 51.790Q-28.206 51.790-27.973 51.732Q-27.741 51.673-27.579 51.535Q-27.417 51.396-27.417 51.173L-27.417 50.583Q-27.698 50.583-28.114 50.640Q-28.530 50.697-28.862 50.835Q-29.194 50.974-29.194 51.205M-25.546 52.072L-25.546 51.982Q-25.495 51.775-25.300 51.751L-24.194 51.751L-24.194 47.982L-25.300 47.982Q-25.495 47.958-25.546 47.744L-25.546 47.654Q-25.495 47.447-25.300 47.423L-23.803 47.423Q-23.612 47.447-23.553 47.654L-23.553 51.751L-22.452 51.751Q-22.253 51.775-22.202 51.982L-22.202 52.072Q-22.253 52.287-22.452 52.310L-25.300 52.310Q-25.495 52.287-25.546 52.072M-21.132 52.072L-21.132 51.982Q-21.081 51.775-20.885 51.751L-19.846 51.751L-19.846 49.423L-20.819 49.423Q-21.018 49.400-21.069 49.181L-21.069 49.095Q-21.018 48.884-20.819 48.861L-19.452 48.861Q-19.257 48.880-19.206 49.095L-19.206 51.751L-18.292 51.751Q-18.096 51.775-18.046 51.982L-18.046 52.072Q-18.096 52.287-18.292 52.310L-20.885 52.310Q-21.081 52.287-21.132 52.072M-20.100 47.884L-20.100 47.830Q-20.100 47.658-19.964 47.537Q-19.827 47.415-19.651 47.415Q-19.479 47.415-19.342 47.537Q-19.206 47.658-19.206 47.830L-19.206 47.884Q-19.206 48.060-19.342 48.181Q-19.479 48.302-19.651 48.302Q-19.827 48.302-19.964 48.181Q-20.100 48.060-20.100 47.884M-17.432 53.853L-17.432 53.767Q-17.389 53.548-17.182 53.525L-16.760 53.525L-16.760 49.423L-17.182 49.423Q-17.389 49.400-17.432 49.181L-17.432 49.095Q-17.385 48.884-17.182 48.861L-16.366 48.861Q-16.171 48.880-16.120 49.095L-16.120 49.165Q-15.909 48.998-15.645 48.910Q-15.382 48.822-15.112 48.822Q-14.772 48.822-14.475 48.966Q-14.178 49.111-13.964 49.363Q-13.749 49.615-13.633 49.927Q-13.518 50.240-13.518 50.583Q-13.518 51.048-13.745 51.458Q-13.971 51.869-14.358 52.109Q-14.745 52.349-15.214 52.349Q-15.733 52.349-16.120 51.982L-16.120 53.525L-15.694 53.525Q-15.487 53.548-15.448 53.767L-15.448 53.853Q-15.487 54.064-15.694 54.087L-17.182 54.087Q-17.385 54.064-17.432 53.853M-15.257 51.790Q-14.948 51.790-14.698 51.621Q-14.448 51.451-14.303 51.169Q-14.159 50.888-14.159 50.583Q-14.159 50.294-14.284 50.015Q-14.409 49.736-14.641 49.558Q-14.874 49.380-15.175 49.380Q-15.495 49.380-15.757 49.566Q-16.018 49.751-16.120 50.052L-16.120 50.904Q-16.030 51.271-15.809 51.531Q-15.589 51.790-15.257 51.790M-9.745 50.822L-12.186 50.822Q-12.132 51.099-11.934 51.322Q-11.737 51.544-11.460 51.667Q-11.182 51.790-10.897 51.790Q-10.425 51.790-10.202 51.501Q-10.194 51.490-10.137 51.384Q-10.081 51.279-10.032 51.236Q-9.983 51.193-9.889 51.181L-9.745 51.181Q-9.553 51.201-9.495 51.415L-9.495 51.470Q-9.561 51.771-9.792 51.968Q-10.022 52.165-10.335 52.257Q-10.647 52.349-10.952 52.349Q-11.436 52.349-11.876 52.121Q-12.315 51.892-12.583 51.492Q-12.850 51.091-12.850 50.599L-12.850 50.540Q-12.850 50.072-12.604 49.669Q-12.358 49.267-11.950 49.033Q-11.542 48.798-11.073 48.798Q-10.569 48.798-10.216 49.021Q-9.862 49.244-9.678 49.632Q-9.495 50.021-9.495 50.525L-9.495 50.583Q-9.553 50.798-9.745 50.822M-12.178 50.271L-10.151 50.271Q-10.198 49.861-10.436 49.609Q-10.675 49.357-11.073 49.357Q-11.467 49.357-11.774 49.619Q-12.081 49.880-12.178 50.271M-8.788 52.072L-8.788 51.982Q-8.729 51.775-8.538 51.751L-7.827 51.751L-7.827 49.423L-8.538 49.423Q-8.733 49.400-8.788 49.181L-8.788 49.095Q-8.729 48.884-8.538 48.861L-7.436 48.861Q-7.237 48.880-7.186 49.095L-7.186 49.423Q-6.925 49.138-6.569 48.980Q-6.214 48.822-5.827 48.822Q-5.534 48.822-5.300 48.956Q-5.065 49.091-5.065 49.357Q-5.065 49.525-5.175 49.642Q-5.284 49.759-5.452 49.759Q-5.604 49.759-5.719 49.648Q-5.835 49.537-5.835 49.380Q-6.210 49.380-6.524 49.581Q-6.839 49.783-7.012 50.117Q-7.186 50.451-7.186 50.830L-7.186 51.751L-6.241 51.751Q-6.034 51.775-5.995 51.982L-5.995 52.072Q-6.034 52.287-6.241 52.310L-8.538 52.310Q-8.729 52.287-8.788 52.072\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Two parallel calipers rotate around the hull; antipodal contact pairs include the diameter (widest) and width (narrowest gap)\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:357.296px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 267.972 121.354\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m-63.904 9.592 48.37 12.092 31.44-38.695-26.603-38.695-48.37 14.51Z\" style=\"stroke-width:.8\"\u002F>\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M-62.544000000000004 9.592a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M-14.175 21.684a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M17.265-17.01a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M-9.337-55.706a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M-57.706-41.195a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0m-1.36 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m90.88 9.592 48.37 12.092 31.44-38.695-26.603-38.695-48.37 14.51Z\" style=\"stroke-width:.8\"\u002F>\u003Cpath fill=\"var(--tk-soft-accent)\" stroke=\"none\" d=\"M92.24 9.592a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M140.61 21.684a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M172.05-17.01a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M145.447-55.706a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0M97.078-41.195a1.36 1.36 0 1 0-2.72 0 1.36 1.36 0 0 0 2.72 0m-1.36 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m-63.903 9.592 48.37 12.092\" style=\"stroke-width:1.2\"\u002F>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M-62.202999999999996 9.592a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M-13.833 21.684a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0m-1.7 0\"\u002F>\u003Cpath fill=\"var(--tk-good)\" stroke=\"none\" d=\"M-8.826-55.708a1.87 1.87 0 1 0-3.74 0 1.87 1.87 0 0 0 3.74 0m-1.87 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m-39.718 15.638 29.022-71.346\" style=\"stroke-dasharray:3.0,3.0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(22.731 14.092)\">\u003Cpath d=\"M-73.339 22.349Q-73.339 21.869-73.106 21.453Q-72.874 21.037-72.464 20.787Q-72.054 20.537-71.577 20.537Q-70.847 20.537-70.448 20.978Q-70.050 21.419-70.050 22.150Q-70.050 22.255-70.143 22.279L-72.593 22.279L-72.593 22.349Q-72.593 22.759-72.472 23.115Q-72.350 23.470-72.079 23.687Q-71.807 23.904-71.378 23.904Q-71.014 23.904-70.718 23.675Q-70.421 23.447-70.319 23.095Q-70.311 23.048-70.225 23.033L-70.143 23.033Q-70.050 23.060-70.050 23.142Q-70.050 23.150-70.057 23.181Q-70.120 23.408-70.259 23.591Q-70.397 23.775-70.589 23.908Q-70.780 24.041-70.999 24.111Q-71.218 24.181-71.456 24.181Q-71.827 24.181-72.165 24.044Q-72.503 23.908-72.770 23.656Q-73.038 23.404-73.188 23.064Q-73.339 22.724-73.339 22.349M-72.585 22.041L-70.624 22.041Q-70.624 21.736-70.725 21.445Q-70.827 21.154-71.044 20.972Q-71.261 20.791-71.577 20.791Q-71.878 20.791-72.108 20.978Q-72.339 21.166-72.462 21.457Q-72.585 21.748-72.585 22.041M-67.745 24.181Q-68.225 24.181-68.634 23.937Q-69.042 23.693-69.280 23.279Q-69.518 22.865-69.518 22.376Q-69.518 21.884-69.261 21.468Q-69.003 21.052-68.571 20.814Q-68.139 20.576-67.647 20.576Q-67.026 20.576-66.577 21.013L-66.577 19.384Q-66.577 19.169-66.639 19.074Q-66.702 18.978-66.819 18.957Q-66.936 18.935-67.182 18.935L-67.182 18.638L-65.960 18.552L-65.960 23.361Q-65.960 23.572-65.897 23.667Q-65.835 23.763-65.718 23.785Q-65.600 23.806-65.350 23.806L-65.350 24.103L-66.600 24.181L-66.600 23.697Q-67.065 24.181-67.745 24.181M-67.679 23.927Q-67.339 23.927-67.046 23.736Q-66.753 23.544-66.600 23.248L-66.600 21.416Q-66.749 21.142-67.011 20.986Q-67.272 20.830-67.585 20.830Q-68.210 20.830-68.493 21.277Q-68.776 21.724-68.776 22.384Q-68.776 23.029-68.524 23.478Q-68.272 23.927-67.679 23.927M-64.843 24.712Q-64.843 24.431-64.632 24.220Q-64.421 24.009-64.136 23.919Q-64.292 23.794-64.370 23.605Q-64.448 23.416-64.448 23.216Q-64.448 22.861-64.218 22.568Q-64.585 22.228-64.585 21.759Q-64.585 21.408-64.382 21.138Q-64.179 20.869-63.858 20.722Q-63.538 20.576-63.194 20.576Q-62.675 20.576-62.304 20.857Q-61.940 20.486-61.393 20.486Q-61.214 20.486-61.087 20.613Q-60.960 20.740-60.960 20.919Q-60.960 21.025-61.038 21.103Q-61.116 21.181-61.225 21.181Q-61.335 21.181-61.411 21.105Q-61.487 21.029-61.487 20.919Q-61.487 20.818-61.448 20.767Q-61.440 20.759-61.436 20.753Q-61.432 20.748-61.432 20.744Q-61.807 20.744-62.128 20.998Q-61.807 21.337-61.807 21.759Q-61.807 22.029-61.925 22.246Q-62.042 22.462-62.247 22.621Q-62.452 22.779-62.694 22.861Q-62.936 22.943-63.194 22.943Q-63.413 22.943-63.626 22.884Q-63.839 22.826-64.034 22.705Q-64.128 22.845-64.128 23.025Q-64.128 23.232-63.991 23.384Q-63.854 23.537-63.647 23.537L-62.952 23.537Q-62.464 23.537-62.052 23.621Q-61.639 23.705-61.360 23.962Q-61.081 24.220-61.081 24.712Q-61.081 25.076-61.401 25.308Q-61.722 25.541-62.163 25.642Q-62.604 25.744-62.960 25.744Q-63.315 25.744-63.759 25.642Q-64.202 25.541-64.522 25.308Q-64.843 25.076-64.843 24.712M-64.339 24.712Q-64.339 24.908-64.194 25.056Q-64.050 25.205-63.837 25.294Q-63.624 25.384-63.384 25.431Q-63.143 25.478-62.960 25.478Q-62.718 25.478-62.388 25.400Q-62.057 25.322-61.821 25.148Q-61.585 24.974-61.585 24.712Q-61.585 24.306-61.995 24.197Q-62.405 24.087-62.968 24.087L-63.647 24.087Q-63.917 24.087-64.128 24.265Q-64.339 24.443-64.339 24.712M-63.194 22.677Q-62.472 22.677-62.472 21.759Q-62.472 20.837-63.194 20.837Q-63.921 20.837-63.921 21.759Q-63.921 22.677-63.194 22.677M-60.597 22.349Q-60.597 21.869-60.364 21.453Q-60.132 21.037-59.722 20.787Q-59.311 20.537-58.835 20.537Q-58.104 20.537-57.706 20.978Q-57.307 21.419-57.307 22.150Q-57.307 22.255-57.401 22.279L-59.850 22.279L-59.850 22.349Q-59.850 22.759-59.729 23.115Q-59.608 23.470-59.337 23.687Q-59.065 23.904-58.636 23.904Q-58.272 23.904-57.975 23.675Q-57.679 23.447-57.577 23.095Q-57.569 23.048-57.483 23.033L-57.401 23.033Q-57.307 23.060-57.307 23.142Q-57.307 23.150-57.315 23.181Q-57.378 23.408-57.516 23.591Q-57.655 23.775-57.847 23.908Q-58.038 24.041-58.257 24.111Q-58.475 24.181-58.714 24.181Q-59.085 24.181-59.423 24.044Q-59.761 23.908-60.028 23.656Q-60.296 23.404-60.446 23.064Q-60.597 22.724-60.597 22.349M-59.843 22.041L-57.882 22.041Q-57.882 21.736-57.983 21.445Q-58.085 21.154-58.302 20.972Q-58.518 20.791-58.835 20.791Q-59.136 20.791-59.366 20.978Q-59.597 21.166-59.720 21.457Q-59.843 21.748-59.843 22.041\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(22.731 14.092)\">\u003Cpath d=\"M-53.529 23.501Q-53.529 23.369-53.474 23.216L-52.802 21.486Q-52.712 21.263-52.712 21.080Q-52.712 20.830-52.888 20.830Q-53.193 20.830-53.404 21.138Q-53.614 21.447-53.720 21.830Q-53.732 21.904-53.802 21.904L-53.904 21.904Q-53.939 21.904-53.966 21.869Q-53.993 21.833-53.993 21.806L-53.993 21.775Q-53.872 21.310-53.577 20.943Q-53.282 20.576-52.872 20.576Q-52.665 20.576-52.495 20.658Q-52.325 20.740-52.222 20.894Q-52.118 21.048-52.118 21.255Q-52.118 21.376-52.177 21.544L-52.849 23.271Q-52.935 23.505-52.935 23.677Q-52.935 23.927-52.759 23.927Q-52.446 23.927-52.232 23.609Q-52.017 23.291-51.935 22.927Q-51.907 22.857-51.849 22.857L-51.743 22.857Q-51.704 22.857-51.681 22.886Q-51.657 22.916-51.657 22.951Q-51.657 22.966-51.665 22.982Q-51.743 23.283-51.890 23.550Q-52.036 23.818-52.261 23.999Q-52.486 24.181-52.775 24.181Q-53.091 24.181-53.310 23.994Q-53.529 23.806-53.529 23.501M-52.607 19.263Q-52.607 19.083-52.460 18.945Q-52.314 18.806-52.138 18.806Q-52.001 18.806-51.909 18.894Q-51.818 18.982-51.818 19.119Q-51.818 19.294-51.962 19.435Q-52.107 19.576-52.279 19.576Q-52.411 19.576-52.509 19.484Q-52.607 19.392-52.607 19.263\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\">\u003Cg fill=\"var(--tk-good)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(45.203 -87.484)\">\u003Cpath d=\"M-71.272 24.103L-73.257 24.103L-73.257 23.806Q-72.983 23.806-72.815 23.759Q-72.647 23.712-72.647 23.544L-72.647 20.951L-73.288 20.951L-73.288 20.654L-72.647 20.654L-72.647 19.720Q-72.647 19.455-72.530 19.218Q-72.413 18.982-72.220 18.818Q-72.026 18.654-71.778 18.562Q-71.530 18.470-71.264 18.470Q-70.979 18.470-70.755 18.628Q-70.530 18.787-70.530 19.064Q-70.530 19.220-70.636 19.330Q-70.741 19.439-70.905 19.439Q-71.061 19.439-71.171 19.330Q-71.280 19.220-71.280 19.064Q-71.280 18.857-71.120 18.751Q-71.218 18.728-71.311 18.728Q-71.542 18.728-71.714 18.884Q-71.886 19.041-71.972 19.277Q-72.057 19.513-72.057 19.736L-72.057 20.654L-71.089 20.654L-71.089 20.951L-72.034 20.951L-72.034 23.544Q-72.034 23.712-71.807 23.759Q-71.581 23.806-71.272 23.806L-71.272 24.103M-70.647 23.271Q-70.647 22.787-70.245 22.492Q-69.843 22.197-69.292 22.078Q-68.741 21.958-68.249 21.958L-68.249 21.669Q-68.249 21.443-68.364 21.236Q-68.479 21.029-68.677 20.910Q-68.874 20.791-69.104 20.791Q-69.530 20.791-69.815 20.896Q-69.745 20.923-69.698 20.978Q-69.651 21.033-69.626 21.103Q-69.600 21.173-69.600 21.248Q-69.600 21.353-69.651 21.445Q-69.702 21.537-69.794 21.587Q-69.886 21.638-69.991 21.638Q-70.097 21.638-70.188 21.587Q-70.280 21.537-70.331 21.445Q-70.382 21.353-70.382 21.248Q-70.382 20.830-69.993 20.683Q-69.604 20.537-69.104 20.537Q-68.772 20.537-68.419 20.667Q-68.065 20.798-67.837 21.052Q-67.608 21.306-67.608 21.654L-67.608 23.455Q-67.608 23.587-67.536 23.697Q-67.464 23.806-67.335 23.806Q-67.210 23.806-67.141 23.701Q-67.073 23.595-67.073 23.455L-67.073 22.943L-66.792 22.943L-66.792 23.455Q-66.792 23.658-66.909 23.816Q-67.026 23.974-67.208 24.058Q-67.389 24.142-67.593 24.142Q-67.823 24.142-67.975 23.970Q-68.128 23.798-68.159 23.568Q-68.319 23.849-68.628 24.015Q-68.936 24.181-69.288 24.181Q-69.800 24.181-70.223 23.958Q-70.647 23.736-70.647 23.271M-69.960 23.271Q-69.960 23.556-69.733 23.742Q-69.507 23.927-69.214 23.927Q-68.968 23.927-68.743 23.810Q-68.518 23.693-68.384 23.490Q-68.249 23.287-68.249 23.033L-68.249 22.201Q-68.514 22.201-68.800 22.255Q-69.085 22.310-69.356 22.439Q-69.628 22.568-69.794 22.775Q-69.960 22.982-69.960 23.271M-64.491 24.103L-66.472 24.103L-66.472 23.806Q-66.202 23.806-66.034 23.761Q-65.866 23.716-65.866 23.544L-65.866 21.408Q-65.866 21.193-65.929 21.097Q-65.991 21.001-66.108 20.980Q-66.225 20.958-66.472 20.958L-66.472 20.662L-65.304 20.576L-65.304 21.361Q-65.225 21.150-65.073 20.964Q-64.921 20.779-64.722 20.677Q-64.522 20.576-64.296 20.576Q-64.050 20.576-63.858 20.720Q-63.667 20.865-63.667 21.095Q-63.667 21.251-63.772 21.361Q-63.878 21.470-64.034 21.470Q-64.190 21.470-64.300 21.361Q-64.409 21.251-64.409 21.095Q-64.409 20.935-64.304 20.830Q-64.628 20.830-64.843 21.058Q-65.057 21.287-65.153 21.626Q-65.249 21.966-65.249 22.271L-65.249 23.544Q-65.249 23.712-65.022 23.759Q-64.796 23.806-64.491 23.806L-64.491 24.103M-62.561 23.142L-62.561 20.951L-63.264 20.951L-63.264 20.697Q-62.909 20.697-62.667 20.464Q-62.425 20.232-62.313 19.884Q-62.202 19.537-62.202 19.181L-61.921 19.181L-61.921 20.654L-60.745 20.654L-60.745 20.951L-61.921 20.951L-61.921 23.126Q-61.921 23.447-61.802 23.675Q-61.682 23.904-61.401 23.904Q-61.222 23.904-61.104 23.781Q-60.987 23.658-60.934 23.478Q-60.882 23.298-60.882 23.126L-60.882 22.654L-60.600 22.654L-60.600 23.142Q-60.600 23.396-60.706 23.636Q-60.811 23.876-61.009 24.029Q-61.206 24.181-61.464 24.181Q-61.780 24.181-62.032 24.058Q-62.284 23.935-62.423 23.701Q-62.561 23.466-62.561 23.142M-57.952 24.103L-59.807 24.103L-59.807 23.806Q-59.534 23.806-59.366 23.759Q-59.198 23.712-59.198 23.544L-59.198 19.384Q-59.198 19.169-59.261 19.074Q-59.323 18.978-59.442 18.957Q-59.561 18.935-59.807 18.935L-59.807 18.638L-58.585 18.552L-58.585 21.255Q-58.460 21.044-58.272 20.894Q-58.085 20.744-57.858 20.660Q-57.632 20.576-57.386 20.576Q-56.218 20.576-56.218 21.654L-56.218 23.544Q-56.218 23.712-56.048 23.759Q-55.878 23.806-55.608 23.806L-55.608 24.103L-57.464 24.103L-57.464 23.806Q-57.190 23.806-57.022 23.759Q-56.854 23.712-56.854 23.544L-56.854 21.669Q-56.854 21.287-56.975 21.058Q-57.097 20.830-57.448 20.830Q-57.761 20.830-58.014 20.992Q-58.268 21.154-58.415 21.423Q-58.561 21.693-58.561 21.990L-58.561 23.544Q-58.561 23.712-58.391 23.759Q-58.222 23.806-57.952 23.806L-57.952 24.103M-55.163 22.349Q-55.163 21.869-54.931 21.453Q-54.698 21.037-54.288 20.787Q-53.878 20.537-53.401 20.537Q-52.671 20.537-52.272 20.978Q-51.874 21.419-51.874 22.150Q-51.874 22.255-51.968 22.279L-54.417 22.279L-54.417 22.349Q-54.417 22.759-54.296 23.115Q-54.175 23.470-53.903 23.687Q-53.632 23.904-53.202 23.904Q-52.839 23.904-52.542 23.675Q-52.245 23.447-52.143 23.095Q-52.136 23.048-52.050 23.033L-51.968 23.033Q-51.874 23.060-51.874 23.142Q-51.874 23.150-51.882 23.181Q-51.944 23.408-52.083 23.591Q-52.222 23.775-52.413 23.908Q-52.604 24.041-52.823 24.111Q-53.042 24.181-53.280 24.181Q-53.651 24.181-53.989 24.044Q-54.327 23.908-54.595 23.656Q-54.862 23.404-55.013 23.064Q-55.163 22.724-55.163 22.349M-54.409 22.041L-52.448 22.041Q-52.448 21.736-52.550 21.445Q-52.651 21.154-52.868 20.972Q-53.085 20.791-53.401 20.791Q-53.702 20.791-53.932 20.978Q-54.163 21.166-54.286 21.457Q-54.409 21.748-54.409 22.041M-51.343 24.095L-51.343 22.873Q-51.343 22.845-51.311 22.814Q-51.280 22.783-51.257 22.783L-51.151 22.783Q-51.081 22.783-51.065 22.845Q-51.003 23.166-50.864 23.406Q-50.725 23.646-50.493 23.787Q-50.261 23.927-49.952 23.927Q-49.714 23.927-49.505 23.867Q-49.296 23.806-49.159 23.658Q-49.022 23.509-49.022 23.263Q-49.022 23.009-49.233 22.843Q-49.444 22.677-49.714 22.623L-50.335 22.509Q-50.741 22.431-51.042 22.175Q-51.343 21.919-51.343 21.544Q-51.343 21.177-51.141 20.955Q-50.940 20.732-50.616 20.634Q-50.292 20.537-49.952 20.537Q-49.487 20.537-49.190 20.744L-48.968 20.560Q-48.944 20.537-48.913 20.537L-48.862 20.537Q-48.831 20.537-48.804 20.564Q-48.776 20.591-48.776 20.623L-48.776 21.607Q-48.776 21.638-48.802 21.667Q-48.827 21.697-48.862 21.697L-48.968 21.697Q-49.003 21.697-49.030 21.669Q-49.057 21.642-49.057 21.607Q-49.057 21.208-49.309 20.988Q-49.561 20.767-49.960 20.767Q-50.315 20.767-50.598 20.890Q-50.882 21.013-50.882 21.318Q-50.882 21.537-50.681 21.669Q-50.479 21.802-50.233 21.845L-49.608 21.958Q-49.179 22.048-48.870 22.345Q-48.561 22.642-48.561 23.056Q-48.561 23.626-48.960 23.904Q-49.358 24.181-49.952 24.181Q-50.503 24.181-50.854 23.845L-51.151 24.158Q-51.175 24.181-51.210 24.181L-51.257 24.181Q-51.280 24.181-51.311 24.150Q-51.343 24.119-51.343 24.095M-47.409 23.142L-47.409 20.951L-48.112 20.951L-48.112 20.697Q-47.757 20.697-47.514 20.464Q-47.272 20.232-47.161 19.884Q-47.050 19.537-47.050 19.181L-46.768 19.181L-46.768 20.654L-45.593 20.654L-45.593 20.951L-46.768 20.951L-46.768 23.126Q-46.768 23.447-46.649 23.675Q-46.530 23.904-46.249 23.904Q-46.069 23.904-45.952 23.781Q-45.835 23.658-45.782 23.478Q-45.729 23.298-45.729 23.126L-45.729 22.654L-45.448 22.654L-45.448 23.142Q-45.448 23.396-45.554 23.636Q-45.659 23.876-45.856 24.029Q-46.054 24.181-46.311 24.181Q-46.628 24.181-46.880 24.058Q-47.132 23.935-47.270 23.701Q-47.409 23.466-47.409 23.142\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(45.203 -87.484)\">\u003Cpath d=\"M-42.233 25.224Q-42.233 25.029-42.097 24.882Q-41.960 24.736-41.768 24.736Q-41.632 24.736-41.536 24.822Q-41.440 24.908-41.440 25.041Q-41.440 25.162-41.515 25.281Q-41.589 25.400-41.694 25.455Q-41.589 25.478-41.472 25.478Q-41.241 25.478-41.038 25.330Q-40.835 25.181-40.698 24.955Q-40.561 24.728-40.503 24.494L-39.753 21.486Q-39.714 21.330-39.714 21.193Q-39.714 21.044-39.766 20.937Q-39.819 20.830-39.952 20.830Q-40.190 20.830-40.401 20.984Q-40.612 21.138-40.766 21.371Q-40.921 21.603-41.022 21.857Q-41.038 21.904-41.097 21.904L-41.198 21.904Q-41.233 21.904-41.261 21.869Q-41.288 21.833-41.288 21.806L-41.288 21.775Q-41.171 21.482-40.972 21.203Q-40.772 20.923-40.509 20.749Q-40.245 20.576-39.936 20.576Q-39.714 20.576-39.520 20.667Q-39.327 20.759-39.212 20.931Q-39.097 21.103-39.097 21.326Q-39.097 21.396-39.128 21.544L-39.882 24.552Q-39.940 24.806-40.102 25.025Q-40.265 25.244-40.481 25.402Q-40.698 25.560-40.966 25.648Q-41.233 25.736-41.487 25.736Q-41.776 25.736-42.005 25.611Q-42.233 25.486-42.233 25.224M-39.593 19.263Q-39.593 19.083-39.448 18.945Q-39.304 18.806-39.120 18.806Q-38.991 18.806-38.895 18.894Q-38.800 18.982-38.800 19.119Q-38.800 19.294-38.944 19.435Q-39.089 19.576-39.265 19.576Q-39.397 19.576-39.495 19.484Q-39.593 19.392-39.593 19.263\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m139.25 21.684 31.441-38.695\" style=\"stroke-width:1.2\"\u002F>\u003Cpath fill=\"var(--tk-accent)\" stroke=\"none\" d=\"M140.95 21.684a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0M172.391-17.011a1.7 1.7 0 1 0-3.4 0 1.7 1.7 0 0 0 3.4 0m-1.7 0\"\u002F>\u003Cpath fill=\"var(--tk-good)\" stroke=\"none\" d=\"M145.958-55.708a1.87 1.87 0 1 0-3.74 0 1.87 1.87 0 0 0 3.74 0m-1.87 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"m154.971 2.337-10.883-58.045\" style=\"stroke-dasharray:3.0,3.0\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(214.08 14.092)\">\u003Cpath d=\"M-73.339 22.349Q-73.339 21.869-73.106 21.453Q-72.874 21.037-72.464 20.787Q-72.054 20.537-71.577 20.537Q-70.847 20.537-70.448 20.978Q-70.050 21.419-70.050 22.150Q-70.050 22.255-70.143 22.279L-72.593 22.279L-72.593 22.349Q-72.593 22.759-72.472 23.115Q-72.350 23.470-72.079 23.687Q-71.807 23.904-71.378 23.904Q-71.014 23.904-70.718 23.675Q-70.421 23.447-70.319 23.095Q-70.311 23.048-70.225 23.033L-70.143 23.033Q-70.050 23.060-70.050 23.142Q-70.050 23.150-70.057 23.181Q-70.120 23.408-70.259 23.591Q-70.397 23.775-70.589 23.908Q-70.780 24.041-70.999 24.111Q-71.218 24.181-71.456 24.181Q-71.827 24.181-72.165 24.044Q-72.503 23.908-72.770 23.656Q-73.038 23.404-73.188 23.064Q-73.339 22.724-73.339 22.349M-72.585 22.041L-70.624 22.041Q-70.624 21.736-70.725 21.445Q-70.827 21.154-71.044 20.972Q-71.261 20.791-71.577 20.791Q-71.878 20.791-72.108 20.978Q-72.339 21.166-72.462 21.457Q-72.585 21.748-72.585 22.041M-67.745 24.181Q-68.225 24.181-68.634 23.937Q-69.042 23.693-69.280 23.279Q-69.518 22.865-69.518 22.376Q-69.518 21.884-69.261 21.468Q-69.003 21.052-68.571 20.814Q-68.139 20.576-67.647 20.576Q-67.026 20.576-66.577 21.013L-66.577 19.384Q-66.577 19.169-66.639 19.074Q-66.702 18.978-66.819 18.957Q-66.936 18.935-67.182 18.935L-67.182 18.638L-65.960 18.552L-65.960 23.361Q-65.960 23.572-65.897 23.667Q-65.835 23.763-65.718 23.785Q-65.600 23.806-65.350 23.806L-65.350 24.103L-66.600 24.181L-66.600 23.697Q-67.065 24.181-67.745 24.181M-67.679 23.927Q-67.339 23.927-67.046 23.736Q-66.753 23.544-66.600 23.248L-66.600 21.416Q-66.749 21.142-67.011 20.986Q-67.272 20.830-67.585 20.830Q-68.210 20.830-68.493 21.277Q-68.776 21.724-68.776 22.384Q-68.776 23.029-68.524 23.478Q-68.272 23.927-67.679 23.927M-64.843 24.712Q-64.843 24.431-64.632 24.220Q-64.421 24.009-64.136 23.919Q-64.292 23.794-64.370 23.605Q-64.448 23.416-64.448 23.216Q-64.448 22.861-64.218 22.568Q-64.585 22.228-64.585 21.759Q-64.585 21.408-64.382 21.138Q-64.179 20.869-63.858 20.722Q-63.538 20.576-63.194 20.576Q-62.675 20.576-62.304 20.857Q-61.940 20.486-61.393 20.486Q-61.214 20.486-61.087 20.613Q-60.960 20.740-60.960 20.919Q-60.960 21.025-61.038 21.103Q-61.116 21.181-61.225 21.181Q-61.335 21.181-61.411 21.105Q-61.487 21.029-61.487 20.919Q-61.487 20.818-61.448 20.767Q-61.440 20.759-61.436 20.753Q-61.432 20.748-61.432 20.744Q-61.807 20.744-62.128 20.998Q-61.807 21.337-61.807 21.759Q-61.807 22.029-61.925 22.246Q-62.042 22.462-62.247 22.621Q-62.452 22.779-62.694 22.861Q-62.936 22.943-63.194 22.943Q-63.413 22.943-63.626 22.884Q-63.839 22.826-64.034 22.705Q-64.128 22.845-64.128 23.025Q-64.128 23.232-63.991 23.384Q-63.854 23.537-63.647 23.537L-62.952 23.537Q-62.464 23.537-62.052 23.621Q-61.639 23.705-61.360 23.962Q-61.081 24.220-61.081 24.712Q-61.081 25.076-61.401 25.308Q-61.722 25.541-62.163 25.642Q-62.604 25.744-62.960 25.744Q-63.315 25.744-63.759 25.642Q-64.202 25.541-64.522 25.308Q-64.843 25.076-64.843 24.712M-64.339 24.712Q-64.339 24.908-64.194 25.056Q-64.050 25.205-63.837 25.294Q-63.624 25.384-63.384 25.431Q-63.143 25.478-62.960 25.478Q-62.718 25.478-62.388 25.400Q-62.057 25.322-61.821 25.148Q-61.585 24.974-61.585 24.712Q-61.585 24.306-61.995 24.197Q-62.405 24.087-62.968 24.087L-63.647 24.087Q-63.917 24.087-64.128 24.265Q-64.339 24.443-64.339 24.712M-63.194 22.677Q-62.472 22.677-62.472 21.759Q-62.472 20.837-63.194 20.837Q-63.921 20.837-63.921 21.759Q-63.921 22.677-63.194 22.677M-60.597 22.349Q-60.597 21.869-60.364 21.453Q-60.132 21.037-59.722 20.787Q-59.311 20.537-58.835 20.537Q-58.104 20.537-57.706 20.978Q-57.307 21.419-57.307 22.150Q-57.307 22.255-57.401 22.279L-59.850 22.279L-59.850 22.349Q-59.850 22.759-59.729 23.115Q-59.608 23.470-59.337 23.687Q-59.065 23.904-58.636 23.904Q-58.272 23.904-57.975 23.675Q-57.679 23.447-57.577 23.095Q-57.569 23.048-57.483 23.033L-57.401 23.033Q-57.307 23.060-57.307 23.142Q-57.307 23.150-57.315 23.181Q-57.378 23.408-57.516 23.591Q-57.655 23.775-57.847 23.908Q-58.038 24.041-58.257 24.111Q-58.475 24.181-58.714 24.181Q-59.085 24.181-59.423 24.044Q-59.761 23.908-60.028 23.656Q-60.296 23.404-60.446 23.064Q-60.597 22.724-60.597 22.349M-59.843 22.041L-57.882 22.041Q-57.882 21.736-57.983 21.445Q-58.085 21.154-58.302 20.972Q-58.518 20.791-58.835 20.791Q-59.136 20.791-59.366 20.978Q-59.597 21.166-59.720 21.457Q-59.843 21.748-59.843 22.041\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(214.08 14.092)\">\u003Cpath d=\"M-53.529 23.501Q-53.529 23.369-53.474 23.216L-52.802 21.486Q-52.712 21.263-52.712 21.080Q-52.712 20.830-52.888 20.830Q-53.193 20.830-53.404 21.138Q-53.614 21.447-53.720 21.830Q-53.732 21.904-53.802 21.904L-53.904 21.904Q-53.939 21.904-53.966 21.869Q-53.993 21.833-53.993 21.806L-53.993 21.775Q-53.872 21.310-53.577 20.943Q-53.282 20.576-52.872 20.576Q-52.665 20.576-52.495 20.658Q-52.325 20.740-52.222 20.894Q-52.118 21.048-52.118 21.255Q-52.118 21.376-52.177 21.544L-52.849 23.271Q-52.935 23.505-52.935 23.677Q-52.935 23.927-52.759 23.927Q-52.446 23.927-52.232 23.609Q-52.017 23.291-51.935 22.927Q-51.907 22.857-51.849 22.857L-51.743 22.857Q-51.704 22.857-51.681 22.886Q-51.657 22.916-51.657 22.951Q-51.657 22.966-51.665 22.982Q-51.743 23.283-51.890 23.550Q-52.036 23.818-52.261 23.999Q-52.486 24.181-52.775 24.181Q-53.091 24.181-53.310 23.994Q-53.529 23.806-53.529 23.501M-52.607 19.263Q-52.607 19.083-52.460 18.945Q-52.314 18.806-52.138 18.806Q-52.001 18.806-51.909 18.894Q-51.818 18.982-51.818 19.119Q-51.818 19.294-51.962 19.435Q-52.107 19.576-52.279 19.576Q-52.411 19.576-52.509 19.484Q-52.607 19.392-52.607 19.263\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(214.08 14.092)\">\u003Cpath d=\"M-48.152 23.271Q-48.152 22.787-47.750 22.492Q-47.347 22.197-46.797 22.078Q-46.246 21.958-45.754 21.958L-45.754 21.669Q-45.754 21.443-45.869 21.236Q-45.984 21.029-46.181 20.910Q-46.379 20.791-46.609 20.791Q-47.035 20.791-47.320 20.896Q-47.250 20.923-47.203 20.978Q-47.156 21.033-47.131 21.103Q-47.105 21.173-47.105 21.248Q-47.105 21.353-47.156 21.445Q-47.207 21.537-47.299 21.587Q-47.390 21.638-47.496 21.638Q-47.601 21.638-47.693 21.587Q-47.785 21.537-47.836 21.445Q-47.886 21.353-47.886 21.248Q-47.886 20.830-47.498 20.683Q-47.109 20.537-46.609 20.537Q-46.277 20.537-45.924 20.667Q-45.570 20.798-45.342 21.052Q-45.113 21.306-45.113 21.654L-45.113 23.455Q-45.113 23.587-45.041 23.697Q-44.968 23.806-44.840 23.806Q-44.715 23.806-44.646 23.701Q-44.578 23.595-44.578 23.455L-44.578 22.943L-44.297 22.943L-44.297 23.455Q-44.297 23.658-44.414 23.816Q-44.531 23.974-44.713 24.058Q-44.894 24.142-45.097 24.142Q-45.328 24.142-45.480 23.970Q-45.633 23.798-45.664 23.568Q-45.824 23.849-46.133 24.015Q-46.441 24.181-46.793 24.181Q-47.304 24.181-47.728 23.958Q-48.152 23.736-48.152 23.271M-47.465 23.271Q-47.465 23.556-47.238 23.742Q-47.011 23.927-46.718 23.927Q-46.472 23.927-46.248 23.810Q-46.023 23.693-45.888 23.490Q-45.754 23.287-45.754 23.033L-45.754 22.201Q-46.019 22.201-46.304 22.255Q-46.590 22.310-46.861 22.439Q-47.133 22.568-47.299 22.775Q-47.465 22.982-47.465 23.271M-42.187 24.181Q-42.668 24.181-43.076 23.937Q-43.484 23.693-43.722 23.279Q-43.961 22.865-43.961 22.376Q-43.961 21.884-43.703 21.468Q-43.445 21.052-43.013 20.814Q-42.582 20.576-42.090 20.576Q-41.468 20.576-41.019 21.013L-41.019 19.384Q-41.019 19.169-41.082 19.074Q-41.144 18.978-41.261 18.957Q-41.379 18.935-41.625 18.935L-41.625 18.638L-40.402 18.552L-40.402 23.361Q-40.402 23.572-40.340 23.667Q-40.277 23.763-40.160 23.785Q-40.043 23.806-39.793 23.806L-39.793 24.103L-41.043 24.181L-41.043 23.697Q-41.508 24.181-42.187 24.181M-42.121 23.927Q-41.781 23.927-41.488 23.736Q-41.195 23.544-41.043 23.248L-41.043 21.416Q-41.191 21.142-41.453 20.986Q-41.715 20.830-42.027 20.830Q-42.652 20.830-42.935 21.277Q-43.218 21.724-43.218 22.384Q-43.218 23.029-42.967 23.478Q-42.715 23.927-42.121 23.927M-37.468 24.181Q-37.949 24.181-38.357 23.937Q-38.765 23.693-39.004 23.279Q-39.242 22.865-39.242 22.376Q-39.242 21.884-38.984 21.468Q-38.726 21.052-38.295 20.814Q-37.863 20.576-37.371 20.576Q-36.750 20.576-36.300 21.013L-36.300 19.384Q-36.300 19.169-36.363 19.074Q-36.425 18.978-36.543 18.957Q-36.660 18.935-36.906 18.935L-36.906 18.638L-35.683 18.552L-35.683 23.361Q-35.683 23.572-35.621 23.667Q-35.558 23.763-35.441 23.785Q-35.324 23.806-35.074 23.806L-35.074 24.103L-36.324 24.181L-36.324 23.697Q-36.789 24.181-37.468 24.181M-37.402 23.927Q-37.062 23.927-36.769 23.736Q-36.476 23.544-36.324 23.248L-36.324 21.416Q-36.472 21.142-36.734 20.986Q-36.996 20.830-37.308 20.830Q-37.933 20.830-38.217 21.277Q-38.500 21.724-38.500 22.384Q-38.500 23.029-38.248 23.478Q-37.996 23.927-37.402 23.927\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(214.08 14.092)\">\u003Cpath d=\"M-28.366 24.103L-31.159 24.103L-31.159 23.806Q-30.097 23.806-30.097 23.544L-30.097 19.376Q-30.526 19.591-31.206 19.591L-31.206 19.294Q-30.187 19.294-29.671 18.783L-29.526 18.783Q-29.452 18.802-29.433 18.880L-29.433 23.544Q-29.433 23.806-28.366 23.806\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\">\u003Cg fill=\"var(--tk-good)\" stroke=\"none\" font-size=\"8\">\u003Cg transform=\"translate(188.751 -87.618)\">\u003Cpath d=\"M-73.690 25.224Q-73.690 25.029-73.554 24.882Q-73.417 24.736-73.225 24.736Q-73.089 24.736-72.993 24.822Q-72.897 24.908-72.897 25.041Q-72.897 25.162-72.972 25.281Q-73.046 25.400-73.151 25.455Q-73.046 25.478-72.929 25.478Q-72.698 25.478-72.495 25.330Q-72.292 25.181-72.155 24.955Q-72.018 24.728-71.960 24.494L-71.210 21.486Q-71.171 21.330-71.171 21.193Q-71.171 21.044-71.223 20.937Q-71.276 20.830-71.409 20.830Q-71.647 20.830-71.858 20.984Q-72.069 21.138-72.223 21.371Q-72.378 21.603-72.479 21.857Q-72.495 21.904-72.554 21.904L-72.655 21.904Q-72.690 21.904-72.718 21.869Q-72.745 21.833-72.745 21.806L-72.745 21.775Q-72.628 21.482-72.429 21.203Q-72.229 20.923-71.966 20.749Q-71.702 20.576-71.393 20.576Q-71.171 20.576-70.977 20.667Q-70.784 20.759-70.669 20.931Q-70.554 21.103-70.554 21.326Q-70.554 21.396-70.585 21.544L-71.339 24.552Q-71.397 24.806-71.559 25.025Q-71.722 25.244-71.938 25.402Q-72.155 25.560-72.423 25.648Q-72.690 25.736-72.944 25.736Q-73.233 25.736-73.462 25.611Q-73.690 25.486-73.690 25.224M-71.050 19.263Q-71.050 19.083-70.905 18.945Q-70.761 18.806-70.577 18.806Q-70.448 18.806-70.352 18.894Q-70.257 18.982-70.257 19.119Q-70.257 19.294-70.401 19.435Q-70.546 19.576-70.722 19.576Q-70.854 19.576-70.952 19.484Q-71.050 19.392-71.050 19.263\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(188.751 -87.618)\">\u003Cpath d=\"M-66.564 24.095L-66.564 22.873Q-66.564 22.845-66.532 22.814Q-66.501 22.783-66.478 22.783L-66.372 22.783Q-66.302 22.783-66.286 22.845Q-66.224 23.166-66.085 23.406Q-65.947 23.646-65.714 23.787Q-65.482 23.927-65.173 23.927Q-64.935 23.927-64.726 23.867Q-64.517 23.806-64.380 23.658Q-64.243 23.509-64.243 23.263Q-64.243 23.009-64.454 22.843Q-64.665 22.677-64.935 22.623L-65.556 22.509Q-65.962 22.431-66.263 22.175Q-66.564 21.919-66.564 21.544Q-66.564 21.177-66.363 20.955Q-66.161 20.732-65.837 20.634Q-65.513 20.537-65.173 20.537Q-64.708 20.537-64.411 20.744L-64.189 20.560Q-64.165 20.537-64.134 20.537L-64.083 20.537Q-64.052 20.537-64.025 20.564Q-63.997 20.591-63.997 20.623L-63.997 21.607Q-63.997 21.638-64.023 21.667Q-64.048 21.697-64.083 21.697L-64.189 21.697Q-64.224 21.697-64.251 21.669Q-64.279 21.642-64.279 21.607Q-64.279 21.208-64.531 20.988Q-64.782 20.767-65.181 20.767Q-65.536 20.767-65.820 20.890Q-66.103 21.013-66.103 21.318Q-66.103 21.537-65.902 21.669Q-65.700 21.802-65.454 21.845L-64.829 21.958Q-64.400 22.048-64.091 22.345Q-63.782 22.642-63.782 23.056Q-63.782 23.626-64.181 23.904Q-64.579 24.181-65.173 24.181Q-65.724 24.181-66.075 23.845L-66.372 24.158Q-66.396 24.181-66.431 24.181L-66.478 24.181Q-66.501 24.181-66.532 24.150Q-66.564 24.119-66.564 24.095M-62.630 23.142L-62.630 20.951L-63.333 20.951L-63.333 20.697Q-62.978 20.697-62.736 20.464Q-62.493 20.232-62.382 19.884Q-62.271 19.537-62.271 19.181L-61.990 19.181L-61.990 20.654L-60.814 20.654L-60.814 20.951L-61.990 20.951L-61.990 23.126Q-61.990 23.447-61.870 23.675Q-61.751 23.904-61.470 23.904Q-61.290 23.904-61.173 23.781Q-61.056 23.658-61.003 23.478Q-60.950 23.298-60.950 23.126L-60.950 22.654L-60.669 22.654L-60.669 23.142Q-60.669 23.396-60.775 23.636Q-60.880 23.876-61.077 24.029Q-61.275 24.181-61.532 24.181Q-61.849 24.181-62.101 24.058Q-62.353 23.935-62.491 23.701Q-62.630 23.466-62.630 23.142M-59.950 22.349Q-59.950 21.869-59.718 21.453Q-59.486 21.037-59.075 20.787Q-58.665 20.537-58.189 20.537Q-57.458 20.537-57.060 20.978Q-56.661 21.419-56.661 22.150Q-56.661 22.255-56.755 22.279L-59.204 22.279L-59.204 22.349Q-59.204 22.759-59.083 23.115Q-58.962 23.470-58.691 23.687Q-58.419 23.904-57.990 23.904Q-57.626 23.904-57.329 23.675Q-57.032 23.447-56.931 23.095Q-56.923 23.048-56.837 23.033L-56.755 23.033Q-56.661 23.060-56.661 23.142Q-56.661 23.150-56.669 23.181Q-56.732 23.408-56.870 23.591Q-57.009 23.775-57.200 23.908Q-57.392 24.041-57.611 24.111Q-57.829 24.181-58.068 24.181Q-58.439 24.181-58.777 24.044Q-59.115 23.908-59.382 23.656Q-59.650 23.404-59.800 23.064Q-59.950 22.724-59.950 22.349M-59.197 22.041L-57.236 22.041Q-57.236 21.736-57.337 21.445Q-57.439 21.154-57.656 20.972Q-57.872 20.791-58.189 20.791Q-58.490 20.791-58.720 20.978Q-58.950 21.166-59.074 21.457Q-59.197 21.748-59.197 22.041M-54.290 25.654L-56.146 25.654L-56.146 25.361Q-55.876 25.361-55.708 25.316Q-55.540 25.271-55.540 25.095L-55.540 21.271Q-55.540 21.064-55.697 21.011Q-55.853 20.958-56.146 20.958L-56.146 20.662L-54.923 20.576L-54.923 21.041Q-54.693 20.818-54.378 20.697Q-54.064 20.576-53.724 20.576Q-53.251 20.576-52.847 20.822Q-52.443 21.068-52.210 21.484Q-51.978 21.900-51.978 22.376Q-51.978 22.751-52.126 23.080Q-52.275 23.408-52.544 23.660Q-52.814 23.912-53.157 24.046Q-53.501 24.181-53.861 24.181Q-54.150 24.181-54.421 24.060Q-54.693 23.939-54.900 23.728L-54.900 25.095Q-54.900 25.271-54.732 25.316Q-54.564 25.361-54.290 25.361L-54.290 25.654M-54.900 21.439L-54.900 23.279Q-54.747 23.568-54.486 23.748Q-54.224 23.927-53.915 23.927Q-53.630 23.927-53.407 23.789Q-53.185 23.650-53.032 23.419Q-52.880 23.189-52.802 22.917Q-52.724 22.646-52.724 22.376Q-52.724 22.044-52.849 21.687Q-52.974 21.330-53.222 21.093Q-53.470 20.857-53.818 20.857Q-54.142 20.857-54.437 21.013Q-54.732 21.169-54.900 21.439M-51.411 24.095L-51.411 22.873Q-51.411 22.845-51.380 22.814Q-51.349 22.783-51.325 22.783L-51.220 22.783Q-51.150 22.783-51.134 22.845Q-51.072 23.166-50.933 23.406Q-50.794 23.646-50.562 23.787Q-50.329 23.927-50.021 23.927Q-49.782 23.927-49.574 23.867Q-49.365 23.806-49.228 23.658Q-49.091 23.509-49.091 23.263Q-49.091 23.009-49.302 22.843Q-49.513 22.677-49.782 22.623L-50.404 22.509Q-50.810 22.431-51.111 22.175Q-51.411 21.919-51.411 21.544Q-51.411 21.177-51.210 20.955Q-51.009 20.732-50.685 20.634Q-50.361 20.537-50.021 20.537Q-49.556 20.537-49.259 20.744L-49.036 20.560Q-49.013 20.537-48.982 20.537L-48.931 20.537Q-48.900 20.537-48.872 20.564Q-48.845 20.591-48.845 20.623L-48.845 21.607Q-48.845 21.638-48.870 21.667Q-48.896 21.697-48.931 21.697L-49.036 21.697Q-49.072 21.697-49.099 21.669Q-49.126 21.642-49.126 21.607Q-49.126 21.208-49.378 20.988Q-49.630 20.767-50.029 20.767Q-50.384 20.767-50.667 20.890Q-50.950 21.013-50.950 21.318Q-50.950 21.537-50.749 21.669Q-50.548 21.802-50.302 21.845L-49.677 21.958Q-49.247 22.048-48.939 22.345Q-48.630 22.642-48.630 23.056Q-48.630 23.626-49.029 23.904Q-49.427 24.181-50.021 24.181Q-50.572 24.181-50.923 23.845L-51.220 24.158Q-51.243 24.181-51.279 24.181L-51.325 24.181Q-51.349 24.181-51.380 24.150Q-51.411 24.119-51.411 24.095\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(188.751 -87.618)\">\u003Cpath d=\"M-45.180 23.865L-45.180 23.775Q-45.129 23.568-44.934 23.544L-44.051 23.544L-44.051 21.216L-44.906 21.216Q-45.105 21.193-45.156 20.974L-45.156 20.888Q-45.105 20.677-44.906 20.654L-44.051 20.654L-44.051 20.201Q-44.051 19.736-43.645 19.455Q-43.238 19.173-42.758 19.173Q-42.445 19.173-42.201 19.294Q-41.957 19.416-41.957 19.697Q-41.957 19.861-42.066 19.978Q-42.176 20.095-42.340 20.095Q-42.488 20.095-42.609 19.990Q-42.730 19.884-42.730 19.736L-42.812 19.736Q-42.965 19.736-43.102 19.796Q-43.238 19.857-43.324 19.972Q-43.410 20.087-43.410 20.232L-43.410 20.654L-42.379 20.654Q-42.184 20.673-42.133 20.888L-42.133 20.974Q-42.184 21.193-42.379 21.216L-43.410 21.216L-43.410 23.544L-42.531 23.544Q-42.336 23.568-42.285 23.775L-42.285 23.865Q-42.336 24.080-42.531 24.103L-44.934 24.103Q-45.129 24.080-45.180 23.865M-39.133 24.142Q-39.605 24.142-39.990 23.898Q-40.375 23.654-40.598 23.244Q-40.820 22.833-40.820 22.376Q-40.820 22.033-40.695 21.710Q-40.570 21.388-40.340 21.134Q-40.109 20.880-39.803 20.736Q-39.496 20.591-39.133 20.591Q-38.770 20.591-38.457 20.738Q-38.145 20.884-37.922 21.130Q-37.699 21.376-37.572 21.697Q-37.445 22.017-37.445 22.376Q-37.445 22.833-37.670 23.246Q-37.895 23.658-38.279 23.900Q-38.664 24.142-39.133 24.142M-39.133 23.583Q-38.668 23.583-38.377 23.189Q-38.086 22.794-38.086 22.310Q-38.086 22.017-38.221 21.749Q-38.355 21.482-38.596 21.316Q-38.836 21.150-39.133 21.150Q-39.437 21.150-39.676 21.316Q-39.914 21.482-40.049 21.749Q-40.184 22.017-40.184 22.310Q-40.184 22.791-39.891 23.187Q-39.598 23.583-39.133 23.583M-36.785 23.865L-36.785 23.775Q-36.727 23.568-36.535 23.544L-35.824 23.544L-35.824 21.216L-36.535 21.216Q-36.730 21.193-36.785 20.974L-36.785 20.888Q-36.727 20.677-36.535 20.654L-35.434 20.654Q-35.234 20.673-35.184 20.888L-35.184 21.216Q-34.922 20.931-34.566 20.773Q-34.211 20.615-33.824 20.615Q-33.531 20.615-33.297 20.749Q-33.062 20.884-33.062 21.150Q-33.062 21.318-33.172 21.435Q-33.281 21.552-33.449 21.552Q-33.602 21.552-33.717 21.441Q-33.832 21.330-33.832 21.173Q-34.207 21.173-34.521 21.374Q-34.836 21.576-35.010 21.910Q-35.184 22.244-35.184 22.623L-35.184 23.544L-34.238 23.544Q-34.031 23.568-33.992 23.775L-33.992 23.865Q-34.031 24.080-34.238 24.103L-36.535 24.103Q-36.727 24.080-36.785 23.865M-31.754 23.880L-32.219 21.216L-32.379 21.216Q-32.586 21.193-32.625 20.974L-32.625 20.888Q-32.586 20.677-32.379 20.654L-31.211 20.654Q-31 20.677-30.961 20.888L-30.961 20.974Q-31 21.193-31.211 21.216L-31.684 21.216Q-31.570 21.861-31.492 22.306Q-31.414 22.751-31.363 23.070Q-31.312 23.388-31.312 23.462Q-31.305 23.291-31.020 22.294Q-30.980 22.181-30.883 22.107Q-30.785 22.033-30.664 22.033L-30.586 22.033Q-30.465 22.033-30.367 22.107Q-30.270 22.181-30.234 22.294Q-30.125 22.677-30.043 23.001Q-29.961 23.326-29.961 23.462Q-29.949 23.173-29.602 21.216L-30.074 21.216Q-30.281 21.193-30.320 20.974L-30.320 20.888Q-30.281 20.677-30.074 20.654L-28.898 20.654Q-28.707 20.677-28.648 20.888L-28.648 20.974Q-28.703 21.193-28.898 21.216L-29.066 21.216L-29.531 23.880Q-29.555 23.998-29.643 24.070Q-29.730 24.142-29.852 24.142L-29.992 24.142Q-30.113 24.142-30.209 24.070Q-30.305 23.998-30.348 23.880Q-30.395 23.701-30.467 23.445Q-30.539 23.189-30.582 22.980Q-30.625 22.771-30.625 22.669Q-30.633 22.951-30.914 23.880Q-30.941 23.990-31.039 24.066Q-31.137 24.142-31.258 24.142L-31.434 24.142Q-31.555 24.142-31.643 24.070Q-31.730 23.998-31.754 23.880M-28.109 22.990Q-28.109 22.544-27.695 22.287Q-27.281 22.029-26.740 21.929Q-26.199 21.830-25.691 21.822Q-25.691 21.607-25.826 21.455Q-25.961 21.302-26.168 21.226Q-26.375 21.150-26.586 21.150Q-26.930 21.150-27.090 21.173L-27.090 21.232Q-27.090 21.400-27.209 21.515Q-27.328 21.630-27.492 21.630Q-27.668 21.630-27.783 21.507Q-27.898 21.384-27.898 21.216Q-27.898 20.810-27.518 20.701Q-27.137 20.591-26.578 20.591Q-26.309 20.591-26.041 20.669Q-25.773 20.748-25.549 20.898Q-25.324 21.048-25.187 21.269Q-25.051 21.490-25.051 21.767L-25.051 23.486Q-25.051 23.544-24.523 23.544Q-24.328 23.564-24.277 23.775L-24.277 23.865Q-24.328 24.080-24.523 24.103L-24.668 24.103Q-25.012 24.103-25.240 24.056Q-25.469 24.009-25.613 23.822Q-26.074 24.142-26.781 24.142Q-27.117 24.142-27.422 24.001Q-27.727 23.861-27.918 23.599Q-28.109 23.337-28.109 22.990M-27.469 22.998Q-27.469 23.271-27.227 23.427Q-26.984 23.583-26.699 23.583Q-26.480 23.583-26.248 23.525Q-26.016 23.466-25.854 23.328Q-25.691 23.189-25.691 22.966L-25.691 22.376Q-25.973 22.376-26.389 22.433Q-26.805 22.490-27.137 22.628Q-27.469 22.767-27.469 22.998M-24.047 23.865L-24.047 23.775Q-23.988 23.568-23.797 23.544L-23.086 23.544L-23.086 21.216L-23.797 21.216Q-23.992 21.193-24.047 20.974L-24.047 20.888Q-23.988 20.677-23.797 20.654L-22.695 20.654Q-22.496 20.673-22.445 20.888L-22.445 21.216Q-22.184 20.931-21.828 20.773Q-21.473 20.615-21.086 20.615Q-20.793 20.615-20.559 20.749Q-20.324 20.884-20.324 21.150Q-20.324 21.318-20.434 21.435Q-20.543 21.552-20.711 21.552Q-20.863 21.552-20.979 21.441Q-21.094 21.330-21.094 21.173Q-21.469 21.173-21.783 21.374Q-22.098 21.576-22.271 21.910Q-22.445 22.244-22.445 22.623L-22.445 23.544L-21.500 23.544Q-21.293 23.568-21.254 23.775L-21.254 23.865Q-21.293 24.080-21.500 24.103L-23.797 24.103Q-23.988 24.080-24.047 23.865M-18.160 24.142Q-18.625 24.142-18.990 23.892Q-19.355 23.642-19.561 23.238Q-19.766 22.833-19.766 22.376Q-19.766 22.033-19.641 21.712Q-19.516 21.392-19.283 21.142Q-19.051 20.892-18.746 20.753Q-18.441 20.615-18.086 20.615Q-17.574 20.615-17.168 20.935L-17.168 19.775L-17.590 19.775Q-17.801 19.751-17.840 19.537L-17.840 19.447Q-17.801 19.240-17.590 19.216L-16.777 19.216Q-16.578 19.240-16.527 19.447L-16.527 23.544L-16.102 23.544Q-15.895 23.568-15.855 23.775L-15.855 23.865Q-15.895 24.080-16.102 24.103L-16.918 24.103Q-17.117 24.080-17.168 23.865L-17.168 23.736Q-17.363 23.927-17.625 24.035Q-17.887 24.142-18.160 24.142M-18.121 23.583Q-17.762 23.583-17.510 23.314Q-17.258 23.044-17.168 22.669L-17.168 21.837Q-17.227 21.650-17.354 21.499Q-17.480 21.349-17.658 21.261Q-17.836 21.173-18.031 21.173Q-18.340 21.173-18.590 21.343Q-18.840 21.513-18.984 21.798Q-19.129 22.083-19.129 22.384Q-19.129 22.833-18.844 23.208Q-18.559 23.583-18.121 23.583\" fill=\"var(--tk-good)\" stroke=\"var(--tk-good)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">As edge index \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.6595em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\">i\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> advances by one, the antipodal pointer \u003Cspan class=\"katex\">\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"base\">\u003Cspan class=\"strut\" style=\"height:0.854em;vertical-align:-0.1944em;\">\u003C\u002Fspan>\u003Cspan class=\"mord mathnormal\" style=\"margin-right:0.0572em;\">j\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> only steps forward; the two contact pointers make a single monotone trip around the hull\u003C\u002Ffigcaption>","\u003Csvg style=\"width:100%;max-width:218.812px;height:auto\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"-75 -75 164.109 89.910\">\u003Cg stroke=\"currentColor\" style=\"stroke-miterlimit:10;stroke-width:.4\">\u003Cpath stroke=\"none\" d=\"M-64.694-1.862a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M9.283 9.52a2.121 2.121 0 1 0-4.242 0 2.121 2.121 0 0 0 4.242 0M37.736-53.077a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M-36.241-70.149a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0M-13.479-30.315a2.121 2.121 0 1 0-4.243 0 2.121 2.121 0 0 0 4.243 0m-2.121 0\"\u002F>\u003Cpath fill=\"none\" stroke=\"var(--tk-accent)\" d=\"M-64.521-1.51 4.868 9.167m3.254-1.76 26.532-58.37m-1.301-2.635-69.454-16.028m-3.154 1.621L-65.923-4.005m1.137 1.015 47.157-26.198M6.01 7.504-14.45-28.3m47.943-23.834L-13.48-31.258m-23.732-36.875 20.46 35.803\" style=\"stroke-width:.8\"\u002F>\u003Cg fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\">\u003Cg fill=\"var(--tk-accent)\" stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(125.88 -66.286)\">\u003Cpath d=\"M-74.782 15.210L-77.844 15.210L-77.844 14.913Q-77.520 14.913-77.278 14.866Q-77.036 14.819-77.036 14.651L-77.036 10.308Q-77.036 10.136-77.278 10.089Q-77.520 10.042-77.844 10.042L-77.844 9.745L-74.782 9.745Q-74.231 9.745-73.753 9.972Q-73.274 10.198-72.921 10.593Q-72.567 10.987-72.378 11.487Q-72.188 11.987-72.188 12.530Q-72.188 13.237-72.532 13.855Q-72.876 14.472-73.471 14.841Q-74.067 15.210-74.782 15.210M-76.294 10.308L-76.294 14.651Q-76.294 14.823-76.202 14.868Q-76.110 14.913-75.891 14.913L-74.997 14.913Q-74.551 14.913-74.159 14.743Q-73.766 14.573-73.495 14.249Q-73.223 13.925-73.126 13.505Q-73.028 13.085-73.028 12.530Q-73.028 12.175-73.065 11.862Q-73.102 11.550-73.208 11.255Q-73.313 10.960-73.493 10.737Q-73.676 10.503-73.915 10.353Q-74.153 10.202-74.434 10.122Q-74.716 10.042-74.997 10.042L-75.891 10.042Q-76.110 10.042-76.202 10.085Q-76.294 10.128-76.294 10.308M-71.469 13.456Q-71.469 12.976-71.237 12.560Q-71.005 12.144-70.594 11.894Q-70.184 11.644-69.708 11.644Q-68.977 11.644-68.579 12.085Q-68.180 12.526-68.180 13.257Q-68.180 13.362-68.274 13.386L-70.723 13.386L-70.723 13.456Q-70.723 13.866-70.602 14.222Q-70.481 14.577-70.210 14.794Q-69.938 15.011-69.508 15.011Q-69.145 15.011-68.848 14.782Q-68.551 14.554-68.450 14.202Q-68.442 14.155-68.356 14.140L-68.274 14.140Q-68.180 14.167-68.180 14.249Q-68.180 14.257-68.188 14.288Q-68.251 14.515-68.389 14.698Q-68.528 14.882-68.719 15.015Q-68.911 15.148-69.130 15.218Q-69.348 15.288-69.587 15.288Q-69.958 15.288-70.296 15.151Q-70.633 15.015-70.901 14.763Q-71.169 14.511-71.319 14.171Q-71.469 13.831-71.469 13.456M-70.716 13.148L-68.755 13.148Q-68.755 12.843-68.856 12.552Q-68.958 12.261-69.175 12.079Q-69.391 11.898-69.708 11.898Q-70.008 11.898-70.239 12.085Q-70.469 12.273-70.592 12.564Q-70.716 12.855-70.716 13.148M-65.778 15.210L-67.610 15.210L-67.610 14.913Q-67.337 14.913-67.169 14.866Q-67.001 14.819-67.001 14.651L-67.001 10.491Q-67.001 10.276-67.063 10.181Q-67.126 10.085-67.245 10.064Q-67.364 10.042-67.610 10.042L-67.610 9.745L-66.387 9.659L-66.387 14.651Q-66.387 14.819-66.219 14.866Q-66.051 14.913-65.778 14.913L-65.778 15.210M-65.235 14.378Q-65.235 13.894-64.833 13.599Q-64.430 13.304-63.880 13.185Q-63.329 13.065-62.837 13.065L-62.837 12.776Q-62.837 12.550-62.952 12.343Q-63.067 12.136-63.264 12.017Q-63.462 11.898-63.692 11.898Q-64.118 11.898-64.403 12.003Q-64.333 12.030-64.286 12.085Q-64.239 12.140-64.214 12.210Q-64.188 12.280-64.188 12.355Q-64.188 12.460-64.239 12.552Q-64.290 12.644-64.382 12.694Q-64.473 12.745-64.579 12.745Q-64.684 12.745-64.776 12.694Q-64.868 12.644-64.919 12.552Q-64.969 12.460-64.969 12.355Q-64.969 11.937-64.581 11.790Q-64.192 11.644-63.692 11.644Q-63.360 11.644-63.007 11.774Q-62.653 11.905-62.425 12.159Q-62.196 12.413-62.196 12.761L-62.196 14.562Q-62.196 14.694-62.124 14.804Q-62.051 14.913-61.923 14.913Q-61.798 14.913-61.729 14.808Q-61.661 14.702-61.661 14.562L-61.661 14.050L-61.380 14.050L-61.380 14.562Q-61.380 14.765-61.497 14.923Q-61.614 15.081-61.796 15.165Q-61.977 15.249-62.180 15.249Q-62.411 15.249-62.563 15.077Q-62.716 14.905-62.747 14.675Q-62.907 14.956-63.216 15.122Q-63.524 15.288-63.876 15.288Q-64.387 15.288-64.811 15.065Q-65.235 14.843-65.235 14.378M-64.548 14.378Q-64.548 14.663-64.321 14.849Q-64.094 15.034-63.801 15.034Q-63.555 15.034-63.331 14.917Q-63.106 14.800-62.971 14.597Q-62.837 14.394-62.837 14.140L-62.837 13.308Q-63.102 13.308-63.387 13.362Q-63.673 13.417-63.944 13.546Q-64.216 13.675-64.382 13.882Q-64.548 14.089-64.548 14.378M-60.403 14.257L-60.403 12.515Q-60.403 12.300-60.466 12.204Q-60.528 12.108-60.647 12.087Q-60.766 12.065-61.012 12.065L-61.012 11.769L-59.766 11.683L-59.766 14.233L-59.766 14.257Q-59.766 14.569-59.712 14.731Q-59.657 14.894-59.507 14.964Q-59.356 15.034-59.036 15.034Q-58.606 15.034-58.333 14.696Q-58.059 14.358-58.059 13.913L-58.059 12.515Q-58.059 12.300-58.122 12.204Q-58.184 12.108-58.303 12.087Q-58.423 12.065-58.669 12.065L-58.669 11.769L-57.423 11.683L-57.423 14.468Q-57.423 14.679-57.360 14.774Q-57.298 14.870-57.178 14.892Q-57.059 14.913-56.813 14.913L-56.813 15.210L-58.036 15.288L-58.036 14.667Q-58.204 14.956-58.485 15.122Q-58.766 15.288-59.087 15.288Q-60.403 15.288-60.403 14.257M-54.438 15.210L-56.294 15.210L-56.294 14.913Q-56.020 14.913-55.852 14.866Q-55.684 14.819-55.684 14.651L-55.684 12.515Q-55.684 12.300-55.747 12.204Q-55.809 12.108-55.928 12.087Q-56.048 12.065-56.294 12.065L-56.294 11.769L-55.102 11.683L-55.102 12.417Q-54.989 12.202-54.796 12.034Q-54.602 11.866-54.364 11.774Q-54.126 11.683-53.872 11.683Q-52.704 11.683-52.704 12.761L-52.704 14.651Q-52.704 14.819-52.534 14.866Q-52.364 14.913-52.094 14.913L-52.094 15.210L-53.950 15.210L-53.950 14.913Q-53.676 14.913-53.508 14.866Q-53.341 14.819-53.341 14.651L-53.341 12.776Q-53.341 12.394-53.462 12.165Q-53.583 11.937-53.934 11.937Q-54.247 11.937-54.501 12.099Q-54.755 12.261-54.901 12.530Q-55.048 12.800-55.048 13.097L-55.048 14.651Q-55.048 14.819-54.878 14.866Q-54.708 14.913-54.438 14.913L-54.438 15.210M-51.551 14.378Q-51.551 13.894-51.149 13.599Q-50.747 13.304-50.196 13.185Q-49.645 13.065-49.153 13.065L-49.153 12.776Q-49.153 12.550-49.268 12.343Q-49.383 12.136-49.581 12.017Q-49.778 11.898-50.008 11.898Q-50.434 11.898-50.719 12.003Q-50.649 12.030-50.602 12.085Q-50.555 12.140-50.530 12.210Q-50.505 12.280-50.505 12.355Q-50.505 12.460-50.555 12.552Q-50.606 12.644-50.698 12.694Q-50.790 12.745-50.895 12.745Q-51.001 12.745-51.092 12.694Q-51.184 12.644-51.235 12.552Q-51.286 12.460-51.286 12.355Q-51.286 11.937-50.897 11.790Q-50.508 11.644-50.008 11.644Q-49.676 11.644-49.323 11.774Q-48.969 11.905-48.741 12.159Q-48.512 12.413-48.512 12.761L-48.512 14.562Q-48.512 14.694-48.440 14.804Q-48.368 14.913-48.239 14.913Q-48.114 14.913-48.046 14.808Q-47.977 14.702-47.977 14.562L-47.977 14.050L-47.696 14.050L-47.696 14.562Q-47.696 14.765-47.813 14.923Q-47.930 15.081-48.112 15.165Q-48.294 15.249-48.497 15.249Q-48.727 15.249-48.880 15.077Q-49.032 14.905-49.063 14.675Q-49.223 14.956-49.532 15.122Q-49.841 15.288-50.192 15.288Q-50.704 15.288-51.128 15.065Q-51.551 14.843-51.551 14.378M-50.864 14.378Q-50.864 14.663-50.637 14.849Q-50.411 15.034-50.118 15.034Q-49.872 15.034-49.647 14.917Q-49.423 14.800-49.288 14.597Q-49.153 14.394-49.153 14.140L-49.153 13.308Q-49.419 13.308-49.704 13.362Q-49.989 13.417-50.260 13.546Q-50.532 13.675-50.698 13.882Q-50.864 14.089-50.864 14.378\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(125.88 -66.286)\">\u003Cpath d=\"M-47.204 16.507Q-47.090 16.585-46.915 16.585Q-46.626 16.585-46.405 16.372Q-46.184 16.159-46.059 15.858L-45.770 15.210L-47.044 12.323Q-47.126 12.148-47.270 12.103Q-47.415 12.058-47.684 12.058L-47.684 11.761L-45.965 11.761L-45.965 12.058Q-46.387 12.058-46.387 12.241Q-46.387 12.253-46.372 12.323L-45.434 14.448L-44.602 12.538Q-44.563 12.448-44.563 12.370Q-44.563 12.230-44.665 12.144Q-44.766 12.058-44.907 12.058L-44.907 11.761L-43.555 11.761L-43.555 12.058Q-43.809 12.058-44.003 12.183Q-44.196 12.308-44.301 12.538L-45.747 15.858Q-45.860 16.112-46.026 16.335Q-46.192 16.558-46.421 16.700Q-46.649 16.843-46.915 16.843Q-47.212 16.843-47.452 16.651Q-47.692 16.460-47.692 16.171Q-47.692 16.015-47.587 15.913Q-47.481 15.812-47.333 15.812Q-47.227 15.812-47.147 15.858Q-47.067 15.905-47.020 15.983Q-46.973 16.062-46.973 16.171Q-46.973 16.292-47.034 16.380Q-47.094 16.468-47.204 16.507\" fill=\"var(--tk-accent)\" stroke=\"var(--tk-accent)\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cpath fill=\"none\" d=\"m-29.827 3.829-5.69-31.299-17.072-39.833M-35.517-27.47h45.524M10.007-27.47 21.388 9.52M10.007-27.47 32.77-41.696\" style=\"stroke-dasharray:3.0,3.0\"\u002F>\u003Cg stroke=\"none\" font-family=\"cmr8\" font-size=\"8\">\u003Cg transform=\"translate(125.88 -25.72)\">\u003Cpath d=\"M-75.219 15.265L-77.243 10.308Q-77.325 10.136-77.518 10.089Q-77.712 10.042-78.020 10.042L-78.020 9.745L-75.829 9.745L-75.829 10.042Q-76.454 10.042-76.454 10.257Q-76.450 10.273-76.448 10.286Q-76.446 10.300-76.442 10.308L-74.782 14.401L-73.196 10.523Q-73.173 10.476-73.173 10.409Q-73.173 10.226-73.342 10.134Q-73.512 10.042-73.723 10.042L-73.723 9.745L-72.012 9.745L-72.012 10.042Q-72.309 10.042-72.540 10.157Q-72.770 10.273-72.876 10.523L-74.813 15.265Q-74.852 15.378-74.981 15.378L-75.051 15.378Q-75.180 15.378-75.219 15.265\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003Cg transform=\"translate(125.88 -25.72)\">\u003Cpath d=\"M-72.300 13.515Q-72.300 13.011-72.044 12.579Q-71.788 12.148-71.352 11.896Q-70.917 11.644-70.417 11.644Q-70.030 11.644-69.688 11.788Q-69.347 11.933-69.085 12.194Q-68.823 12.456-68.681 12.792Q-68.538 13.128-68.538 13.515Q-68.538 14.007-68.802 14.417Q-69.065 14.827-69.495 15.058Q-69.925 15.288-70.417 15.288Q-70.909 15.288-71.343 15.056Q-71.776 14.823-72.038 14.415Q-72.300 14.007-72.300 13.515M-70.417 15.011Q-69.960 15.011-69.708 14.788Q-69.456 14.565-69.368 14.214Q-69.280 13.862-69.280 13.417Q-69.280 12.987-69.374 12.649Q-69.468 12.312-69.722 12.105Q-69.975 11.898-70.417 11.898Q-71.065 11.898-71.309 12.314Q-71.554 12.730-71.554 13.417Q-71.554 13.862-71.466 14.214Q-71.378 14.565-71.126 14.788Q-70.874 15.011-70.417 15.011M-66.046 15.210L-68.026 15.210L-68.026 14.913Q-67.757 14.913-67.589 14.868Q-67.421 14.823-67.421 14.651L-67.421 12.515Q-67.421 12.300-67.483 12.204Q-67.546 12.108-67.663 12.087Q-67.780 12.065-68.026 12.065L-68.026 11.769L-66.858 11.683L-66.858 12.468Q-66.780 12.257-66.628 12.071Q-66.475 11.886-66.276 11.784Q-66.077 11.683-65.850 11.683Q-65.604 11.683-65.413 11.827Q-65.222 11.972-65.222 12.202Q-65.222 12.358-65.327 12.468Q-65.433 12.577-65.589 12.577Q-65.745 12.577-65.854 12.468Q-65.964 12.358-65.964 12.202Q-65.964 12.042-65.858 11.937Q-66.183 11.937-66.397 12.165Q-66.612 12.394-66.708 12.733Q-66.804 13.073-66.804 13.378L-66.804 14.651Q-66.804 14.819-66.577 14.866Q-66.350 14.913-66.046 14.913L-66.046 15.210M-64.741 13.515Q-64.741 13.011-64.485 12.579Q-64.229 12.148-63.794 11.896Q-63.358 11.644-62.858 11.644Q-62.472 11.644-62.130 11.788Q-61.788 11.933-61.526 12.194Q-61.265 12.456-61.122 12.792Q-60.979 13.128-60.979 13.515Q-60.979 14.007-61.243 14.417Q-61.507 14.827-61.936 15.058Q-62.366 15.288-62.858 15.288Q-63.350 15.288-63.784 15.056Q-64.218 14.823-64.479 14.415Q-64.741 14.007-64.741 13.515M-62.858 15.011Q-62.401 15.011-62.149 14.788Q-61.897 14.565-61.809 14.214Q-61.722 13.862-61.722 13.417Q-61.722 12.987-61.815 12.649Q-61.909 12.312-62.163 12.105Q-62.417 11.898-62.858 11.898Q-63.507 11.898-63.751 12.314Q-63.995 12.730-63.995 13.417Q-63.995 13.862-63.907 14.214Q-63.819 14.565-63.567 14.788Q-63.315 15.011-62.858 15.011M-58.565 15.210L-60.421 15.210L-60.421 14.913Q-60.147 14.913-59.979 14.866Q-59.811 14.819-59.811 14.651L-59.811 12.515Q-59.811 12.300-59.874 12.204Q-59.936 12.108-60.056 12.087Q-60.175 12.065-60.421 12.065L-60.421 11.769L-59.229 11.683L-59.229 12.417Q-59.116 12.202-58.923 12.034Q-58.729 11.866-58.491 11.774Q-58.253 11.683-57.999 11.683Q-56.831 11.683-56.831 12.761L-56.831 14.651Q-56.831 14.819-56.661 14.866Q-56.491 14.913-56.222 14.913L-56.222 15.210L-58.077 15.210L-58.077 14.913Q-57.804 14.913-57.636 14.866Q-57.468 14.819-57.468 14.651L-57.468 12.776Q-57.468 12.394-57.589 12.165Q-57.710 11.937-58.061 11.937Q-58.374 11.937-58.628 12.099Q-58.882 12.261-59.028 12.530Q-59.175 12.800-59.175 13.097L-59.175 14.651Q-59.175 14.819-59.005 14.866Q-58.835 14.913-58.565 14.913L-58.565 15.210M-55.776 13.515Q-55.776 13.011-55.520 12.579Q-55.265 12.148-54.829 11.896Q-54.393 11.644-53.893 11.644Q-53.507 11.644-53.165 11.788Q-52.823 11.933-52.561 12.194Q-52.300 12.456-52.157 12.792Q-52.015 13.128-52.015 13.515Q-52.015 14.007-52.278 14.417Q-52.542 14.827-52.972 15.058Q-53.401 15.288-53.893 15.288Q-54.386 15.288-54.819 15.056Q-55.253 14.823-55.515 14.415Q-55.776 14.007-55.776 13.515M-53.893 15.011Q-53.436 15.011-53.184 14.788Q-52.933 14.565-52.845 14.214Q-52.757 13.862-52.757 13.417Q-52.757 12.987-52.850 12.649Q-52.944 12.312-53.198 12.105Q-53.452 11.898-53.893 11.898Q-54.542 11.898-54.786 12.314Q-55.030 12.730-55.030 13.417Q-55.030 13.862-54.942 14.214Q-54.854 14.565-54.602 14.788Q-54.350 15.011-53.893 15.011M-49.671 15.210L-51.448 15.210L-51.448 14.913Q-51.175 14.913-51.007 14.866Q-50.839 14.819-50.839 14.651L-50.839 12.515Q-50.839 12.300-50.895 12.204Q-50.952 12.108-51.065 12.087Q-51.179 12.065-51.425 12.065L-51.425 11.769L-50.225 11.683L-50.225 14.651Q-50.225 14.819-50.079 14.866Q-49.933 14.913-49.671 14.913L-49.671 15.210M-51.112 10.288Q-51.112 10.097-50.977 9.966Q-50.843 9.835-50.647 9.835Q-50.526 9.835-50.423 9.898Q-50.319 9.960-50.257 10.064Q-50.194 10.167-50.194 10.288Q-50.194 10.483-50.325 10.618Q-50.456 10.753-50.647 10.753Q-50.847 10.753-50.979 10.620Q-51.112 10.487-51.112 10.288\" fill=\"currentColor\" stroke=\"currentColor\" class=\"tikz-text\" style=\"stroke-width:0.240\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fsvg>\u003Cfigcaption class=\"tikz-cap\">Voronoi cells (one per site, nearest-point regions) and the dual Delaunay triangulation joining sites with adjacent cells.\u003C\u002Ffigcaption>",1785117757808]