[Transfer] Interpretation of AVM White Paper
Please note: This article is written based on personal cognition and logical reasoning, and may not be correct. It is for reference only.
To understand AVM, the focus is on the following three pictures. Let's analyze them one by one:
Figure 1: What AVM wants to do
1️⃣
Developers can customize the "creation rules" and "transfer rules" of assets. These rules (or contracts) are stored and reflected in the form of data contained on the chain.
2️⃣
The created assets contain "states", which will be updated according to operations. Introducing "states" is very important for expansion.
3️⃣
From this dimension, AVM can actually be understood as a superset of the "layer asset protocol" (called Overlayer Protocol in the white paper), which can provide developers with a sufficiently customized way to create assets and related systems on the BTC mainnet.
Figure 2: How to do AVM
Let's look from top to bottom, from left to right:
1️⃣
The left side is the BTC main network, which contains our contract data, status data, etc.;
2️⃣
The middle part is the programming part based on Indexer. We can call the smart contract code (left). The code can be compiled by high-level language (top). After executing the contract (right), the relevant data (including token data, status data) is stored locally (bottom)
3️⃣
The specific execution function form includes two categories: one is the original op-code of Btc, such as op_add, op_mul, etc., and there is also op_cat that has not been passed. The other is the op-code that developers can customize, such as op_ft_balance (FT asset balance). In theory, there will be an official library, and developers can inherit and develop new functions based on the official library.
4️⃣
The footnotes explain the op-code. I don’t really understand why the proposed Two Stack PDA is Turing complete for the custom op-code. If you know, please give me some advice in the comments.
Figure 3: How AVM [forms consensus]
Since each client runs off-chain, how to form a consensus? The answer given in the white paper is to put the state hash on the chain, so that everyone can check whether the state is correct and synchronized.
After understanding the above points, we can sort out our understanding of AVM:
1️⃣
AVM provides a platform for developers to flexibly formulate asset rules;
2️⃣
Through native and customized op-codes, it can realize many functions, but it should be noted that these functions are different from what we understand as smart contracts in the EVM system, and relatively speaking, scalability requires time to develop;
3️⃣
AVM is based on indexer programming. In principle, it may be compatible with asset protocols with indexers in the future, and can realize the native access of such assets. It may provide such assets with another cross-chain form in addition to multi-signature/isomorphic binding, but it feels difficult to deeply bind different asset protocols from an ecological perspective;
4️⃣
The impact of AVM should not be overestimated for the time being, because it is based on the BTC mainnet, and what can be done based on the mainnet is limited (subject to the performance of the mainnet); but it should not be underestimated. In theory, it can realize the contract capabilities of the mainnet, which is of great positive significance to the BTC ecosystem. Whether it can be combined with the Lightning Network in the future is also a direction that can be explored.
#avm #atomicals #Quark Original link: https://x.com/DaPangDunCrypto/status/1796099325170495990