pchvykov feed - LessWrong 2.0 Readerpchvykov’s posts and comments on the Effective Altruism Forumen-usComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=uDCbkzwGYyr2ngrMS
<p>Yeah, I'm quite curious to understand this point too - certainly not sure how far this reasoning can be applied (and whether Ferdinand is too much of a stretch). I was thinking of this assassination as the "perturbation in a super-cooled liquid" - where it's really the overall geopolitical tension that was the dominant cause, and anything could have set off the global phase transition. Though this gets back to the limitations of counter-factual causality in the real-world...</p>pchvykovuDCbkzwGYyr2ngrMS2021-05-15T05:46:25.758ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=KgiJQcJtsrQacnGHQ
<p>cool - and I appreciate that you think my posts are promising! I'm never sure if my posts have any meaningful 'delta' - seems like everything's been said before. </p><p>But this community is really fun to post for, with meaningful engagement and discussion =)</p>pchvykovKgiJQcJtsrQacnGHQ2021-05-15T05:29:55.930ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=wL7FTjwaRmDA5mFdo
<p>hmm, so what I was thinking is whether we could give an improved definition of causality based on something like "A causes B iff the model [A causes B] performs superior to other models in some (all?) games / environments" - which may have a funny dependence on the game or environment we choose. </p><p>Though as hard as the counterfactual definition is to work with in practice, this may be even harder... </p><p>You post may be related to this, though not the same, I think. I guess what I'm suggesting isn't directly about decision theory. </p>pchvykovwL7FTjwaRmDA5mFdo2021-05-15T05:21:00.933ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=sKHiSz5RojbWyDuq7
<p>whow, some Bayesian updating there - impressive! :)</p>pchvykovsKHiSz5RojbWyDuq72021-05-15T04:53:05.996ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=htWanpReaHrCmZ6kT
<p>I'm not sure why this was crossed out - seems quite civil to me... And I appreciate your thoughts on this!</p><p>I do think we agree at the big-picture level, but have some mismatch in details and language. In particular, as I understand J. Pearl's counter-factual analysis, you're supposed to compare this one perturbation against the average over the ensemble of all possible other interventions. So in this sense, it's not about "holding everything else fixed," but rather about "what are all the possible other things that could have happened."</p>pchvykovhtWanpReaHrCmZ6kT2021-05-15T01:14:18.125ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=FJnxCHWnehuNqumH9
<p>Yes!! Very cool - going even one meta level up. I agree that usefulness of proposed models is certainly the ultimate judge of whether it's "good" or not. To make this even more concrete, we could try to construct a game and compare the mean performance of two agents having the two models we want to compare... I wonder if anyone's tried that... As far as I know, the counterfactual approach is "state of the art" for understanding causality these days - and it is a bit lacking for the reason you say. This could be a cool paper to write!</p>pchvykovFJnxCHWnehuNqumH92021-05-15T00:58:42.598ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=GSfJQ3vaymQ3JFkmt
<p>ah yes, great minds think alike! =)<br><br>What I really like about J. Pearl's counter-factual causality framework is that it gives a way to make these arguments rigorously, and even to precisely quantify "how much did the butterfly cause the tornado" - in bits!</p>pchvykovGSfJQ3vaymQ3JFkmt2021-05-15T00:50:30.358ZComment by pchvykov on Does butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect?commentId=kjuyTGhtzySA6WWvF
<p>Cool - thanks for your feedback! I agree that I could be more rigorous with my terminology. Nonetheless, I do think I have a rigorous argument underneath all this - even if it didn't come across. Let me try to clarify:<br><br>I did not mean to refer to human intentionality anywhere here. I was specifically trying to argue that the "chaos-theory definition of causality" you give, while great in idealized deterministic systems, is inadequate in complex messy "real world." Instead, the rigorous definition I prefer is the counter-factual information theoretic one, developed by Judea Pearl, and which I here tried to outline in layman's terms. This definition is entirely ill-posed in a deterministic chaotic system, but will work as soon as we have any stochasticity (from whatever source).</p><p>Does this address your point at all, or am I off-base?</p>pchvykovkjuyTGhtzySA6WWvF2021-05-15T00:45:44.752ZDoes butterfly affect?
https://lw2.issarice.com/posts/quQwHZTaRDJFoTYLd/does-butterfly-affect
<p><i>Can a butterfly really cause a hurricane?</i></p><p>Having been working in complexity science, I realize that I have a problem with the conventional understanding of the butterfly effect. Sure, in ideal deterministic chaotic systems, the butterfly effect does a great job illustrating the quasi-stochastic nature of chaos and sensitivity to small perturbations. But in the real complex world, far from a mathematically idealized deterministic model, there is no reasonable sense in which we can say that a butterfly’s wings can <i>cause</i> a hurricane. Even if this isn’t surprising, as intuitively people won’t attribute a hurricane to a butterfly, I would argue that causally attributing World War I to the assassination of Archduke Ferdinand follows the same fallacy.</p><p>Consider a pot of supercooled water. Any minúte impurity in it can seed the freezing transition of the entire pot. But can we really say that this impurity “caused” the transition? This seems to depend on the counterfactual world: what would have happened otherwise? If the pot is sitting in an isolated clean room where there would not typically be any dust other perturbations, then this one particular impurity may be to blame for the phase-transition. But out in the messy “real world,” abundant with impurities of all kinds, supercooled water would not survive long anyhow — if not this impurity, then another would have seeded the transition a moment later.</p><p>Now, this counterfactual definition of causality, <a href="https://www.google.com/books/edition/Causality/wnGU_TsW3BQC?hl=en&gbpv=1&printsec=frontcover"><u>formalized by Judea Pearl</u></a> using tools information theory, similarly gives problems for the classic interpretation of the butterfly effect. Would the hurricane have happened if not for the butterfly? To answer this question carefully, it isn’t enough to look at what the world would look like if we removed the butterfly, but held everything else fixed. Instead, we must consider the full statistical ensemble of possible world, and quantify to what extent the butterfly shifts that ensemble. To model this in a mathematically idealized setting, we could take some deterministic chaotic system, add some small stochastic noise to it at all times <i>t </i>to generate the statistical ensemble of possibilities, and then consider the effect of some slight “butterfly” perturbation at a given time <i>t*</i>. In the typical scenario, the impact of this single perturbation will not rise above the impact of the persistent background noise inherent to any complex real-world system. As such, the impact of butterfly’s wings will typically not rise above the persistent stochastic inputs affecting the Earth (such as from quantum noise or outer space).</p><p>This reasoning also undermines some of the reductionist mechanistic perspective we often have on the world (especially in the proverbial “West”). Roughly speaking, it may often be quite difficult to cleanly attribute a real-world outcome to one particular cause. For example, regretful thinking like “if only I had…” often relies on holding the world fixed and only changing that one past decision — which is just as problematic as for butterflies and hurricanes. And so, perhaps indeed, “the devil is in the details” — it isn’t the one-time events that truly determine our lives, but rather it is how we guide their continual unfolding.</p><p>Do you buy the logic - and the conclusion? Or is this a bit of a straw-man argument, and people don't really think this way about causes? </p><p>[cross-posted from my blog <a href="https://medium.com/bs3">https://medium.com/bs3</a>]</p>pchvykovquQwHZTaRDJFoTYLd2021-05-14T04:20:58.374ZComment by pchvykov on Mindfulness as debugging
https://lw2.issarice.com/posts/GtMTskQyZvaLFbjXF/mindfulness-as-debugging?commentId=rJseCkhyGEscxA4zC
<p>That's an interesting question - I was assuming that there is a sort of "natural selection" process that acts over generations, and picks out the "best" algorithms. This way, I can understand your comment in two ways:</p><ol><li>the selection pressures may not be directed at individual benefit, but rather at group survival or optimal transmission (rules that are easier to remember are easier to pass down)</li><li>the selection that led to our algorithms may be outdated in our modern world</li></ol><p>Am I getting it, or did you have something else in mind?</p>pchvykovrJseCkhyGEscxA4zC2021-05-05T21:48:20.067ZMindfulness as debugging
https://lw2.issarice.com/posts/GtMTskQyZvaLFbjXF/mindfulness-as-debugging
<p><i>Are mindfulness practices just attempts to reverse-engineer our brain’s compression algorithms?</i></p><p>I was recently thinking about one cool way we could conceptualize various mindfulness practices from a cognitive science and information theory perspective. Here I am referring to mindfulness practices in the broadest sense. So <a href="https://en.wikipedia.org/wiki/Tai_chi"><u>Tai Chi</u></a> (or other martial arts of even dance practices) can be seen as mindfulness of physical movement: rather than just making a step, I look into what muscles I need to contract and where to shift my weight in order to make that step. “<a href="https://youtu.be/EP74acIVs60?t=303"><u>Consent Culture</u></a>” could be another one: rather than just initiating physical contact with a partner, I first ask myself what precise contact I would really enjoy, and then explicitly ask them if it aligns with their desires. Similarly we can view practices like “<a href="https://en.wikipedia.org/wiki/Nonviolent_Communication"><u>Nonviolent Communication</u></a>” — as mindfulness of emotions and needs behind the things I say; or “<a href="https://streetepistemology.com/"><u>Street Epistemology</u></a>” — as mindfulness of the beliefs I hold and the evidence that led me to them. And, of course, meditation — as mindfulness of the processes that turn my raw sensations into the qualia of my experiences.</p><p>The emerging pattern may thus be that all mindfulness practices are about unpacking and examining our habitual patterns of experiencing the world. To be more precise, by “habitual patterns” I am here referring to the amazing ways that our brain learns to make sense of the vast amounts of data constantly streaming in through our various senses. This complex task of compressing sensory information by finding patterns and forming concepts is crucial for our survival and adequate existence in our world (see my<a href="https://www.lesswrong.com/posts/vkRpyPCBTx3jpeuzk/our-compressed-perception"> <u>last post</u></a> about this). From the day we are born, our brain is hard at work looking for the most accurate and efficient compression algorithms. Even cultural heritage may be seen as especially effective compression heuristics that are being passed down through generations.</p><p>Nonetheless, any compression algorithm is necessarily inaccurate in some ways — and may thus mislead us in atypical, delicate, or complex situations. In order to have some way to “debug” these algorithms when that happens, we need to have some sense of how they function — and this is where mindfulness comes in! In these practices, we pick one particular habitual compression pattern (e.g., for Tai Chi, this would be physical movement), we setup a safe practice container (e.g., matts or grass to soften falls, certain rules around not moving too fast or punching too hard), and then try to unpack our usual actions by doing everything much more slowly and explicitly, being aware of every detail of the process. For another example, we can view Street Epistemology as unpacking our habitual pattern of beliefs, by creating a safe container of non-judging unbiased listening and constructive inquiry, and slowly walking through the various factors our beliefs have been constructed of.</p><p>We typically also check our awareness by seeing if we can change the habitual pattern in one way or another — though I think this control must really be seen as a test of awareness, and not a goal in itself (otherwise we merely create new habitual patterns and start labeling them as “better” than others). Another delicate issue here is to confuse the practice with life: outside the practice container, it may not be safe or practical to do things as explicitly or as slowly as during practice. Our compression algorithms have evolved for a good reason, and are still quite useful and reliable in many situations — we just need to notice when they start failing, and then be able to shift them.</p><p>I think this perspective helps to put mindfulness practices in their right place in the grand scheme of our lives, and to highlight what they are and what they are not. They are a tool to unpack and re-examine any habitual patterns we rely on. With practice, we can go deep enough as to see our fundamental patterns of perceiving the world and of finding joy in our lives. Mindfulness is not, however, a recipe for a new pattern. As there cannot exist a lossless compression algorithm that will work in all situations, so it is futile (and boring) to try formulating a fail-safe habitual pattern for life in our complex world.</p><p>How useful / accurate do you think this perspective on mindfulness is? Any ideas for further consequences of this thinking? </p><p>[cross-posted from my blog <a href="https://medium.com/bs3">https://medium.com/bs3</a>]</p>pchvykovGtMTskQyZvaLFbjXF2021-04-30T16:59:12.834ZOur compressed perception
https://lw2.issarice.com/posts/vkRpyPCBTx3jpeuzk/our-compressed-perception
<p>One of the most important and amazing feats that our brain learns to do in this complex world is to find compressed representations of the vast amounts data constantly streaming in through our various senses. As such, we may view many of the idiosyncrasies of our world-views and behaviors as side-effects of our individual habits for such compression. These habits depend on the actual objective patterns found in nature, as well as on our cultural and social context, which chooses to prioritize some patterns over others. A musician, for example, will tend to hear and be able to describe a sonata in much more detail than a lay-person, who may just categorize it as “classical music” and call it a day.</p><p>I intuitively think of it like this: if we represent the full space of actual sensory inputs as a continuous 2D space, then our brain finds some network or mesh of learned approximations that somehow covers this space (see pic). Then (unless we are in “curious learning mode”) any incoming sensation “snaps to” the nearest known point on this mesh, and the original input gets immediately forgotten. So when I see a brown wooden table with light blue stripes and four thick bent legs, all I will typically see is just “table,” immediately discarding all other sensory information.</p><figure class="image image_resized" style="width:27.94%"><img src="https://miro.medium.com/max/580/1*K2LVMD4-y4G_vjMeKvSngQ.png" srcset="https://miro.medium.com/max/552/1*K2LVMD4-y4G_vjMeKvSngQ.png 276w, https://miro.medium.com/max/580/1*K2LVMD4-y4G_vjMeKvSngQ.png 290w"></figure><p>This perception mesh will cover certain regions of the space of possible sensory inputs more densely than others, and some regions that we have never experienced may lack any coverage (read: lack any interpretation — like for Zen Koans). Over our life-time, this mesh may coarsen as we find more and more efficient ways to compress our experiences into just a few facts that actually matter for our survival. This may then subjectively feel like “the world has become gray and boring where nothing new ever happens” — because we learn to efficiently ignore the little things that don’t kill us. By the same token, when we are climbing a mountain, where little things <i>can</i> actually kill us, then we quickly start caring about much more details of our surroundings, and notice that world became rich and beautiful.</p><p>Another cool idea this raises is that since these meshes of compressed representation never agree exactly for any two people (though some of the dominant cultural concepts may generally align), we tend to have different understanding of the same situation — we can literally “see different things” when looking at the same scene. This leads to misunderstandings and disagreements, which may sometimes be very difficult to pin-down, since these compressions are performed before we ever become conscious of them. This is what allows the language of mathematics to be so powerful: its rigid structure enforces the particular compressed representation given by some theory to be the same, regardless of who uses it.</p><p>Next time, I’ll try to argue that all mindfulness practice aims at learning to “unpack” these compressed representations we are used to, and thus gives us the ability to “see the world as it really is” if and when we so choose. This in turn can help us to enjoy life and resolve disagreements, as well as to see things we did not think existed (things we used to ignore).</p><p>[Cross-posted from my blog <a href="https://medium.com/bs3">https://medium.com/bs3</a>]</p>pchvykovvkRpyPCBTx3jpeuzk2021-04-06T11:01:11.244ZComment by pchvykov on Utility Maximization = Description Length Minimization
https://lw2.issarice.com/posts/voLHQgNncnjjgAPH7/utility-maximization-description-length-minimization?commentId=mJs7gsgAjivnFXNuo
<p>Thanks for your interest - really nice to hear! here is a link to the videos (and supplement): <a href="https://science.sciencemag.org/content/suppl/2020/12/29/371.6524.90.DC1">https://science.sciencemag.org/content/suppl/2020/12/29/371.6524.90.DC1</a> </p>pchvykovmJs7gsgAjivnFXNuo2021-04-06T10:57:31.471ZComment by pchvykov on Utility Maximization = Description Length Minimization
https://lw2.issarice.com/posts/voLHQgNncnjjgAPH7/utility-maximization-description-length-minimization?commentId=yPJRTmbpiAbkGhM6c
<p>I'm really excited about this post, as it relates super closely to a recent paper I published (in Science!) about spontaneous organization of complex systems - like when a house builds itself somehow, or utility self-maximizes just following natural dynamics of the world. I have some fear of spamming, but I'm really excited others are thinking along these lines - so I wanted to share a post I wrote explaining the idea in that paper <a href="https://medium.com/bs3/designing-environments-to-select-designs-339d59a9a8ce">https://medium.com/bs3/designing-environments-to-select-designs-339d59a9a8ce</a></p><p>Would love to hear your thoughts!</p>pchvykovyPJRTmbpiAbkGhM6c2021-02-25T11:28:06.844ZObjective truth?
https://lw2.issarice.com/posts/DeoZdFk5jW4kjTEom/objective-truth
<p>Is there one true way to understand a tree? Well, of course there is — talk to any scientist! A physicist will tell you that it’s a dynamic structure of atoms, a chemist — a complex metabolic network, a biologist — an ecosystem of specialized cells, and an ecologist — that it’s one simple unit in a interconnected network of organisms. Worse yet, non-scientists have opinions too: a logger will see it differently from a kid trying to climb it from a dog peeing on it. We all constantly build models of our reality based on our personal experiences and interests — which do not agree, and so we get different models.</p><p>But what’s the “right” model? Well as a physicist, I know what <a href="https://medium.com/bs3/deriving-everyday-reality-from-fundamental-rules-427481e95d34"><u>I would say</u></a>: the sub-atomic description is really the <i>true</i> one, everything else is just some calculations on top of it. But as I am now an ex-physicist, I have learned that sometimes information may be as fundamental as energy or matter (c.f. <a href="https://en.wikipedia.org/wiki/Maxwell%27s_demon"><u>Maxwell’s demon</u></a>). By doing such complex calculations, and by choosing what exactly to calculate, we are creating new information (c.f. <a href="https://en.wikipedia.org/wiki/Computational_irreducibility"><u>computational irreducibility</u></a> + <a href="https://en.wikipedia.org/wiki/Butterfly_effect"><u>butterfly effect</u></a>), thereby creating an essentially new system.</p><p>Worse yet, it turns out information is subjective. In general, this is because the amount of information we get from learning something (“how surprised we are about it”) depends on our personal prior beliefs and interests. If I am cutting down a tree, I care about where it falls — I do not care about the precise location of every single atom in it (this is like the choice of “what to calculate” mentioned above). The “right” model of something thus depends on what we care to observe about it. But on top of this, it further depends on what we choose <i>do</i> with said something. Biologists have their particular way of viewing a tree because they spent most of their life in labs, manipulating individual cells, and caring about their interactions — so in their subjective experience, a tree is indeed best modeled as a cellular ecosystem. In fact, could we even say that for their tasks, this is the “True” model?</p><p>What I am thus saying is that the “right” model of something may be task-dependent! This seems an obvious truth from an everyday perspective, yet one that somehow gets lost in the sciences, where we are obsessed with finding THE correct description. Of course, some (especially simple) things have fairly little flexibility with what you can do with them or how you can view them — though I can’t really think of any real-world example of this right now. Even my coffee cup may be modeled very differently if handled with my hands or with an excavator.</p><p>What’s cool is that we recently published a paper where we quantify precisely this subjectivity of the optimal model using rigorous information theory! So we objectively showed that Truth may be subjective. ;-P I especially like that our formalism has an intuitive geometric interpretation: a good model is one where interventions I do to my system best “match up” with the effects I care about, while the system itself acts as a sort of an intermediating “filter” from interventions to effects. So far, we applied our formalism to … optimize dimmer-switch design. But hey, apparently that’s a whole industry! =) Theoretical science turns out to be closer to philosophy than to real-world applications. Still, check out <a href="https://www.mdpi.com/1099-4300/23/1/24"><u>our paper</u></a>!</p><p>(cross-posted from<a href="https://medium.com/bs3"> </a><span><span class="mjpage"><span class="mjx-chtml"><span class="mjx-math" aria-label="BS^3"><span class="mjx-mrow" aria-hidden="true"><span class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I" style="padding-top: 0.446em; padding-bottom: 0.298em;">B</span></span><span class="mjx-msubsup"><span class="mjx-base" style="margin-right: -0.032em;"><span class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I" style="padding-top: 0.519em; padding-bottom: 0.298em; padding-right: 0.032em;">S</span></span></span><span class="mjx-sup" style="font-size: 70.7%; vertical-align: 0.513em; padding-left: 0.13em; padding-right: 0.071em;"><span class="mjx-mn" style=""><span class="mjx-char MJXc-TeX-main-R" style="padding-top: 0.372em; padding-bottom: 0.372em;">3</span></span></span></span></span></span><style>.mjx-chtml {display: inline-block; line-height: 0; text-indent: 0; text-align: left; text-transform: none; font-style: normal; font-weight: normal; font-size: 100%; font-size-adjust: none; letter-spacing: normal; word-wrap: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0; min-height: 0; border: 0; margin: 0; padding: 1px 0}
.MJXc-display {display: block; text-align: center; margin: 1em 0; padding: 0}
.mjx-chtml[tabindex]:focus, body :focus .mjx-chtml[tabindex] {display: inline-table}
.mjx-full-width {text-align: center; display: table-cell!important; width: 10000em}
.mjx-math {display: inline-block; border-collapse: separate; border-spacing: 0}
.mjx-math * {display: inline-block; -webkit-box-sizing: content-box!important; -moz-box-sizing: content-box!important; box-sizing: content-box!important; text-align: left}
.mjx-numerator {display: block; text-align: center}
.mjx-denominator {display: block; text-align: center}
.MJXc-stacked {height: 0; position: relative}
.MJXc-stacked > * {position: absolute}
.MJXc-bevelled > * {display: inline-block}
.mjx-stack {display: inline-block}
.mjx-op {display: block}
.mjx-under {display: table-cell}
.mjx-over {display: block}
.mjx-over > * {padding-left: 0px!important; padding-right: 0px!important}
.mjx-under > * {padding-left: 0px!important; padding-right: 0px!important}
.mjx-stack > .mjx-sup {display: block}
.mjx-stack > .mjx-sub {display: block}
.mjx-prestack > .mjx-presup {display: block}
.mjx-prestack > .mjx-presub {display: block}
.mjx-delim-h > .mjx-char {display: inline-block}
.mjx-surd {vertical-align: top}
.mjx-surd + .mjx-box {display: inline-flex}
.mjx-mphantom * {visibility: hidden}
.mjx-merror {background-color: #FFFF88; color: #CC0000; border: 1px solid #CC0000; padding: 2px 3px; font-style: normal; font-size: 90%}
.mjx-annotation-xml {line-height: normal}
.mjx-menclose > svg {fill: none; stroke: currentColor; overflow: visible}
.mjx-mtr {display: table-row}
.mjx-mlabeledtr {display: table-row}
.mjx-mtd {display: table-cell; text-align: center}
.mjx-label {display: table-row}
.mjx-box {display: inline-block}
.mjx-block {display: block}
.mjx-span {display: inline}
.mjx-char {display: block; white-space: pre}
.mjx-itable {display: inline-table; width: auto}
.mjx-row {display: table-row}
.mjx-cell {display: table-cell}
.mjx-table {display: table; width: 100%}
.mjx-line {display: block; height: 0}
.mjx-strut {width: 0; padding-top: 1em}
.mjx-vsize {width: 0}
.MJXc-space1 {margin-left: .167em}
.MJXc-space2 {margin-left: .222em}
.MJXc-space3 {margin-left: .278em}
.mjx-test.mjx-test-display {display: table!important}
.mjx-test.mjx-test-inline {display: inline!important; margin-right: -1px}
.mjx-test.mjx-test-default {display: block!important; clear: both}
.mjx-ex-box {display: inline-block!important; position: absolute; overflow: hidden; min-height: 0; max-height: none; padding: 0; border: 0; margin: 0; width: 1px; height: 60ex}
.mjx-test-inline .mjx-left-box {display: inline-block; width: 0; float: left}
.mjx-test-inline .mjx-right-box {display: inline-block; width: 0; float: right}
.mjx-test-display .mjx-right-box {display: table-cell!important; width: 10000em!important; min-width: 0; max-width: none; padding: 0; border: 0; margin: 0}
.MJXc-TeX-unknown-R {font-family: monospace; font-style: normal; font-weight: normal}
.MJXc-TeX-unknown-I {font-family: monospace; font-style: italic; font-weight: normal}
.MJXc-TeX-unknown-B {font-family: monospace; font-style: normal; font-weight: bold}
.MJXc-TeX-unknown-BI {font-family: monospace; font-style: italic; font-weight: bold}
.MJXc-TeX-ams-R {font-family: MJXc-TeX-ams-R,MJXc-TeX-ams-Rw}
.MJXc-TeX-cal-B {font-family: MJXc-TeX-cal-B,MJXc-TeX-cal-Bx,MJXc-TeX-cal-Bw}
.MJXc-TeX-frak-R {font-family: MJXc-TeX-frak-R,MJXc-TeX-frak-Rw}
.MJXc-TeX-frak-B {font-family: MJXc-TeX-frak-B,MJXc-TeX-frak-Bx,MJXc-TeX-frak-Bw}
.MJXc-TeX-math-BI {font-family: MJXc-TeX-math-BI,MJXc-TeX-math-BIx,MJXc-TeX-math-BIw}
.MJXc-TeX-sans-R {font-family: MJXc-TeX-sans-R,MJXc-TeX-sans-Rw}
.MJXc-TeX-sans-B {font-family: MJXc-TeX-sans-B,MJXc-TeX-sans-Bx,MJXc-TeX-sans-Bw}
.MJXc-TeX-sans-I {font-family: MJXc-TeX-sans-I,MJXc-TeX-sans-Ix,MJXc-TeX-sans-Iw}
.MJXc-TeX-script-R {font-family: MJXc-TeX-script-R,MJXc-TeX-script-Rw}
.MJXc-TeX-type-R {font-family: MJXc-TeX-type-R,MJXc-TeX-type-Rw}
.MJXc-TeX-cal-R {font-family: MJXc-TeX-cal-R,MJXc-TeX-cal-Rw}
.MJXc-TeX-main-B {font-family: MJXc-TeX-main-B,MJXc-TeX-main-Bx,MJXc-TeX-main-Bw}
.MJXc-TeX-main-I {font-family: MJXc-TeX-main-I,MJXc-TeX-main-Ix,MJXc-TeX-main-Iw}
.MJXc-TeX-main-R {font-family: MJXc-TeX-main-R,MJXc-TeX-main-Rw}
.MJXc-TeX-math-I {font-family: MJXc-TeX-math-I,MJXc-TeX-math-Ix,MJXc-TeX-math-Iw}
.MJXc-TeX-size1-R {font-family: MJXc-TeX-size1-R,MJXc-TeX-size1-Rw}
.MJXc-TeX-size2-R {font-family: MJXc-TeX-size2-R,MJXc-TeX-size2-Rw}
.MJXc-TeX-size3-R {font-family: MJXc-TeX-size3-R,MJXc-TeX-size3-Rw}
.MJXc-TeX-size4-R {font-family: MJXc-TeX-size4-R,MJXc-TeX-size4-Rw}
.MJXc-TeX-vec-R {font-family: MJXc-TeX-vec-R,MJXc-TeX-vec-Rw}
.MJXc-TeX-vec-B {font-family: MJXc-TeX-vec-B,MJXc-TeX-vec-Bx,MJXc-TeX-vec-Bw}
@font-face {font-family: MJXc-TeX-ams-R; src: local('MathJax_AMS'), local('MathJax_AMS-Regular')}
@font-face {font-family: MJXc-TeX-ams-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_AMS-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_AMS-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_AMS-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-cal-B; src: local('MathJax_Caligraphic Bold'), local('MathJax_Caligraphic-Bold')}
@font-face {font-family: MJXc-TeX-cal-Bx; src: local('MathJax_Caligraphic'); font-weight: bold}
@font-face {font-family: MJXc-TeX-cal-Bw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Caligraphic-Bold.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Caligraphic-Bold.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Caligraphic-Bold.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-frak-R; src: local('MathJax_Fraktur'), local('MathJax_Fraktur-Regular')}
@font-face {font-family: MJXc-TeX-frak-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Fraktur-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Fraktur-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Fraktur-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-frak-B; src: local('MathJax_Fraktur Bold'), local('MathJax_Fraktur-Bold')}
@font-face {font-family: MJXc-TeX-frak-Bx; src: local('MathJax_Fraktur'); font-weight: bold}
@font-face {font-family: MJXc-TeX-frak-Bw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Fraktur-Bold.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Fraktur-Bold.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Fraktur-Bold.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-math-BI; src: local('MathJax_Math BoldItalic'), local('MathJax_Math-BoldItalic')}
@font-face {font-family: MJXc-TeX-math-BIx; src: local('MathJax_Math'); font-weight: bold; font-style: italic}
@font-face {font-family: MJXc-TeX-math-BIw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Math-BoldItalic.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Math-BoldItalic.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Math-BoldItalic.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-sans-R; src: local('MathJax_SansSerif'), local('MathJax_SansSerif-Regular')}
@font-face {font-family: MJXc-TeX-sans-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_SansSerif-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_SansSerif-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_SansSerif-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-sans-B; src: local('MathJax_SansSerif Bold'), local('MathJax_SansSerif-Bold')}
@font-face {font-family: MJXc-TeX-sans-Bx; src: local('MathJax_SansSerif'); font-weight: bold}
@font-face {font-family: MJXc-TeX-sans-Bw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_SansSerif-Bold.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_SansSerif-Bold.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_SansSerif-Bold.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-sans-I; src: local('MathJax_SansSerif Italic'), local('MathJax_SansSerif-Italic')}
@font-face {font-family: MJXc-TeX-sans-Ix; src: local('MathJax_SansSerif'); font-style: italic}
@font-face {font-family: MJXc-TeX-sans-Iw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_SansSerif-Italic.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_SansSerif-Italic.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_SansSerif-Italic.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-script-R; src: local('MathJax_Script'), local('MathJax_Script-Regular')}
@font-face {font-family: MJXc-TeX-script-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Script-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Script-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Script-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-type-R; src: local('MathJax_Typewriter'), local('MathJax_Typewriter-Regular')}
@font-face {font-family: MJXc-TeX-type-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Typewriter-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Typewriter-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Typewriter-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-cal-R; src: local('MathJax_Caligraphic'), local('MathJax_Caligraphic-Regular')}
@font-face {font-family: MJXc-TeX-cal-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Caligraphic-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Caligraphic-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Caligraphic-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-main-B; src: local('MathJax_Main Bold'), local('MathJax_Main-Bold')}
@font-face {font-family: MJXc-TeX-main-Bx; src: local('MathJax_Main'); font-weight: bold}
@font-face {font-family: MJXc-TeX-main-Bw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Main-Bold.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Main-Bold.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Main-Bold.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-main-I; src: local('MathJax_Main Italic'), local('MathJax_Main-Italic')}
@font-face {font-family: MJXc-TeX-main-Ix; src: local('MathJax_Main'); font-style: italic}
@font-face {font-family: MJXc-TeX-main-Iw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Main-Italic.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Main-Italic.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Main-Italic.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-main-R; src: local('MathJax_Main'), local('MathJax_Main-Regular')}
@font-face {font-family: MJXc-TeX-main-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Main-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Main-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Main-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-math-I; src: local('MathJax_Math Italic'), local('MathJax_Math-Italic')}
@font-face {font-family: MJXc-TeX-math-Ix; src: local('MathJax_Math'); font-style: italic}
@font-face {font-family: MJXc-TeX-math-Iw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Math-Italic.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Math-Italic.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Math-Italic.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-size1-R; src: local('MathJax_Size1'), local('MathJax_Size1-Regular')}
@font-face {font-family: MJXc-TeX-size1-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Size1-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Size1-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Size1-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-size2-R; src: local('MathJax_Size2'), local('MathJax_Size2-Regular')}
@font-face {font-family: MJXc-TeX-size2-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Size2-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Size2-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Size2-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-size3-R; src: local('MathJax_Size3'), local('MathJax_Size3-Regular')}
@font-face {font-family: MJXc-TeX-size3-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Size3-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Size3-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Size3-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-size4-R; src: local('MathJax_Size4'), local('MathJax_Size4-Regular')}
@font-face {font-family: MJXc-TeX-size4-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Size4-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Size4-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Size4-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-vec-R; src: local('MathJax_Vector'), local('MathJax_Vector-Regular')}
@font-face {font-family: MJXc-TeX-vec-Rw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Vector-Regular.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Vector-Regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Vector-Regular.otf') format('opentype')}
@font-face {font-family: MJXc-TeX-vec-B; src: local('MathJax_Vector Bold'), local('MathJax_Vector-Bold')}
@font-face {font-family: MJXc-TeX-vec-Bx; src: local('MathJax_Vector'); font-weight: bold}
@font-face {font-family: MJXc-TeX-vec-Bw; src /*1*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/eot/MathJax_Vector-Bold.eot'); src /*2*/: url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/woff/MathJax_Vector-Bold.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/fonts/HTML-CSS/TeX/otf/MathJax_Vector-Bold.otf') format('opentype')}
</style></span></span></span><a href="https://medium.com/bs3"> blog</a>)</p>pchvykovDeoZdFk5jW4kjTEom2021-02-15T21:47:35.973Z