3.1. Inter-Array Replicate Synthesis In this subsection, we propose a method to synthesize inter-array technical replicates for a kinome array. Suppose there exists a set of n kinome arrays each containing m different peptides (“probes”). In addition, suppose that there are l within-array replicates (“spots”) for each peptide. In the rest of the paper, the measurements for the kth within-array replicate of the jth peptide on the ith array are denoted by ri,j,k. Variable ri,j,k contains all measurements corresponding to the intensity value of the aforementioned spot. More specifically, it contains foreground and background intensity values, denoted by F(ri,j,k) and B(ri,j,k), respectively. Also, the mean of a peptide is interpreted as the mean of the all background-corrected intensity values for all within-array replicates for that peptide. We introduce the following notation to denote specific kinome arrays and the measurements from peptides on those arrays. Uppercase letters are used to denote a kinome array and its corresponding lowercase letter with a subscript is used to denote each peptide on the array. Following this notation a kinome array A is represented as follows: A={aj∣1≤j≤m}aj={aj,k∣1≤k≤l} where m is the number of peptides on the array, l is the number of within-array technical replicates for each peptide, and aj is the set of all within-array technical replicates for the jth peptide on array A. Our procedure to synthesize kinome arrays is described in technical detail in Algorithm 1 as the basis for rapid implementation. In the algorithm, {A1,⋯,An} is a set of n peptide arrays, each containing m peptides and l within-array technical replicates for each peptide; X is a peptide array and is denoted by X={xj∣1≤j≤m}; T is a threshold value for determining significant fold-change; θ is a percentage of noisy peptides; and α is a preferred statistical significance level. Each run of Algorithm 1 synthesizes an inter-array technical replicate of X; i.e., an array with no differentially phosphorylated peptides when compared to X. That is, Algorithm 1 treats array X as a template, and produces inter-array replicates for it. The produced array is Y={yj∣1≤j≤m}. In order to synthesize q inter-array technical replicates of X, the procedure is performed q times. Algorithm 1 relies on real intensity measurements from kinome array experiments in order to preserve subtle characteristics of the original kinome microarray data. In addition, it allows the user to control the level of variation introduced using the fold-change threshold parameter, the percentage of noisy peptides, and the significance level parameters. In this regard, it creates a repository set R from existing kinome array data. This repository is sampled to synthesize an inter-array technical replicate Y for a given template X. We suggest using all available actual arrays to create the most comprehensive repository possible. The template X can be an array Ai from that repository, though it need not be. Algorithm 1 inter-array Replicate Synthesis Input: {A1,⋯,An}, X, T, θ, α Output: Y Create measurement repository set R from {A1,⋯,An} R=ri,j∣1≤i≤n,1≤j≤mri,j={ri,j,k∣1≤k≤l} where ri,j is the set of all intra-array replicates of the jth peptide of Ai t←1 while (t≤m) do rand← a uniformly distributed random number between 0 and 1 if rand≤θ then abct←∑k=1lFxt,k−Bxt,kl if abct≤0 then v=abctT w=abct×T else v=T×abct w=abctT end if if (there is a ri,j∈R where the mean of ri,j is not statistically bigger than v and not statistically less than w, considering a significance level of α) then yt←ri,j else yt←xt end if else if (there is a ri,j∈R where the mean of ri,j is not significantly different from the mean of xt, considering a significance level of α) then yt←ri,j else yt←xt end if end if t←t+1 end while return Y The algorithm creates an inter-array technical replicate that should have no differentially phosphorylated peptide in comparison to a given template array. It uses fold-change to determine differential phosphorylation. The obvious definition of fold change when the initial and final values are positive is fold-change=finalvalueinitialvalue We extend this definition to cover situations where both initial and final values are negative. A natural definition is as follows: fold-change=initialvaluefinalvalue Combining these expressions, in this paper we use the following generalized definition of fold change: fold−change=finalvalueinitialvalueifinitialvalue>0 ;&finalvalue>0initialvaluefinalvalueifinitialvalue<0 ;&finalvalue<0 In Algorithm 1 any upward fold-change less than T and downward fold-change bigger than 1T is considered as non-differential phosphorylation. These thresholds are captured by variables v and w, respectively. In addition, “significant difference” is defined as a difference that is statistically significant according to an independent one-sample t-test with a significance level of α. Since Y should be an inter-array technical replicate of X, there must be no differentially phosphorylated peptides on Y in comparison to X. This is achieved in two different ways. For θ percent of the peptides, the algorithm introduces an amount of perturbation as follows. It calculates an average background-corrected intensity value, abct, for a peptide xt. It then selects an arbitrary ri,j∈R, where ri,j is not differentially phosphorylated in comparison to xt using a fold-change of T and confidence level of α. The algorithm adds ri,j as the l measurements for within-array replicates of the tth peptide in Y (i.e., as yt). Variables w and v are the bounds for determining whether the peptide represented by ri,j is not differentially phosphorylated. For the other 100-θ percent of peptides, the algorithm selects an arbitrary peptide ri,j∈R, where ri,j is not significantly different from the mean of xt, and assigns it to yt. In both cases if such an ri,j∈R cannot be found, yt is set to the original xt. It should be noted that ri,j includes raw foreground and background intensity values.