Good evening aspirants. Welcome to daily news analysis brought to you by Shankarai's Academy. Today's date is 31st January 2024. Displayed here are the list of topics we are going to see today. Now without wasting any time, let us get into the discussion. Look at this news article. See yesterday, the results of snow leopard population assessment were made public in India. It was a four-year long estimation exercise to survey the number of snow leopards in India. As per the assessment, the highest number of snow leopards were found to be in Ladakh. This is followed by Uttarakhand, Himachal Pradesh, Arunachal Pradesh, Sikkim and Jammu and Kashmir. So, there were totally nine states in which we can find snow leopards. Note this carefully. In India, there are estimated 718 snow leopards which accounts for 10 to 15 percentage of global population. So, this is the important points given in the article. In this context, we shall go through snow leopard and the steps taken for its conservation.  Here elusive means they are very difficult to find. And snow leopard has a beautiful spotted coat and they use it for camouflage. See the image here. Can you spot the difference between surroundings and the cat? No, right? So, that's how camouflaged their skin will be. So, this skin is also useful for insulating them from cold. Now talking about their habitat, see snow leopards live in a high altitude mountainous region in central and southern Asia. So, usually they live in the altitudes of 3000 to 4500 meters above mean sea level. So, they habitat extends across mountainous regions of 12 countries. So, basically snow leopards are found in 12 countries. They were Afghanistan, Bhutan, China, India, Kazakhstan, Kyrgyzstan, Mongolia, Nepal, Pakistan, Russia, Tajikistan and Uzbekistan. So, these are the 12 countries which has snow leopard population. In India, the snow leopards can be found in western Himalayas, in the territories of Jammu and Kashmir and Ladakh, Himachal Pradesh, Uttarkhand, Sikkim and Arunachal Pradesh. So, they are found in western Himalayas and also in eastern Himalayas. Now talking about their conservation status, snow leopard is classified as vulnerable by IUCN. It faces threat from free-ranging dogs, human wildlife conflict and poaching. So, it becomes very important to carry out conservation efforts to conserve this elusive species of mountainous cats. Now talking about the conservation efforts taken to protect them. In India, the snow leopard is listed under Schedule 1 of Wildlife Prevention Act 1972. So, they are given highest protection in the country law. Apart from this, India has launched two conservation efforts. One is Project Snow Leopard and it promotes inclusive and participatory approach to conserve snow leopards. The second one is Secure Himalayas. It is a part of global partnership on wildlife conservation and crime prevention for sustainable development. So, it is a global wildlife program and it is funded by Global Environment Facility. So, it contributes to the Global Snow Leopard Ecosystem Protection Program. So, this is also a global program regarding the protection of snow leopards and it is a joint initiative of 12 snow leopard range countries that we have seen earlier. So, these are the important conservation measures taken in India and also globally to conserve snow leopards. With this, let us conclude the discussion and move to the next topic. Look at this news article, India nominates 12 forts of Marathas for UNESCO World Heritage List. Correctively, they are called Maratha Military Landscapes. It symbolizes the cultural and strategic excellence of Maratha period. So, this is the crux of the article given here. In our discussion, we shall see some of the recently added UNESCO World Heritage sites from India. We shall see this in the order of latest to earliest. See, India has 42 UNESCO World Heritage sites. Out of these 42 sites, 34 sites are cultural sites, 7 are natural sites and one is a mixed site. That is, one site is both natural and cultural site. And this one mixed site is Kanjanjanga National Park. Know that India is the sixth country in the world with the most UNESCO World Heritage site. Now, let us see the list of sites. The latest edition is Sacred Ensembles of Hoisala and Shanti Niketan. Let us see them in brief. The Sacred Ensembles of Hoisala is in the state of Karnataka. This consists of three Hoisala style temples in southern India, which dates back from 12th to 13th centuries. The temples were at Belur, Halibidu and Somanadapura. So, this is about Hoisala temples. Now, let us see about Shanti Niketan. It is in West Bengal. It is a cultural and educational center established by Ravindranath Thakur. The next site is Kakathya Rudreswara temple which is in Telangana. It was declared as UNESCO World Heritage Site in 2021. And unique feature of this temple is Vimana of the temple. It is made up of light weight, porous floating bricks which reduce the weight of roof structures. Moreover, the building has decorated beams and sculptures which illustrates the significance of Kakathya culture. The fourth site is Dolavira. It is in Gujarat and it is in Harappan city which is declared as World Heritage Site in 2020. It is one of the most remarkable and well preserved urban settlements. And the unique feature of this city is water management system. It has multi-layered water system, extensive use of stone in construction and burial structures. So, this is about the latest sites from India which is included in World Heritage list of UNESCO. With this, let us conclude the discussion and move to the next topic. Now, this news article talks about a petition accepted by National Company Law Tribunal. The petition was filed by Zee Entertainment against Sony for calling of a major deal. So, in this context let us understand about National Company Law Tribunal in Prelims Prospective. The National Company Law Tribunal is a quasi-judicial body and it handles some matters related to corporate law including disputes between companies and their shareholders. The NCLT was established under Company SAC 2013 and began functioning on 2016. Since it was created through an act, it is a statutory body. Now, what are the objectives of NCLT? The main objective of NCLT is to provide a forum for speedy and effective resolution of corporate disputes. Now, let us see the functions of NCLT. One of the key functions is to oversee the insolvency resolution process under Insolvency and Bankruptcy Code 2016. See, when a company is unable to pay its debts, it can be declared insolvent and placed under the supervision of NCLT. The NCLT then appoints an insolvency professional to manage the affairs of the company and initiate the process of resolution or liquidation. Here, note that NCLT deals with insolvency of only corporate persons under the code, that is the Insolvency and Bankruptcy Code. But in case of insolvency proceedings regarding individuals and partnership firms, it will be dealt by debt recovery tribunals. So, this is the difference between debt recovery tribunals and NCLT. Secondly, NCLT plays a crucial role in facilitating mergers and acquisitions. When two or more companies wish to merge, they must seek the approval of NCLT. The tribunal examines a proposal and ensures that it is in compliance with relevant laws and regulations. So, if the merger is approved, the NCLT oversees the process of integration and ensures that the interests of all stakeholders are protected. Finally, NCLT plays an important role in resolving corporate disputes. So, these are the important functions of NCLT. The NCLT has principal bench at New Delhi. Apart from this, it also has benches at Ahmadabad, Alhabath, Bangalore, Chandigarh, Chennai, Gauhati, Hyderabad, Kolkata and Mumbai. So, these are the major benches where NCLT is present. Now, talking about the composition of NCLT, it has a president and some other judicial and technical members. The president of this tribunal will be appointed by central government after consultation with Chief Justice of India. Note that the president of NCLT must be a judge of High Court and the members of the tribunal are appointed by central government based on the recommendation of a selection committee. So, this is the composition of NCLT. So, if anyone is agreed with the decisions of NCLT, they can make an appeal before national company law appeal a tribunal, that is NCLAT. And the decisions of NCLAT can be appealed before Supreme Court. So, anyone who is agreed with the decisions of NCLT cannot directly go to Supreme Court, but first they have to go to NCLAT. So, this is all about the discussion. Now, let us move to the next topic. Now, have a look at this news article. The International Monetary Fund has released its forecast for global economic growth. In this forecast, it has upgraded the outlook for United States and China, which are the two largest economies. IMF called it as a soft landing economic growth. So, this is the crux of the article. In our discussion, we are going to see about the basics of International Monetary Fund. See, IMF was established in 1944 to oversee the stability of the world's monetary system. It was created at the Bretton Woods UN Conference, which happened in the United States in 1944. Know that it is one of the Bretton Woods twin organizations and the other one is World Bank. The aim of IMF is to achieve sustainable growth and prosperity for all of its member nations. So, there were 190 member countries in IMF at present. IMF supports economic policies and promote financial stability and monetary cooperation between the member countries. Another thing to note here is that International Bank for Reconstruction and Development is a lending arm of World Bank. And if a country wants to join International Bank for Reconstruction Development, they have to be a member of IMF. So, this is about the basics of IMF. Now, let us see the three critical missions of IMF. The first is furthering International Monetary Cooperation. The second is encouraging the expansion of trade and economic growth. The third is discouraging policies that would harm prosperity. So, these are the three critical missions of IMF. In order to fulfill these missions, IMF member countries work collaboratively with each other and with the international bodies. Apart from this, IMF provides policy advices and provides for capacity development through technical assistance and training to the member countries. Now, let us see how IMF works. See, IMF provides financial assistance to its member countries as we have seen earlier. There is a non-concessional account maintained by IMF called General Resource Account, that is, GRA. All the IMF member countries are eligible to borrow from the GRA at market-based interest rates. Moreover, there is another account called Poverty Reduction and Growth, PRGT. This account is where only the low-income countries can borrow at concessional rates. So, the difference is, in general resource accounts, any country who is a member of IMF can borrow from IMF. But from PGRT account, only the low-income countries can borrow from it. Note that unlike development banks like World Bank, IMF does not lend for a specific project. Instead, IMF provides financial support to the countries which are hit by crisis. So, IMF generally support the countries that are struggling to help them restore the economic stability. So, this is how IMF works. Now, let us see about special drawing rights which is associated with this IMF. See, SDR is a Subliminary International Reserve Asset which is created by IMF to supplement the official reserves of its member countries. Basically, it is an interest-bearing international reserve asset and it was created in 1969 as we know that IMF member nations have many different national currencies. The IMF denominates its membership quota in terms of SDR. The value of SDR is determined by the basket of major world currencies. So, this basket of currencies helps make SDR a stable and widely accepted form of international money. As of now, the basket currencies for SDR are US dollar, Euro, Chinese renminbi, Japanese yen and British pound. So, these are the five basket currencies which comprise SDR. The member countries can use SDR to supplement their official reserves. They can also use SDR to settle international transactions or even exchange them for other currencies. So, SDR provides a way for countries to have a reserve that is not tight to currency of single nation and also remember that the value of SDR is set daily by the IMF and the valuation basket of currencies is reviewed and adjusted for every five years. So, this is important point about SDR that is special drawing rights. So, with this, let us conclude the discussion and move to the next topic. Look at this news article. It is taken from business standard. The article reports that RBI may conduct open market operation or reduce the cash reserve ratio in order to ease liquidity conditions in the country. This is due to the fear that government must refrain from spending before elections. So, this is the crux of the article given here. In our analysis, we shall see about the two economic concepts that is open market operation and long term repo operation. First, let us take up open market operation. It means buying and selling of bonds issued by the government in the open market. It is one of the quantitative tools used by RBI to smoothen the liquidity and minimize the inflation level. Know that in open market operation, the central bank enters financial markets and either buys or sells government securities. The government securities like treasury bills, bonds or notes are sold during open market operations. The open market operation does not directly deal with the public. The RBI just sells these government securities to the commercial banks. Now, let us see how this open market operation works. When RBI wants to expand the money supply and boost the demand, the policy is called expansionary monetary policy. Here, the RBI buys securities and injects money into the banking system. As a consequence, this will increase the reserve of banks and decrease the interest rates. Moreover, this will also encourage borrowing, spending and stimulating the overall economic activity. Likewise, if there is an inflation and RBI want to control it, then it uses policies which will be contractionary policies. In this process, the RBI will sell the securities and get the money back from the banking system. So, this will reduce the reserve of banks and puts upward pressure on interest rates. As we know that higher interest rates can discourage borrowing and spending which will eventually control inflation. So, this is about open market operation. So, basically open market operation is about buying and selling of government securities by RBI to the commercial banks. Now, let us see about long-term repo operation. So, in simple terms, long-term repo operation means a tool used by RBI to ensure that commercial banks are getting resources at repo rate for a long time. As we know that repo rate is a rate at which RBI gives loans to the banks by accepting the securities. The long-term repo operation aims to ensure sufficient liquidity in the economy and the working of LTRO is very simple. Here, the RBI will buy the government securities from the banks and in turn provide money for the banks for long-term period that is for one year or three years. So, this long-term period is what the essence of long-term repo operation. We know that there is already a mechanism called liquidity adjustment facility. This will allow the banks to avail liquidity in case of requirement, but the main difference between the long-term repo operation and liquidity adjustment facility is that the liquidity adjustment facility is usually provided for limited period that is for seven days or 14 days. But the long-term repo operation is providing the money for long-term that is one year or three years. Also note that a new liquidity adjustment facility called marginal standing facility that is MSF is created by RBI in 2011. Under MSF, RBI offers money to bank at a rate higher than repo rate. So, this is also a short-term operation. The long-term repo operation will be conducted on eCuber platform of RBI. The eCuber is a core banking solution of RBI which gives a high degree of access to commercial banks and other institutions to their current account with the RBI. So, this is all about the discussion. Now, let us move to the next topic. Now, look at this article. It talks about the issues with electric vehicles. As per the article, the hybrid vehicles are emitting lesser carbon when compared to fully electric vehicles. So, in this context, let us understand the challenges in adopting electric vehicles in India. See the first challenge is respect to subsidies. The faster adoption of electric vehicles require an elaborate system of incentives and subsidies. For example, Norway's EV policy has lot of subsidies and reduces tax on electric vehicles. So, if India also provides subsidies like this, it will predominantly insub in the hands of middle and upper middle classes. In other words, the concern is that the financial incentives to promote the adoption of electric vehicles might not effectively reach broader segment of population. As a result, it may increase the existing social and economic inequalities. The second challenge is respect to charging network. See, in India, there exists a vehicle mix which is dominated by two-wheelers and three-wheelers. Both the cars and these small vehicles have different charging requirements. So, building charging infrastructure for electric vehicles by accommodating all these needs is an issue. The third challenge is with respect to the electricity source. See, in many countries, the electricity for EVs is generated from renovables. For example, Norway has 99% of hydroelectric power. But in India, the grid is still fed largely by the coal-fired thermal pants. This raises a concern related to environmental pollution and emission. The final challenge is respect to India's import dependency on global lithium value chain. See, the demand of lithium-ion batteries for electric vehicles is projected to grow by 30% in 2030. So, this means more than 50 tons of lithium is required to manufacture EV batteries alone. So, India must entirely depend on imports for producing lithium batteries for electric vehicles. So, considering all these facts, the article suggests we have to embrace hybrid vehicles for next 5 to 10 years before going to full electrification. Such vehicles are more practical and medium-term solution for countries' decarbonization efforts. It will also reduce pollution and will accommodate the country's needs. Here the hybrid vehicles means the vehicles which are powered by internal combustion engine and one or more electronic motors. So, they can run on both diesel or on electric charge. So, this is the hybrid vehicles and the article is suggesting India to use hybrid vehicles before fully adopting the electric vehicles. So, this is all about the discussion. Now, we have come to the problem's practice question discussion. Look at the first question, rapid financing instrument and rapid credit facility are related to the provisions of lending by which one of the following. It is a previous year question. The answer is B, International Monetary Fund. Now, look at the second question. Consider the following about long-term repo operation. It enables a central bank to provide short-term credit to the banks. It is conducted on E-Cuber platform of RBI. The interest rate is provided at repo rate. The total limit of long-term repo operation is decided by RBI. See, the first statement is incorrect because it provides long-term credit to the bank and the other three statements are correct. So, the correct answer is option C, only three. Which one of the following pairs of world heritage site is correctly matched? Ramapha Temple. It is not in Karnataka. It is in Telangana. Dholavira. It is in Gujarat. Architecture of Leek or Beesar. Yes, it is in Chandigarh. Champanar Pavgat. It is in Gujarat. It is not in Maharashtra. So, the correct answer is option C. Now, look at the fourth question. It is about snow leopard. India's first snow leopard conservation center will come up in Uttarkhand. Yes, this statement is correct. Global snow leopard and ecosystem production program is an intergovernmental alliance of all 12 snow leopard range countries. Yes, this statement is also correct. We have seen this in discussion. So, the correct answer is option A. With this, we have come to the end of the discussion. If you like the video, please share it with your friends and don't forget to subscribe to Shankarai's Academy YouTube channel. Thank you.


Hi, my name is Chenda, and I'm going to talk about always have a backup plan, fully secure synchronous MPC with asynchronous fallback. This is joint work with Erika Bloom and Julian Los. The paper is on secure multi-party computation, or MPC. At a very high level, MPC allows a set of parties, each with a private input, to jointly compute an arbitrary function in such a way that nothing about the inputs is revealed. Of course, beyond what is revealed, play the computed output itself. The parties want to achieve what can be achieved in an ideal setting with a trusted party. And this is especially difficult because some of the parties might be corrupted. Very roughly, protocols for MPC can be classified according to the underlying communication model. On one hand, we have the synchronous model, which assumes that parties have access to synchronized clocks, and also parties know an upper bound on the network communication delay. That is, when a party sends a message, it is guaranteed to be delivered within a known quantity delta. This model, although widely used in the crypto literature, is not very realistic. Consider, for example, a setting where the network delay is unpredictable and gets large at specific points in time. Maybe the weather is bad, or maybe the communication network is under attack. Then, synchronous protocols lose all the security guarantees, which is highly undesirable. A much more realistic model is the asynchronous model. This model does not make any assumptions on the synchrony of the clocks and only uses the fact that messages sent by honest parties are eventually delivered. So why do we design synchronous protocols? I guess one of the main reasons is that they achieve very strong security guarantees. Assuming standard setup assumptions, it is known that synchronous MPC protocols can tolerate up to T smaller and half corruptions. And allow every party to give input. In contrast, asynchronous MPC protocols can only tolerate up to n-third corruptions. And unavoidably, the inputs of up to T parties are ignored. What does this mean? Formally, this means that the adversary can choose up to T inputs and substitute them by a default value of both before the output is computed. So it would be great to have the advantages of both models, namely to design a single protocol such that when the network is synchronous, it achieves a very strong security guarantee. And even when the network is asynchronous, it also achieves reasonable guarantee. And the question is not only motivated by theory, but also the real world. Imagine a setting where the network conditions fluctuate, but are mostly stable. In periods where the network delays are stable and within delta, our protocol achieves synchronous strong guarantees. And even if parties experience a short outage, our protocol still achieves asynchronous guarantees. More concretely, we would like to have input completeness and tolerate up to TS corruptions when the network is synchronous. And even when the network is asynchronous, we would like to at least tolerate TA corruptions. Of course, allowing some of the inputs to be ignored. So we answered the question by showing that such a protocol exists if and only if TA plus two TS smaller than N and the number of ignored inputs is at least TS. That is, we cannot guarantee to ignore less than TS inputs when the network is asynchronous. So we are not the first to ask this question. The literature on hybrid security guarantees is extensive, so we defer a detailed related work to the paper. I guess the most closely related work is the recent work by Bloom, Katz and Loss on achieving such trade-offs for the case of presenting agreement protocols and also later extended to the problem of state machine replication. Work mentioning is also the work by Hird, Nielsen and Bartosz, which provide an asynchronous NPC protocol for up to m3rd corruptions with the feature that when the network is synchronous, all inputs are taken into account for the computation. So let's start with the feasibility result. We make use of a core sub protocol, which we call SMPC. This is an NPC protocol which achieves all the security guarantees we expect when the network is synchronous. But in addition, still achieves reasonably strong security guarantees even when the network is asynchronous. In this case, the protocol allows all honest parties to give a valid output YA with up to L ignored inputs or all honest parties output BOT. So there is agreement on what the output is. We can then use this strong sub protocol with any asynchronous m3rd NPC protocol to get the guarantees we want. The idea is simply to first run the SMPC protocol and then run the asynchronous NPC protocol if the output is BOT. So let's see if the network is synchronous, the security guarantees are inherited from the sub protocol SMPC. And if the network is asynchronous, either all parties obtain an asynchronous output YA that can ignore up to L inputs, so we are fine. Or all parties obtain BOT, in which case parties know the network is asynchronous. So they can all execute a traditional NPC asynchronous protocol, so we are fine as well. So let's get into the sub protocol SMPC. The protocol uses a threshold comomorphic encryption scheme. And this is a public key encryption scheme with the feature that the secret key is distributed among the parties. All parties have a public key EK and each party PI also has a secret key DKI. With the public key, any party can compute an encryption. The encryption is homomorphic in the sense that given two ciphertexts, one can compute a ciphertext containing the addition of the corresponding plaintexts. One can then compute a decryption share from a ciphertext. And given enough decryption shares on the same ciphertext, one can reconstruct the corresponding plaintext. And in our protocol, the number of decryption shares needed to reconstruct will be TS plus one. The sub protocol SMPC follows the CDN approach, Cramer-Danvers-Nielsen approach, based on threshold homomorphic encryption. So the CDN protocol has three phases, which roughly proceed as follows. In the first phase, each party PI encrypts its input with the threshold encryption key and broadcasts the ciphertext. The parties then jointly evaluate the circuit. The addition gates are evaluated using the homomorphic property of the threshold encryption scheme. And the multiplication gates are performed using a distributed protocol. Then after the circuit evaluation, each party holds an encryption of the output. And then each party computes a decryption share and distributes it. And then parties can jointly reconstruct the output. Of course, to achieve security against a malicious adversary, parties need to make use of zero-knowledge proofs in several steps of the protocol. And the CDN protocol was designed under asynchronous network. And intuitively, it works because honest parties have agreement on the ciphertext to decrypt after the circuit evaluation. And also no crucial information is revealed throughout the execution of the protocol. When the network is asynchronous, however, several problems might arise because agreement is lost in critical points of the protocol. For example, when parties broadcast their input ciphertext, it is possible that different parties receive different sets of inputs. So if they evaluate these, different parties will end up with different ciphertexts, which if decrypted will lead to the adversary learning different outputs and breaking privacy. We address these problems by using several primitives that guarantee different properties depending on the communication network. In this talk, I will only introduce two such sub-protocols. And this will serve to get a high-level idea of our protocol. The first protocol is a broadcast protocol that achieves all the security guarantees when the network is synchronous, but also achieves so-called weak validity when the network is asynchronous. Meaning that when the sender is honest, its recipient outputs the sender's input or both. Such a protocol can be achieved using a dollar-strong approach. The second primitive is a so-called asynchronous common subset protocol. And this primitive allows each party to give inputs and agree on a common subset of the inputs. We need that if the network is synchronous, some sort of validity is ensured. This means that if all honest parties give the same input value, then the output is a singleton containing this value. Also, when the network is asynchronous, all honest parties have consistency, meaning that they all output the same set of values. And moreover, this set contains at least the input of an honest party. Such an ACS protocol can be achieved using the traditional Benor-Kelmer and Rabin approach, later modified by Blum-Cuts and Loss, where they give a twist to the traditional protocol to achieve higher validity, meaning that it holds even when there are up to TS corruptions. Now we can plug in the described primitives into the CDM protocol. So in the input distribution, parties use this enhanced broadcast primitive and expect to obtain at least N-TS good ciphertexts. For this, parties wait for a time T, which is an upper bound on the execution time of the broadcast protocols when the network is synchronous. If an honest party didn't receive these many good ciphertexts, it simply skips the circuit evaluation and starts the ACS with both as input value. Otherwise, parties evaluate the circuit as before. And after this, instead of decrypting, they jointly execute the ACS protocol with the output ciphertext as input value. Parties then obtain a set of ciphertexts. If the set is a singleton, then parties proceed as in CDM, as described before. That is, parties jointly decrypt the ciphertext and output the decrypted value. Otherwise, if the set contains more than one value, all parties output both. So note that when the network is synchronous, the protocol proceeds similarly to CDM. All parties obtain the same output ciphertext, and the ACS will output a singleton with this ciphertext, which will be decrypted. And when the network is asynchronous, the ACS guarantees consistency. So all honest parties obtain the same set as output, which contains the input of at least an honest party. So either the output is a singleton set, which contains the output ciphertext proposed by an honest party, in which case it contains n-ts inputs. So we are happy. Or the ACS outputs more than a value, in which case the output of sNPC is both. So we can evaluate the asynchronous MPC protocol, as described before, in the compiler. So we talked about visibility, and now we proceed to the lower bounds. The first lower bound says that it is unavoidable to ignore the inputs up to TS parties. And this holds independently of what the corruption threshold is in the asynchronous case. That is, even when TA is equal to zero. The function that parties wish to compute, and the one that we consider, is the OR function. So consider a scenario of the protocol execution under asynchronous network, where parties are divided into two sets. The first set in red contains TS corrupted parties, which crash at the beginning of the protocol execution. The second set contains n-ts honest parties, all with input zero. Because the parties are computing the OR function on the receipt inputs, and the protocol is secure up to TS corruptions, all honest parties output zero. Now consider a scenario where the network is asynchronous, and all parties are honest. The first set of parties has as input one, whereas the second set has as input zero, as before. The adversary, however, delays the messages between these two sets. Since the parties in the second set cannot distinguish between being in the first or second scenario, all parties in the second set output zero as well, in the asynchronous case. But this contradicts the fact that the output ignores less than TS parties. If the input of any party on the first set is taken into account for the computation, the output would be one. The second lower bound is inherited from the lower bound presented by bloom cuts and loss for Byzantine agreement. Here parties compute the majority function. And we divide the parties into three sets of sizes TS, TS and TA. So in the first scenario, if TS parties are corrupted and crash, and all honest parties have zero as input, the output is zero, because zero is the majority value. And the same argument holds symmetrically when the input is one for the other sets. So now, consider a scenario where the adversary corrupts TA parties, and also in addition delays all messages between the upper two sets. The adversary simply plays the two strategies as in the synchronous execution, with input zero towards the left set, and with input one towards the right set. Since the upper sets have the same view as in the synchronous execution, the left set outputs zero, and the right set outputs one. But this contradicts the fact that parties should get the same value, since they compute the majority function over the same set of inputs. And note that this holds even when all the inputs are ignored. So thank you very much for your attention, and this is all from my side. Here you can find the references and the link to the full version of the paper. And I hope to see you all at the virtual conference.


I got a little bit messed up with the generating function approach and I want to try and convince you that everything is actually much easier than it seems and it's just if you're sloppy that's when you get yourself into problems. So anyways, let's sort of recapitulate. So we imagine a system that consists of particles which we can think of as bacteria that die at a certain rate and each one gives birth at the same rate. And because these birth and death rates are the same, the population overall is neutral. That is that the average number of particles doesn't change. So if you were just to write a rate equation for the average number of particles, dndt, you would just write zero. So it looks like nothing happens. But in fact, if you look at the underlying probability distribution, much happens and that's what we're going to be discussing now. So last time we talked about the master equation for the probability that there are n particles in the system at time t, pn of t. And so if I look at the time derivative of this thing, it's equal to n minus one pn minus one minus two n pn plus n plus one pn plus one. And again, the explanation of these different terms is that if I have n minus one particles in the system, each one can give birth at the rate one. And so with the overall rate n minus one, you can go from n minus one particles in the system to n particles in the system. So this term describes the gain in the probability that there are n particles in the system. Similarly here, if I have n plus one particles in the system and one of those n plus one particles dies at the rate one, so the overall death rate of the population is n plus one, then you can go from n plus one particles to n. And sitting here with n particles in the system, any one particle can either give birth or die, so the total rate of any one particle in the system changing is two. The total rate of any particle in the system dying is two n. And so with the overall rate two n, you lose probability that there are n particles in the system. But in fact, if I just write it blindly like this, it's a little bit misleading because one should pay attention to boundary conditions. So let's write down the first few equations just to see what's happening. So let's look at p0 dot. Well, there's no contribution from minus one particles because n can't be less than zero. And once you reach zero particles, nothing happens. So there's no contribution from this term. So the only contribution is from here. And so when n is equal to zero, you're going to get p1. So that is the rate equation or the master equation for p0 dot. For p1 dot, so again, if I have one particle in the system, there's no way I can start with zero particles and create a particle. So there's no contribution from this term. And so you just have minus two p1 plus two p2. And finally, p2 dot is now got all the terms of the equation because if you have, you can have one particle and one of them gives birth. And so you're going to have p1 minus four p2 plus three p3. And let me write down one more. p3 dot is equal to, so I'll have two p1 minus six p3 plus four p4. So first point is the fact that there's term here and here and here that are missing. And that's how I got messed up at the end of yesterday's lecture. Second point is that if you just write down the equations one by one, it looks a little bit formidable because these coefficients seem kind of strange in how you're going to deal with these weird coefficients. But when you write it for general end, it looks a lot simpler. So once again, to solve these equations, you could, if you are a masochist, just do it by trying to solve one by one. But a much better way is by the generating function. And so I'm going to define the generating function g of t of z and t is equal to summation from n equals zero to infinity pn of t z to the power n. So what I need to do is I've got to multiply this equation by z to the power n and then make a summation from n equals zero to infinity. But in so doing, I have to be a little bit careful because again, like what I messed up yesterday is that I had my limits wrong because I sort of included these missing terms that aren't here. So let's be a little bit more careful in writing down the generating function. And so in this equation, on the left-hand side of the equation, we just have the time derivative of the generating function. So I will get zg by dt. And now on the right-hand side, there's three types of terms. There's terms from the gain term from n minus 1. And so let's look at what that is. So there's nothing from here. There's nothing from here. It starts at this point. And so what we're going to have here is summation from, and so, like if I'm doing the generating function approach, this equation will be multiplied by z to the power 0. This one is multiplied by z to the power 1. This one is multiplied by z to the power 2. And so on down the road, cq. So for this set of terms, we start here. And so we're going to have a summation that starts at, so it's going to be summation, pn minus 1 z to the power n. And it starts from n equals 2 to infinity. And so that's what's slightly different than yesterday, because I had that wrong. And so now the next term is minus 2 summation from 1 n equals 1 to infinity. And we're going to have, sorry, I forgot the n minus 1. So let's go back here. So it's n minus 1 pn minus 1 z to the power n. Here I have 2 n pn z to the power n. And finally the last term, plus, and so it'll be n plus 1 pn z to the power n. And this one starts with n equals 0. pn plus 1, yes, thank you. I've got to write this bigger. pn plus 1 z to the power n. OK, so now let's look at these terms one by one. And so it's now going to look like kind of dorky, tedious details, but the point is that these details, as you're going to see, it's actually quite simple. And also once you see it once, it's the same thing over and over again. So it's really a general tool here. It's not just idiosyncratic to each separate problem. So let's look at the first term. And so I don't want to erase too much here. So I have summation 2 to infinity n minus 1 pn minus 1 zn. So I can write this factor out of z. So it's 2 to infinity n minus 1 pn minus 1 z to the n minus 1. Now let's also now relabel the index. So I can call the index m, which is n minus 1. And so m, if n is 2, m is 1. So we can rewrite this as z is from 1 to infinity. And now I have m pm z to the n. But since it's a dummy index, we can just call it n pn z to the n. And then the last step is, well now, but to bring down the factor n, I can just differentiate the z to the n, but then I have z to the n minus 1. So I've got to multiply by z to restore it. So this is the same as z squared d by dz summation. Oh, one more thing before I do that step. One more thing is that notice here, this summation goes from 1 to infinity n pn zn. So if I put in the term n equals 0, well, that doesn't change anything because it's multiplied by 0. So this is the same as z summation 0 to infinity n pn z to the n. And finally I say, well, I can now generate the n in front by differentiating respect to z and multiplying by z to restore the power of z. So this is nothing more than z squared d by dz summation from 0 to infinity of pn z to the n, which is nothing more than z squared d by dz of the generating function itself. And so I'm not going to do the remaining two turns because this is exactly the same manipulation. It's elementary. You just have to be careful. But there's no big deal to it. And so the final result is you're going to get z minus 1 squared dg by dz. So that is the equation that's satisfied by the generating function. And once again, you might say, well, this is very idiosyncratic. But in general, when you're dealing with any kind of a birth-death-like process with local hopping, you'll always have the differential equation for the generating function. It's first order in time and first order in the z coordinate with some function of z out in front. And this is the wave equation in disguise. And because it's the wave equation, that we know how to solve it. And so that's what I'm going to do momentarily. And so it's really not a very difficult problem. So how is this the wave equation in disguise? So let me define a new variable dy is equal to dz over 1 minus z squared. And so this thing is nothing more than dg by dy. And so the solution to this equation, the general solution g as a function of y and t, is any function under the sun of y plus t, where the function f itself is determined by the initial condition. So that's what I'm saying. It's an easy solution. And so no matter how complicated the function is here, by making this variable transformation, you always have the solution to the problem. So to complete the solution, we just have to match everything to the initial condition. So the natural initial condition here is starting with a single particle. So for Pn at t equals 0 is equal to delta n1, chronic or delta again. Then this tells me that the initial generating function, g of z at t equals 0. So it's 1 times z equals z. But this solution of the wave equation is in terms of the y variable. So to actually match to the initial condition, we've got to re-express z as a function of y. And you see just from this equation right away that y is equal to 1 over 1 minus z, from which z is equal to 1 minus 1 over y. So if the initial condition is z, then it says that g of y at t equals 0 is equal to 1 minus 1 over y. So here, going back here, we have g of y and 0, which we said was equal to 1 minus 1 over y. And so that tells us that this thing, our function f, is just 1 minus 1 over y. So the function, OK, so f of y was equal to 1 over 1 minus y.  Sorry, dyslexia strikes again. So my f of y is equal to 1 minus 1 over y, right? So that means that f of y plus t, y plus t, is equal to 1 minus 1 over y plus t. So that's my solution. Now, it's not quite the solution you want, because this is a function of y. And in order to compute each individual pn, we would like this as a function of z so we could think of the power series representation as a function of z. So we have to do just a smidgen of work here, because we just have to re-express y as a function of z. So it says a g z t is equal to 1 minus 1 divided by y is 1 minus z, 1 over 1 minus z plus t. So this really is my solution. And all we have to do now is expand this in a power series in z, and we're done. And so let me do the first few steps of that. So g z and t is equal to. So it turns out what's convenient here is to just multiply through by 1 minus z, so 1 minus. So multiply top of bottom by 1 minus z. I have 1 minus z, 1 plus t, 1 minus z. And I'll write this as 1 minus 1 minus z. So I have 1 plus t, I'll write it bigger, 1 plus t minus z.  And I'll just do the next very first step, 1 minus z, 1 minus t, 1 plus t. And then I have a power series summation from n equals 0 to infinity, t over 1 plus t to the power n, z to the power n. And now what I need to do is I have to extract from this power series representation the term of order z to the power n. And the only thing that makes it a little bit tedious is there's a z to the n from the power series, but here there's a 1 and a z. So you've got to do a little bit of manipulation. So let me just not do any of those horrible steps because the chances of me doing it wrong are sort of order 1. And let me just tell you what the result is. And the result is the following. p0 is equal to t over 1 plus t. And pn is equal to t to the power n minus 1, I think. Let me just check that that's right. Yeah, it's even right. OK. So you see the final answer is actually very simple in mathematical form. And let me just mention a few sort of outstanding features of this solution, which is first of all, this is the extinction probability. Probably there are no particles in the system. So this extinction probability is going to 1 as time goes to infinity. And correspondingly, s of t, the survival probability, which I've defined as 1 minus the extinction probability, is equal to 1 divided by 1 plus t. So this system of bacteria goes extinct, for sure. It's just that it happens in a power law fashion. And the thing which is kind of amusing is that you compare this to the good old random walk where the hopping rates are equally probably left or right, but not getting faster and faster the larger, the further away you go from the origin. In that case, the survival probability decays asymptotically like 1 over the square root of t. Here, the survival probability decays like square root of t. So anyways, that is a solution, full solution, for the birth-death process by the generating function approach. It's very elegant. It's very compact. It's very beautiful, I think. And the tricks and the tools that I've shown you here are very generic. So once you've seen one generating function problem solution, one problem solved by the generating function, you should have confidence to solve many others. Yes? If, in the case, new equals sigma, I mean birth-rate equals death-rate. Yeah, so in the case where the birth-rate is not equal to the death-rate, the polynomial out in front is still a quadratic polynomial, but it's more complicated. But it still can be factorized, and you can still, it's much uglier, but you can still do the same trick. So in general, as long as this polynomial is less than a fifth-degree polynomial, you can always solve it. So if you were doing something where there's, well, actually, I'll tell you a problem that I don't know how to solve, and I'd love to know how to solve it. Suppose you had a bursty birth-death process.  And choose the birth-rate and the death-rate, such that the system is overall neutral. So I can go through all the same calculus. It looks all very beautiful. And you end up, when you get to this stage, that here there's a logarithm. And I have no idea how to deal with it. So I would love to know the solution to the bursty birth-death process. So for those of you out there, solve for me the bursty birth-death process, and I will be very happy for you. And you will be very happy for yourself as well. OK. Thank you for the question. OK. So that ends the first topic of this course. And the second topic that I'd like to now turn to is irreversible aggregation. So irreversible aggregation is a generic process that happens everywhere in non-equilibrium systems. You have the universe, which is a problem situation where you have gravitationally driven aggregation of stars, of star clusters, of galaxies, galactic clusters. And one might ask, well, for this aggregation process, what is the size distribution of aggregates that it can occur? Another example would be making gelatin dessert, where you have this powder. You put it into a bowl. You put it in water. You mix it up. You put it in the refrigerator, and like half an hour later, instead of being liquid, it's a gel. It's a single interconnected molecule. And in this case, at the microscopic level, one has multifunctional microscopic units that are very interactive. And so many arms of the molecules will grab each other. And as a system, as the largest molecule grows, it has more grabby arms. And so there's a rate of grabbiness, which is getting larger and larger as the largest molecule grows. And you have this phase transition from a sol phase, where one has only finite molecules to a gel phase, where one has one macroscopic molecule that spans the system. So one can think of many other examples for many different fields of physics where this aggregation occurs. I mean, one example is the road that goes along, just along the sea here. It's a one-lane road. You can't pass any cars.   And then a cluster of cars that's moving slowly can catch up to an even slower cluster of cars. And there's an irreversible aggregation process occurring. So that's another example of irreversible aggregation. So the cartoon picture is I have a cluster of mass i and a cluster of mass j. And they come together at some rate that depends on the size of these two clusters and makes something of size i plus j. And the question that we want to ask ourselves what is the concentration of clusters of mass i at time t? So the basic variable is Ck of t, concentration of k-mers. So polymers of size k, k-mers, concentration of k-mers at time t. And so the way that one attacks this problem is one tries to write down some kind of a kinetic equation that describes the evolution of this probability distribution of k-mer concentrations. So let me write down the master equation for this process. And then I'll try and justify it. So by the way, I should say that in everything that I'm discussing so far, I'm always treating the simplest case of the mean field limit, where the system is extremely well mixed. And so the rate at which any cluster meets anybody else is the same. And in that limit, this one, one can write down equations of the type that I'm going to write down. So I'm going to write Ck of t dot. How does this change with time? So there's two ways a cluster that this can change. Again, from the very first equation I wrote down in the class, there's a gain term and there's a loss term. And the gain term comes because of smaller clusters of, say, a cluster of mass i and mass j, whose sum adds to k, come together and make a k-mer. And there's a loss term because a k-mer can interact with anybody else, and you lose k-mers that way. And so the equation looks as follows. So it's a summation i and j with i plus j equals to k. And there'll be kij, because that's a rate at which i and j come together. There's some underlying rate. This thing will contain all the microscopic physics in the problem, kij, ci, cj. And I have to include a factor 1 half because I've overcounted because there's two combinations I could have if I want to make a cluster of size 17. I could have 7 and 10 come together. But i is 7, j is 10, or vice versa. So I have to include this factor 1 half here. And then there's minus a summation over all i equals 1 to infinity of kikcick.  And before I do anything, let me just outline what are the main features that go into this equation. So the first point is the mean field approximation. So I'm assuming that the rate at which any cluster of size i and j come together doesn't depend on i and j. So all we have here is the average concentrations. And so in that spirit, there's no space. I'm assuming a perfectly well-mixed system, so I don't have any spatial degrees of freedom. There's no shape. So if a cluster is very long and stringy or very compact, the rate of interaction of such a cluster does not depend at all on any shape degree of freedom. So in some sense, you can think of your clusters here as like spherical droplets. And every time they come together, they become like another larger spherical droplet. So there's no shape degrees of freedom. What else do I want to say about that? Yes. And the other point here is that the number of particles is going to infinity. So there's no fluctuations due to the finiteness of the system. So I'm thinking that there's a smooth concentration. So if I look at a large volume, the number of clusters of any size is just the average concentration multiplied by the volume. And there's no regions where there's no dimers, for example, because the concentration is so low. So I'm assuming that number of particles goes to infinity, so I can spread out my clusters evenly, uniformly, no matter how small the concentration is. So these assumptions underlie equations of this type. But now the goal is to try and solve these equations. And once again, as in the case of the birth-death process, we're going to see that the generating function is like the clean way of solving this equation. And you get a very beautiful and simple solution with relatively little work. So first point is that we need to specify the microscopics to make any progress. If you need to define this, this is sometimes called the reaction kernel, reaction rate or reaction kernel. And once we specify it, then maybe we can make some progress. And I'm going to consider just two specific and paradigmatic examples here. One is the so-called constant kernel aggregation, where I just assume that this Kij is equal to a constant. So let's look at Kij is equal to a constant. And for reasons of purely convenience, I'm going to choose that constant kernel to be 2. And if I want to try and justify this, if we think about, say, reaction of particles that are in a solution, well, what is the rate at which a reaction will occur between two spherical aggregates that are diffusing around? Well, the bigger they are, the more likely they can bump into each other because they have a larger cross-section. On the other hand, the bigger they are, the slower they diffuse. And it turns out that to a rough approximation, which still is actually not a very good approximation, I can say, well, the growth of the radii counterbalances the slower diffusion coefficient as the radii increases. And that justifies choosing a reaction rate equals to 2. But it's not a very good approximation. And if you get further into this problem, you'll understand why. But from the point of view of being able to solve a simple problem, let's look at the simplest case, Kij equals 2. And also, let's just write down the first few to get a feeling for what's happening. So let's look, first of all, c1 dot. Well, there's no way I can create a monomer because that's the minimum quantum size of my problem. So there's no gain term, but there's a loss term because I'll have minus c1. And then I have summation from 1 to infinity of ck. And so let me now define n summation from 1 to infinity of ck. And also, if I choose k, if all the reaction rates are equal to 2, there should be a 2 out in front. So it'll be 2c1 times n. So it's minus 2c1 times n. c2 dot. So now we have a gain term because we have 1 half c1 squared with times 2. So there's going to be a c1 squared minus 2c2n. c3 dot is equal to, so I'm going to have 1 half c1c3 and then 1 half c3c1.  So we're going to have 2c1c2 minus 2c3n. And then let's just write one more c4 dot. So it's going to be 3c1c3 minus c2 squared minus 2c1. And so now you see that the structure of the plus, the structure of the gain terms becomes more and more complicated. So if you write them out one by one, they start looking a little bit intimidating. It is possible, and if you want to be a masochist, I invite you to try it, which is you just solve them one by one. It can be done. But let's now do the generating function approach because it's much more elegant. But actually, even before the generating function, I'd like to say the following, which is that when you're confronted with horrible master equations of this type and you have no idea what to do, a natural first thing is to look at moments of the distribution because moments are often simpler. And for example, for the case of a random walk, if you're unable to solve the full probability distribution, you might say, well, I can't solve for the full probability distribution, but let me compute the average position or the mean square position. And there are many techniques that allow you to compute each of these things more easily. And so similarly here, let's look at moments and see if we can solve them directly. And part of the reason for looking at moments I'm going to outline in a moment because one thing you might, if you're a skeptic, ask is, did I even write the equations correctly? This factor of a half, like it looked a little bit mushy what I was doing, and what I want to show you is that factor of a half was actually correct. So let me look at moments. Let me define mn is defined to be the summation from 1 to infinity k equals 1 to infinity of k to the power n ck. So the 0th moment is just going to give me n. The first moment, sum k ck by construction is a total mass in the system. And so we better have the total mass in the system is conserved. So one test, whether the equation is correct or not, is the first moment, is its rate equation equal to 0. So let's compute, for example, m0 dot. And I just realized I raised the equation that I wanted to keep. So let me put it back here again. So ck dot is equal to summation i plus j equals k. And I had ci cj minus summation 2 cik k equals 1 to infinity. So let's now multiply this equation. To compute the 0th moment, we multiply this equation by k to the power 0, which is easy to do. It's 1. And then we have to sum from overall k. I'm sorry, this index is incorrect here. i equals 1. Is that your question? No, I can't add. Thank you. c2 squared. Thank you. OK. Anyways, so we take this equation, multiply by 1, and then sum over all k. So for this one, the summation over all k makes us two unconstrained sums. So it's a sum ci over i, sum cj. But sum ck is n. And so this first term is just nothing more than n squared. But then the second term, we have the sum ci, which is n. And now the sum ck, which is another power of n with power 2. And so m0 dot is minus m0 squared. And so the solution is m0 is equal to 1 over 1 plus t. And I should say for the initial condition of only monomers in the system. That is that ck at t equals 0 is equal to delta k1. So I imagine I start with my box of Jell-O, which is only monomers, and I pour it into the bowl, and then I let the system evolve. So for the monomer only initial condition, this is what you get. Let's look at m1 dot. So we take our equation, multiply by k, and sum over all k. So on the left-hand side, we have m1 dot. And on the right-hand side, we'll have kci cj. But k, I can write as i plus j, because that's what k is, because of the summation. So I'm going to have a summation ici times cj. And another one, jcj times ci. So ici will be m1, cj is m0. I get two such terms. And so I'm going to get two m0, m1. And I did that a little bit quickly, but I hope you get it. And if you don't, just do it more slowly on your own, because there's nothing very deep about it. But then in this term, we have two sum ci, so that's 2n. And then I have kck summed over all k, I'm sorry, two times sum ci. Well, that's n, but that's also the same as the 0th moment. So I have two m0. And then sum kck is the first moment again. So I get minus 2m0, m1, and that equals 0. So that's actually a good sign, because it says that the mass is conserved, which we'd like to have by the actual definition of the process. And there was no mass loss in the problem. So oftentimes, when you're writing these rate equations, a test, are you writing it correctly? Did you get all the terms right? Did you get the combinatorial factors right? Is to check that the first moment is conserved. Let's do one more moment, m2 dot. So now we have to do k squared, so k squared.  So the term i squared ci is m2. And then I have cj, which is m0. I have two such terms. So I'm going to have a 2m0, m1, I'm sorry, m2. And then there's the cross term, 2i plus j squared. So it'll be twice ici jcj, so that's 2m1 squared plus 2m1 squared. And then I have this term, which will be k squared. So that's m2 times m0 times 2, so minus 2m0, m2. And so that's equal to 2m1 squared. But the total mass is conserved. And I can choose the total mass to be anything I want. So let me choose it to be equal to 1. And so I'll just say this is equal to 2, from which we get that m2 is equal to 1 plus 2t. So this m2, the second moment, is a measure of sort of the characteristic size of each cluster. So because the total mass is conserved, the first moment gives you no information because it's just conserved. And so it's the second moment that's actually telling you something about the characteristic size scale of these growing clusters. And so one can actually solve all of the moments by this approach. And I won't do that, but I leave that as an exercise for you to do. But now let's go to the heart of the problem, which is actually solve for the cluster concentrations exactly. And so for that, I'm going to again do my good old friend the generating function approach. And you'll see that the technique is, you know, the actual details are slightly different. But you know, the actual manipulations are very fun and very elegant once you know how to play the game. And so if I see a few of these examples, then hopefully you gain some general wisdom. So let me now define and I keep, I need a place to put the equation of emotion itself. So let me try not erase it. To ck dot is equal to summation ij. And I have ci cj minus 2 summation ci ck. This is summed over i equals 1 to infinity. i plus j is equal to k. Hopefully I won't erase this anymore. OK, so now I want to solve it by the generating function. So let me define the generating function g zt as before, summation. In this case, there is no such thing as a zero mass cluster. So the sum better start from 1. So summation k equals 1 to infinity of ck of t z to the power k. And by the way, I mean another sort of clue like why the generating function ought to work here is that you see that this first term is of the form of a convolution. Because the sum of the masses has to add up to k. So because it's a convolution, you should expect that some transform method like Fourier transform or Laplace transform, if it was continuous, or in the case here, generating function ought to work. And we know that from hopefully an undergraduate mathematical physics course, you know that convolution becomes just product in the transformed space. And that's exactly what happens here. So let's take this equation now. And what I'm going to do is multiply by z to the power k and sum from 1 to infinity. Let's see what comes out. So on the left-hand side of the equation, we just have the time derivative of the generating function, dg by dt. And on the right-hand side, let's see what we have. So we have z to the k. Let's put it in here. So we have z to the k. But we can write zk is zizj. And so I'll have sum cizi, sum cjzj. This constrained sum becomes an unconstrained sum when I sum over all k. And so the first term on the right-hand side is nothing more than g squared. And then I have minus 2. And so here, sum over all k, ckzk, is just the generating function again. So we just have 2g. And now this other term hanging off the end is just sum 1 to infinity ci without any friendly factor of z to the i to make it into the generating function. But it's just the generating function z set equal to 1. So the next term here is g of z equals 1. So it's not quite a closed equation because now we have g involving g at 1. But let's solve for g of 1. So dg of 1 dt is equal to g squared of 1 minus 2 g of 1 squared, so that's equal to minus g of 1. So now instead of solving for g, let's solve for this function, h of zt, which is equal to g of zt minus g of 1t. So we just subtract these equations. So you get dhdt is equal to g squared minus 2g g of 1. Whoops. Minus becomes a plus. So plus g of 1 squared. That's nothing more than h squared. So the equation for dh by dt, dh by dt, is equal to h squared. So you see that by using the generating function technique, you transform a formidable set of nonlinear convoluted equations into just a simple algebraic equation. So we're almost done now. Yeah, yes. No, this is not linear. So you're saying if I wanted to solve for the probability that there's like 17 monomers, 63 dimers, and so on down the road, the full probability distribution. Yeah, you are absolutely correct. Then you would have a linear equation. But it's just like it's horrendously complicated. So I mean, but you've also raised an interesting point here, which is that I'm a little bit sloppy about the use of the word master equation, rate equation. The underlying probability distribution is that you want to compute the full probability that there's n1 monomers, n2 dimers, n3 trimmers, n4 formers, and so on down the road. So the rate equation for that set of n i's is a linear set of equations, horrendously complicated, however. And what I'm solving for is for the average concentrations of monomers, dimers, and so on down the road, which turns out to be a nonlinear system of equations. OK, very good point. Anyways, maybe even I can solve this equation without making a mistake, but we'll see. So the equation is dh over h squared is equal to dt. So that says that 1 over h at time equals 0 minus 1 over h of t is equal to time. So h of t is equal to, so this is the part that's hard for me, 1 over h of 0 minus time. OK, I guess, no, even did that wrong. 1 over h of t is, so that's my solution. So first of all, let's determine the initial condition so we can actually write this explicitly. So once again, for the monomer only initial condition, g of z and t equals 0, so it's equal to summation over all k, ck, z to the k, the only one that's nonzero is monomer, so that's equal to z. So h of z and t equals 0 is equal to z minus 1. So this is equal to 1 over z minus 1 minus t, which I can write as 1 minus t z minus 1 z minus 1. So this is 1 over h. So that says that h is equal to z minus 1, 1 minus t, z minus 1. And let me just do one or two more steps before I'm going to just stop.  For those of you who remember 15 minutes ago, it's starting to look a lot like the generating function for the birth-death process, 1 plus t here. So this is equal to that. Try again. This is 1 minus all of that, so that's what it is. And so this is equal to z minus 1 over 1 plus t. And then I'm going to have the infinite power series, summation k equals 0 to infinity, z to the power k, t over 1 plus t to the power k. And from this form, it's tedious, not that tedious, but I can't do it on the blackboard without making a mistake. And straightforward to then extract ck of t. And so let me just tell you what the answer is. ck of t is equal to 1 over 1 plus t squared, t over 1 plus t to the power k minus 1. So that's the full answer. So a really beautiful answer. It doesn't look so different from what we saw in the case of the birth-death process. And before I go any further, let's just sort of graph this to get a feeling for what is contained in this solution. So if I were to plot as a function of time the cluster concentration, so here's t and here's ck of t. So first of all, let's look for monomers, c1. So this term is 0. We have 1 over 1 plus t squared. So it starts at 1, and it decays like this. So here is c1. c2, well, again, you see that all the cluster concentrations have this common 1 over 1 plus t squared decay for a long time. But for k equals 1, I'm sorry, for k equals 2, this becomes power 1. So it starts off linear, and then decays like 1 over t squared asymptotically. So dimers are doing something like this at c2. Trimers, they'll start with a quadratic. So looking something like that, c, sorry, this is 2. This is 3, and so on down the road. So that's what these different cluster concentrations look like. Another way to plot this is if I plot ck as a function of k.  And look at what my cluster size distribution looks like. And actually, it's more convenient to look at this in the scaling limit. So let's look at this now. Let's go in the limit t is going to infinity, because that's kind of the limit that we're most interested in. So for a large time, we forget the 1 compared to t squared. So there'll be an amplitude 1 over t squared. For a large time, I can write this as 1 divided by 1 over 1 plus t, 1 over t, which I can write as 1 minus 1 over t to the power k. And for large time and large k, I can forget about the minus 1. And 1 minus t to the power k is e to the minus kt. So I said that quickly, but check it yourself. But asymptotically, this goes like 1 over t squared, e to the minus k over t. And part of the reason for writing it in this way is that this is the natural scaling form of the distribution, which we're going to come back to momentarily. But so we see that for a long time, this cluster size distribution has an overall amplitude 1 over, so let's call it log c. So there's nothing more in the straight line. e to the minus kt, k over t, sorry. And so we infer from this. We can define this to be e to the minus k over a characteristic size scale, k star. And so this cluster size distribution has an exponential decay with a characteristic mass scale, k star, that grows linearly with time. And so in some sense, these two plots kind of encapsulate all the information that's contained in the cluster size distribution. OK. So I think that's everything I want to say about the exact solution of this constant kernel aggregation process. So is there any questions from anybody? I feel very awkward doing that. So let me continue on. So the next part of this discussion is to talk about the scaling solution for aggregation. So let me now let you in on a dirty secret, which is that for the case of aggregation, there are only four exactly soluble examples. There is the constant kernel. There's something called the sum kernel, where kij is i plus j. There's something called the product kernel, where kij is i times j. And there's another one that's rather bizarre, and I don't even remember the exact form. But those are the only four exactly soluble examples. But on the other hand, there's many situations of aggregation in real life where the reaction kernel is not one of these exactly soluble forms. And you'd like to try and get some information without having if you can't solve the equations itself. And it turns out that oftentimes in non-equilibrium statistical physics, we're confronted with nonlinear rate equations. And we want to try and make some progress, and we don't know how to solve it exactly. And in this situation, the scaling approach turns out to be extremely powerful, and general, and elegant for getting partial information. And that's what happens here in the case of aggregation. So let me now discuss the scaling approach for aggregation. And hopefully, I mean, I would say that this is perhaps the most general thing that I'm going to talk about in this entire set of lectures, because it works in so many different situations in such an elegant and beautiful way. So I hope you'll take this to heart, because it's a very powerful tool. So let's now talk about the scaling approach. So as a warm-up, let's solve a simpler problem that we already know the answer to, which is let's solve the diffusion equation using only scaling. And let's just see what we learned from that. So let's solve dC by dt is equal to d d second C by dx squared. Suppose that we don't know how to solve this. How can we get information without solving, like directly? So first point, and a really important point, is that it's always useful to do a dimensional analysis on this equation. And you see that this is a linear equation. C is the same on both sides, so we can forget about C. But then there's a 1 over time here. Here is an x squared over d. So we must have in units that x squared goes like dt. So without doing anything, dimensional analysis tells us that there's a characteristic psi scale, x, which grows like the square root of dt. So we want to solve for Cxt. We now have a sense that there's a characteristic length scale that grows like square root of t. So in fact, this function Cxt is not a function of x and t separately, but it's a function of a scaled combination of units. And we already know what the scaled combination of units is. But let me even not suppose that. Let me just say I know nothing. And I just want to say, well, I expect that my solution ought to be solved similar, so that as a probability distribution spreads, that the shape is going to look the same. It's just you just have to rescale the characteristic length scale to make different distributions at different times lying on top of each other. So I'm going to make the scaling assumption of the following, that this is some function of x divided by some characteristic psi scale, which I don't know what it is, so this will depend on time. Now, if I write this, it's missing something because it's not properly normalized, because we note that the integral over all space of cxt is 1. So if I integrate this thing over all space, I better get 1. And the way to ensure that that occurs is you have to put here a 1 over s. And then you can verify right away that the integral of dxf of x over s times 1 over s from minus infinity to infinity. Well, this d1 over s goes with this, and now it can define a scaled variable z, which is x over s, so I have dz f of z. So it's a function of order 1. And by choosing a constant properly, it is 1. And so that is the proper normalization here. So let's make the scaling assumption. And now let's use that scaling assumption and plug it into the differential equation. Let's see what we get out. And now I'm going to start using subscripts for partial differentiation just because I'm lazy. So ct, the time derivative. So we want to differentiate this guy. So there's two terms. There's a time in here, there's a time in here. So we're going to get minus s dot over s squared f. And now let me call this combination of unit of variables. Let's call that z. So it's f of z. And then I have a plus 1 over s. And when I differentiate inside the argument, so I'm going to get f prime as a function of its argument. And then I have to differentiate the argument. So that's minus x over s squared s dot. And so this is equal to, so there's a common factor minus s dot over s squared. And then I have f of z. So 1 power of s goes with the s squared here. And that's s dot over s squared. And another guy combines with this. And I'll get plus z f prime of z. So that's the left-hand side of the equation. On the right-hand side, cx. Well, the only place x appears inside the argument, so I'm just going to pull out 1 power of s and differentiate with respect to the argument. So I'm going to get equals 1 over s squared f prime of z. And so cxx is equal to 1 over s cubed f double prime of z. So now let's put this all together. So our diffusion equation becomes the following. So we're going to have minus s dot over s squared f plus z f prime is equal to d over s squared f double prime. And let me put all the time dependence on one side, all the z dependence on another side. And so I'm going to get s cubed. S cubed. Where did it go to? Oh, here's my problem. When I do first derivative, I've got 1 power of s. When I do second derivative, I get another power of s. So this is s cubed. Another question? OK, so this is s cubed. OK, so I'm going to get here s dot times s. So I bring this over here. Is equal to minus f double prime over f plus z f prime. And now we just invoke what we know from when we first encounter partial differential equations in our physics class. This is a function of time only. This is a function of z only. Functions of independent variables that are equal for all values of the argument have to be separately equal to a constant. And let me call that constant lambda. So let's now look at the separated equations. So we have s dot s is equal to lambda. So it says that s is equal to 2 lambda t square root. So as expected by dimensional analysis, there's a characteristic size scale that's growing like the square root of t. And now let's look at the space equation. So we're going to have f double prime is equal to minus lambda f plus z f prime. Unfortunately, this equation is sufficiently simple that we can solve it exactly. So this, I'll write as lambda. And then this is nothing more than z f, the whole thing prime. And now integrate once with respect to z. I'll get f prime is equal to minus lambda z f plus a constant. But we know that at z equals 0, this is 0, if we're starting with a particle at the origin, the distribution better be symmetrical. So at z equals 0, f prime equals 0, z equals 0. So that implies that c equals 0. So let's forget about this.  And so that says that log f is equal to minus lambda z squared over 2 plus constant, which I'll determine by normalization. So that says that f is equal to some constant a e to the minus lambda z squared over 2. But z is x over s. So this is equal to a e to the minus lambda. So this is x squared. z is x over s. So yeah, so this is x squared over s squared over 2s squared, which is equal to a e to the minus lambda x squared divided by 2. But s squared is 2 lambda t. So it's 4 lambda t. Oops, I forgot something here. I realize I forgot something really trivial. D, so there's d here. So now I have lambda over d. Lambda over d, lambda over d, over d. So we just get, can they see down here? So this is just a e to the minus x squared over 4 dt. So it's the classic Gaussian distribution by the scaling solution. And then by normalization, we even know what this thing is. This is equal to 1 over the square root of 4 pi dt. So the point about the scaling approach is that we didn't really do any sophisticated solution methods. We just made the scaling assumption, plugged in the equations to just try and get as far as we could get by this approach. And here we could go all the way to the end. We even got the exact probability distribution. Most of the times you're not that lucky, but nevertheless, you get a lot of information for a lot less effort than just trying to do a frontal attack. And so in some sense, the scaling approach provides, I would say, like a non-conservation of difficulty. Typically, you solve a problem by two different methods. You say, well, this method is used in the other method. And you find, well, they're not really any easier. It's just one is conceptually simpler. One is algebraically simpler. But you always run into sort of conserved difficulty. But in the case of the scaling solution, I would argue that it's a technique that makes your life simpler. So what I'd like to turn to now is to apply the scaling approach to the case of aggregation. And here, I hope you'll get a sense that I'm going to transform a problem that looks impossible to solve into one where you can get at least partial information with relatively little work. So let me do that now. So I want to apply the scaling approach for aggregation kinetics. So first of all, when I first wrote down the equations of motion, we were talking about discrete monomers. But if we're interested in a long-time behavior, the difference between a 633-mer and a 632-mer is so small that we don't really want to worry about that. So let's write these same equations at the continuous limit. So now I'm going to call CXT. So this is the concentration X-mers at time T. And here, I'm thinking of X as a continuous variable. So if I write down the rate equation, I'll get CXTC by dt. So there's two terms. Again, there's a gain term and a loss term. So the gain term is going to be an integral from 0 to X. So let me write it out, and then hopefully it'll look almost self-evident. So there's going to be a KY, X minus Y, CYT, CX minus Y, T, dy. So this is the gain term where I have a Y-mer and an X minus Y. They come together. There's some of the mass arguments adds up to X. So it's going to make an X-mer. And so at time T, I have a Y and an X minus Y coming together with this rate. And then there is a loss term minus an integral from 0 to infinity, and I guess I'm going to put a 2 here, K, X, Y, CXT, CYT, dy. So that's the continuous version of these rate equations for aggregation. Now to make any progress, we have to say something about this reaction rate. And it turns out that for every process that you can possibly imagine for aggregation, K has the following homogeneous reaction rate. So homogeneous. And the way I define this is that if I imagine multiplying all cluster masses by an overall factor A, so K, A, I, K, A, J, is equal to A to the power lambda K, I, J. So I'm going to assume a homogeneous reaction rate. And if you start thinking about any kind of aggregation process that you can envision, if I increase the size of all the clusters by the same overall factor, the overall reaction rate changes by an overall factor that's typically in this form. And so this thing here is called the homogeneity index. And as we're going to see, the behavior of aggregation is largely determined by the actual value of this homogeneity index. Another thing that one typically assumes is K, 1, J is equal to J to the power nu. So if I just have a monomer and look at the rate at which it reacts with the cluster size J, that it's some simple function of the size of the bigger cluster. This will not enter into the scaling approach, but we'll need it later on just in completing the discussion. So what I want to do now is this looks like a horrible integral equation, nonlinear. And I have no idea how to solve it. But we will make a lot of progress by making a scaling assumption. So let's try and see where we can go with that. So scaling assumption. So just as we did for the case of diffusion, I'll say that Cxt, well, we imagine that as time goes on, the clusters are getting irreversibly larger and larger. So that if I could rescale my time by some factor that the cluster mass should be re, or put it another way. If I rescale the cluster masses by some factor, that's the same as rescaling the time. So that suggests that I can write this as some function of X over S, where S is a characteristic size scale, which is the cluster size. And then you would say, well, I have to normalize this properly, so I should put in front here 1 over a power S. This is not quite right because we know that the total concentration of clusters is gradually disappearing. Because as you aggregate, aggregate, eventually you get to just a single cluster. So it's not the first moment. This is not the right normalization factor. The right normalization factor is this. And why is this the correct normalization factor? Because the conservation laws, the total mass of the system is conserved. That is the integral of X, Cxt dx, which is the total mass in the system, better be conserved. And I'm going to put a 1 over S squared here. This becomes integral X, 1 over S squared, F of X over S dx. And now I can absorb one factor of S to here, one factor of X to here, of S to here, and then I have a dimensionless integral, which is order 1. And so this is the correct normalization factor. So now what I'm going to do is just as we did in the case of diffusion equation, let's make the scaling assumption, work out the left and right hand side equations. And just let's see what we can get out of this. So first of all, let's look at Ct. So I'm going to get minus 2 over S cubed S dot. And then I have plus 1 over S squared F prime of, and for reasons that will be obvious in a second, I'm going to call this scale variable combination U now. So this is F prime of U. And then I have times minus X over S squared S dot. And this I can put together. So I'm going to have minus 2 over S, sorry. It's going to be minus S dot over S cubed. And I have 2F plus U F prime of U. So that's the left hand side. Let's now look at the right hand side. So it looks a little bit more formidable, but if you just have faith and follow through, it's not so hard. So let's look, first of all, at this term. So we're going to have minus 2 integral from 0 to infinity K X Y. So C is 1 over S squared. And so we're going to have F of U over S. Then I have 1 over S squared for C YT. And let's call this F, I'm sorry, X over S. And then this is F of Y over S. And then I have integral dy. So let me call this thing U as before. Let me call this thing V. Now I have, let me put in a factor of 1 over S here. And that cancels one of the powers of S over here. And so the next term here is going to be minus 2 over S cubed. Then I have integral from 0 to infinity K X Y, F of U, F of V DV. Not quite a scaling form, because we still have this in unscaled units. But now let's write this in scaled units. So X is equal to SU. And Y is equal to SV. So this is the same as K of SU SV. And now I use this homogeneity assumption that when I multiply by an overall factor of S, it's the same as multiplying through by S to the lambda times the bear argument. So this is nothing more than S to the power lambda K of UV.  So this is some function of U that's now scaled units, only function of U. And now we can do the same thing with the first term. And the first term, everything follows just line by line. Everything is the same. And you're going to find that ultimately you can recast this as some other function of U. So if you put this all together, and so I'm skipping one trivial step, which is just computing the other term, but what I'm going to get then is that this initial differential equation. So let's call this 1. So what we're going to get for 1 becomes the following. So on the left-hand side, we're going to have minus S dot over S cubed 2 F plus U F prime. And on the right-hand side, we're going to have, so there's an overall factor S to the lambda minus 3. Because clearly these two terms are same order of magnitude. And so this other guy will have an overall factor S to the minus 3.   But the main point is the function of U. And so now let's put all the time dependence on one side, all the U dependence on the other side. And so what we're going to get is S dot divided by S to the power of lambda. So the S to the minus 3 cancels.  Now let me define this thing to be capital lambda again. So this is some H of U divided by this as an even more horrible function of U. But I don't care. Because now we have solved for the time dependence. We have, for the time dependence, a very simple equation. We have S dot is equal to lambda S to the lambda. And so we can now determine the time dependence as a function of lambda. And it turns out there's three possible answers depending on the value of lambda. So we're going to get from this. S of t asymptotically has three possible behaviors. It goes like t to the 1 divided by 1 minus lambda for lambda less than 1. And you see that when lambda is equal to 0, the good old, which corresponds to the good old constant reaction rate, S dot was constant. And so S went like t. But as the homogeneity index increases, the rate at which clusters grow gets larger. And that makes sense, because if the homogeneity index gets larger, it means that bigger clusters are relatively more grabby. So the clusters as they grow should grow even faster. So the rate of growth is increasing as lambda increases. When lambda is equal to 1, then we have S dot is equal to S, which is the equation for exponential growth. So it goes like a to the lambda t. And for lambda bigger than 1, then the cluster size actually diverges in a finite time, which physically corresponds to the phenomenon of gelation in a real physical system. And so in this case, we're going to get something that looks like this, a critical time minus t to the power 1 divided by 1 minus lambda. So with the scaling assumption, we can extract the time dependence of the system very easily. So now we have to turn to the dependence on the actual function itself, the actual shape of the cluster size distribution. Here, this is now a state-of-the-art problem for which there's only limited information available. And it requires, if I was giving a weak course in aggregation kinetics, I would then show you how to extract information from this integral equation. But let me just tell you what the results are, because the results in the end turn out to be relatively simple. So you're going to have to just take this on faith. I shouldn't have erased that. Let me put that back again. So I had kij is equal to a to the power lambda k of aij, and k1j, oops, I guess I already, I don't need that. So yeah, so let's just keep this, because those are my assumptions. So to get information about the cluster size distribution itself, let's look at what this reaction rate is pictorially. So pictorially, I can think of kij as an infinite dimensional matrix. And on the upper left corner, where both indices are small, that's the reaction rate of small clusters with other small clusters. So I can partition my reaction rate with small, small interactions here, large, large interactions here. And here I have small with large, and here a large with small. And so in some sense, the homogeneity index is saying, how quickly does the interaction entries grow as it go down the main diagonal? This guy says, how quickly it grows as you go down here or go over here. And so for reasons that escape me, people who work this out in the 80s sort of categorize the possibilities into three classes. And they're very creatively called them class 1, class 2, class 3. So class 1, class 2, and class 3. And so class 1 is where lambda is bigger than nu. And so it means that large, large interactions dominate over everything else, large, small, or small, small interactions. And in this case, what happens, we can sort of understand physically, it's just that if there's a really large cluster, it becomes very reactive. And so it kind of gets really large really quickly. And so if I look at the mass distribution, roughly speaking, as a function of k, Ck looks something like this. It's always monotonic. Because if there's really large clusters here, they'd come even larger. And they just zip off to infinity. And so there's very little population here. Class 3 is the case lambda less than mu, less than nu. And this is the case where large, small, or small, large interactions dominate. And it turns out that if you're looking at Brownian particles and solution, that is the case that this corresponds to. And in this case, what happens is that if you have any small clusters left, because small with large is a very rapid interaction, they're really quickly swept out of the system. So in that case, the cluster size distribution is something like this. Because if there's any small clusters left, they react really quickly with any large clusters that happen to be in the system. So there's none left. And class 2 is intermediate. And so the case of constant kernel is the example of an intermediate case, which happens to sort of look like this. But it turns out if you delve more deeply into the case of constant kernel, it's actually like marginal behavior in a critical phenomena. You're right at the hairy edge between these two limiting cases. And so the constant kernel is actually very unstable. If you perturb a few of the reaction rates, you get all kinds of crazy behavior emerging from it. OK. So what? I have five minutes left. OK, so let me just give you a taste of what I'm going to begin to discuss next time, which is I'll finish my discussion of aggregation by looking at the product kernel solution. Product kernel. So kij is equal to ij. So this is one of the few exactly soluble cases in aggregation kinetics. And as you're going to see, the solution is just, every time I see the solution, like I'm always boggled, like how beautiful it is, and the mathematical trickery that goes into it that's actually, graduate students now are just not trained in mathematical physics. And so some of these things that seem like black magic should be in the toolkit of every theoretical physicist, but happens not to be. Anyways, product kernel. So enough getting on the soapbox. So let me just write down the equations again. So ck dot is equal to. So by the way, now I don't put a 2 in front. It just turns out to be more convenient to leave it this way. 1 half summation ici, I'm sorry. Yeah. So it's ici jcj, then have minus summation. So I'm going to have kck ici, and this summation i equals 1 to infinity. So already there's one thing we can do, which is the summation i equals 1 to infinity ici. My construction, that's a total mass in the system. So we can just write this as 1 half summation ici jcj minus summation, no, no more summation now. We just have kck. So this is what I want to solve for. But before we try and solve it frontally, let's say we're intimidated by this equation. What can we do with it? Well, let's look again at low order moments and try and see if we can get some partial information. And we're going to see that by looking at low order moments, already something weird is happening that tells us that this system is really quite different than constant kernel aggregation. So let's look at the moments. So we're going to, again, mn, which is equal to summation, k to the power nck. So let's take this equation, multiply by k to the power n, and then sum over all k. So on the left-hand side of the equation, and so let's do it sort of order by order. So let's look first of all at the 0th moment. So the 0th moment, I'll just have summation ck dot. So that's going to be m0 dot. And on the right-hand side, I'll have ici jcj. So that's the first moment squared. So I have plus 1 half m1 squared minus, and so I'm going to have kck. So that's just minus m1. So already, this says something weird is happening, because this is equal to minus m1 squared. But if we're saying there's mass conservation, so m1, we can choose to be anything we want. So let's choose it to be equal to 1. Oh, by the way, this is minus 1 half m1 squared. So this says that m0 dot is equal to minus 1 half. So that says that m0 is equal to 1 minus t over 2. So when t hits 2, there's no clusters in the system. So already, there's something weird happening there. Let's look at the first moment. We better check that mass is conserved. Now that we see something weird going on, let's check that mass is conserved. So let's look at m1 dot. So I multiply. So on the left-hand side, I multiply by k. So I get m1 dot is minus 1 half. But now k, I can write as i plus j. So I'm going to have, let me just do a little work area over here. So for the first moment, I'm going to have k. And then I have ici jcj. And I can write that as i plus j ici jcj. And I have to sum up. So the first term is i squared. So it's m2 times m1. And then I have, for this guy, I'll have m1 times m2. So there's two such terms. So it cancels 1 half out in front. And I'm going to have m1, m2. And for the second term, I have, so this is k1. It combines with this. So we just have m2 squared. I'm sorry, I just have minus m2. But m1, we chose to be equal to 1. And so this is equal to 0. So at least we have mass conservation. Let's look at the next moment. And I guess I'm going to stop there, because this is sort of the punch line. Let's look at m2. So we're going to have, we're going to apply it by k squared. So we'll have m2 here. And over here, we're going to have k squared ici jcj. So that's i plus j squared. So there's a term i cubed ci, so m3, m1. So I have two such terms. So two m3, m1, two m1, m3. And then I have the cross term. So I have two ij times i times j. So it's two ij ij. So it's two m2 squared. So plus two m2 squared. And then the last term is k cubed times, k squared times k, so this is k cubed. So this is equal to minus m3. There's one half, because there's two here, but there's the one half here that cancels this. So this goes away. So these cancel. And so I get m2 dot is equal to two m2 squared, whose solution is m2 is equal to 1 over 1 minus t. So notice that the number of clusters, according to this naive thinking, the number of clusters disappeared when time was equal to 2. But their average size blew up at t equals 1. So this is a harbinger of the gelation transition. That, in fact, there is a phase transition in this product kernel aggregation in which the average cluster size diverges at a finite time. And that corresponds to making jello in your refrigerator at night. So next time, I will finish this derivation of that solution. And that will be the end of the discussion of aggregation kinetics. So I'm done.