I'm new to universal composability.
I'm trying to define a protocol, $\pi$, in UC.
The protocol involves 3 parties: A, B, and a smart contract $C$. Parties A and B interact with each other and with $C$.
Each party, including $C$, makes calls to multiple primitives (e.g. symmetric key encryption: $Enc$, commitment scheme: $Comm$, etc).
One approach is to construct the protocol in the real world and assume the contract is fully trusted.
Then, in the ideal world, I can define an ideal functionality, $F$.
Then as a theorem, I say $\pi$ UC realizes $F$ in ($Enc$, $Comm$)-hybrid world.
Question 1: To make the definition simpler/neater, in the real world, could I define an ideal functionality $F_c$ for the smart contract where $F_c$ calls other functionalities like $Enc$, $Comm$? The reason I thought it would be simpler is that, I could explain the smart contract side protocol separately, remove its detailed description from $\pi$ and add $F'_{c}$ to the hybrid world, in the above theorem.
Question 2: In general, is it ok if an ideal function calls multiple other ideal functionalities?
Question 3: What is a wrapper functionality? Can a wrapper functionality call multiple functionalities?