1
From my understanding, Taproot uses a Merkle Tree structure whose root represents the outcome of a script. That representation is in the form of a signature that may unlock the inputs associated with its public key counterpart, which is shared by all participants.
I have two questions related to this:
First, how is the script structured in the tree? Does each path represent a different execution outcome? If so, how are the potential outcomes defined?
Second, if it follows a Merkle Tree structure, is there a limit in terms of the size of the script? I'm inclined to say no, given that this occurs off-chain, but I might be wrong.

Very helpful, thanks David. So what is the relationship between taproot and MAST? It seems like taproot is a proposed implementation of MAST, but with the added benefits of a consolidated pubKey? – Raz Lemniscate – 2018-08-17T15:12:30.127
That's correct, Taproot is a form of MAST where the merkle root is combined with a public key to create a secondary public key that can be spent by the private key corresponding to the primary public key. Basically, if you take an ECDSA public key and add an integer to it to create a secondary public key, you can create the corresponding secondary private key by adding the name integer to it. Revealing the number later doesn't reduce the security of the primary keypair, so if you need to publicize the merkle root to use MAST, you can---but otherwise you can just sign. – David A. Harding – 2018-08-17T19:27:26.377