## 4 Results
### Pure Procedural Representation  
The piece was modeled using a species called _piano_ which, according to the formalism stated in Section 2.2, is defined as the set \(spec_{piano}=(Types,\overline{t}, Maps,Funcs,Coders)\). The required elements for completing this definition are enumerated in Table 4.  
Beyond the simple identity functions q, ln, lm, la, and li, which simply take and return unchanged numeric values or lists that serve as leaf values of the functional tree, only a few functions are needed to model _Clapping Music_. The processes carried out by these functions are described in Table 3. The complete work is recreated by the decoded genotype displayed in Listing 1.  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline _Types_ &
\begin{tabular}{c} **Event Structure** \\ \(\overline{t}\) \\ \end{tabular} & \(Maps\) & _Funcs_ & _Coders_ \\ \hline \{_notevalue,_ & \((notevalue,\) & \((norm2 notevalue,\) & \(\{q,\) & \(\{ran,\) \\ _midpitch,_ & \(midpitch,\) & \(norm2 midpitch,\) & ln, & _dec,_ \\ _articulation,_ & \(articulation,\) & \(norm2 articulation,\) & lm, & _enc,_ \\ _intensity,_ & \(intensity,\) & \(norm2 intensity,\) & la, & _eval,_ \\ _quantized,_ & \(norm2 quantized,\) & li, & _conv_\} \\ _lnotevalue_1, & \(norm2 goldervalue) & vMotifLoop, & & \\ _lmidpitch,_ & \(and\) & inverse & vConcatV, & \\ _larticulation,_ & \(converters\) & vRepeatV, & & \\ _intensity,_ & & & vSlice, & \\ _event,_ & & & vAutoref, & \\ _voice,_ & & & s2V\} \\ _score_\} & & & & \\ \hline \hline \end{tabular}  
* The types beginning with \(l\) are lists of a parameter type.  
\end{table}
Table 4: Minimal elements in piano species required to model _Clapping Music_ procedurally.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Function Name** & **Arguments Type** & **Output Type** & **Description** \\ \hline wMotifLoop & \((\)_Intevalue, Imidipitch, latriculation,_ & _voice_ &
\begin{tabular}{c} Creates a sequence of events based on repeating lists. The number of events is determined by the longest list. \\ Shorter lists are treated as loops. \\ \end{tabular} \\ vConcatV & \((\)_voice, voice_ ) & _voice_ & Concatenates two voices sequentially. \\ vRepeatV & \((\)_voice, quantized_ ) & _voice_ & Repeats a voice a number of times. \\ vSlice & \((\)_voice, quantized_ ) & _voice_ & Removes a number of events at the beginning or at the end of a voice. \\ vAutoref & \((\)_quantized_ ) & _voice_ & Returns a copy of a previous voice branch of the functional tree, referenced by an index. \\ s2V & \((\)_voice, voice_ ) & _score_ & Joins two voices simultaneously. \\ \hline \hline \end{tabular}
\end{table}
Table 3: Genotype functions used to model _Clapping Music_. The table shows only functions that are not mere identity functions that act as simple data containers for each parameter type.  
```
s2V( //scoreL:joinsthe2 voicesvertically vSlice( //voiceJ:sliceslastcycleduetobphaseshift vRepeatV( //phaseG:F13 times vRepeatV( //cycleF:E8 times vConcatV( //patternE:C+D vConcatV( //motifC:A+B vMotifLoop( //coremotifA:38 th-notesandasingalence ln(1/8), //notevalues lm(65), //pitch(irrelevantforthispiece) la(50), // articulation li(60,60,90,0)), //intensities(lastnotleudorforclarity) vSlice( //motifB:Awithistnotestliced vAutoref(0), q(1))), vSlice( //motifD:Cwithfirsttwonotessliced vAutoref(3), q(2))), q(8)), q(13)), q(-12)), vConcatV( //voiceK:F+H vAutoref(7), vRepeatV( //phaseI:H12 times vSlice( //cycleH:Fwithoutistnote,forphaseshift vAutoref(10), q(1)), q(12))))
```  
Listing 1: Decoded genotype of _Clapping Music_ model. The uppercase letters in the comments refer to the patterns analyzed in Figure 12.