# CrossDeFi: A Novel Cross-Chain Communication Protocol
## 4 Preliminaries
### Problem Formulation  
Current solutions proposed for cross-chain interoperability and finality guarantees fall short in several key areas. Primarily, existing systems struggle to handle the diversity across consensus mechanisms, token types, assets, and components effectively. There is no adaptive solution for a variety of asset transfers, resulting in poor interoperability, especially among DeFi systems with various blockchains. Moreover, many conventional cross-chain solutions rely heavily on Oracle components for asset transfers across multiple blockchains, which incurs substantial fees and implementation costs, rendering them impractical for real-time DeFi systems. To address such issues, this framework proposes a Cross DeFi, which dynamically adapts to the characteristics of different assets and blockchain platforms, ensuring seamless and secure asset transfers. Another significant challenge is asset locking, where assets are frequently locked for extended periods on various DeFi blockchains without definitive transaction finality, posing a major issue in many existing cross-chain systems. Developing innovative asset-locking solutions is crucial to enable seamless communication and interoperability among diverse DeFi platforms. However, creating effective asset-locking solutions across different cross-chain DeFi systems is inherently complex. Delays or failures in cross-chain transactions can severely impact user experience and the overall effectiveness of DeFi services. Therefore, there is a pressing need for novel cross-chain solutions that support both interoperability and finality guarantees without compromising on speed, cost, or security across heterogeneous DeFi systems. The CrossDeFi communication protocol is designed to address these challenges, taking into account the complexities of heterogeneous blockchains and asset-locking issues. To formulate the cross-chain asset transfer among two DeFi systems, consider the scenario where DeFi X and DeFi Y represent two different DeFi networks having assets \(A_{X}\) and \(A_{Y}\). The problem formulation has to consider several unique blockchain characteristics, including asset pools (AP), miners (Mi), smart contracts (Smr), consensus (Con), and bridges (Bri), as defined in Table 5. Firstly, it is crucial to consider the transaction participants for DeFi X and DeFi Y: let \(BMi_{X}\) and \(BMi_{Y}\) represent the best miners selected from the mining pools of X and Y, respectively, who are responsible for facilitating the transaction process across these networks through the asset-specific bridge. Definition: For formulating the transaction process, it is considered that DeFi X wants to transfer \(A_{X}\) to DeFi Y by using the selected bridge according to \(AT_{X}\), \((Smr_{X},Smr_{Y})\) and \((Con_{X},Con_{Y})\) of DeFi X and DeFi Y. Asset transfer formulation: It is stated that the smart contracts, consensus, and bridges used by DeFi X and DeFi Y are \(\{Smr_{X},Con_{X},Bri_{X}\}\) and \(\{Smr_{Y},Con_{Y},Bri_{Y}\}\), respectively. Initially, DeFi X and DeFi Y have initial assets, referred to as \(A_{X}^{\text{initial}}\) and \(A_{Y}^{\text{initial}}\). A miner of DeFi X, \(MiX\), initiates the asset transfer process by analyzing the real-time asset type \(AT_{X}\), asset value to be transferred, blockchain type, and transaction fees. This analysis determines the current state of the transaction process and ensures that all necessary \begin{table}
\begin{tabular}{c c c} \hline \hline
**Transaction Participants** & **DeFi X** & **DeFi Y** \\ \hline Asset pools & \(AP_{X}\) & \(AP_{Y}\) \\ Assets & \(A_{X}\) & \(A_{Y}\) \\ Initial assets & \(A_{X}^{\text{initial}}\) & \(A_{Y}^{\text{initial}}\) \\ Asset type & \(AT_{X}\) & \(AT_{Y}\) \\ Miners & \(Mi_{X}\) & \(Mi_{Y}\) \\ Smart contracts & \(Smr_{X}\) & \(Smr_{Y}\) \\ Consensus protocols & \(Con_{X}\) & \(Con_{Y}\) \\ Best miner from Mi to facilitate the transfer process & \(BMi_{X}\) & \(BMi_{Y}\) \\ Bridges & \(Bri_{X}\) & \(Bri_{Y}\) \\ \hline \hline \end{tabular}
\end{table}