This formula can vary with each protocol. For example, TokenSwap uses x * y = k, where x is the amount of one token in the liquidity pool, and y is the amount of the other. In this formula, k is a fixed constant, meaning the pool’s total liquidity always has to remain the same. Other AMMs will use other formulas for the specific use cases they target. The similarity between all of them, however, is that they determine the prices algorithmically. If this is a bit confusing right now, don’t worry; hopefully, it’ll all come together in the end.